Имя: Пароль:
1C
1С v8
СКД процедура ПриКомпоновкеРезультата
0 seraf
 
02.12.19
18:22
Подскажите, а сколько раз должна отрабатывать процедура ПриКомпоновкеРезультата.
Я в ней решил функцию запустить, которая соберет таблицу с данными, а отладка возвращается туда вновь и вновь
1 shuhard
 
02.12.19
18:27
(0) один раз
ты свой код закоментируй =)
2 pechkin
 
02.12.19
18:42
стандартная обработка = ложь
3 seraf
 
02.12.19
18:45
А мне чего-то не один раз возвращается в начало, хз с чем связано.. наполнило ТЗ, потом заново начинает

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)

    СтандартнаяОбработка    = Ложь;

    Данные = ПолучитьДанные(); //один раз хочу вызвать

    НаборыДанных    = Новый Структура("ВходящиеДанные", Данные);

    Схема   = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");

    КМ      = Новый КомпоновщикМакетаКомпоновкиДанных;

    Макет   = КМ.Выполнить(Схема, КомпоновщикНастроек.Настройки);

    ПК  = Новый ПроцессорКомпоновкиДанных;
    ПК.Инициализировать(Макет, НаборыДанных);

    ПВ  = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПВ.УстановитьДокумент(ДокументРезультат);
    ПВ.Вывести(ПК, Истина);

КонецПроцедуры
4 seraf
 
02.12.19
18:45
При том что сбор данных очень тяжелый, это крайне критично
5 palsergeich
 
02.12.19
18:51
(3) ПолучитьДанные(); а тут что?
6 seraf
 
02.12.19
18:53
(5) А там функция с одним запросом, на основании которого наполняется новая ТЗ.
Но сама функция еще обращается к общему модулю за данными для каждой строки, в силу конфигурации вложенные запросы отрабатывают.
В какой-то момент ТЗ перестает наполняться (20к строк или больше) и отладку кидает в начало ПриКомпоновкеРезультата()
7 seraf
 
02.12.19
18:55
На тестовом куске данных с ограниченной выборкой такого не наблюдаю, а вот при реальной отработке да. Думал может что-то инициирует эту процедуру заново отработать
8 seraf
 
02.12.19
18:58
Регламентные задания каким-то образом не могут повлиять?) Запускается тут какое-то периодически
не знаю на что думать
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан