Обработки 1С


В 1С есть множество объектов конфигурации, которые так или иначе связаны с учетом – то есть позволяют оный вести – справочники, документы, регистры и так далее. Однако как быть, когда нужно создать программку на языке 1С, которая никак не связана с учетом, а требуется для служебных нужд программиста или для облегчения работы пользователя?

Отличный пример – групповая обработка документов. Это инструмент, который позволяет провести/изменить/распечатать не один документ, а сразу много, по выбранному списку. Согласитесь – очень удобно.

Для реализации в 1С инструментов для облегчения работы пользователя или администратора базы 1С существует специальный объект конфигурации – обработки 1С. Обработки 1С могут быть частью конфигурации или распространяться как отдельные файлы (тогда обработка называется внешняя обработка 1С).

Обработки 1С позволяют разрабатывать собственные инструменты как для программирования 1С, так и для настройки или управления 1С. Благодаря этому в интернете есть сотни типовых обработок (разработанных в компании 1С) и тысячи любительских обработок в интернете.

Самое время попробовать сделать обработку 1С самостоятельно. Подробности далее.

 

Что такое обработки 1С и как они используются

Маленькое вступление. Кто уже знаком с обработками 1С – может пропустить этот пункт.

Итак, обработка является инструментом, написанным программистом. Она ничего не умеет делать самостоятельно и не сохраняет данные в базу данных 1С, в отличие например от документа – который сохраняется в базу данных и самостоятельно умеет записываться и проводиться, без дополнительного программирования. Функции обработки 1С целиком зависят от программиста, который ее написал.

По функционалу обработки 1С можно поделить на три вида:

  • Вспомогательные обработки 1С конфигурации
    В каждой типовой конфигурации есть множество обработок. Они используются как дополнительные интерфейсные формы (рабочий стол пользователя, обзор конфигурации), как часть функционала конфигурации (внос начальных остатков, начальное заполнение базы данных, закрытие месяца).
  • Объекты (Классы)
    Кто знает другие языки программирования, уже знаком с понятием объект. Это некий класс, имеющий в своем распоряжении набор «переменных» и «функций». Его прелесть состоит в самодостаточности – то есть в одном классе собрано все, что нужно для выполнения его функций.

    В 1С классы можно создавать с помощью обработки 1С: «переменные» — реквизиты обработки 1С, «функции» — функции в модуле объекта обработки 1С (пометка Экспорт для публичных функций). Удобство состоит как в создании экземпляра такого класса, так и в его перемещении между конфигурациями.

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

    Обратите внимание, что конечно же, такие «классы» не связаны с данными напрямую – их требуется передавать или считывать в «конструкторе».

  • Дополнительные инструменты пользователя и администратора
    Существует множество универсальных инструментов для использования обычно администратором базы данных, которые не привязаны к конкретной конфигурации. Такие инструменты часто не входят в типовую поставку конфигурации и распространяются отдельно (обычно на дисках ИТС). Кроме типовых – программисты в интернете выкладывают массу собственных инструментов.

    В пример можно привести: обработки 1С работы с торговым оборудованием, консоль задач 1С (отображает список задач выполняющихся по расписанию), консоль запросов 1С (позволяет выполнять любые запросы без программирования) и т.п.

 

Где находятся обработки 1С

Итак, существуют обработки 1С встроенные в конфигурацию и внешние обработки 1С.

Встроенные обработки 1С используются программистом, разрабатывающим конфигурацию, ситуативно – то есть они могут быть или выведены в меню пользователя (часть в меню Сервис), или открываться программно из других объектов 1С (например, из формы справочника).

Так или иначе, под правами администратора можно открыть список встроенных в конфигурацих обработок и любую из них, если ее возможно открыть (то есть если у нее есть экранная форма и программист не поставил блокировку на открытие). Для этого в толстом клиенте используйте меню Операции/Обработки, в тонком клиенте используйте меню Все функции/Обработки. Если Вы не знаете, как найти эти меню – посмотрите урок, где мы обсуждали меню администратора Операции/Все функции.

В конфигураторе встроенные в конфигурацию обработки 1С находятся в ветке Обработки.

Внешние обработки 1С открываются и в конфигураторе и в Предприятии с помощью меню Файл/Открыть.

Безопасность. Обратите внимание на порядок выполнения модулей. Модуль объекта обработки 1С выполняется автоматически при открытии обработки 1С в режиме Предприятия. Поэтому, если Вы открываете обработку написанную злоумышленником – она может быть выполнена автоматически без лишних вопросов.

 

Как сделать обработку 1С самостоятельно

Итак, приступаем к самому интересному – алгоритм создания обработки 1С самостоятельно с нуля.

  • Заходим в конфигуратор
  • Если Вам нужно создать обработку, встроенную в конфигурацию – нажмите правой кнопкой мыши на ветке Обработки и выберите Добавить
  • Если Вам нужно создать внешнюю обработку, выберите Файл/Новый, в списке вариантов файлов выберите Обработка
  • Перед Вами открыт редактор обработки 1С. Две основные детали обработки 1С – это [экранная] форма и модуль обработки 1С. В зависимости от предназначения этой конкретной обработки 1С, у нее может не быть или формы (если она используется как класс с функциями) или модуля (если она используется как интерфейсное окно, например, рабочий стол пользователя)
  • Добавим несколько реквизитов. Они нам потребуются для размещения на форме нескольких полей
  • Добавим форму. Если Вы работаете в конфигурации для толстого клиента – 1С создаст по умолчанию обычную форму, иначе – управляемую
  • Добавим на форму несколько полей и кнопку. Пример, как это сделать можно посмотреть в уроке по выгрузке файла из 1С
  • В модуле обработки 1С добавим пару функций. Вот так выглядит функция, которую можно будет вызывать позже извне обработки 1С (используя ее как «класс»). Публичные функции (которые будут видны извне обработки 1С) должны быть помечены как Экспорт

    Пример дальнейшего использования обработки 1С как класс:
    обСозданиеДокументов = Обработки.СозданиеДокументов.СоздатьОбработку(); //создаем экземпляр класса, конструктор выполняется неявно с помощью автозапуска, см . далее
    обСозданиеДокументов.СоздатьДокументы(); //вызываем метод
  • Строки кода, указанные в конце модуля объекта обработки 1С будут выполнены автоматически. Их обычно используют как неявный конструктор, инициализируя нужные переменные. Подробную информацию можно посмотреть в уроке про модуль 1С

 


Проголосовать за этот пост:

1 Star2 Stars3 Stars4 Stars5 Stars (33 голосов, среднее: 3,73 из 5)
Загрузка...

Добавить комментарий