В последнее время при изменении динамического списка, я использую объект «СхемаЗапроса». Это работает это так:
СхемаЗапроса = Новый СхемаЗапроса;
СхемаЗапроса.УстановитьТекстЗапроса(Список.ТекстЗапроса);
ИндПоследнегоПакета = СхемаЗапроса.ПакетЗапросов.Количество() - 1;
ТекушийПакетЗапросов = СхемаЗапроса.ПакетЗапросов[ИндПоследнегоПакета];
...Тут работаем со схемой...
Список.ТекстЗапроса = СхемаЗапроса.ПолучитьТекстЗапроса();
Случилось так, что у меня пропал отбор по одному полю. При анализе обнаружил, что при выгрузке через СхемаЗапроса.ПолучитьТекстЗапроса() ломается кусок предназначенный для компоновки данных.
Вместо:
{ГДЕ
(ИСТИНА В
(ВЫБРАТЬ ПЕРВЫЕ 1
ИСТИНА
ИЗ
РегистрСведений.СоставДокументовЗарплатаКадры КАК СоставДокументовЗарплатаКадры
ГДЕ
СоставДокументовЗарплатаКадры.ФизическоеЛицо = &ФизическоеЛицо
И ЖурналДокументовПриемыПереводыУвольнения.Ссылка = СоставДокументовЗарплатаКадры.ДокументФизическогоЛица))}
Получается:
{ГДЕ
(ИСТИНА В
(ВЫБРАТЬ ПЕРВЫЕ 1
ИСТИНА
ИЗ
РегистрСведений.СоставДокументовЗарплатаКадры КАК СоставДокументовЗарплатаКадры
ГДЕ
СоставДокументовЗарплатаКадры.ФизическоеЛицо = &ФизическоеЛицо
И ЖурналДокументовПриемыПереводыУвольнения.Ссылка = СоставДокументовЗарплатаКадры.ДокументФизическогоЛица)) КАК Поле2}
И конечно же, пропадает отбор «ФизическоеЛицо». Свойство «РежимКомпоновкиДанных» необходимо, чтобы избежать это (устанавливать в «Истина»).
СхемаЗапроса = Новый СхемаЗапроса;
СхемаЗапроса.РежимКомпоновкиДанных = Истина;
СхемаЗапроса.УстановитьТекстЗапроса(Список.ТекстЗапроса);
Все комментарии
Чтобы оставить комментарий, необходимо войти или зарегистрироваться.
Пока нет комментариев. Будьте первым!