Внешняя обработка-каталог для быстрого создания и организации полезных процедур (8.2)

11.10.13

Разработка - Инструментарий разработчика

Обработка позволяет объединить функционал нескольких обработок в одной, с удобной навигацией и автоматическим сохранением значений параметров.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Внешняя обработка-каталог
.epf 8,84Kb ver:1.0.3
4 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Во время поддержки баз часто накапливается множество мелких обработок, иногда даже состоящих из одной процедуры. В итоге в папке с обработками наступает бардак: уже не помнишь какая актуальна, или что делает файл внешняяобработка1.epf. Не говоря уже о том, как "долго" создавать обработку которая получает данные хитро-вывернутым способом и выводит результат в табличную часть.

 
Представленная обработка обладает следующими преимуществами:
  • Все хранится в одном файле
  • Позволяет вывести любую таблицу на форму одной строчкой
  • Легко добавляются описания к процедурам, всегда можно вспомнить, что делает процедура
  • Выводит данные как в виде текстового документа, так и в виде таблицы
  • Можно вывести несколько таблиц рядом во вкладках для сравнения
  • Автоматически сохраняет значения параметров
  • Для каждой хранит процедуры свои параметры
 
Пример использования.

Допустим нам надо создать простенькую обработку, которая выбирает леммы(слова) из документа и выводит их в виде, удобном для загрузки во flashscard программу и одновременно выводит таблицу значений с частотой использования леммы.
 
При создании обычной обработки нам нужно создать обработку, создать реквизиты, придумать и создать таблицу с реквизитами, создать форму, красиво расположить реквизиты и наконец реализовать алгоритм. Причем подготовительная часть занимает даже больше времени на создание, чем кодинг. Работать мышкой удобно, но медленно. 
 
При использовании представленной обработки, единственное подготовительное действие - это создание новой команды, все остальное делается кодом, не отрываясь от клавиатуры. Приступим. 
 
1. Создадим копию обработки, откроем и поменяем ей название, чтобы не перепутать с другими наборами процедур. Я делаю это один раз для каждой базы, в последствии этого шага не будет.
 название
 
2. Открываем форму и добавляем новую команду формы. Название этой команды обязательно должно начинаться с "тмп_". В данном случае "тмп_ВыгрузкаСловДляЗаучивания". В синониме пишем то, что будет отображаться в списке на форме при выполнении обработки.
Создание команды
 
3. Создаем процедуру для команды. Добавляемые реквизиты, так же как и с командами, должны иметь префикс "тмп_"
 
&НаКлиенте
Процедура тмп_ВыгрузкаСловДляЗаучивания(Команда)
 ОчиститьРеквизиты(); // Процедура обязательна для каждой пользовательской команды. Она удаляет реквизиты предыдущей команды, а также сохраняет введенные значения.
 
 ДобавитьРеквизитНаФорму("тмп_Документ",Новый ОписаниеТипов("ДокументСсылка.СписокСлов"),Команда.Имя);
 ДобавитьРеквизитНаФорму("тмп_ЯзыкИсточник",Новый ОписаниеТипов("ПеречислениеСсылка.Языки"),Команда.Имя);
 ДобавитьРеквизитНаФорму("тмп_ЯзыкПеревод",Новый ОписаниеТипов("ПеречислениеСсылка.Языки"),Команда.Имя);
 
 Комментарий="Процедура выводит список слов для загрузки во флешкарт."; // Комментарий чтобы помнить для чего процедура
КонецПроцедуры
 
4. Все реквизиты у нас есть, реализуем алгоритм. Алгоритм реализуется в процедуре, название которой совпадает с названием процедуры команды формы, но с добавлением в конце слова "Сервер":
 
&НаСервере
Процедура тмп_ВыгрузкаСловДляЗаучиванияСервер()     
     Запрос = Новый Запрос;
     // Дальше идет запрос
     РезультатЗапроса = Запрос.Выполнить();
     Выборка = РезультатЗапроса.Выбрать();
     Пока Выборка.Следующий() Цикл
          // Процедура выводит строку в табличный докумет, который называется лог
          // его можно использовать как для отладки, так и для получения результата.
          ЗаписатьВЛог(""+Выборка[Строка(ЭтаФорма["тмп_ЯзыкИсточник"])]+Символы.Таб+Выборка[Строка(ЭтаФорма["тмп_ЯзыкПеревод"])]);
     КонецЦикла;
    // С помощью этой процедуры мы можем вывести любую произвольную таблицу значений на форму
     ЗагрузитьТаблицуНаФорму(РезультатЗапроса.Выгрузить(),"Таблица1","Список слов");
    
КонецПроцедуры
 
Результат работы созданной процедуры:
 
Результат работы
 
 Результат в таблице
 
Описание процедур, используемых в пользовательских разработках

ОчиститьРеквизиты(); 

-Обязательна для использования процедура! Указывается первой строчкой в процедуре вызываемой командой формы. Она сохраняет и убирает реквизиты предыдущей используемой процедуры.

ЗагрузитьТаблицуНаФорму(ТабРез,НаправлениеВывода="Таблица1",ЗаголовокСтраницы=Неопределено);

Загружает прозивольную таблицу на форму.
 
Параметры:
ТабРез - таблица значений, которую надо вывести на форму.
НаправлениеВывода - строка. Может принимать значения "Таблица1","Таблица2","Таблица3". Используется если нужен одновременный вывод таблиц на форму.
ЗаголовокСтраницы - строк. Заголовок, который будет отображаться на форме.

ЗаписатьВЛог(ДобавляемаяСтрока);
 
Выводит текст в текстовый документ на форме.

Дополнительные советы

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

Вступайте в нашу телеграмм-группу Инфостарт

См. также

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

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

16500 руб.

02.09.2020    258593    1428    421    

1165

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    68061    356    164    

312

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    54863    111    29    

123

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26

22570 руб.

06.10.2023    38187    101    46    

122

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

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

17000 руб.

10.11.2023    25245    93    46    

102

Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5.

6000 руб.

25.02.2026    3623    13    1    

16

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки. 1.3.11 Доработан механизм контекстной подсказки по метаданным

9500 руб.

17.05.2024    52870    182    63    

216
Для отправки сообщения требуется регистрация/авторизация