gifts2017

КОНЦЕПТУАЛЬНОЕ РЕШЕНИЕ: Вызов конструктора запросов из поля текстового документа

Опубликовал Сергей Старовойтов (AVARY) в раздел Программирование - Практика программирования

Обработка наглядно демонстрирует способ вызова конструктора запроса из поля текстового документа не имеющего расширения "Язык запроса".

Постарался как можно тщательней воспроизвести работу с конструктором как в конфигураторе. Для вызова конструктора нет необходимости выделять уже существующий текст запроса - достаточно щелкнуть правой кнопкой мыши по тексту и выбрать соответствующий пункт меню. Если вызов конструктора производится не из текста запроса, то появится диалог с предложением создать новый запрос.

Данный функционал можно быстро перенести в любую конфигурацию или обработку. Для этого необходимо перенести все процедуры и функции модуля обработки. В модуль формы перенести процедуру "КонструкторЗапроса" в обработчике "ПередОткрытием" вызвать процедуру "ИнициализироватьКонструкторЗапросов", в которую передать элемент формы (поле текстового документа) и форму, на которой элемент находится. Если редактирование запросов предполагается в нескольких полях, то необходимо инициализировать конструктор для каждого из них.

 Также может использоваться в качестве примера работы с регулярными выражениями и динамического создания элементов формы.

Скачать файлы

Наименование Файл Версия Размер
Редактирование запроса в поле текстового документа 66
.1253552691 10,16Kb
25.09.09
66
.1253552691 10,16Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Сергей Старых (tormozit) 23.09.09 09:43
2. Сергей Старовойтов (AVARY) 23.09.09 15:56
У тебя работа, конечно, гигантская... Когда мне понадобился данный функционал, я думал тискануть его из твоей подсистемы. Но там есть ряд недочетов... Например, если вызывать конструктор из пустого поля, то ничего не происходит, в шаблон жестко забито начало запроса с "ВЫБРАТЬ", таким образом запросы, начинающиеся с "Выбрать", не распознаются.
К тому же у меня было большое желание разобраться с регулярными выражениями - шаблон делал самостоятельно с нуля.
3. Сергей Старых (tormozit) 23.09.09 22:05
> в шаблон жестко забито начало запроса с "ВЫБРАТЬ"
Это где такое? Только что проверил -
Текст = "УНичтОжить а";
Конструктор корректно открывается.

Да и на самом деле я чаще вызываю редактор строкового литерала (CTRL+SHIFT+E), а конструктор запроса уже из него, если понадобится.
4. Сергей Старовойтов (AVARY) 26.09.09 07:55
Сори, насчет "ВЫБРАТЬ" поторопился