Групповая обработка (Управляемая консоль отчетов)

13.05.19

Разработка - Запросы

Статья предназначена тем, кто понимает, зачем нужна групповая обработка в консоли запросов. Рассматривается групповая обработка в консоли Управляемая консоль отчетов.

Обработка результата появилась в консоли с версии 2.8 и улучшалась. С версии 3.2 стала достойна чтобы о ней рассказать.

  • Подробная информация о прогрессе (с возможность прерывания)
  • Выполнение в фоне (доступно только в расширении)
  • Помощь в написании кода, вставка ссылки на объект
  • Журнал выполнения (с возможность обработать повторно группу объектов)
  • Получение сообщений пользователю и привязка к обрабатываемой строке
  • Переход к месту ошибки

Начало

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

Запуск инструмента обработки результата "Инструменты - Обработка результата"

Настройка алгоритма обработки

Для каждой строки (в транзакции) выполняется описанный алгоритм. Обращение к данным строк производится через "Строка", Параметрам запроса через "Параметры".

Справа в дереве отображается панель помощи по коду. Через "Вставка ссылки на объект..." можно вставить ссылку в виде кода в алгоритм обработки.

Запуск обработки, прогресс

Проверка написанного алгоритма "Обработать - Обработать одну строку", обработка всех объектов "... - Обработать все".

В процессе обработки отображается информация о прогрессе для фонового выполнения она более подробная

Отображение прогресса при фоновом выполнении

Журнал

По окончанию обработки все данные собираются в журнал и группируются успешно обработанные в одну группу, те что с ошибками в группу с ошибками.

Например результат обработки справочника склады (установка всем элементам кода "123"):

Объект = Строка.Ссылка.ПолучитьОбъект();
Объект.Код = "123";
Объект.Записать();

На закладке сообщения собираются сообщения пользователю (привязываются к обработанной строке)

При выборе строки производится расшифровка

 

Обработка Групповая Консоль Запрос

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    184002    1024    403    

967

Обновление 1С Запросы Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Данный инструмент помогает анализировать доработанную конфигурацию после обновления на новый релиз и находить «битые» тексты запросов, в которых участвуют несуществующие в новом релизе метаданные.

2 стартмани

06.02.2025    2167    17    XilDen    26    

36

Запросы Программист Платформа 1С v8.3 Запросы 1C:Бухгалтерия Бесплатно (free)

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

03.12.2024    5660    artemusII    11    

23

Запросы Программист Бесплатно (free)

Увидел cheatsheet по SQL и захотелось нарисовать подобное, но про запросы.

18.10.2024    13074    sergey279    18    

65

Запросы Программист Платформа 1С v8.3 Запросы 1C:Бухгалтерия Бесплатно (free)

Столкнулся с интересной ситуацией, которую хотел бы разобрать, ввиду её неочевидности. Речь пойдёт про использование функции запроса АВТОНОМЕРЗАПИСИ() и проблемы, которые могут возникнуть.

11.10.2024    8164    XilDen    36    

90

СКД Механизмы типовых конфигураций Запросы Программист Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    3159    PROSTO-1C    0    

23

Запросы Программист Запросы Бесплатно (free)

Отлаживая взаимодействие с базой данных, мы регулярно сталкиваемся с зависающими или подозрительно долго выполняющимися обращениями, негативно влияющими на производительность. О том, как в PostgreSQL выявить подозрительные запросы, основываясь на доступной о них информации, расскажем в статье.

16.08.2024    10753    user1840182    5    

29
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. acsent 1205 13.05.19 14:58 Сейчас в теме
необходима возможность обработки не только строки, но всей выборки целиком.
+ желательно ииметь возможность не выводить отбработанные строки, ибо их может быть много
Evg-Lylyk; +1 Ответить
2. Evg-Lylyk 4978 13.05.19 15:07 Сейчас в теме
(1) Постараюсь учесть, есть проблемы: как организовать индикацию при обработки всего
"не выводить отработанные строки" в принципе можно сделать отключение журнала
3. dhurricane 14.05.19 08:58 Сейчас в теме
Здорово. Спасибо большое за Ваш труд.

Есть небольшие замечания, пожелания и вопросы.
1. Хотелось бы все таки управлять транзакцией, т.е. самому решать, нужна она или нет. Плюс вполне вероятна необходимость выполнять в единой транзакции обработку всех строк. Догадываюсь, какие здесь могут возникнуть проблемы, но возможно Вам удастся найти компромиссное решение.
2. Можно ли расширять примеры обработки строк? Они как-то привязаны к типу колонки? Предположение основывается на том, что в видео ветка примеров подчинена только ссылке.
3. Слишком много информации о времени в окне индикатора прогресса. :) Кажется, что лучше бы дополнительно отображать информацию о количестве успешно и не успешно обработанных строках.
4. Возможно удобно было бы иметь настройку, благодаря которой процесс обработки будет прерван при первой же ошибке.
Evg-Lylyk; +1 Ответить
4. Evg-Lylyk 4978 14.05.19 09:13 Сейчас в теме
(3)
1. Проблем нет
2. Примеры привязаны к типу все примеры для ссылочных типов. Есть предложения?
3. Да согласен разумно отразить количество ошибок
4. Надо подумать

Спасибо за обратную связь, постараюсь учесть
5. dhurricane 14.05.19 09:22 Сейчас в теме
(4) 2. Ничего путного предложить не могу. Если только:
а. выделить примеры в ветке, например той же пиктограммой f(x);
б. добавить команду сохранения алгоритма как шаблон, который в последствии отобразится в примерах.

И пожалуй действительно, примеры нужны только для ссылочных типов. Для прочих ветка примеров будет будет только загромождать интерфейс. Разве что отдать это на откуп пользователю консоли при реализации пункта (б).
Evg-Lylyk; +1 Ответить
6. Evg-Lylyk 4978 04.06.19 17:56 Сейчас в теме
(3) в версии 3.3 реализованы ваши пожелания по Обработке результата
AlexandrSmith; dhurricane; +2 Ответить
7. пользователь 17.06.19 21:18
Сообщение было скрыто модератором.
...
8. 6y6ka_gop 21.10.19 09:51 Сейчас в теме
Подскажите, есть возможность выполнения кода вне цикла, до/после обработки результата?
9. Evg-Lylyk 4978 21.10.19 09:53 Сейчас в теме
(8) Нет, первоначально было, потом убрал для упрощения
10. 6y6ka_gop 21.10.19 10:14 Сейчас в теме
(9) Жаль, такая опция была бы кстати. Иногда есть необходимость что то сделать после выполнения цикла, или обработать саму таблицу значений результата запроса.
Evg-Lylyk; +1 Ответить
11. Evg-Lylyk 4978 21.10.19 10:15 Сейчас в теме
(10) Постараюсь учесть в будущем
6y6ka_gop; +1 Ответить
12. пользователь 26.12.19 10:36
Сообщение было скрыто модератором.
...
13. denisgalimoff 45 03.12.21 16:23 Сейчас в теме
А где ссылка на скачивание?
14. Evg-Lylyk 4978 03.12.21 17:32 Сейчас в теме
Оставьте свое сообщение