Модель событий: различия между версиями
Shihov (обсуждение | вклад) Новая страница: «====== Модель общих событий подсистемы ====== Для удобства интеграции и доработки подсистемы используется вызов общих событий, собранных в модуле АСП_Общие.<br/>Данные события позволяют уточнять данные и алгоритм поведения сертифика...» |
Shihov (обсуждение | вклад) Нет описания правки |
||
(не показано 6 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
====== Модель общих событий подсистемы ====== | ====== Модель общих событий подсистемы ====== | ||
Для удобства интеграции и доработки подсистемы используется вызов общих событий, собранных в модуле [[компоненты | Для удобства интеграции и доработки подсистемы используется вызов общих событий, собранных в модуле [[компоненты:асп_общие|АСП_Общие]].<br/>Данные события позволяют уточнять данные и алгоритм поведения сертификатов на всём цикле: '''Создание -> Проведение -> Регистрация'''. | ||
'Создание -> Проведение -> Регистрация | |||
===== Создание сертификата ===== | ===== Создание сертификата ===== | ||
Строка 10: | Строка 8: | ||
Серия кастомных событий для рассчёта и получения табличных частей документов. Каждая функция должна возвращать встраиваемый кусочек запроса, необходимый для сбора табличных частей. Подробности ниже. | Серия кастомных событий для рассчёта и получения табличных частей документов. Каждая функция должна возвращать встраиваемый кусочек запроса, необходимый для сбора табличных частей. Подробности ниже. | ||
# Для сертификатов типа '''Входящий''' и '''Исходящий''' как основная таблица товаров, а также для всех прочих сертификатов, как контрольная таблица для фильтрации:<syntaxhighlight lang='1c'> | |||
'Входящий | |||
'Исходящий | |||
Функция ЗапросТаблицыТоваров(ВидДокумента = Неопределено) Экспорт | Функция ЗапросТаблицыТоваров(ВидДокумента = Неопределено) Экспорт | ||
</ | </syntaxhighlight> | ||
# Для '''Производственных''' сертификатов:<syntaxhighlight lang='1c'> | |||
'Производственных | |||
Функция ЗапросТаблицыПродукции(ВидДокумента = Неопределено) Экспорт | Функция ЗапросТаблицыПродукции(ВидДокумента = Неопределено) Экспорт | ||
Функция ЗапросТаблицыСырья(ВидДокумента = Неопределено) Экспорт | Функция ЗапросТаблицыСырья(ВидДокумента = Неопределено) Экспорт | ||
</ | </syntaxhighlight> | ||
# Для '''Инвентаризаций''':<syntaxhighlight lang='1c'> | |||
'Инвентаризаций | |||
< | |||
Функция ЗапросТаблицыОприходования(ВидДокумента = Неопределено) Экспорт | Функция ЗапросТаблицыОприходования(ВидДокумента = Неопределено) Экспорт | ||
Функция ЗапросТаблицыСписания(ВидДокумента = Неопределено) Экспорт | Функция ЗапросТаблицыСписания(ВидДокумента = Неопределено) Экспорт | ||
</ | </syntaxhighlight> | ||
Запрос должен выбирать | Запрос должен выбирать '''Ссылки''' из виртуальной таблицы '''СсылкиВет''' и дополнять левым соединением поля: | ||
'Ссылки | |||
'СсылкиВет | |||
* Номенклатура | * Номенклатура | ||
* Количество | * Количество | ||
Строка 41: | Строка 27: | ||
При левом соединении с таблицей документа всегда должен указываться <syntaxhighlight lang='bash'> | При левом соединении с таблицей документа всегда должен указываться <syntaxhighlight lang='bash'> | ||
РеализацияТоваровУслуг | РеализацияТоваровУслуг | ||
</syntaxhighlight>. Этот слово в дальнейшем заменяется на правильное имя вида документов автоматически. Это сделано для универсализации запроса для всех функций и возможности открытия в конструкторе. См. функцию | </syntaxhighlight>. Этот слово в дальнейшем заменяется на правильное имя вида документов автоматически. Это сделано для универсализации запроса для всех функций и возможности открытия в конструкторе. См. функцию '''ОбщийЗапросТоваров'''. | ||
'ОбщийЗапросТоваров | |||
==== Заполнение шапки сертификатов ==== | ==== Заполнение шапки сертификатов ==== | ||
События для заполнения шапки сертификатов. Указаны в порядке вызова: | События для заполнения шапки сертификатов. Указаны в порядке вызова: | ||
<1c> | <syntaxhighlight lang='1c'> | ||
//+ Создание ветеринарного документа на основании, возвращает количество созданных | //+ Создание ветеринарного документа на основании, возвращает количество созданных | ||
// Обработка - контекст обработки транспортного модуля | // Обработка - контекст обработки транспортного модуля | ||
Строка 62: | Строка 46: | ||
//+ Заполнение любых особых полей сертификата сразу после записи | //+ Заполнение любых особых полей сертификата сразу после записи | ||
Функция ДозаполнитьПоляВетСертификата1СПослеЗаписи(Ссылка, ОбъектСертификата) Экспорт | Функция ДозаполнитьПоляВетСертификата1СПослеЗаписи(Ссылка, ОбъектСертификата) Экспорт | ||
</ | </syntaxhighlight> | ||
===== Проведение сертификатов ===== | ===== Проведение сертификатов ===== | ||
<1c> | <syntaxhighlight lang='1c'> | ||
//+ Проведение серии ветеринарных документов по основанию | //+ Проведение серии ветеринарных документов по основанию | ||
//Обработка - контекст объекта обработки транспортного модуля | //Обработка - контекст объекта обработки транспортного модуля | ||
Строка 76: | Строка 60: | ||
//Движения - набор движений сертификата по регистрам | //Движения - набор движений сертификата по регистрам | ||
Процедура ДействияПослеПроведенияВетСертификата(Объект, Движения) Экспорт | Процедура ДействияПослеПроведенияВетСертификата(Объект, Движения) Экспорт | ||
</ | </syntaxhighlight> | ||
===== Регистрация сертификатов ===== | ===== Регистрация сертификатов ===== | ||
События указаны в порядке вызова: | События указаны в порядке вызова: | ||
<1c> | <syntaxhighlight lang='1c'> | ||
//+ Регистрация серии ветеринарных документов по основанию | //+ Регистрация серии ветеринарных документов по основанию | ||
//Обработка - контекст объекта обработки транспортного модуля | //Обработка - контекст объекта обработки транспортного модуля | ||
Строка 103: | Строка 87: | ||
//Обработка - контекст объекта обработки транспортного модуля. | //Обработка - контекст объекта обработки транспортного модуля. | ||
Процедура ДействияПослеРегистрацииВетСертификата(Ссылка, Обработка) Экспорт | Процедура ДействияПослеРегистрацииВетСертификата(Ссылка, Обработка) Экспорт | ||
</ | </syntaxhighlight> | ||
[[Category:Компоненты]] | |||
<vote type=1 /> |
Текущая версия от 13:05, 2 апреля 2025
Модель общих событий подсистемы
Для удобства интеграции и доработки подсистемы используется вызов общих событий, собранных в модуле АСП_Общие.
Данные события позволяют уточнять данные и алгоритм поведения сертификатов на всём цикле: Создание -> Проведение -> Регистрация.
Создание сертификата
Запрос табличных частей
Серия кастомных событий для рассчёта и получения табличных частей документов. Каждая функция должна возвращать встраиваемый кусочек запроса, необходимый для сбора табличных частей. Подробности ниже.
- Для сертификатов типа Входящий и Исходящий как основная таблица товаров, а также для всех прочих сертификатов, как контрольная таблица для фильтрации:
Функция ЗапросТаблицыТоваров(ВидДокумента = Неопределено) Экспорт
- Для Производственных сертификатов:
Функция ЗапросТаблицыПродукции(ВидДокумента = Неопределено) Экспорт Функция ЗапросТаблицыСырья(ВидДокумента = Неопределено) Экспорт
- Для Инвентаризаций:
Функция ЗапросТаблицыОприходования(ВидДокумента = Неопределено) Экспорт Функция ЗапросТаблицыСписания(ВидДокумента = Неопределено) Экспорт
Запрос должен выбирать Ссылки из виртуальной таблицы СсылкиВет и дополнять левым соединением поля:
- Номенклатура
- Количество
- КоличествоУпаковок
- Сумма (используется только для интерфейса)
При левом соединении с таблицей документа всегда должен указываться
РеализацияТоваровУслуг
. Этот слово в дальнейшем заменяется на правильное имя вида документов автоматически. Это сделано для универсализации запроса для всех функций и возможности открытия в конструкторе. См. функцию ОбщийЗапросТоваров.
Заполнение шапки сертификатов
События для заполнения шапки сертификатов. Указаны в порядке вызова:
//+ Создание ветеринарного документа на основании, возвращает количество созданных
// Обработка - контекст обработки транспортного модуля
// Документ - исходный документ учётной системы
// ВидДокумента - ссылка на АСП_ВидыДокументов для определения вида создаваемых сертификатов
// Категории - фильтр по подкатегориям продукции для создания сертификатов
Функция СоздатьВетДокиПоОснованию(Обработка, Документ, ВидДокумента=Неопределено, Категории=Неопределено) Экспорт
//* Заполнение любых полей сертификата сертификата сразу после создания, но до записи
// Ссылка - ссылка на исходный документ учётной системы
// ОбъектСертификата - документ-объект создаваемого сертификата
Процедура ДозаполнитьПоляВетСертификата1С(Ссылка, ОбъектСертификата) Экспорт
//+ Заполнение любых особых полей сертификата сразу после записи
Функция ДозаполнитьПоляВетСертификата1СПослеЗаписи(Ссылка, ОбъектСертификата) Экспорт
Проведение сертификатов
//+ Проведение серии ветеринарных документов по основанию
//Обработка - контекст объекта обработки транспортного модуля
//ВидДокумента - вид создаваемых документов (АСП_ВидыДокументов1С)
//Документ - ссылка на исходный документ учётной базы
Процедура ПровестиПоОснованию(Обработка, ВидДокумента, Документ) Экспорт
//+ При проведении вет сертификата, после формирования движений
//Объект - документ-объект сертификата
//Движения - набор движений сертификата по регистрам
Процедура ДействияПослеПроведенияВетСертификата(Объект, Движения) Экспорт
Регистрация сертификатов
События указаны в порядке вызова:
//+ Регистрация серии ветеринарных документов по основанию
//Обработка - контекст объекта обработки транспортного модуля
//ВидДокумента - ссылка на вид регистрируемого документа (АСП_ВидыДокументов1С)
//Документ - ссылка на документ учётной базы
Процедура ЗарегистрироватьПоОснованию(Обработка, ВидДокумента, Документ) Экспорт
//+ Событие вызывается перед регистрацией серии сертификатов одного вида по одному основанию
// помогает провести тонкую настройку полей непосредственно перед регистрацией
//Основание - ссылка на документ учётной базы
//ВидДокумента - ссылка на вид регистрируемого документа (АСП_ВидыДокументов1С)
Процедура ДействияПередРегистрациейВетСертификата(Основание, ВидДокумента) Экспорт
//+ Используется для заполнения сертификатов в многоступенчатой очереди регистрации
// помогает подготовить и провести сертификат на очередном шаге регистрации
//СсылкаНаСертификат - ссылка на сертификат, готовый к регистрации. При изменении требуется обновить эту ссылку и вернуть Истина.
//Обработка - контекст объекта обработки транспортного модуля.
Функция ДозаполнитьПоляВетСертификатов1СПоОчереди(СсылкаНаСертификат, Обработка) Экспорт
//+ Вызывается после успешной регистрации сертификата
//Ссылка - ссылка на сертификат
//Обработка - контекст объекта обработки транспортного модуля.
Процедура ДействияПослеРегистрацииВетСертификата(Ссылка, Обработка) Экспорт