Підключення зовнішньої обробки як додаткової команди у формах документів і довідників системи BAS

  • ПрограмістBAS

Досить зручним механізмом розширення функціоналу в системі BAS для форм документів і елементів довідників є зовнішні обробки. Їх можна підключити як додаткові команди у формах об’єктів. Підключення і використання зовнішньої обробки реалізується за допомогою «Бібліотеки стандартних підсистем» і довідника «Додаткові звіти й обробки». Перевага цього механізму в тому, що він не потребує доопрацювання конфігурації. Це корисно при необхідності автоматизації рутинних дій, додаткової перевірки даних об’єктів або їх заповнення.

Розглянемо цей механізм на прикладі додавання команди для заповнення кількості товарів у табличній частині документу «Переміщення товарів». У цьому прикладі не розглядатимемо логіку розрахунку кількості, а зосередимось на механізмі підключення обробки як додаткової команди в документ.

Для реалізації механізму створимо нову обробку без форм, оскільки вся логіка буде виконуватись в модулі обробки. В цьому модулі необхідно створити експортну функцію «СведенияОВнешнейОбработке()» і процедуру «ВыполнитьКоманду()». Саме вони визначають набір параметрів зовнішньої обробки і її поведінку в системі. Модуль об’єкту повинен містити наступний (мінімальний) код:

Модуль об’єкту

Де в  функції  «СведенияОВнешнейОбработке()» через виклик функції спільного модуля «ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке()» ми отримуємо шаблон відомостей (параметрів) реєстрації обробки для подальшого їх заповнення. Детальніше про всі доступні параметри можна дізнатися безпосередньо з коментарів цього спільного модуля.

доступні параметри

Для цієї функції повинен бути вказаний обов’язковий параметр –  версія бібліотеки стандартних підсистем. Вона повинна відповідати версії, що використовується у конфігурації. Переглянути її можна в регістрі відомостей «Версії підсистем» «СтандартныеПодсистемы»:

СтандартныеПодсистемы

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

параметри

вказує, що обробка призначена для заповнення (зміни) даних об’єкта. А рядок:

даних об’єкта

визначає в яких саме документах і довідниках буде доступна додаткова команда. У нашому випадку вона додається до документу «Переміщення товарів».

Другий блок параметрів відповідає за опис команди. Саме тут визначається, як вона буде відображатись у формі. Так, починаючи з рядка:

опис команди

створюється набір відомостей команди і визначаються загальні параметри: «Представление» і «Идентификатор». А також параметр, що визначає тип команди:

тип команди

Процедура «ВыполнитьКоманду()» відповідає за виконання основного функціоналу обробки – заповнення даних документу. Параметром, що надає доступ до форми, з якої і викликається команда, є параметр – «ПараметрыВыполнения»:

доступ до форми

У цьому прикладі виконується простий обхід табличної частини, в якому для кожного рядка встановлюється значення для поля «Кількість». Значення задано фіксованим (10) для наочності і без реалізації складної бізнес-логіки.

Після створення обробки її необхідно додати в довідник «Додаткові звіти й обробки»:

Додаткові звіти й обробк

Після збереження, команда стане доступною в документі «Переміщення товарів»:

Переміщення товарів

Рекомендовані статті

Публикации
12.11.2025

Опрацювання в конфігураціях системи BAS результатів пакетного запиту до бази даних окремо для кожного запиту в пакеті

Опрацювання в конфігураціях системи BAS результатів пакетного запиту до бази даних окремо для кожного запиту в пакетіІноді виникає потреба виконати послідовно декілька запитів до бази даних, результати яких не повинні бути пов’язані між собою і використовуються окремо. В такому випадку їх можна об’єднати в один пакетний запит з роздільним опрацюванням результатів. Приклад. Припустимо, що розробляється […]

Публикации
26.11.2025

Реквізит типу посилання (Ссылка) в об’єктах метаданих конфігурацій системи BAS «Business Automation Software»

В системі BAS (на платформі BAF) реквізит – це поле бази даних, яке характеризує деяку властивість об’єктів конфігурації (довідників, документів, регістрів, обробок, звітів і ін.) за допомогою значень різного типу. Призначення реквізитів: описати кожен елемент таких об’єктів через набір їх властивостей і зберігати дані про ці властивості в інформаційній базі. Для цього використовуються різні типи […]

Procom default image
12.02.2026

Як за допомогою конструктора рухів додати код для проведення документа по регістру, якщо в модулі об’єкта вже є процедура обробки?

Для цього необхідно в модулі об’єкта змінити назву існуючої процедури «Обробка проведення», наприклад, на «Обробка проведення1». Після цього можна використовувати конструктор рухів для додавання нового коду. Після використання конструктора руху в модулі об’єкта з’явиться нова процедура «Обробка проведення». Після цього необхідно скопіювати код із новоутвореної процедури в раніше існуючу, повернути ім’я процедури, видаливши символ «1». […]

підсумок у підвалі табличної частини
16.02.2026

Як відобразити підсумок у підвалі табличної частини на формі документа?

Для відображення підсумку у підвалі табличної частини «Товари» на формі необхідно увімкнути використання підвалу для таблиці. Необхідно виділити поле, за яким потрібно розраховувати підсумок, і у властивості «ПутьКДаннымПодвала» зазначити «Объект.Товары.ИтогСумма». Додатково, для відображення тексту у підвалі у властивості «ТекстПодвала» можна вказати «Разом»: