mszsuz писал(а) 11. Октября 2011 :: 17:37:...4. Проверяем в контексте выполнения запроса эту переменную. Если Информатор.ТипЗначенияСтрВнутр(Конт.спОдниИТеЖеКлиенты) = "CComponentClass", то ...
Создал свой класс "Запрос" как потомок от "Query".
Переопределил метод "Выполнить(ТекстЗапроса)"
Отловил свое условие в ТекстеЗапроса и имя переменной "спОдниИТеЖеКлиенты"
Далее засада: НЕ ПОЛУЧАЕТСЯ ПРОВЕРИТЬ В КОНТЕКСТЕ ВЫПОЛНЕНИЯ ЭТУ ПЕРЕМЕННУЮ
в переменной тНашаПеременная сидит имя из условия, т.е.
тНашаПеременная="спОдниИТеЖеКлиенты";
Делаю так:
РодительскийКонт = Этот(Контекст).ПолучитьКонтекстОкружения();
клИнформатор = СоздатьОбъект("Информатор");
клСервис = СоздатьОбъект("Service");
Если клСервис.ПолучитьПеременнуюКонтекста(РодительскийКонт, тНашаПеременная, знНашейПеременной)=1 Тогда
Сообщить("ура");
Сообщить(клИнформатор.ТипЗначенияСтрВнутр(знНашейПеременной));
Иначе
Сообщить("!!! ЗАСАДА !!!");
КонецЕсли;
Выводит "Засаду!!! "