|
Как получить пустую ссылку с типом значения как у ПолеКомпоновкиДанных | ☑ | ||
---|---|---|---|---|
0
Эмбеддер
15.05.13
✎
08:48
|
В существующей программе меняю отбор из системы компоновки данных на отбор в запросе. Все виды сравнения реализовал, но осталось "Заполнено" и "НеЗаполнено".
Я так понимаю, что сравнивать надо не с Неопределено, а именно с тем типом, что в поле запроса. У меня есть ПолеКомпоновкиДанных, как узнать тип этого поля? Для того, чтобы получить пустую ссылку |
|||
1
mikecool
15.05.13
✎
08:50
|
типзнч(поле)??
|
|||
2
Эмбеддер
15.05.13
✎
08:50
|
(1) возвращает "ПолеКомпоновкиДанных"
|
|||
3
Defender aka LINN
15.05.13
✎
08:51
|
(0) Т.е. ты сейчас пытаешь сделать то, что платформа и сама, вполне успешно умеет делать?
|
|||
4
Эмбеддер
15.05.13
✎
08:53
|
(3) да, дело в том что есть 200 обращений к системе компоновке данных, выполняется это в цикле. мне нужно сделать одним запросом. так работает быстрее в десятки раз
|
|||
5
Defender aka LINN
15.05.13
✎
08:54
|
(4) ... Я рад, что вы мне это рассказали. Но вопрос остается открытым - зачем пытаться написать говнокод, который сделает все то же самое, что и платформа, только хуже?
|
|||
6
Эмбеддер
15.05.13
✎
08:57
|
(5) мне поставили задачу ускорить уже существущий код, который написан очевидно правильным программистом, который пишет не г-код. однако он работает неоправданно долго
|
|||
7
Эмбеддер
15.05.13
✎
09:00
|
спасибо за помощь придумал как сделаю этот отбор и без тормозов - такая проверка будет уже в полученной выборке, благо она небольшая
|
|||
8
Defender aka LINN
15.05.13
✎
09:11
|
(6) Я рад за вас. Но в (0) описано совершенно другое, если что.
(7) Молодец. А как быть с отбором типа (А=7 ИЛИ Б не заполнено)? |
|||
9
Эмбеддер
15.05.13
✎
09:20
|
(8) зайди в любой стандартный отчет и попробуй сделать отбор "ИЛИ" в табличке "Отборы"
|
|||
10
Defender aka LINN
15.05.13
✎
09:23
|
(9) Сделал. Что дальше?
|
|||
11
Эмбеддер
15.05.13
✎
09:26
|
(10) я хотел сказать "Универсальный отчет". у меня в личке картинка как это выглядит
|
|||
12
Defender aka LINN
15.05.13
✎
09:27
|
(11) "в существующей программе меняю отбор из системы компоновки данных". УО не на СКД сделан.
|
|||
13
Эмбеддер
15.05.13
✎
09:28
|
(12) все, увидел в СКД можно добавить группу
|
|||
14
Эмбеддер
15.05.13
✎
09:34
|
в реальности выглядит вот так
http://i48.fastpic.ru/big/2013/0515/00/7d8dc63a2be5b489c16d9d3c4f168b00.jpg |
|||
15
Эмбеддер
15.05.13
✎
09:47
|
но возникает следующая проблема - при обходе отбора не видно дерева, как они по группам объединены, видны только элементы и все)))
|
|||
16
Defender aka LINN
15.05.13
✎
09:50
|
(15) Все там видно. Только я в 100500й раз спрашиваю: НАХРЕНА?
|
|||
17
Эмбеддер
15.05.13
✎
09:51
|
(16) я уже объяснил зачем мне это нужно
|
|||
18
Defender aka LINN
15.05.13
✎
09:56
|
(17) Нихрена ты не объяснил.
- Я переделываю отбор СКД в условия в запросе - Зачем, это платформа сама умеет? - А у меня вот тут бантик завязан. Для нахрена писать какие-то там пьяные процедуры, если все то же самое умеет платформа, достаточно ее об этом попросить? |
|||
19
Эмбеддер
15.05.13
✎
10:01
|
15+ все, я не ту настройку смотрел, их было много, в этой групп не было
(18) тогда полностью задача. есть справочник с настройками, там 200 записей, будет еще больше. в каждой записи есть настройка компоновки данных. при проведении документа выполняется запрос, отдельно по каждой настройке из этой компоновки, к данным документа. выполняется это десятки секунд. это делал не я. а задача ускорить этот процесс |
|||
20
Defender aka LINN
15.05.13
✎
10:04
|
(19) Макет = КомпоновщикМакетаКомпоновкиДанных.Выполнить
После этого изучи "Макет" в отладчике. |
|||
21
Эмбеддер
15.05.13
✎
10:35
|
(20) спасибо, ты мне на самом деле очень помог. я бы и не догадался что есть группы в отборе
в макете нашел все что нужно, но я так понимаю что "Выполнить" реально выполняет запрос к базе, т.е. это основные тормоза |
|||
22
Defender aka LINN
15.05.13
✎
10:37
|
(21) Не выполняет он запрос. Он его готовит.
|
|||
23
Эмбеддер
15.05.13
✎
11:22
|
кстати "ЗначениеЗаполнено" для СубконтоДт1 компоновщик делает так:
(СубконтоДт1 НЕ В(НЕОПРЕДЕЛЕНО, &П3, &П4, &П5, &П6, &П7, &П8, &П9, &П10, &П11, &П12, &П13, &П14, &П15, &П16, &П17, &П18, &П19, &П20, &П21, &П22, &П23, &П24, &П25, &П26, &П27, &П28, &П29, &П30, &П31, &П32, &П33, &П34, &П35, &П36, &П37, &П38, &П39, &П40, &П41, &П42, &П43, &П44, &П45, &П46, &П47, &П48, &П49, &П50, &П51, &П52, &П53, &П54, &П55, &П56, &П57, &П58, &П59, &П60, &П61, &П62, &П63, &П64, &П65, &П66, &П67, &П68, &П69, &П70, &П71, &П72, &П73, &П74, &П75, &П76, &П77, &П78, &П79, &П80, &П81, &П82, &П83, &П84, &П85, &П86, &П87) И СубконтоДт1 ЕСТЬ НЕ NULL) |
|||
24
Defender aka LINN
15.05.13
✎
11:39
|
(23) Да. Ибо ограничивать типы надо.
|
|||
25
Эмбеддер
15.05.13
✎
12:10
|
(24) там просто выборка из хозрасчетного регистра
|
|||
26
Defender aka LINN
15.05.13
✎
12:17
|
(25) Да хоть откуда
|
|||
27
Эмбеддер
15.05.13
✎
12:21
|
(26) я же заранее не знаю, какие у меня будут проводки в документе, какие виды субконто используется, а какие нет...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |