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

13.05.19

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

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

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

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

Начало

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

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

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

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

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

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

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

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

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

Журнал

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

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

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

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

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

 

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

См. также

SALE! 15%

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159331    872    399    

861

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

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

18.10.2024    9861    sergey279    18    

64

Запросы Программист Платформа 1С v8.3 Запросы Конфигурации 1cv8 Бесплатно (free)

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

11.10.2024    5157    XilDen    36    

80

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

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

16.08.2024    7891    user1840182    5    

28

Математика и алгоритмы Запросы Программист Платформа 1С v8.3 Запросы Бесплатно (free)

Рассмотрим быстрый алгоритм поиска дублей с использованием hash функции по набору полей шапки и табличных частей.

08.07.2024    2393    ivanov660    9    

22

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    8677    implecs_team    6    

47

Запросы Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Часто поступают задачи по произвольному распределению общих сумм. После распределения иногда пропадают копейки. Суть решения добавить АвтоНомерЗаписи() в ВТ распределения, и далее используя функции МАКСИМУМ или МИНИМУМ можем положить разницу копеек в первую или последнюю строку знаменателя распределения.

11.04.2024    3390    andrey_sag    10    

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

Есть небольшие замечания, пожелания и вопросы.
1. Хотелось бы все таки управлять транзакцией, т.е. самому решать, нужна она или нет. Плюс вполне вероятна необходимость выполнять в единой транзакции обработку всех строк. Догадываюсь, какие здесь могут возникнуть проблемы, но возможно Вам удастся найти компромиссное решение.
2. Можно ли расширять примеры обработки строк? Они как-то привязаны к типу колонки? Предположение основывается на том, что в видео ветка примеров подчинена только ссылке.
3. Слишком много информации о времени в окне индикатора прогресса. :) Кажется, что лучше бы дополнительно отображать информацию о количестве успешно и не успешно обработанных строках.
4. Возможно удобно было бы иметь настройку, благодаря которой процесс обработки будет прерван при первой же ошибке.
Evg-Lylyk; +1 Ответить
4. Evg-Lylyk 4841 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 4841 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 4841 21.10.19 09:53 Сейчас в теме
(8) Нет, первоначально было, потом убрал для упрощения
10. 6y6ka_gop 21.10.19 10:14 Сейчас в теме
(9) Жаль, такая опция была бы кстати. Иногда есть необходимость что то сделать после выполнения цикла, или обработать саму таблицу значений результата запроса.
Evg-Lylyk; +1 Ответить
11. Evg-Lylyk 4841 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 4841 03.12.21 17:32 Сейчас в теме
Оставьте свое сообщение