diadoc / diadoc1cpro-docs

7 stars 8 forks source link

Получение контента формализованного Акта (552) и ТОРГ-12 (551) #181

Open VikTykh opened 1 year ago

VikTykh commented 1 year ago

Добрый день! Добавляю в подключаемый модуль формализованные Акт (552) и ТОРГ-12 (551). (код ниже) При подготовке электронного документа пробую получить контент для заполнения по аналогии с ранее использовавшимися документами 820 формата, но получаем ошибку "Неожиданный формат контента (Act552SellerContent)" и "... (TovTorgSellerContent)". Отладка показала, что ошибка вызывается из модуля ядра, функции "ФорматОтправкиПоТипуКонтента", в которой эти форматы не обрабатываются. В списке "Базовых форматов" данные типы документов есть, в документации есть, в макетах "ФорматыКонтентов" и "ТипыДокументов" тоже, по документации указано, что форматы поддерживаются, способов автоматического заполнения контента не вижу. На странице указано, что "По формату приказа №551 сформировать накладную можно только в интеграционных решениях." Так и задумано? Заполнять нужно самим без типовых обработчиков?

Вижу, есть подобный issue, но там у пользователя не было заполнено "ТипКонтента_XDTO" (в нашем случае - заполнено и проходит "проверку") и тип контента другой, потому, думаю, верно, что задал вопрос отдельно. Заранее благодарю!

В функции "ПолучитьТаблицуИспользуемыхВидовДокументов" ОсновнойМодуль.ЭДО_Служебные_ДобавитьСтрокуВТаблицуЗначений(ТЗ, "ID_ТОРГ12_551", "ТОРГ-12 (551)", "XmlTorg12", "tovtorg"); ОсновнойМодуль.ЭДО_Служебные_ДобавитьСтрокуВТаблицуЗначений(ТЗ, "ID_Акт_552", "Акт (552)", "XmlAcceptanceCertificate", "rezru");

В функции "ПодготовитьЭлектронныйДокумент" ИначеЕсли ВРЕГ(ТипКонтента_XDTO) = ВРЕГ("Act552SellerContent") ИЛИ ВРЕГ(ТипКонтента_XDTO) = ВРЕГ("TovTorgSellerContent") Тогда ... Content = ОсновнойМодуль.ТиповойМодуль_ПолучитьКонтент(ТиповойМодульДиадока(), РежимУправляемыхФорм, Документ1С, ТипКонтента_XDTO, ДополнительныеПараметры);

TulDuRu commented 1 year ago

Добрый день, подскажите вы пытались сделать формат Utd820SellerContent как мы видим по комментарию "Если контент собираем для акта, накладной или СФ, то УПД все равно нам подходит"

у вас Акт и Накладная думаю как раз нужно использовать Utd820SellerContent

image

VikTykh commented 1 year ago

по комментарию "Если контент собираем для акта, накладной или СФ, то УПД все равно нам подходит"

Добрый день!

Собственно, до попытки перехода на формат 551 и 552 так и формировали акты и накладные, но из-за того, что они отправлялись в формате 820 - часто доходили как УПД. Но да, этот путь тоже пробовал. Если получить контент в формате 820 и передать в процедуру заполнения объекта XDTO акта 552 - акт на печать не выводится, т.к. большая часть полей (если не все, детально не сверил) )остаются незаполненными, т.к. структура документа другая. Накладную 551 детально тоже не сверял, но она как минимум не пустая в этом случае получается и на печать в итоге что-то выводит. Собственно, понимаю, что есть и такой путь: получить контент 820 и вручную его "адаптировать" для дальнейшего преобразования в нужный вформат. Просто до этого хочу понимать, что это точно то, что нужно, и другого предусмотренного разработчиками пути нет.

TulDuRu commented 1 year ago

Какой модуль используете ? на сайте говорится что сбор контента возможен только в версии Pro (4.2.0) и выше как я понимаю.

image

VikTykh commented 1 year ago

Уточнил у поддержки. На этот раз получил ответ более конкретный:

  1. Pro версии больше нет, Универсальный модуль у всех;
  2. Отправка документов в 551/552 приказах в Универсальном модуле не реализована. Отправку таких документов можно сделать только через доработку. Что же, пойду проверять этот путь, сообщу о результатах. Спасибо за ответы!
v-r-n commented 1 year ago

Да, для форматов 552 и 551 контент необходимо заполнять вручную в подключаемом модуле.