// Функция, возвращающая запрос для выборки поднадзорных организаций
// Используется при построении динамического отбора и заполнения таблицы организаций в обработке
Функция ЗапросПоднадзорныхОрганизаций(Поместить=Ложь) Экспорт
описание
Должна возвращать запрос с полями Ссылка и Владелец, где
Параметр Поместить указывает, должен ли быть помещён запрос в виртуальную таблицу Ссылки.
Примеры:
// Вариант с использованием одного справочника
Возврат ПоместитьЗапрос(
"ВЫБРАТЬ
| Организации.Ссылка,
| Организации.Ссылка КАК Владелец
|ИЗ
| Справочник.Организации КАК Организации", Поместить);
// Вариант с извлечением данных из регистра напрямую в случае множества справочников
Возврат ПоместитьЗапрос(
"ВЫБРАТЬ
| АСП_Поднадзорные.Ссылка,
| АСП_Поднадзорные.Владелец
|ИЗ
| РегистрСведений.АСП_Поднадзорные КАК АСП_Поднадзорные
|ГДЕ
| АСП_Поднадзорные.Владелец ССЫЛКА Справочник.Организации", Поместить);
// Функция, возвращающая запрос для выборки поднадзорных контрагентов
// Используется при построении динамического отбора и заполнения таблицы контрагентов в обработке
Функция ЗапросПоднадзорныхКонтрагентов(Поместить=Ложь) Экспорт
описание
Должна возвращать запрос с полями Ссылка и Владелец, где
Параметр Поместить указывает, должен ли быть помещён запрос в виртуальную таблицу Ссылки.
Пример:
// универсальная выборка из регистра
Возврат ПоместитьЗапрос(
"ВЫБРАТЬ
| *
|ИЗ
| РегистрСведений.АСП_Поднадзорные КАК АСП_Поднадзорные
|ГДЕ
| АСП_Поднадзорные.Владелец ССЫЛКА Справочник.Контрагенты", Поместить);
// Функция, возвращающая запрос товаров для универсального отбора
// и заполнения таблицы товаров в обработке
Функция ЗапросТоваров(ВидСправочника = Неопределено, Поместить=Ложь) Экспорт
описание
Запрос должен возвращать одно поле Ссылка.
ВидСправочника - название вида справочника 1С, выбранного интерактивно
Поместить - режим помещения запроса в виртуальную таблицу
Для иерархического отображения запрос не должен содержать соединений.
Пример:
Если ВидСправочника = Неопределено Тогда
ВидСправочника = "Номенклатура";
КонецЕсли;
Возврат ПоместитьЗапрос(
"ВЫБРАТЬ
| Номенклатура.Ссылка
| Номенклатура.Наименование КАК Представление
|ИЗ
| Справочник."+ВидСправочника+" КАК Номенклатура", Поместить);
// Получить полное наименование
// для регистрации контрагентов в системе Меркурий
Функция НаименованиеПолное(Контрагент) Экспорт
описание
Функция получает ссылку на контрагента (хозяйствующего или поднадзорного) и возвращает строковое представление.
Используется только в запросах на регистрацию в Меркурии.
Пример:
Если ТипЗнч(Контрагент) = Тип("СправочникСсылка.Организации") ИЛИ ТипЗнч(Контрагент) = Тип("СправочникСсылка.Контрагенты") Тогда
Возврат Контрагент.НаименованиеПолное;
КонецЕсли;
Возврат Контрагент.Наименование;
//* Получить адрес организации/контрагента
// ТипАдрес = "Юридический" / "Фактический"
Функция ПолучитьАдрес(Объект, ТипАдреса) Экспорт
//* Установить адрес организации/контрагента
Процедура УстановитьАдрес(Ссылка, ТипАдреса, Адрес) Экспорт
описание
Функции получения и установки адресов в карточки контрагентов, связанные хозяйствующими и поднадзорными субъектами.
* **Ссылка** - ссылка на элемент справочника
* **ТипАдреса** - Юридический / Фактический
* **Адрес** - новый адрес строкой
Функция также возвращает адрес строкой.\\
Используются в интеллектуальном механизме поиска реквизитов для регистрации контрагентов в системе Меркурий.\\
//Пример см. в [[компоненты:шаблон
шаблоне]].
++
<1c>
//* функция получения кода ОКПФ, специфичного для конфигурации
Функция КодОКПФ(Ссылка) Экспорт
</1c>
++++ описание
Функция возвращает код по ОКПФ по ссылке на элемент справочника хозяйствующего субъекта (Организации, Контрагенты).
Используется для заполнения поля хозяйствующего субъекта для регистрации в Меркурии.
Вызывается только из события АСП_ЗаписьСправочниковПриЗаписи.
Пример см. в шаблоне.
<1c>
//* Тип создаваемого или редактируемого хозяйствующего субъекта:
//1 - юридическое лицо;
//2 - физическое лицо;
//3 - индивидуальный предприниматель.
Функция ТипКонтрагента(Ссылка) Экспорт
</1c>
++++ описание
Функция возвращает код типа субъекта по ссылке на элемент справочника хозяйствующего субъекта (Организации, Контрагенты).
Используется для заполнения поля хозяйствующего субъекта для регистрации в Меркурии.
Вызывается только из события АСП_ЗаписьСправочниковПриЗаписи.
Пример см. в шаблоне.
<1c>
//* Получение таблицы товаров от конфигурации
Функция ЗапросТаблицыТоваров(ВидДокумента = Неопределено) Экспорт
Функция ЗапросТаблицыПродукции(ВидДокумента = Неопределено) Экспорт
Функция ЗапросТаблицыСырья(ВидДокумента = Неопределено) Экспорт
Функция ЗапросТаблицыОприходования(ВидДокумента = Неопределено) Экспорт
Функция ЗапросТаблицыСписания(ВидДокумента = Неопределено) Экспорт
</1c>
++++ описание
Функции, возвращающие двухуровневый запрос по документам и табличным частям.
Используется при интерактивном заполнении таблицы документов в обработке, а также при формировании сертификатов.
Правила построения запроса:
- запрос должен выбирать ссылки из виртуальной таблицы СсылкиВет, которая подготавливается заранее динамическим фильтром;
- для универсальности выборка может иметь левое соединение с таблицами документа РеализацияТоваровУслуг, который заменится на правильный для выполнения запроса автоматически;
- запрос должен возвращать поля Ссылка, Номенклатура, Количество, КоличествоУпаковок и Сумма, сгруппированные по Ссылка;
- запрос также может возвращать поля Категория, Единица, Упаковка, ДатаВыработки и прочие поля для заполнения табличных частей сертификата.
Логика функций:
* ЗапросТаблицыТоваров - универсальная функция, возвращающая запрос для заполнения таблицы документов в обработке для всех видов документов, а также возвращающая таблицы товаров для заполнения входящих и исходящих сертификатов.
* ЗапросТаблицыПродукции и ЗапросТаблицыСырья - используются только при заполнении производственных сертификатов.
* ЗапросТаблицыОприходования и ЗапросТаблицыСписания - используются только при заполнении инвентаризаций.
Пример см. в шаблоне. В примере используется один общий запрос, незначительно модифицируемый для всех видов документов.
++
<1c>
* Заполнение любых особых полей сертификата сразу после создания
Процедура ДозаполнитьПоляВетСертификата1С(Ссылка, ОбъектСертификата) Экспорт
+ Заполнение любых особых полей сертификата сразу после записи
Функция ДозаполнитьПоляВетСертификата1СПослеЗаписи(Ссылка, ОбъектСертификата) Экспорт
+ Дозаполнение документов при разборе в очереди
Процедура ДозаполнитьПоляВетСертификатов1СПоОчереди(СсылкаНаСертификат) Экспорт
+ При проведении вет сертификата, после формирования движений
Процедура ДействияПослеПроведенияВетСертификата(Объект, Движения) Экспорт
+ Перед регистрацией сертификата
Процедура ДействияПередРегистрациейВетСертификата(Основание, ВидДокумента) Экспорт
+ После успешной регистрации сертификата
Процедура ДействияПослеРегистрацииВетСертификата(Ссылка, Обработка) Экспорт
* Получить вес товара
Функция ПолучитьВесТовара(Товар) Экспорт
Загрузка внешней обработки в параллельный контекст
Функция ПолучитьОбъектОбработки() Экспорт
Общие функции
+ Создание ветеринарного документа на основании, возвращает количество созданных
Функция СоздатьВетДокиПоОснованию(Обработка, Документ, ВидДокумента=Неопределено) Экспорт
+ Регистрация ветеринарного документа по основанию
Процедура ЗарегистрироватьПоОснованию(Обработка, ВидДокумента, Документ) Экспорт
+ Проведение ветеринарного документа по основанию
Процедура ПровестиПоОснованию(Обработка, ВидДокумента, Документ) Экспорт
+ расширения таблицы документов
Процедура РасширитьТабДокументов(Таб, ТабФормы, ВидДокумента) Экспорт
Процедура ЗаполнитьСтрокуТабДокументов(Строка, Документ, ВидДокумента) Экспорт
подписки на справочники
Процедура АСП_ЗаписьСправочниковПриЗаписи(Источник, Отказ) Экспорт
</1c>