Вариант для 8.3.5 может работать в безмодальном режиме.
Вариант для 8.3.6 вообще не использует "нерекомендуемые синхронные вызовы" (полностью асинхронный режим).
Обработка Консоль запросов для управляемого приложения повторяет привычный интерфейс и большинство функционала обработки Консоль запросов для 1С 8.1. Она также позволяет получать результаты пакетных запросов и временных таблиц. Нужный состав результата выполнения выбирается в поле выбора Получать результаты из трех вариантов: Только запросов, Запросов и временных таблиц, Только временных таблиц.
Запросы исполняются как под толстым, так и под тонким клиентом, поскольку для выполнения запроса по-любому происходит обращение к серверу.
Файл запросов
Файл запросов (.sel) для Консоли запросов управляемого режима аналогичен файлу для Консоли запросов платформы 8.1; можно открывать имеющиеся файлы запросов, разработанные в 8.1. Аналогично, файлы, созданные в Консоли управляемого режима, можно открывать в Консоли 8.1.
Конструктор запроса
Конструктор запроса вызывается через контекстное меню поля текста запроса. Конструктор запроса в тонком клиенте недоступен — пункт меню открытия Конструктора блокируется. В толстом клиенте управляемого приложения Конструктор запроса доступен.
Конструктор запроса для тонкого клиента открывается как в тонком, так и в толстом клиенте нажатием на специальную кнопку на панели команд.
Параметры запроса
Параметры текущего запроса вводятся на закладке Параметры запроса в левой верхней части формы Консоли, на внутренней закладке Общие. По кнопке Заполнить производится автоматическое заполнение списка параметров из текста запроса.
Можно задавать параметр типа Тип. Для этого нужно назначить тип параметра ОписаниеТипов и задать требуемый тип. Если будет задан составной тип, то будет использоваться только первое значение из состава типов.
Параметры запроса типа Граница и МоментВремени
Параметры запроса этих типов редактируются на внутренней закладке Особые закладки Параметры запроса (она имеет специальный цветовой стиль). Их можно вводить вручную по кнопке Добавить, а также переводить в категорию «особых» параметры с внутренней закладки Общие, выполнив щелчок по флажку в колонке Особый тип — при щелчке по флажку выдается предупреждающее сообщение, и при положительном ответе на него параметр будет переведен на закладку Особые. (При автозаполнении списка параметров по кнопке Заполнить все параметры попадают на закладку Общие).
Для редактирования параметров этих типов открывается специальная форма Редактирование параметра особого типа, в которой есть поля для редактирования имени параметра и указания типа параметра (пока доступны типы Граница и МоментВремени; в дальнейшем предполагается добавить тип ТаблицаЗначений). При выборе типа из списка Тип параметра на форме появляются поля для задания значения параметра выбранного типа. Для задания значения параметра типа МоментВремени нужно указать документ, а для задания параметра типа Граница нужно указать значение и тип границы (Включая или Исключая). Для задания значения границы можно указать дату либо момент времени (выбирается при помощи радиокнопки Способ задания; в случае задания способа Дата нужно задать дату, а в случае задания способа Момент времени нужно задать документ).
Редактирование параметра завершается нажатием кнопки Завершить.
Поле результата запроса
Для отображения результата запроса в управляемом режиме используется поле табличного документа. Поскольку автоматически выровнять ширину таблицы результата по правому краю поля затруднительно, применяется визуальное выравнивание при помощи полосы регулирования (слайдера) Ширина колонок внизу формы: при перемещении ползунка вправо или влево меняется ширина сразу всех колонок таблицы результата, таким образом, можно подогнать правую границу таблицы результата под правый край формы. Ширина колонок каждого запроса сохраняется в файле запросов (.sel).
Вложенные таблицы
Вложенные таблицы (когда поле результата запроса само имеет тип РезультатЗапроса) отображаются зеленой надписью <РЕЗУЛЬТАТ ЗАПРОСА> в ячейке поля результата. Вложенная таблица открывается двойным щелчком в виде табличного документа.
Пакетные запросы
Поименованные результаты пакетных запросов выводятся в поле результата один под другим. Способ выгрузки и ширина колонок одинаковы для результатов всех запросов пакета.
Временные таблицы
Если выбрано получение временных таблиц, то после выполнения запроса в тексте запросов ищутся все имена временных таблиц, и для каждой поочередно выполняется выборка, результат которой выводится. Если в пакетном запросе имеются предложения УНИЧТОЖИТЬ, то для уничтоженных таблиц выводится сообщение об ошибке.
Выполнение выделенного текста
Если выделить фрагмент текста в поле текста запроса, то, выбрав пункт контекстного меню Выполнить выделенный текст, можно выполнить выделенный фрагмент как самостоятельный запрос. Это позволяет выполнять отдельные запросы пакета и вложенные запросы. Конечно, нужно следить, чтобы выделенный текст представлял синтаксически правильный запрос.
Переподчинение запроса в дереве запросов
Для переноса запроса в другую ветвь дерева нужно выполнить перетаскивание мышью этого запроса на новую родительскую ветвь. Производится контроль возможности зацикливания подчинения, в этом случае выдается предупреждение и переподчинение не выполняется.
Хороший вариант. Но стоило бы тип значения параметров присваивать автоматом, а то каждый раз спрашивает (хорошо, что позиционирует на нужном)…
(1) Пробовал, не удалось — в модуле обработки делается попытка приведения типа. Буду еще копать.
(2) Покопай в сторону создания элементов управления на форме и реквизитов формы с нужным типом (как вариант).
(3) Угу, спасибо. Посмотрю.
+ За еще одну консоль 8.2 🙂
на счет параметров и типов посмотри приложенный файл
народ, у меня местная прокся не дает скачать файл… киньте на мыл, плз
vakhrin собака pecom точка ru
(6) Ушло
Полезная вещь. Плюсанул. 🙂
(5) Нет, не получается. Единственное различие с твоим вариантом — у меня это поле связано с элементом формы, а не с реквизитом, поскольку параметры хранятся для каждого запроса, и связь возможна только через ТекущиеДанные грида дерева запросов.
Ну, ничего, я 8.2 только третью неделю занимаюсь, авось, придумаю 🙂
(5) Победил. Но через прямую кишку — играя обработчиками событий. Почему не получается напрямую, как у тебя, так и не въехал. Специальные картинки кнопки выбора параметра (календарь, калькулятор) тоже не появляются.
Обновил файл.
а у меня она вообще не работает в 8.2.9… конструктор не нажимается, если справа ввожу вручную запрос — он исчезает… как работать с такой консолью?
(11) Конструктор не нажимается в тонком клиенте?
(12) в толстом она вообще не открывается. Открывается в режиме управляемого приложения — тонкий клиент, но конструктор нажать не могу, он заблокирован.
(13) В тонком конструктор не доступен.
Другие консоли как открываются?
ошибся с версией 8.2, не работает в 8.2.10.73, в младших (8.2.9 и ниже) не пробовал…
(14) всё, понял 🙂 работает в толстом режиме управляемом приложении.
спасибо.
Добавил работу с пакетными запросами и временными таблицами (см. описание).
(11) Что значит «запрос исчезает»?
(17) в тонком клиенте пытался вручную ввести запрос и хотел нажать кнопку «Выполнить», только не успел дописать до конца, как всё поле оказалось пустым. Сейчас смотрел, вроде нормально — написал и выполнил в тонком клиенте.
Но есть другой глюк, если переместить нижний ползунок в самое начало (влево), то он там и остается и больше не двигается (в тонком клиенте). И загрузка процессора — 100% — 1С 8.2 висит.
(18) Угу, точно. Поставил минимум 5. Теперь вроде не зависает. Обновил.
Кстати, здесь еще надо работать с обменом файлами списков запросов между клиентом и сервером. Это пока не сделано. Постараюсь сделать в ближайшее время, как разберусь с передачей файлов туда-сюда.
Реализовал файловое взаимодействие между клиентом и сервером через временное хранилище — т.е. полный клиент-серверный вариант.
(20) Кстати, у меня уже давно проявилась идея, написать свой аналог конструктора для тонкого клиента, хотя бы с минимальным набором функционала…
(20) Только возьми в расчет то, что в веб-клиенте другие методы работы с файлами.
(22) Угу, я о веб-клиенте как-то и не подумал. Надо как-нибудь доделать, спасибо за совет.
Да, идеи насчет тонкого конструктора бродят среди коллег. Поднять метаданные на сервере и через XML/XDTO передать на клиент, а там код сделать для создания запроса. Конечно, работа тонкая и объемная, много свободного времени надо.
При нажатии на DEL удаляется весь запрос. 👿 Можеш убрать фокус с дерева запросов. Меня это аж бесит.
(24) Запретил удаление запроса по DEL. На кнопку «Удалить запрос» повесил Ctrl+BackSpace.
>> При нажатии на DEL удаляется весь запрос. smile:evil:
>> Можеш убрать фокус с дерева запросов. Меня это аж
>> бесит.
так вот в чем была проблема 🙂 (пост 11, ответ на 17 пост) 🙂
тоже нажимал Del
Что-то не получается сохранять и открывать файлы *.sel. При открытии такого файла вообще ругается.
(27) Можно подробнее? И файл на анализ, плз.
Файл пытался брать от 8.1. Я немного ковырял код обработки: получилось, что ЗначениевФайл() даёт ложь. Равно как и ЗначениеИзФайла().
Конфигурация — УТ 11, самая последняя, толстый клиент в режиме 3-х звенки, всё на одной машине.
Всё, написал и сразу же понял. Если всё это будет выполняться &НаСервере, и пытаться сохранить в каталог пользователя, то Windows рубит через NTFS такие попытки. У меня сервер 1С:Предпряитие работает под обычной учётной записью специально созданного для него пользователя.
Т.е. нужно так её переписать, чтобы строка файла приезжала с сервера, а клиент уже сохранял бы уже под правами пользователя Windows, под которым запущен толстый клиент.
(30) Не уверен, что правильно понял. У тебя последний вариант, с файловым взаимодействием между клиентом и сервером через временное хранилище? Если нет — скачай последний, если да, то тогда действительно нужно что-то думать.
(31) Обновил консоль до последней версии: всё заработало. Спасибо!
(32) И Вам спасибо, коллега! 🙂
Ну и стоит добавить конструктор запроса в контекстное меню.
(34) Угу, добавил.
Еще сделал возможность выполнить выделенный текст из контекстного меню, как в старой Консоли, чтобы вложенные запросы отдельно выполнять.
Обновил.
Добавил комментарий к консоли 8.1, если интересует, могу выслать свои наработки для переделки под 8.2 🙂http://infostart.ru/public/64616/?PAGEN_1=1#tab_new_forum (34 пост). Мой емайл evgeniuxp@yandex.ru.
(36) Да не, спасибо, мне щаз работенку подкинули срочную — так что долго руки чесаться не будут 🙂
(37) Хорошая консоль, только что очень выручила. Но есть один вопросик — нет в планах доработки параметров, чтоб можно было выбирать Тип (Значение, Выражение, Список) и Тип значения (конкретный или составной), как в консоли Инструментов разработчика 8.1? И по файлу запросов — каждый раз при открытии приходится его вручную выбирать, можно чтоб сохранялся последний?
(38) Насчет Типа значения — хорошая мысль, постараюсь в ближайшие дни доработать, забыл как-то, что в запросах 8.2 типы появились. А вот про Тип (Значение, Выражение, Список) — не понял. Как это? Список значений вроде и сейчас можно выбирать.
Сохранение файла запросов — да, тоже надо доделать.
(39) Ой, со списком значений я действительно протупил — не заметил эту строку в полном списке объектов, сейчас досмотрел. Именно его мне и не хватало, по большому счету. Спасибо за отличную консоль! 🙂
(38) Не так-то все просто с параметром-типом. Реквизит формы может иметь тип ОписаниеТипов, но не Тип, а нужно именно Тип, причем конкретный.
Надо еще подумать.
P.S. Гы, пока писал — придумал. 😀 Буду при присвоении параметра обрабатывать тип ОписаниеТипов отдельно.
Новая версия.
1. Добавлена возможность изменения родителя в дереве запросов — перетаскиванием на нового родителя.
2. Добавлена возможность задавать параметр типа Тип.
Исправлена ошибка перетаскивания.
В тестовом релизе платформы 8.2.11.201 перестали заполнятся (да и вообще добавляться и редактироваться) Параметры запроса.
(44) Пока еще не юзал 8.2.11. Посмотрю на той неделе.
(44) На версии 8.2.11 слетает связь таблицы параметров с табличным полем. Исправил. Но эта новая версия уже не работает в 8.2.10. Поместил в архив обе версии — для 8.2.10 и для 8.2.11.
В процедуре «ТонкийКлиент()» ошибка — неправильно опознается режим запуска. Если у меня режим запуска «Толстый клиент» и в конфигурации включена возможность использования управляемых форм в обычном приложении — в заголовке формы все равно пишется «(тонкий клиент)». Исправление очевидно.
(47) Странно, у меня все в порядке. Проверил на 10 и на 11 релизе, специально включил Использовать управляемые формы в обычном приложении. Запускал из отладчика.
Можно подробнее?
(48) Основной режим запуска — обычное приложение. Флаг использования управляемых форм в обычном приложении -установлен. Релиз 8.2.11.229
Собсно, там ошибка такого рода: стоит проверка
А надо:
Тогда все отрабатывает нормально. Поскольку у меня режим запуска ТолстыйКлиентОбычноеПриложение
(47) А, понял. Вы запускаете толстый клиент — обычное приложение.
Да, действительно, надо исправить условие инструкции препроцессору.
При создании нового запроса по нажатию Insert создавался неинициализированный элемент. Теперь с клавиатуры новый запрос создается по нажатию F11.
Продолжаем исправлять сволочные ошибки перехода на версию 8.2.11.
В таблице параметров у поля значения оторвались кнопки очистки и выбора. Исправил.
Еще одна — при переходе на 8.2.11 оторвались обработчики событий у поля значения параметра. Исправил.
не заполняются параметры (платформа 8.2.11.235)
(54) См. посты 46 и 52.
Добрый день! Не открывается программа в 8.2.11.236. Что нужно сделать, чтобы пользоваться Вашей программой (может быть какие-то настройки).
(56) Добрый день! А в каком режиме Вы открываете, не в обычном ли? Если в управляемом, то что именно происходит?
Коллеги просили дать альтернативу получению строкового представления ссылки при ее выводе в поле результата, поскольку для получения представления требуется значительное время и ресурсы.
Сделал возможность выводить вместо представления значение ГУИД ссылки — получение ГУИД ссылки не требует обращения к информационной базе.
Ребята, последние дни прямо не успеваю вынимать из ящика письма о «плюсах» 😀
Всем плюсовавшим — огромное спасибо! Всем с благодарностью жму руки.
Неплохая разработка, но что-то долго открывается.
Я пока пользуюсь другой, давно поставил, теперь лень перетаскивать запросы из нее.
Из пожеланий:
Длинный синоним, может просто «Консоль запросов» ?
Ни к чему отдельно выполнить выделенное. Просто выполнить, если выделено то только его, так работает мс кверианализер и в постгри по-моему так.
Забайндить какую-нить кнопку на выполнить, может «f5» ?
Лишние вопросы сохранять, не сохранять…
(60)
Благодарю за анализ.
На скорость открытия вроде никто еще не жаловался. Канал с сервером как, в порядке? Искуссвенная задержка не установлена?
По пожеланиям.
1. Да, синоним уже можно сократить.
2. Нет. В старой Консоли это задрало: забыл снять выделение с какого-то слова — сразу ошибка выполнения запроса.
3. Согласен. Сам давно хочу горячую клавишу на Выполнить повесить, все забываю.
4. Не согласен, эти вопросы лишними не бывают.
По просьбе коллеги сделал, чтобы Консоль также показывала временные таблицы англоязычных запросов (когда вместо ПОМЕСТИТЬ стоит INTO).
Конструктор запросов хорошо бы еще сюда…
(63)
Конструктор запросов хорошо бы еще сюда…
Смею предложить первый опыт помощника для создания запросов в тонком клиенте:
http://infostart.ru/public/83529/
Я легко внем разобралась, очень пригодился
Прикольненько
Неплохо бы кнопку с конструктором вынести на панель, это первое, а второе сделать вариант сохранения теста запроса в отформатированном для 1С виде, т.е. с символами «|» в начале каждой строки. А то добавлять их потом вручную сильно лениво…
(67)
Кнопка вызова Конструктора на панели есть, только она невидима. Можно самостоятельно установить флажок видимости.
Копировать в модуль предпочитаю через Конструктор запроса. Он не только расставляет символы «|», но и удваивает кавычки в строковых литералах.
А для автоматической расстановки символов «|» есть специальная кнопочка «Добавить перенос строки», она находится в категории «Текст модуля» на закладке «Команды» формы настройки панелей. Нужно просто перетащить ее в одну из панелей Конфигуратора. Выделяем фрагмент, нажимаем кнопочку — и символы «|» появляются в начале каждой строки выделенного фрагмента.
А чем-то отличается от консоли что в составе каркасной конфигурации для сдачи СПЕЦа по платформе?
(69)
Там 1С-овская Консоль запросов для работы в обычном режиме.
(70) консоль как и вся каркасная в управляемом. Работы с ВТ нету как обычно.
(71)
http://www.1c.ru/rus/partners/training/questions.htm
Borisych, а где это?
Я скачивал отсюда:
(73) и правда косяк вышел. Когда задачку по спецу решал — видел в интерфейсе, а конфа только в УП, думал 1С-цы сделали консоль под 8.2 УП. Оказывается нет 🙂
(73) и правда косяк вышел. Когда задачку по спецу решал — видел в интерфейсе, а конфа только в УП, думал 1С-цы сделали консоль под 8.2 УП. Оказывается нет 🙂
(74)
Borisych, да они сделали под УП — на последнем ИТС есть. Там есть работа с ВТ. Похоже, слизали все, что можно, у меня и у Чистова :))
Только вот нахрен они сделали файл запросов в формате XML? Все равно ведь этот файл никто, кроме этой Консоли запросов, не читает. И в результате совместимость пропала.
(76) пришли пожалуйста на почту grigorievab@list.ru и ещё обработку «Создание нового пользователя ИБ» или что-то в этом духе. До ИТС-ника наверно ток через неделю доберусь
(77)
См. почту.
Как только не извращаются… Чем вам обычный не нравится??
однозначна плюс
Хорошая штука,главное полезная
очено удобная штука. Долго искал, наконец то нашел. Держите плюс!
автору плюс
Использую эту консоль давно, пора автору плюс поставить. 🙂
Автору + и спасибо.
консоль и правда очень удобно, и радует, что люди подобное выкладывают и не приходится изобретать велосипед 🙂 автору спасибо
Спасибо за обработку. Пробовал несколько подключать в разных режимах, открывается форма с одной кнопкой и все. Никаких запросов. А эта обработка заработала сразу. Вроде пока нареканий нет.
(0) А сам файлик с обработкой последней версии?
Консоль запросов для управляемого приложения 8.2 / Версия 5
А есть такое же красивое для 8.1? Конкретно для толстого НЕ управляемого 8.2.13.202 с включенной эмуляцией 8.1 🙂
(89) Поручик, дык вроде здесь у меня всегда последняя…
(90) Altair777, для обычного режима вроде Чистов делал.
http://infostart.ru/profile/1437/
(92) я ее пользуюсь сейчас, но она не такая красивая 🙂
(91) Здесь дата обновления 29.07.2010 20:02, на странице Консоль запросов для управляемого приложения 8.2 / Версия 5 — март 2011 года.
(93) Вам шашечки или ехать? Я например в конфигурациях на УФ 8.2 в обычном режиме успешно пользуюсь консолью от Лавелина.
(96) Консоль от Чистова не очень удобная, а эта мне показалась получше (по скриншотам)
(97) Altair777, не, я не делал для обычного режима. Уже почти два года, как вожусь только с управляемым — работа такая.
Как сказал в частном разговоре тов. Радченко, «обычный режим — это атавизм» 🙂
(99) Джэкпот
Передайте тов. Радченко пламенный привет и пожелание запилить всю Розницу 2 на
блэкджеках и шлю..управляемых формах, то есть РМ кассира тоже.(100) Поручик, да я сам с ним не общаюсь, это один из наших преподов их разговор передал.
А вкратце, какие там проблемы с реализацией?
(101)
точно такие же, как и в остальных — УФ не ориентированы на создание качественного, компактного и информативного интерфейса.
(21) dushelov, прощай, Василий.
Только что случайно прочитал на Т1С, что тебя больше нет с нами.