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

11.10.13

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

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Внешняя обработка-каталог
.epf 8,84Kb ver:1.0.3
4
4 Скачать (1 SM) Купить за 1 850 руб.

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

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

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

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

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

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

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

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

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

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

См. также

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

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

15500 руб.

02.09.2020    179866    999    403    

953

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

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

8400 руб.

20.08.2024    21344    140    80    

141

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 руб.

06.10.2023    19347    51    19    

84

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

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

15000 руб.

10.11.2023    13141    55    33    

72

Инструментарий разработчика Программист Платформа 1С v8.3 Платные (руб)

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

9360 руб.

17.05.2024    29455    101    48    

147

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

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18780    7    32    

43

Инструментарий разработчика Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1926    2    0    

6
Оставьте свое сообщение