Приветствую, Форумчане!
1с8.3.12, УФ, самопис
В одном из документов есть вкладка с произвольным условием запрос в текстовом формате (упрощенный пример) Условие_ПроизвольноеУсловие:
Контекст.Подходит = Ложь;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЗаказМодельИКомплектация.Номенклатура КАК Номенклатура
|ИЗ
| Документ.Заказ.МодельИКомплектация КАК ЗаказМодельИКомплектация
|ГДЕ
| ЗаказМодельИКомплектация.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Контекст.Объект);
Если НЕ Запрос.Выполнить().Пустой() Тогда
Контекст.Подходит = Истина;
КонецЕсли;
Контекст = Новый Структура("Объект, Акция, Подходит", Объект, Акция, Ложь);
Попытка
Выполнить(Акция.Условие_ПроизвольноеУсловие);
Исключение
ОписаниеОшибки = ОписаниеОшибки();
КонецПопытки;
Документ.ЗАКАЗ.МодельИКомплектация КАК ЗаказМодельИКомплектация
Документ.КОНСУЛЬТАЦИИ.МодельИКомплектация КАК ЗаказМодельИКомплектация
Документ.[ДокументПоиска].МодельИКомплектация КАК ЗаказМодельИКомплектация
Constantus @ Сегодня, 13:06
,
Добрый день! Возможно такой пример Вас натолкнет на правильный путь:
Запрос = Новый Запрос;
Для каждого Объектконф Из Метаданные.Документы Цикл
ТекстЗапрос = "ВЫБРАТЬ
| Док.Ссылка
|ИЗ
| Документ." + Объектконф.Имя + " КАК Док";
Запрос.Текст = ТекстЗапрос;
РезультатЗапроса = Запрос.Выполнить().Выбрать();
Пока РезультатЗапроса.Следующий() цикл
Сообщить(РезультатЗапроса.Ссылка);
КонецЦикла;
Constantus, не очень понятно почему, если это текстовое поле, нельзя написать
Контекст.Подходит = Ложь;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЗаказМодельИКомплектация.Номенклатура КАК Номенклатура
|ИЗ
| Документ.Консультации.МодельИКомплектация КАК ЗаказМодельИКомплектация
|ГДЕ
| ЗаказМодельИКомплектация.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Контекст.Объект);
Если НЕ Запрос.Выполнить().Пустой() Тогда
Контекст.Подходит = Истина;
КонецЕсли;
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua