1с не работает консоль запросов

Обновлено: 04.07.2024

(33) Нет.
Просто полагаю, что для поездки с дома на работу не всегда нужен Урал с прицепом, экскаваторным ковшом, краном, плугом, и ещё десятком разного рода приблуд и насадок, не всегда понятного назначения.
Особенно когда этот Урал периодически перестаёт ехать после обновления платформы или каких-либо режимов работы конфигурации, требует частичного или полного встраивания, и работает только в обычных формах или только в толстом клиенте.

Поэтому пусть лучше Урал в гараже постоит, откуда я его выгоню, когда мне потребуется его функциональность. А для ежедневных поездок по городу мне вполне седан подойдёт.

(34) НЕ работает
: Ошибка при вызове метода контекста (ОткрытьМодально): При подписке ПереопределитьПолучаемуюФормуПрисоединенногоФайлаЗарплатаКадрыБазовая на событие ОбработкаПолученияФормы произошла ошибка. Обработчик события не найден.
(37) Зачем отладчик? Что он тебе даст при этой ошибке? В особенности, если реально обработчик есть. А платформа в режиме предприятия его не видит.
(39) возможно дело в том, что надо открывать формы немодально? в этой консоли как раз универсальные процедуры открытия форм есть, чтобы на всех платформах работало
Обновления конфигураций (БП КОРП и ЕРП) делали в понедельник, с тех пор НОВЫЕ запросы создать не могу. Старые все работают. Консоли с ИТС и БСП работоспособность сохранили.
(43) Можно попробовать в конфигурации установить режим использования модальности "Использовать".

Описание решения проблемы (23) и (39).

(38) Вся соль в том, что почти никогда не нужен один только ковш

(39) Странно, у меня на разных конфигурациях работает. Пробовал найти подписку на событие из ошибки "ПереопределитьПолучаемуюФормуПрисоединенногФайлаЗарплатаКадрыБазовая" - и не находит.

НЕ "ПереопределитьПолучаемуюФормуПрисоединенногФайлаЗарплатаКадрыБазовая" =
"ПереопределитьПолучаемуюФормуПрисоединенногоФайлаЗарплатаКадрыБазовая".

(51) Ну если у тебя в двух конфигурациях есть подписки на событие "ПереопределитьПолучаемуюФормуПрисоединенногоФайлаЗарплатаКадрыБазовая",
а ошибка валится на "ПереопределитьПолучаемуюФормуПрисоединенногФайлаЗарплатаКадрыБазовая" (без "о") то странно, откуда он берет именно это название.
(52) Чисто ради интереса замени "Если КонструкторЗапроса.ОткрытьМодально() Тогда" на "Если Истина Тогда".

(51)(52) Я же в (46) написал способ решения.

Суть заключается в том, что в толстом клиенте на УФ в режиме клиент-сервер обработчик ищется почему-то на клиенте. А РаботаСФайлами.ОпределитьФормуПрисоединенногоФайла находится в модуле РаботаСФайлами, который только на сервере.
Устаревший вызов работал как раз на клиенте. Вызывался из модуля, у которого стоит галка ВызовСервера или Клиент, или и то и другое.

Способ решения заключается в том, чтобы поместить обработчик этой подписки в модуль, у которого стоит ВызовСервера. А уже из этого обработчика дёргать стандартный - РаботаСФайлами.ОпределитьФормуПрисоединенногоФайла.

(52) По моему конструктор запросов требует открытия в толстом клиенте.

(58) Конструктор запросов работает в тонком клиенте. Тут проблемы не возникает. А в толстом клиенте на УФ в клиент-серверном варианте он косячит. Например, в файловой базе проблемы не будет.

Конструктор схемы компоновки данных работает только в толстом клиенте. Из-за этого приходится работать с ним в толстом клиенте. А когда мы из конструктора схемы компоновки пытаемся открыть конструктор запроса (нормально работающий в тонком клиенте) появляется косяк конструктора запросов.

Как-то так. Надеюсь, я понятно объяснил.

(57) Да
(58) Нет, но конструктор запросов в толстом и тонком клиентах - выглядят по разному, особенно ущербно работать с соединениями в тонком, если мы про 8.3 говорим.
(60) Не совсем так, есть 2 конструктора запросов, один работает в тонком, другой в толстом, но подмена окон скрыта внутри платформы, очень заметно на вкладке соединения различия.
А по поводу ошибок вызова конструктора запросов из СКД - не сталкивался, хотя работал с ним совсем недавно в последний раз,возможно это проблема конкретного релиза?

почему бы не запустить конфу в тонком клиенте?

(61) > это проблема конкретного релиза?

Это проблема проявляется при комбинации условий:
1. Клиент-сервер (на файловых не воспроизводится).
2. Режим использования модальности конфигурации - Не использовать или Использовать с предупреждением.
3. Толстый клиент.
4. Управляемые формы.
5. в обработчиках подписок на события объектов ОбработкаПолученияФормы вызываются методы, размещенные в модулях, которые компилируются только(!) на сервере (не стоит галка Клиент, не стоит галка ВызовСервера).

Если хоть одно из условий не выполняется, проблему не воспроизвести.

(62) > почему бы не запустить конфу в тонком клиенте?

В тонком клиенте не работает конструктор схемы компоновки данных. Только конструктор запросов. Конструктор СКД требует толстого клиента.

(56) ты всё правильно написал. Посмотрел в модуле "РаботаСФайламиСлужебныйВызовСервера" стоит флажок "Вызов сервера",
а в модуле "Работа с файлами" он снят.
Получается, чтобы заработали "сторонние" конструкторы надо снять конфигурацию с поддержки.
(63) скорее всего крабля в п5, потому что я работаю в 99% процентах случаев с выполнением условий 1-4. Мест где используется п5 мало, возможно не натыкался, но буду знать, спасибо
(66) "Мест где используется п5 мало" // В каждой типовой таких подписок и общих модулей по 20-30 штук
Начиная примерно с 8.3.14 кстати этот вечный баг пофиксили, по крайней мере для обработчика событий "ПередЗаписью"
(66) Естественно! Речь о том, что с какой-то версии БСП подменили вызов устаревших обработчиков, которые вызывались из модулей, скомпилированных на клиенте, на те, что скомпилированы исключительно на сервере. Поэтому, например на БП 3.0.68.хх всё работает, а на 3.0.71.хх - уже нет (см. (51)).
Ошибка НЕ повляется, конструктор открылся, НО запрос НЕ сохраняется.

Кто-нибудь знает - как получить список встроенных в платформу обработок. Не могу найти встроенную обработку конструктора запросов для СКД (есть подозрение, что она отдельная).
Я нашел только эти.

Вопрос

Добрый день, помогите разобраться! Почему в консоли запросов я не могу вызвать конструктор в месте, которое я указал на снимке экрана?

Реализация услуг и прочих активов

(нажмите, чтобы увеличить картинку)

Ответ

Добрый день! Судя по скриншоту, Вы используете новый, управляемый конструктор запроса. В нем нет возможности в редакторе произвольного выражения обратиться к вложенному конструктору запроса.

Что можно сделать для обхода:

  • Написать фрагмент запроса в редакторе произвольного выражения вручную. Например, вот так:
  • Открыть конструктор запроса в конфигураторе, там обычный конструктор запроса, эта возможность будет доступна.
  • Воспользоваться консолью запросов, которая использует обычный, классический конструктор запросов. Правда работать такой вариант будет только в толстом клиенте.
Это пример разобранного вопроса из Мастер-группы курса
Разработка и оптимизация запросов в 1С:Предприятие 8.3 .

Комментарии / обсуждение (2):

В самой свежей версии консоли с ИТС добавили эту команду, но работает она только при полностью пустом поле.

Добрый день!
Уточню. Здесь дело не только в самой консоли запросов с сайте ИТС, но и в используемой платформе.
Потому что, например, если консоль открыть в базе под платформой 8.3.13, то команда для открытия конструктора запроса будет просто недоступна в окне редактирования произвольного выражения:

8.3.13

8.3.16

При этом в управляемом конструкторе запроса будет недоступен прием, возможный в конфигураторе или в обычном (не управляемом) конструкторе запроса, когда выделяем пробел и при помощи контекстного меню открываем вложенный конструктор запроса.

Не получится вот в такой ситуации открыть вложенный конструктор запроса:

Выражение

Ошибка

Возникнет ошибка:

Читайте также: