Диадок. Модуль интеграции Универсальный. Особенность подключаемого модуля.

12.10.22

Интеграция - Внешние источники данных

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

Скачать исходный код

Наименование Файл Версия Размер
DiadocPM_NEW
.epf 10,44Kb
21
.epf 10,44Kb 21 Скачать

Диадок сообщает, что с 01 октября 2022 обработку интеграции версии Стандарт не будет дальше обновлять. Нужно переходить на модуль Универсальный. 

Если у Вас обработка интеграции Диадок Стандарт была кастомизирована с помощью подключаемого модуля, то первая мысль, что нужно этот подключаемый модуль запихнуть в новую обработку и всё будет работать. Однако, формат подключаемого модуля совершенно другой, вызовы типовых процедур и функций типа

НомерНаПечать = ОсновнойМодуль.ПолучитьМодульПрог("Модуль_Интеграция").ПолучитьНомерНаПечатьДиадок(СсылкаНаДокумент.ДокументОснование.Сделка);

в новом подключаемом модуле не работают. 

Несмотря на вот эту документацию: https://developer.kontur.ru/Docs/Diadoc_UM/index.html разобраться в новом подключаемом модуле весьма сложно. Генератор шаблона из самой обработки выдает нерабочее нечто. Примеров модуля с пост-обработкой УПД у меня найти не получилось. 

 

Однако, есть хорошие новости (хотя они не очевидны!). Старый подключаемый модуль всё ещё работает! Работает при условии, что он был загружен в конфигурацию в справочник дополнительных обработок и подключен в настройках подключаемого модуля к старой обработке (версии Стандарт). Его можно изменять, но после изменения нужно переподключить его в старой обработке, или в новой  обработке переподключить новый ПМ (можно пустой).  В технической информации в новом модуле (см. скриншот) можно увидеть:

Настройки Стандарта:
Подключаемый модуль в справочнике: "Внешние обработки": Диадок ПМ
Режим совместимости форматов 155 и 820: Нет

Диадок ПМ - это и есть старый подключаемый модуль. И он работает.


Кстати, о новом подключаемом модуле.

В чём успел разобраться - выкладываю, надеюсь, кому-то сэкономит время на изучение всей этой новой логики.

Кратко, информация следующая:

Обязательна функция ОбработатьСобытие(ИмяСобытия, Параметры) Экспорт
 

Функция ОбработатьСобытие(ИмяСобытия, Параметры) Экспорт
	
	Если ИмяСобытия = "ПодготовитьЭлектронныйДокумент" Тогда
		
		// раскомментив это, можно без отладчика посмотреть, какие события в обработке происходят
		//Сообщить("ИмяСобытия="+ИмяСобытия+";"+Параметры);
		//Сообщить(Параметры.ВидДокументаРазвернутый.ТипКонтента);
		//Сообщить(Параметры.Результат.Документ1С);
		
		Если Параметры.ВидДокументаРазвернутый.ТипКонтента = "Utd820SellerContent" Тогда
			Заполнить_Utd820SellerContent(Параметры.Результат.Content, Параметры);
		КонецЕсли;
		
	КонецЕсли;
	                                   
КонецФункции

Типы контента для УПД такие:

Utd820SellerContent - данные продавца

Utd820BuyerContent - данные покупателя

AdditionalInfoId - дополнительная информация ("Иные сведения" в подвале УПД)

Table - табличная часть

TransferInfo - Основание передачи (сдачи) / получения (приемки)

и др. (можно посмотреть в документации здесь: https://developer.kontur.ru/Docs/Diadoc_UM/UPD820.html

 

До ссылки на документ (счет-фактуру) в 1с можно дотянуться так:

Параметры.Результат.Документ1С

 

Ну и вот пример переопределения Основания передачи (TransferInfo):

Процедура Заполнить_TransferInfo820(Контент, Параметры)
	
	Контент.TransferBases.Очистить();
	
	Документ1С = Параметры.Результат.Документ1С;
	
	ЗапросСвойстваДоговора = Новый Запрос();
	ЗапросСвойстваДоговора.Текст = "ВЫБРАТЬ разрешенные
	                               |	ЗначенияСвойствОбъектов.Значение КАК Значение
	                               |ИЗ
	                               |	РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
	                               |ГДЕ
	                               |	ЗначенияСвойствОбъектов.Объект = &Объект
	                               |	И ЗначенияСвойствОбъектов.Свойство = &Свойство";

	ЗапросСвойстваДоговора.УстановитьПараметр("Объект",Документ1С.ДоговорКонтрагента);
	ЗапросСвойстваДоговора.УстановитьПараметр("Свойство", ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("ДИАДОКДоговорВОсновании"));
	ВыборкаСвойства = ЗапросСвойстваДоговора.Выполнить().Выбрать();
	Если ВыборкаСвойства.Следующий() Тогда
		Если ВыборкаСвойства.Значение = Истина Тогда
			НовЭлемент = НовыйЭлементСпискаXDTO(Контент.TransferBases);
			Заполнить_TransferBase820(НовЭлемент, "Договор", Документ1С.ДоговорКонтрагента.Номер, Документ1С.ДоговорКонтрагента.Дата, "")
		КонецЕсли;
	КонецЕсли;

	НовЭлемент = НовыйЭлементСпискаXDTO(Контент.TransferBases);
	НомерСчетаНаПечать = ОбщегоНазначения.ПолучитьНомерНаПечать(Документ1С.ДокументОснование.Сделка);
	Заполнить_TransferBase820(НовЭлемент, "Счет", НомерСчетаНаПечать, Документ1С.ДокументОснование.Сделка.Дата, "");

КонецПроцедуры


Процедура Заполнить_TransferBase820(Контент, DocumentName, DocumentNumber, DocumentDate, DocumentInfo, BaseDocumentId="")

	УстановитьЗначениеXDTO(Контент, "DocumentName",				DocumentName);
	УстановитьЗначениеXDTO(Контент, "DocumentNumber",			DocumentNumber);
	УстановитьЗначениеXDTO(Контент, "DocumentDate",				DocumentDate);
	УстановитьЗначениеXDTO(Контент, "DocumentInfo",				DocumentInfo);
	УстановитьЗначениеXDTO(Контент, "BaseDocumentId",			BaseDocumentId);

КонецПроцедуры

Данный код заполняет поле основания передачи данными договора, если установлено специальное свойство договора в 1с, и данные счета (заказа покупателя), всегда.

Кто хочет, может скачать готовую обработку с этим подключаемым модулем. За некоторые части кода не ругайте - писалось по принципу "лишь бы как-то работало".

 

Да, забыл сказать. Всё это веселье тестировалось на конфигурации УПП 1.3.183.2.

Буду рад в комментариях замечаниям, корректировкам, новой информации. Буду добавлять её в публикацию.

 

Интеграция Диадок Подключаемый модуль УПП

См. также

1С:Документооборот - цена на лицензии КОРП, ПРОФ и ДГУ

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

Организуйте правильный оборот документов на вашем предприятии в 1С. Ведение учета и хранения документов. Управление потоками документации между подразделениями. Работа с договорами в компании. Автоматизация процессов подготовки, согласования и подписания документов. Сократите время и объем ошибок с 1С:ДО!

48500 руб.

19.02.2016    107549    107    5    

89

1С:Архив

Документооборот и делопроизводство (СЭД) Платформа 1С v8.3 Платные (руб)

"1С:Архив" – это универсальная система, обеспечивающая надежное долговременное хранение документов с гарантией юридической значимости на неограниченный срок. "1С:Архив" разработан на основе нормативно-правовых актов по архивному делу, поддерживает операции хранения документов – от попадания в архив до уничтожения – и не имеет ограничений на объем хранимых данных. "1С:Архив" сопровождается методологической поддержкой в виде организационных документов по хранению, входящих в состав "Комплекта нормативных документов" к "Методике управления документами и совместной работой", разработанной специалистами фирмы "1С". Использование "1С:Архива" позволяет организовать единое хранилище всех бумажных и электронных документов из разных информационных систем, вести архивный учет в соответствии с требованиями Росархива и снизить нагрузку на учетные системы. Продукт подходит для малых, средних, крупных предприятий и учреждений любых отраслей.

90000 руб.

24.10.2022    5048    6    1    

5

RayCon® Foreign Trade - Документооборот валютного контроля и международных платежей для участников ВЭД

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

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

30000 руб.

13.05.2009    67174    3    29    

42

Таймлист (1С:Совещание, Таймлист Лайт)

Документооборот и делопроизводство (СЭД) Конфигурации 1cv8

«Таймлист» – экосистема сервисов («Таймлист Лайт», «1C:Совещание», «Таймлист Recorder»), основанная на искусственном интеллекте Таймлист, который позволяет эффективно работать с легкими поручениями за счет фиксации всех важных идей при расшифровке и последующем формировании автопротокола встречи. Сервисы, в которые интегрирован ИИ, позволяют работать с задачами (поручениями), полученными из автопротокола.

10000 руб.

06.12.2023    1704    0    0    

8

Экстрактор данных 1С в BI - выгрузка данных из 1С в BI-аналитику

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

15.11.2022    14974    12    SQV0    47    

31

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22918    19    1    

22

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9462    9    8    

11

ЭДО: организация архива оригиналов первичных документов, комплексный отчет по ошибкам

Документооборот и делопроизводство (СЭД) ЭДО и ОФД Учет документов Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Мощный, единый инструмент для решения всех проблем, связанных с переходом на ЭДО. Экономит бумагу и время - организует архив оригиналов первичных документов прямо в базе 1С, в прикрепленных файлах к соответствующим документам. С помощью комплексного отчета по ошибкам в ЭДО позволяет выявить и исправить все возможные ошибки - ошибочно сопоставленные документы, не подписанные документы, подписанные, но не загруженные в 1С документы. Автоматически сопоставляет не сопоставленные между собой документы. Может работать по расписанию и присылать отчет о состоянии архива/по ошибкам на почту. Взаимодействует напрямую с сервисами Диадок/СБИС, имеет интуитивно понятный интерфейс и учитывает 3-х летний опыт 40+ клиентов.

14880 руб.

17.12.2018    44717    62    51    

75
Отзывы
6. Aleks.spb 01.11.22 18:00 Сейчас в теме
(5) Надо через Настройки \ Системные включить использование плагинов (это если ОФ), для УФ что-то похожее.
Далее через настройки зайти в плагины и добавить "Генератор подключаемого модуля".
shalupov61; pahmutov; +2 Ответить
Остальные комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Vitaminka8 21.10.22 17:10 Сейчас в теме
Здравствуйте. Не подскажите, как сопоставить контрагентов и заполнить справочник Диадок_ЮрФизЛица?
Контрагентов в ручную сопоставляю в разделе "Контрагенты". Я понимаю, что где-то надо ещё прописать, чтобы данные добавлялись в справочник, но информацию нигде найти не могу.
В документации нашла описание процедуры,
но она у меня почему-то не срабатывет
ОсновнойМодуль.ВыполнитьСинхронизациюКонтрагентовОрганизаций(Истина);
Я её вызываю при нажатии на кнопку (создала кнопку для проверки процедуры).

Для ДО нет ПМ, описываю сама процедуры. Модуль для ДО я сгенерировала, но там дичь какая-то, не всё работает. И кстати, в одной из процедур есть вызов процедуры из основного модуля, которую я выше написала, и вызов процедуры группового сопоставления контрагентов.
Прикрепленные файлы:
2. JetBrain 79 31.10.22 09:30 Сейчас в теме
ПМ версия 4, для изменения адреса грузополучателя из поля реализации адрес доставки.
Прикрепленные файлы:
ПодключаемыйМодульДиадок.epf
shalupov61; for-elenak; pahmutov; +3 Ответить
4. pahmutov 21 01.11.22 17:30 Сейчас в теме
(2) Спасибо!

Запутали немного такими штуками:

ОбъектКИ = ЗначениеИзСтрокиВнутр(ExtendedOrganizationInfo.Ссылка);
где ExtendedOrganizationInfo это Content.Consignees[0]
но оно там дальше не используется.

В целом идея понятна, да.

А не приходилось подменять что-то в самих товарах, например, артикул?
7. JetBrain 79 02.11.22 17:53 Сейчас в теме
(4) добрый день.
так это генератор Диадока, такой код вкинул через их плагин.
по товарам завтра есть задача от заказчика артикул сделать. скину пример.
19. SamMix 9 04.06.23 14:27 Сейчас в теме
20. JetBrain 79 06.06.23 06:16 Сейчас в теме
(19) посмотрите вложение, но там точно хардкод под Озон есть, а так артикул или код контрагента должен быть пример.
Прикрепленные файлы:
ПодключаемыйМодульДиадок.epf
3. Aleks.spb 31.10.22 17:33 Сейчас в теме
"Генератор шаблона из самой обработки выдает нерабочее нечто"
Согласен, но есть плагин "Генератор подключаемого модуля" и он уже генерирует вполне рабочее что-то.
shalupov61; JetBrain; +2 Ответить
5. pahmutov 21 01.11.22 17:33 Сейчас в теме
(3) А где этот плагин нарыть?
6. Aleks.spb 01.11.22 18:00 Сейчас в теме
(5) Надо через Настройки \ Системные включить использование плагинов (это если ОФ), для УФ что-то похожее.
Далее через настройки зайти в плагины и добавить "Генератор подключаемого модуля".
shalupov61; pahmutov; +2 Ответить
9. pahmutov 21 08.11.22 12:46 Сейчас в теме
(6) Очень круто, спасибо. Кто бы мог подумать.
Действительно, генерирует нечто похожее на работающий модуль, с примером. Вот такое сгенерил.
Прикрепленные файлы:
ДиадокПМ_через_плагин.epf
18. LomayaZakat 18.04.23 10:01 Сейчас в теме
(9)Как вы отлаживали ваш ПМ?
8. for-elenak 11 07.11.22 12:29 Сейчас в теме
Спасибо, мил человек! Очень помогла сия публикация. Браво!
10. dctvghbdtn 15.11.22 12:19 Сейчас в теме
Вопрос: Контрагент присылает по ЭДО счет на оплату в формате Diadoc, а не в формате 1С (CommerceML 2). Кто нибудь решал вопрос закачки таких данных в 1С?
12. revkuts 21.11.22 12:57 Сейчас в теме
Ответ был на след. пост (11). Перенес.
11. user954261 19.11.22 08:53 Сейчас в теме
Здравствуйте. Прошу помощи.
1С:УПП 1.3.190, настраиваю универсальный модуль КонтурДиадокИнтеграция 4.24.
Задача:
сопоставлять номенклатуру поставщика с нашей номенклатурой в соответствии с алгоритмом (на лету, без хранения таблицы соответствия, т.к. хранить не целесообразно). Это актуально, например, для услуг, когда каждый раз от поставщика прилетает уникальное наименование услуги. Это уникальное наименование нужно транслировать в нашу номенклатуру (примитивно, по вхождению подстроки).
При загрузке входящего док-та Накладная в док-т 1С:ПоступлениеТоваровУслуг сопоставление происходит дважды (как я понял). Первый этап удалось победить: в ПодключаемомМодуле добавил "Функция ПрочитатьСопоставлениеНоменклатуры(Параметры)". Сопоставление проходит успешно, далее нажимаю "Создать документы", после чего модуль второй раз пытается сопоставить номенклатуру (предположительно из РегистраСведений.НоменклатураКонтрагентов и из Справочник.ХранилищеДополнительнойИнформации).
Вопрос:
как победить второй этап сопоставления (какую функцию нужно добавить в ПодключаемыйМодуль) ? Или есть решение, которое поможет пройти сразу два этапа сопоставления?
13. revkuts 21.11.22 13:01 Сейчас в теме
(11)
По сопоставлению номенклатуры такой задачи нет, но есть схожая:
Заполнять при создании документа таблицу сопоставления слегка не по типовому алгоритму, откусив характеристику из наименования.
(Валятся наименования спецодежды с размерами, нам размеры не нужны, садим просто на код и наименование)

Типовой алгоритм умеет предлагать связку только по коду, который в нашей номенклатуре хранится в артикуле, либо по полному наименованию, дополненному характеристикой в скобках.
Чтобы наша номенклатура нашлась по "сокращенному" наименованию в случаях, когда артикул у нас почему - то не заполнен, перехватываю событие "НайтиСопоставлениеНоменклатуры".

В "новом" ПМ есть нюансы - события вызываются на самом деле 2 раза - перед и после аналогичного обработчика из "типового" ПМ.
В моем случае для ERP это ПМ_УТ_11.epf
Понять, что это вызов "После" можно по наличию свойства "Результат_ИМ"

Обычно только так и нужно, чтобы после что - то подправить.
Такое условие есть в плагинах при генерации кода, я его поместил в начало метода, не помещая свой код в условие.

Для сопоставления номенклатуры с "кастомным" поиском по наименованию поступаю сейчас так:

Функция НайтиСопоставлениеНоменклатуры(Параметры)
	 Если НЕ (ТипЗнч(Параметры) = Тип("Структура") И Параметры.Свойство("Результат_ИМ")) Тогда
		Возврат Неопределено;
	КонецЕсли;	
	
	Если Параметры.ВариантыСопоставления.Количество() = 0 Тогда 
		// Типовой ПМ (ПМ_УТ_11.epf) не сопоставил 
		// Но кроме него есть еще и типовой универсальный модуль.
		// если и здесь не найдем и не вернем Истина в свойстве Результат_ИМ
		// то будет вызван "ядром" еще из модуля Модуль_ИнтеграцияУниверсальный.EPF метод ЗаполнитьВариантыСопоставленияНоменклатурыПоУмолчанию()
		// Который ищет примерно так же, как сделано здесь, кроме отбора по виду номенклатуры и сокращения наименования
// Пробуем найти номенклатуру по "своему" варианту:
		// ищем варианты только в пределах вида номенклатуры "номенклатура без характеристик" 
		// и по сокращенному наименованию, без характеристики

		#Область Запрос_Текст
		Запрос = Новый Запрос("ВЫБРАТЬ
		                      |	Номенклатура.Ссылка КАК Ссылка
		                      |ИЗ
		                      |	Справочник.Номенклатура КАК Номенклатура
		                      |ГДЕ
		                      |	Номенклатура.ПометкаУдаления = ЛОЖЬ
		                      |	И Номенклатура.ЭтоГруппа = ЛОЖЬ  
							  | И Номенклатура.Видноменклатуры = &ВидНоменклатурыТоварБезХарактеристики
		                      |	И &АртикулПоставщикаЗаполнен
		                      |	И Номенклатура.Артикул = &АртикулПоставщика
		                      |
		                      |ОБЪЕДИНИТЬ
		                      |
		                      |ВЫБРАТЬ
		                      |	Номенклатура.Ссылка
		                      |ИЗ
		                      |	Справочник.Номенклатура КАК Номенклатура
		                      |ГДЕ
		                      |	Номенклатура.ПометкаУдаления = ЛОЖЬ
		                      |	И Номенклатура.ЭтоГруппа = ЛОЖЬ   
							  | И Номенклатура.Видноменклатуры = &ВидНоменклатурыТоварБезХарактеристики
		                      |	И &КодПоставщикаЗаполнен
		                      |	И Номенклатура.Артикул = &КодПоставщика
		                      |
		                      |ОБЪЕДИНИТЬ
		                      |
		                      |ВЫБРАТЬ
		                      |	Номенклатура.Ссылка
		                      |ИЗ
		                      |	Справочник.Номенклатура КАК Номенклатура
		                      |ГДЕ
		                      |	Номенклатура.ПометкаУдаления = ЛОЖЬ
		                      |	И Номенклатура.ЭтоГруппа = ЛОЖЬ      
							  | И Номенклатура.Видноменклатуры = &ВидНоменклатурыТоварБезХарактеристики
		                      |	И &НаименованиеПоставщикаЗаполнено
		                      |	И Номенклатура.Наименование = &НаименованиеПоставщика");  
		#КонецОбласти
		
		Запрос.УстановитьПараметр("ВидНоменклатурыТоварБезХарактеристики", РАГ_ОбщегоНазначения.ПолучитьСсылкуИзНавигационной("e1cib/data/Справочник.ВидыНоменклатуры?ref=842400155d05d50211ebc7491f5fc016"));
			
		Запрос.УстановитьПараметр("АртикулПоставщикаЗаполнен", ЗначениеЗаполнено(Параметры.НоменклатураДокумента.Артикул));
		Запрос.УстановитьПараметр("АртикулПоставщика", Параметры.НоменклатураДокумента.Артикул);
		
		Запрос.УстановитьПараметр("КодПоставщикаЗаполнен", ЗначениеЗаполнено(Параметры.НоменклатураДокумента.Код));
		Запрос.УстановитьПараметр("КодПоставщика", Параметры.НоменклатураДокумента.Код);
		
		НаименованиеДляПоиска =  РАГ_СтроковыеФункцииКлиентСервер.РазделитьНаименованиеНоменклатуры(Параметры.НоменклатураДокумента.Наименование).НаименованиеБезХарактеристики;
		
		Запрос.УстановитьПараметр("НаименованиеПоставщикаЗаполнено", ЗначениеЗаполнено(НаименованиеДляПоиска));
		Запрос.УстановитьПараметр("НаименованиеПоставщика", НаименованиеДляПоиска);
		
	
		
		Выборка = Запрос.Выполнить().Выбрать();
		Пока Выборка.Следующий() Цикл                                         
			Элемент = Новый Структура("Номенклатура, Характеристика, Упаковка"); 
			Элемент.Номенклатура = Выборка.Ссылка; // Характеристику и Упаковку не заполняем 
			Параметры.ВариантыСопоставления.Добавить(Элемент);
		КонецЦикла;	
		
		Возврат ?(Параметры.ВариантыСопоставления.Количество() > 0, Истина, Неопределено); // Именно неопределено, а не Ложь. В вызывающем модуле идет проверка на неопределено
		
	КонецЕсли;	
	
	// Если явного возврата нет - результат функции Нопределено
	
КонецФункции
Показать
15. user954261 21.11.22 15:54 Сейчас в теме
(13)

Спасибо за комментарий!
Подскажите, фун-я НайтиСопоставлениеНоменклатуры привязана к одноименному событию ПодключаемогоМодуля ?
В универсальный модуле 4.24 в ПМ не нашел данного события
Прикрепленные файлы:
14. Orland 56 21.11.22 13:12 Сейчас в теме
Товарищи, кто сталкивался, обратная задача, перешли с Стандарт на Универсальный, Диадок код и старого и нового подключаемого модуля выполняет, даже если в настройках ставлю не использовать ПМ, если переименовываю или удаляю встроенную обработку с ПМ стандарт валится в ошибку что не находит этот ПМ, в отладчике долго разбирался, запутано всё(
16. pmgvv 28.12.22 16:11 Сейчас в теме
(14)
Диадок хранит настройки в регистре "ЗначенияСвойствОбъектов". Надо удалить настройки от старой версии обработки и все заработает.
Прикрепленные файлы:
17. Orland 56 29.12.22 09:49 Сейчас в теме
(16)Спасибо, поступил следующим образом, запустил старую обработку, в ней отключил использование подключаемого модуля и перестал вызываться)))
Оставьте свое сообщение