100+ готовых доработок модуля Контур.Диадока в одном месте с примерами

20.04.23

Интеграция - ЭДО и ОФД

Рассказываю о новом инструменте, который помогает автоматически собирать шаблоны подключаемых модулей (ПМ).

Меня зовут Севара, я системный аналитик в команде «Диадок.1С». Хочу рассказать о новом инструменте, который помогает автоматически собирать шаблоны подключаемых модулей (ПМ).

Мы часто получаем вопросы, связанные с доработками модуля для своих целей. Самые популярные:

  • Как разобраться в архитектуре модуля Диадока.
  • Как протестировать те доработки, которые сделал.
  • Как сделать доработки и не снять с поддержки модуль Диадока.
  • Где найти информацию о том, что можно доработать.
  • Где найти примеры.

Мы проанализировали обращения пользователей и провели анализ того, какие доработки чаще реализуем для клиентов. Из этого родился новый инструмент — плагин «Генератор подключаемого модуля», где уже предопределены сценарии и встроены примеры для доработок. Поэтому вам достаточно выбрать интересующий сценарий или несколько сценариев и плагин автоматически сформирует шаблон кода для ПМ. Останется только адаптировать шаблон под особенности конфигурации или бизнес-процесса.

 

 

Теперь подробнее о том, как работает плагин.

 
  Как собрать подключаемый модуль в плагине «Генератор ПМ»

Как запустить генератор?

1) Открываем модуль в режиме «1С:Предприятие» и в меню «Настройки» — «Расширенные настройки» выбираем пункт «Системные».

2) В открывшемся окне выбираем «Использовать плагины» и нажимаем «Сохранить». Затем перезапускаем модуль.

3) В меню «Настройки» — «Расширенные настройки» выбираем пункт «Плагины».

4) В открывшемся окне нажимаем «Добавить». Затем выбираем «Генератор подключаемого модуля» и нажимаем «Загрузить».

5) После того, как кнопка обновится на «Загружен», закрываем окно «Библиотека плагинов».

Как собрать ПМ?

Представим, что нам нужно собрать ПМ, в котором будем переопределять типовое заполнение поля «грузополучатель» в электронном документе. Для этого выполним следующие действия:

1) Во вкладке «Плагины» выбираем «Генератор подключаемого модуля» и нажимаем «Настройки».

2) В разделе «Сценарии» выбираем нужный нам «Перезаполнение грузополучателя» и ставим на него флаг.

3) В разделе «Описание сценария» читаем описание и убеждаемся, что сценарий подходит.

Текст описания сценария можно открыть в отдельном окне. Для этого щелкаем правой кнопкой мыши по тексту описания сценария. В контекстном меню нажимаем «Открыть».

Некоторые сценарии объясняют, как адаптировать шаблон под конкретную задачу. Внимательно ознакомьтесь с этой информацией, это поможет быстрее и правильнее адаптировать шаблон.

4) В разделе «Текст ПМ» просматриваем текст кода и редактируем его по необходимости.

Редактировать текст ПМ также можно в Конфигураторе. Для этого следует дополнительно выполнить пункты 7-8.

Обратите внимание, что плагин автоматически:

  • Подставил нужное имя обрабатываемого события. В нашем примере это «ПодготовитьЭлектронныйДокумент».
  • Выбрал оптимальный режим использования события, указав, что событие должно обрабатываться именно в режиме переопределения типовой логики, а не сбора контента с нуля.
  • Указал, что переопределение должно работать только для документа УПД.
  • Подставил готовый метод, в котором происходит перезаполнение данных грузополучателя.
Перем ОсновнойМодуль Экспорт;



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

	Если ИмяСобытия = "ПодготовитьЭлектронныйДокумент" Тогда

		Возврат ПодготовитьЭлектронныйДокумент(Параметры);

	КонецЕсли;

КонецФункции


// Обработчики событий подключаемого модуля

Функция ПодготовитьЭлектронныйДокумент(Параметры)

	// Имя шаблона: Перезаполнение грузополучателя
	Если ТипЗнч(Параметры) = Тип("Структура") И Параметры.Свойство("Результат_ИМ") Тогда
				
		Content		= Параметры.Результат.Content;
		Документ1С 	= Параметры.Результат.Документ1С;

		ВидДокументаРазвернутый = Параметры.ВидДокументаРазвернутый;
		
		ТипКонтента_XDTO = ВидДокументаРазвернутый.ТипКонтента;
		
		Если ВРЕГ(ТипКонтента_XDTO) = ВРЕГ("Utd820SellerContent") Тогда
			
			УПД_ИзменитьДанныеГрузополучателя(Content, Документ1С);

		КонецЕсли;

		Возврат Истина;

	КонецЕсли;

КонецФункции


// Вспомогательные методы с бизнес-логикой

Процедура УПД_ИзменитьДанныеГрузополучателя(Content, Документ1С)
	         	
	Consignee = Content.Consignees[0];
	
	Если НЕ ЗначениеЗаполнено(Consignee.Ссылка) Тогда
		Возврат;
	КонецЕсли;
	
	Контрагент = ЗначениеИзСтрокиВнутр(Consignee.Ссылка);
	
	Наименование = УправлениеСвойствами.ЗначениеСвойства(Контрагент, "НаименованиеГрузополучателя");
	
	ИНН = УправлениеСвойствами.ЗначениеСвойства(Контрагент, "ИННГрузополучателя");
	КПП = УправлениеСвойствами.ЗначениеСвойства(Контрагент, "КППГрузополучателя"); 
	
	Если СтрДлина(ИНН) = 12 Тогда
		Тип = "IndividualEntity";
	Иначе
		Тип = "LegalEntity";
	КонецЕсли;
	
	УстановитьЗначениеXDTO(Consignee, "Name", Наименование);
	УстановитьЗначениеXDTO(Consignee, "Inn"	, ИНН);
	УстановитьЗначениеXDTO(Consignee, "Kpp"	, КПП);
	УстановитьЗначениеXDTO(Consignee, "Type", Тип);
	
КонецПроцедуры


// Общие функции для использования в обработчиках событий

Процедура УстановитьЗначениеXDTO(Элемент, ИмяРеквизита, ЗначениеРеквизита, ЗаписыватьПустоеЗначениеТипа = Ложь)
	
	ЗаписыватьПустоеЗначение = (ТипЗнч(ЗначениеРеквизита) = Тип("Булево")) ИЛИ ЗаписыватьПустоеЗначениеТипа;
	
	Если НЕ ЗначениеЗаполнено(ЗначениеРеквизита) И НЕ ЗаписыватьПустоеЗначение Тогда
		Возврат;
	КонецЕсли;
	
	Если Элемент.Свойства().Получить(ИмяРеквизита) = Неопределено Тогда // у объекта XDTO отсутствует такое свойство
		Возврат;
	КонецЕсли;
	
	Элемент[ИмяРеквизита] = ЗначениеРеквизита;
	
КонецПроцедуры


// общие функции подключаемого модуля (БСП и взаимодействие с основным модулем)

Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = Новый Структура;
	ПараметрыРегистрации.Вставить("Вид",			 	"ДополнительнаяОбработка");
	ПараметрыРегистрации.Вставить("Наименование", 		"Диадок (СКБ Контур): Подключаемый модуль");
	ПараметрыРегистрации.Вставить("БезопасныйРежим", 	Ложь);
	ПараметрыРегистрации.Вставить("Версия", 			ЭДО_ВерсияAPIПодключаемогоМодуля());
	ПараметрыРегистрации.Вставить("Информация", 		"Модуль работы с электронными первичными документами через Диадок (подключаемая часть)");
	
	ТаблицаКоманд = ПолучитьТаблицуКоманд();
	
	ДобавитьКоманду(ТаблицаКоманд, "Выполнение регламентных операций подключаемого модуля Диадок", "ВыполнитьРегламентныеДействияПМ", "ВызовСерверногоМетода");
	
	ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

Функция ПолучитьТаблицуКоманд()
	
	Команды = Новый ТаблицаЗначений;
	
	Команды.Колонки.Добавить("Представление", 			Новый ОписаниеТипов("Строка")); 
	Команды.Колонки.Добавить("Идентификатор", 			Новый ОписаниеТипов("Строка"));
	Команды.Колонки.Добавить("Использование", 			Новый ОписаниеТипов("Строка"));
	Команды.Колонки.Добавить("ПоказыватьОповещение", 	Новый ОписаниеТипов("Булево"));
	Команды.Колонки.Добавить("Модификатор", 			Новый ОписаниеТипов("Строка"));
	
	Возврат Команды;
	
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
	
	НоваяКоманда						= ТаблицаКоманд.Добавить();
	НоваяКоманда.Представление			= Представление;
	НоваяКоманда.Идентификатор			= Идентификатор;
	НоваяКоманда.Использование			= Использование;
	НоваяКоманда.ПоказыватьОповещение	= ПоказыватьОповещение;
	НоваяКоманда.Модификатор			= Модификатор;
	
КонецПроцедуры

Процедура ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды = Неопределено) Экспорт
	
	Если ИдентификаторКоманды = "ВыполнитьРегламентныеДействияПМ" Тогда
		ВыполнитьРегламентныеДействияПМ(ПараметрыВыполненияКоманды);
	КонецЕсли;
	
КонецПроцедуры

Процедура ВыполнитьРегламентныеДействияПМ(Параметры)
	// Регламентные действия, НЕ требующие инициализации основного модуля
КонецПроцедуры

Функция ЭДО_ВерсияAPIПодключаемогоМодуля() Экспорт
	
	Возврат 4;
	
КонецФункции

Процедура ЭДО_СлужебнаяИнформацияГенератораШаблона()

	// Данный метод не выполняет кода и содержит только настройки построителя ПМ в момент генерации кода.
	// Предназначен для облегчения анализа изменений реального кода относительно шаблона.
	
	// ВерсияПостроителя: 0.13.1
	//{ Сценарии
	// Перезаполнение грузополучателя
	//} Сценарии

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

5) Указываем путь к файлу ПМ и нажимаем «Компилировать ПМ»

6) Готовый файл ПМ будет расположен по пути, указанному в предыдущем пункте.

Как редактировать текст ПМ в Конфигураторе?

Следующие действия нужны, если вы не выполнили пункт 4 или хотите отредактировать готовый файл ПМ.

7) Через конфигуратор открываем обработку из «C:\ПМ.epf».

8) Просматриваем текст ПМ и редактируем по необходимости.

Мы надеемся, что плагин «Генератор подключаемого модуля» поможет вам облегчить работу с кодом. Ждем в комментариях вопросы и пожелания, какие сценарии стоит добавить.

Ознакомиться с полным перечнем сценариев можно в самом плагине.

Про работу плагина и всего модуля можно прочитать в официальной документации модуля «Универсальный» Контур.Диадока.

 

диадок эдо контур электронный документооборот подключаемый модуль упд укд

См. также

Загрузка чеков ФНС в документы 1С:БП, 1С:УНФ, 1С:ERP, 1С:КА и 1С:УТ

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

В публикации размещены специализированные обработки для загрузки чеков в базах 1С (для локальных баз): '1С:Бухгалтерия предприятия, ред. 3.0', '1С:Управление нашей фирмой 8, ред. 3.0', '1С:Комплексная автоматизация, ред. 2.5', ‘1С:ERP Управление предприятием, ред. 2’ и ‘1С:Управление торговлей, ред. 11.5’. Вы просто сканируете QR коды с бумажных и электронных чеков c помощью мобильного приложения ФНС и чеки автоматически (без ручного ввода) загружаются в документы 'Авансовый отчет', 'Расходы предпринимателя', 'Путевой лист', 'Приходная накладная', 'Поступление (акты, накладные, УПД)', 'Приобретение товаров и услуг', 'Отчет о розничных продажах' и 'Поступление денежных документов'.

12960 руб.

19.08.2020    65477    304    73    

211

Загрузка в 1С:Бухгалтерию 3.0, 1С:КА 2.4, 2.5, УНФ 1.6/3.0 данных из ОФД о денежных поступлениях (чеках)

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

Согласно 54-ФЗ по правилам ведения кассовых операций необходимо оформлять приходные кассовые ордера (ПКО) и расходные кассовые ордера (РКО) на основании чеков ККМ. Все данные о чеках, можно взять на сайте оператора фискальных данных (ОФД). Эта обработка сделает за вас в 1С - ПКО и РКО, Операции по платежным картам или Отчет о розничных продажах (может создать номенклатуру в 1С, указать налоги и др. реквизиты в документах в зависимости от налогообложения ККМ в торговой точке). Проверено на: OFD.RU / Первый ОФД / Такском / Платформа ОФД / Ярус / ОФД Яндекс / ОФД Астрал /ОФД СБИС / Гарант ОФД / КОРУС ОФД / КОНТУР ОФД / ОФД АО Тандер / ИнитПро / Группа Элемент/

3600 руб.

09.08.2017    148386    870    372    

529

Выгрузка УПД реализации в xml ФНС для загрузки в ЭДО: Диадок, СБИС, Такском, КОРУС, Астрал и прочие. Обработка на управляемых формах для БП 3.0, УНФ 1.6 / 3.0, УТ 11.4 / 11.5, КА 2, ERP 2 (Приказ ФНС №820 от 19.12.2018, 736 от 12.10.2020)

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

Выгрузка УПД, товарной накладной ТОРГ-12, акта, счета-фактуры по реализации (в БП сч-ф на аванс) в xml-файл в формате ФНС приказ 820 от 19.12.2018. Выгрузка УКД и корректировочного счета-фактуры в xml-файл в формате ФНС приказ 736 от 12.10.2020. Выгрузка товарной накладной в xml-файл ФНС приказ 551 от 13.11.2015, редакция 08.04.2019. Выгрузка акта приемки-сдачи работ (услуг) в xml-файл ФНС приказ 552 от 13.11.2015, редакция 08.04.2019. Добавлена выгрузка счетов на оплату по документам ЗаказПокупателя (в УНФ), ЗаказКлинета (в УТ / КА / ERP), СчетНаОплатуПокупателю (в БП). Добавлена обработка Выгрузка УПД c документов реализации 1С в Контур.Диадок по API.

12000 руб.

13.04.2018    82502    392    9    

427

Акцизы на сахаросодержащие напитки

Регламентированный учет и отчетность ЭДО и ОФД Платформа 1С v8.3 1С:Бухгалтерия 3.0 Пищевая промышленность Россия Бухгалтерский учет Налоговый учет Акцизы Платные (руб)

Расширение для Бухгалтерии предприятия 3.0 «Акцизы на сахаросодержащие напитки» предназначено для автоматизированного учета сумм акцизов по реализованным сахаросодержащим напиткам с 01 июля 2023 года. Позволяет выделить суммы акциза в первичных документах («Реализация товаров и услуг», «Корректировка реализации»), сформировать проводки по начислению акциза, а также сформировать и отправить корректные документы по ЭДО.

14400 руб.

16.10.2023    1182    10    0    

9

Загрузка документов поступления из XML формата 820 (Контур.Диадок) в 1С:УТ10/11, БП 3.0, КА2.5, УПП1.3 и обработка выгрузки УПД в Контур Диадок и СБИС для 1С:Бухгалтерии 3.0

ЭДО и ОФД Загрузка и выгрузка в Excel Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Кто получает документы через Контур.ДиаДок (XML файл формат 820) и набивает их вручную в 1С, тот наверняка хотел бы автоматизировать этот процесс. Поддержка конфигураций: Бухгалтерии 3, УПП 1.3, 1С:КА 2.4 и 1С:КА 2.5, УТ10, УТ11.4 и УТ11.5. Выгрузка XML в формате 820 для диадок из БУХ3

3600 руб.

11.02.2020    89050    283    156    

207
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ImHunter 315 20.04.23 14:42 Сейчас в теме
Работает ли Универсальный модуль с МЧД? Бегло посмотрел по методам - вроде бы не нашел.
4. irinachkas 21.04.23 07:49 Сейчас в теме
(1) Добрый день,
Да, работает. Вот документация - https://support.kontur.ru/pages/viewpage.action?pageId=102895612
Пока можно только в интерфейсе работать с МЧД. Если у вас сценарий, что вам нужно с МЧД работать в ПМ, то напишите, что за сценарий. Постараемся учесть
2. пользователь 20.04.23 14:49
Сообщение было скрыто модератором.
...
3. ImHunter 315 20.04.23 15:05 Сейчас в теме
(2) Так-то да;) По документации, уже давно Гена есть.
ЗЫ. Я только еще знакомлюсь с модулем.
5. user1564934 21.04.23 07:55 Сейчас в теме
Как прикрепить файл к нескольким пакетам на отправку, не заходя в каждый пакет? В типовом модуле Диадок такой функционал был. В универсальном убрали ((
54. charushkin 104 02.10.23 20:44 Сейчас в теме
(5) Привет! Функция интерактивного добавления файлов в пакеты из списка документов на отправку вошла в релиз 4.35, который будет опубликован уже на этой неделе
user1564934; +1 Ответить
6. irinachkas 21.04.23 10:29 Сейчас в теме
(5) Добрый день,
Пока такой сценарий можно реализовать программно. Мы недавно писали статью как это сделать https://infostart.ru/1c/articles/1831824/
7. user1564934 21.04.23 11:01 Сейчас в теме
(6) спасибо, хоть так. Решение не очень удобное для нас.
8. KotNaKiske 21.04.23 13:14 Сейчас в теме
не люблю Диадок.. у меня от него глаз дёргается от его упоминания. вы когда нить пытались написать регламентное задание, без открытия форм. авторизация обмен, сопоставление документов и скачивание файлов автоматически? а я вот на днях закончил. З.Ы. просто хвалюсь.
или всю эту матрёшку разгребать отлаживая с не типовой базой. или когда 2 года все написанное хорошо работает потом они без уведомления закрывают доступ типо у вас старая версия. и ты два месяца без выходных переписываешь
unknown181538; ДимокШ; chemezov; siamagic; Yakud3a; +5 1 Ответить
11. kstukov 481 21.04.23 15:37 Сейчас в теме
(8) Да, с наскоку сложно разобраться, поэтому и появился набор готовых сценариев, чтобы не приходилось закапываться глубоко в модуль.
В текущем генераторе есть примеры в том числе популярных рег. заданий.

Можете подсказать про нетиповую базу? Это база, написанная с нуля, или сильно измененная типовая?
В Стандарте меняли сам модуль или делали доработки с помощью подключаемого модуля?

Мы старались уведомить всех пользователей заранее за полгода. Делали рассылки, уведомления в самом модуле. Возможно из-за сильно измененного модуля Стандарт до вас не дошли обновления.
Нам тоже хочется чтобы использовать Диадок разработчикам было не больно. Поэтому мы в том числе здесь.

Если есть пожелания по тому, как вам получать уведомления о планируемых изменениях в модуле - можете предложить свой способ? Рассылки на e-mail и уведомления в модулях разработчики не всегда видят.
EarlyBird; RustIG; +2 Ответить
13. KotNaKiske 21.04.23 20:17 Сейчас в теме
(11) очень древняя бухгалтерия. очень много написаного с нуля даже типовые механизмы
менял все там лестница без бутылки не разберёшься. один модуль лежит в макете другого модуля который тоже в лежит в макете основного. и это все ещё отладить. у нас очень крупная компания и у всяких есть запросы типо добавить в XML какието дополнительные параметры. или работа нормальная с подразделениями. по умолчанию в коде её вообще нет. или отключения листания страниц(вообще чуш) +
ну соглашусь по уведомлениям если вы уведомили моего начальника. он бы просто забыл бы сказать. вообще лог с изменениями нормальный бы. что бы следить что там меняют, а не всякие бесполезные общие фразочки.
всякие запросы на обновления и бесполезные паузы по 3 секунды из кода вырезаешь первым делом за ненадобностью. но будем честными я старую версию через сутки восстановил что бы она кое как хоть работала пока новую пишу.
25. kstukov 481 24.04.23 09:37 Сейчас в теме
(13) По уведомлениям - а, все-таки, какой способ подошел бы лучше всего? Канал в телеграме - норм вариант?
28. KotNaKiske 24.04.23 11:21 Сейчас в теме
9. ImHunter 315 21.04.23 13:29 Сейчас в теме
(8) Хех, я вот и думаю, то ли на Универсальном модуле интегрироваться, либо писать свое на api...
10. KotNaKiske 21.04.23 13:31 Сейчас в теме
(9)совет пиши своё если есть возможность. все просто они просто обновят модуль и остановят старый просто по их велению. и ты будешь в...
12. maxis33 45 21.04.23 17:56 Сейчас в теме
(10) а можно писать на api если купил Универсальный модуль, или нужно дополниельно оплачивать api?
14. KotNaKiske 21.04.23 20:22 Сейчас в теме
(12) точно ХЗ, но вроде там подписка на год. 13700 стоит. вообще спроси тех поддержку она общительная
15. TimkoNzt 21.04.23 21:46 Сейчас в теме
(10) Так ПМ для того и делается, чтобы не редактировать основную обработку. Да сложно, по другому никак.
16. KotNaKiske 22.04.23 11:05 Сейчас в теме
(15) ну форму не поменяешь. у меня основные дописки идут в модуль интеграции бух и универсальную интеграцию. ещё раз повторюсь у меня не типовая конфа, изза этого все.
20. rozer 307 23.04.23 10:59 Сейчас в теме
(15) я впиливал интеркампани и свою работу с маркировкой для erp в универсальный модуль. Конечно без перепила форм и модулей не обойтись ПМ
23. mironoff87 9 24.04.23 02:50 Сейчас в теме
(20) Я добавлял в УТ интеркампани, обошелся только ПМ. Вот ссылка https://infostart.ru/public/1849578/
charushkin; +1 Ответить
34. rozer 307 24.04.23 15:49 Сейчас в теме
(23) уу, круто ) Я делал еще год назад и пилил как раз в основном модуле засада с типом "Организации". А возвраты - УКД тоже реализовали?
35. mironoff87 9 25.04.23 03:25 Сейчас в теме
(34) От возвратов отказались, оформляем все корректировками реализаций
17. Sanchopan1981 22.04.23 15:20 Сейчас в теме
Почему не тестируете диадок под линукс? Ошибки
26. kstukov 481 24.04.23 09:38 Сейчас в теме
(17) Написан ряд автотестов под линукс. Можете выслать номер обращения на ТП, чтобы посмотреть где именно ошибки?
charushkin; +1 Ответить
18. gybson 23.04.23 10:29 Сейчас в теме
Если бы вы хотели лояльности, сделали бы расширение. Поэтому доверия нет, конечно. Вы куда метрики производительности пишите, которые собираете? Есть актуальная задача с неадекватным временем запуска обработки.
19. rozer 307 23.04.23 10:56 Сейчас в теме
(18) метрики пишут себе - см на ютубе куда и зачем от них видос
27. kstukov 481 24.04.23 09:39 Сейчас в теме
(18) Работаем над этим. Прямо сейчас перешли на новую сборочную линию, которая из исходников может выдавать модуль в виде обработки и отдельно сможет генерировать расширения для типовых конфигураций. Там еще много подготовительной работы, но движемся в верном направлении.
Метрики производительности анализируем и поэтапно вносим улучшения. В последних нескольких релизах были правки. Попробуйте обновиться на последнюю версию. Если все равно время неадекватно - можете номер обращения на ТП выслать, посмотрим детально.
charushkin; +1 Ответить
21. anchar007 23.04.23 22:21 Сейчас в теме
Почему всё так сложно? По сути Диадок это обмен xml файлами между контрагентами. Xml формализован. Тогда почему нельзя просто дать разработчикам API для валидации, подписи, шифрования, и отправки файла? А уж обработки по формированию этих xml файлов под все возможные сценарии вам тут наклепают)

Электронный документооборот должен быть простым и понятным как отправка писем по электронной почте! Без всяких роумингов, без подключаемых модулей, без кучи никому не нужных настроек.

В идеале должен быть бесплатный стандартный модуль для 90% компаний (13700 руб, если что, стоит БП Проф на всю жизнь, а у вас это «почтовый клиент» на год!).
Остальные 10% купят у вас доступ к API и сами сделают доработку xml файлов так, как считают нужным. Укажут ID отправителя, ID получателя, «приложат к письму xml файл», отдадут в API, а Диадок всё проверит, пережуёт и отправит
Award; siamagic; Necessitudo; user1310411; KotNaKiske; vakham; +6 1 Ответить
29. kstukov 481 24.04.23 11:22 Сейчас в теме
(21) Да, нам бы тоже хотелось, чтобы электронный документооборот был простым как общение по электронной почте. Но есть то, что есть - законопроекты, регламентирующие ЭДО, роуминг, разнообразие версий платформ и конфигураций.

К сожалению, для полноценного документооборота, недостаточно реализовать только формирование xml, его подписание и отправку через api, т.к. еще есть регламентированные правила обмена https://developer.kontur.ru/docs/diadoc-api/docflows/UtdDocflow.html. Но, самое сложное, на мой взгляд - это поддерживать написанный модуль в соответствии с законодательством. Правила обмена и форматы документов постоянно меняются, нужно узнавать про них, погружаться в детали и оперативно вносить изменения.

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

Поэтому когда-то было принято решение о платном модуле, причем по стоимости он дешевле api. Справедливости ради отмечу, что за поддержку законодательства в БП Проф нужно подписаться на ИТС за 38652 в год.
EarlyBird; charushkin; +2 Ответить
22. anchar007 23.04.23 22:36 Сейчас в теме
У вас в примере шаблон подходит для БП, УТ, КА, УНФ. А что, если выйдет новое обновление УНФ, в котором 1С переименует половину реквизитов документа?
1) Вы тестируете на бетах все релизы и заранее исправляете? Или генератор будет исправляться в авральном режиме после выхода обновления?
2) Появится дубль шаблона для УНФ или это не понадобится?
30. kstukov 481 24.04.23 12:11 Сейчас в теме
(22)
1. В генераторе шаблона не тестируем на бетах, т.к. это шаблон когда, который не запускается сам, а служит примером для реализации.
2. В зависимости от изменений. Если поменяется половина реквизитов документов, то это уже больше похоже на новую редакцию УНФ. Возможно будет рядом сценарий для УНФ 1.7, а возможно будут небольшие изменения в текущем сценарии. Все зависит от сути изменений.
charushkin; +1 Ответить
24. John_d 5418 24.04.23 09:32 Сейчас в теме
Спасибо. Для удобства все эти шаблоны можно вынести в какой-нибудь раздел документации на сайте Диадока.
К примеру я не буду пользоваться генерацией ПМ, а буду изучать код реализации.
charushkin; +1 Ответить
31. kstukov 481 24.04.23 12:12 Сейчас в теме
(24) Спасибо за предложение, оценим возможность реализации. Хочется автоматизировать выкладку, чтобы на сайте всегда актуальная документация была.
32. mark_oilbass 24.04.23 13:34 Сейчас в теме
(31) Здравствуйте! Подскажите пожалуйста по такому вопросу. Разработали ПМ в 21 году, на данный момент он работает с сомой последней версией модуля Диадок. Сейчас если сгенерировать пм то там совсем другие процедуры (новый). В нашем пм даже нет функции которая возвращаем версию API, в последних модулях я так понял версия API 4. На сколько важно обновить наш старый пм?
46. charushkin 104 14.06.23 17:05 Сейчас в теме
(32) Привет!

Для какой версии модуля был разработан ваш ПМ? Можете приложить техническую информацию о вашем модуле и используемый ПМ (можно в личку)?

На сколько важно обновить наш старый пм?


Мы стараемся обеспечивать обратную совместимость новых версий модуля со старыми ПМ. Если ваш ПМ работает как и раньше, вы не планируете его развивать (вносить существенные доработки) и вам не требуется функциональность, доступная при использовании новых версий API подключаемого модуля, то не вижу необходимости в обновлении ПМ.
33. DmitriiKopasov 13 24.04.23 14:55 Сейчас в теме
Добрый день.
Потребовалось доработать контур Диадок в части вывода нестандартной печатной формы по документу "Сверка взаиморасчетов".
Есть ли в ГПМ такая возможность?
37. charushkin 104 26.04.23 13:17 Сейчас в теме
(33) DmitriiKopasov, привет!

Если коротко, то:
- с помощью модуля Диадок можно отправлять и получать акты сверки в любом удобном виде
- превью (визуализации) акта сверки в модуле нет

Более развернуто вот так:
Работа с формализованными актами сверки (приказ ФНС России от 13.05.2022 № ЕД-7-26/405@) в Диадоке пока не поддерживается. Акты сверки отправляются в неформализованном виде. Как таковой печатной формы у неформализованного акта сверки нет. По сути передается обычный файл (например, PDF) и мета-информация о нём (дата, номер и имя файла). В настройках отправки документов доступны 2 варианта получения файла с актом сверки:
1. Форма Диадока - акт сверки формируется по "зашитому" в коробку макету
2. Своя форма - можно выбрать свою внешнюю печатную форму

Есть и третий вариант: в подключаемом модуле можно реализовать произвольный сценарий получения файла акта сверки (например, отправлять файл, приложенный к документу)
66. RustIG 1619 02.11.23 13:28 Сейчас в теме
(37)
2. Своя форма - можно выбрать свою внешнюю печатную форму

инструкция и описание настройки
36. charushkin 104 26.04.23 10:58 Сейчас в теме
(32) Привет!

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

Запрашиваю эту информацию вот почему: до недавнего времени поддерживалось несколько разных интеграционных решений:
- Диадок Стандарт ОФ (для типовых конфигураций на обычных формах - БП 2, УТ 10, УПП и т.д.)
- Диадок Стандарт УФ (дли типовых конфигураций на управляемых формах - БП 3, УТ 11, КА 2, ERP и т.д.)
- Универсальный модуль Диадок (подходит для любых конфигураций)

Подключаемые модули всех этих интеграционных решений отличаются структурой и имеют разный программный интерфейс.

На текущий момент поддержка модулей Стандарт ОФ и УФ прекращена, развивается только Универсальный модуль (УМ). При этом в УМ частично поддерживается совместимость с ПМ для Стандартов. Вполне может быть, что ПМ писали для Стандартного модуля, потом перешли на Универсальный
40. Efimoff 130 17.05.23 13:29 Сейчас в теме
(36) Генератор подключаемого модуля версии 0.14.0 выдает ошибку при подключении

При выполнении действия возникла ошибка:

Поле объекта не обнаружено (ОсновнойМодуль)
{ВнешняяОбработка.КонтурДиадокПлагины.МодульОбъекта(4096)}:ОбъектПлагина.ОсновнойМодуль = ОсновнойМодуль;

Версия обработки Контур 4.29.2

Ошибка исправлена путем внесения в модуль обработки Plugin_PM_builder строки

Перем ОсновнойМодуль Экспорт;
47. charushkin 104 14.06.23 17:08 Сейчас в теме
(40) Привет!

Странно, что вы столкнулись с такой ошибкой. Попробуйте обновить модуль и плагин. Если проблема останется, стоит обратиться в тех. поддержку (https://www.diadoc.ru/support)
38. ImHunter 315 27.04.23 08:05 Сейчас в теме
А вот вопрос. Аренда модуля - это, по сути, аренда вшитого ключа разработчика?
39. Efimoff 130 16.05.23 14:16 Сейчас в теме
Кто подскажет?

Хочу при создании документа Приобретения товаров и услуг выбрать Заказ поставщику и подставить его в документ.
Прикрутил в форму пакета дополнительную кнопку "Выбрать кнопку".
Проблема в том, что я не могу добраться до основной формы, чтобы запустить в ней процедуру создания документа.
Как её получить из ФОРМЫ подключаемого модуля? ВладелецФормы переопределяется перед запуском ПМ и туда передается форма ВызовыПМ.

Или есть другие варианты реализации?
55. charushkin 104 02.10.23 21:10 Сейчас в теме
(39) Привет!

Кастомизировать форму пакета документов с помощью подключаемого модуля (далее - ПМ) невозможно. Дополнительные кнопки можно добавлять только в основной форме модуля.

В целом ваш сценарий можно реализовать только с помощью ПМ. Но в удобстве он будет сильно проигрывать другим решениям.

Вариант реализации с помощью ПМ:
1. Открывать форму выбора заказа поставщику с помощью доп. кнопки из основной формы
2. Выбранный заказ сохранять где-то в информационной базе (при использовании подсистемы хранения Диадока можно записать ссылку в доп. реквизиты справочника Диадок_Документы)
3. Переопределить в ПМ обработчик события создания учетного документа ("ПолучитьЗаполненныйОбъектДокумента1С"), добавив код по заполнению заказа поставщику

Более удобный для пользователя вариант, но затратный для вас:
1. Создавать промежуточные документы, которые будут заполняться только теми данными, которые можно однозначно получить из электронного документа (организцаия, контрагент, номенклатура и т.д.). Создавать что-то на основании входящих электронных документов можно совсем без участия оператора (в регламентном задании).
2. Сделать специальное рабочее место для оператора, который создаёт учетные документы, в котором выводить "черновики" учетных документов для дальнейшей обработки. В этом рабочем месте добавить функциональность по дозаполнению недостающей аналитики (договоры, заказы поставщикам, статьи затрат и т.д.)
41. nma 17.05.23 18:11 Сейчас в теме
(40) Спасибо за замечание. Исправлено в 0.14.1
42. Efimoff 130 18.05.23 08:20 Сейчас в теме
(41) Может вы подскажите. Есть ли вариант шаблона с интерактивным выбором значения?
Пример.
Хочу при создании документа Приобретения товаров и услуг выбрать Заказ поставщику и подставить его в документ.
Прикрутил в форму пакета дополнительную кнопку "Выбрать заказ и создать документ".
Два варианта
1. Либо выбрать заказ, запомнить его в параметрах и типовым созданием документа создать ПТиУ.
(проблема в том, что события отрабатываются как функции и не дожидаются Обработки оповещения)
2. Либо выбрать заказ, запомнить его в параметрах и запустить создание документа из формы подключаемого модуля.
(Проблема в том, что я не могу добраться до основной формы, чтобы запустить в ней процедуру создания документа.
Как её получить из ФОРМЫ подключаемого модуля? ВладелецФормы переопределяется перед запуском ПМ и туда передается форма ВызовыПМ).
43. maxis33 45 25.05.23 10:19 Сейчас в теме
Всем привет,
Может кто знает, как передать в Диадок необходимость отказать в подписании?

Есть хорошая процедура, которая умеет:
 //Режим исполнения: ПередатьНаСогласование / ПередатьНаПодпись / ПередатьПоМаршруту / Согласование / ОтказВСогласовании
ОсновнойМодуль.ЭДО_ОтправитьMessagePatchToPostДляВыбранныхСтрокСпискаДокуме­нтов(ТаблицаДокументов, ПараметрыMessagePatchToPost);

А вот что-то типа "ПередатьНаОтказВЗапросеПодписи" не умеет..
"ОтказВЗапросеПодписи" - не подходит...

Нужно чтобы подписанту на сайте прилетела задача "Отказать", и кнопка "Подписать" была недоступна.
44. irinachkas 07.06.23 09:34 Сейчас в теме
(43)Здравствуйте,
К сожалению, такой возможности нет. Я зафиксировала как пожелание. Хочется понять, какой сценарий у вас.

Единственное, что можем предложить сейчас, это отправить на подпись с комментарием, что требуется отказать в подписи
45. maxis33 45 10.06.23 14:11 Сейчас в теме
(44) спасибо за ответ!
Наш процесс согласования проходит в 1С:Документооборот, и через модуль интеграции (в БП) регламентным заданием на сайт Диадок отправляется задача подписантам, т.к. само подписание происходит на сайте.
Вариант подписания с комментарием мы рассматривали, но подписанием занимаются руководители, которые могут не обратить на комментарий внимания. И в общем списке нет комментария.
Так что очень ждем этой возможности, заранее спасибо!
48. kom240681 15.06.23 08:13 Сейчас в теме
Добрый день. Я хотел убрать из УПД печати Серию номенклатуры но не получается как указано на этом сайте. Я выбрал "Генератор подключаемого модуля". Почему не срабатывает это обработка?.
Прикрепленные файлы:
ПМ.epf
49. fatman78 17 19.07.23 10:35 Сейчас в теме
(48)Диадок использует свою структуру при заполнении объектов XDTO. Не сразу нашел на сайте где описана структура пакета и разных форматов документов ЭДО. Структуры для заполнения контента УПД в формате приказа ММВ-7-15/820@.

P.S. Для разработчиков Диадок.

Предлагаю добавлять ссылки на соотв. разделы документации в генератор шаблонов кода ПМ. Форматы документов. Сэкономите время сторонних разработчиков, и получите + в карму...
50. natachern 22 18.08.23 10:41 Сейчас в теме
Доброе утро, вопрос чайника.
Полученную ПМ.erp вставить на вкладке Подключаемый модуль?
56. charushkin 104 02.10.23 21:23 Сейчас в теме
(50) Привет!

Да, верно, подключаемый модуль - это внешняя обработка (файл с расширением .epf). Путь к нему необходимо указать в настройках модуля на вкладке "Подключаемый модуль" (подробнее в инструкции: https://support.kontur.ru/diadoc-1s8x/41601-podklyuchaemyj_modul)
51. info1i 223 01.09.23 10:53 Сейчас в теме
Добрый день! Подскажите функцию, которая скачивает произвольный файл (например, PDF) из электроннного неформализованного документа?
Электронный документ входящий и подписан обеими сторонами.
57. charushkin 104 02.10.23 21:27 Сейчас в теме
(51) Привет!

Возможно, вам подойдёт метод ЭДО_ПолучитьАрхивДокументооборота: https://developer.kontur.ru/Docs/Diadoc_UM/methods/JeDO_Poluchit%27ArhivDokumentoobor­ota.html
62. info1i 223 22.10.23 19:01 Сейчас в теме
(57) Нет, в архиве отсутствует печатная форма с двусторонней подписью. Решил задачу функцией:
ФайлПФ = ОсновнойМодуль.ЭДО_ПолучитьПечатнуюФормуДокумента(BoxId, LetterId, DocumentId);
52. MAXXL 13 04.09.23 14:00 Сейчас в теме
Добрый день. Используем конфигурацию 1С:ERP Агропромышленный комплекс 2 от Интеко. Соответственно при запуске Вашего модуля ругается что не поддерживается такая конфигурация. Каким образом заставить модуль считать что используется обычная ERP?
58. charushkin 104 02.10.23 21:33 Сейчас в теме
(52) Привет!

При первом запуске должно появиться окно с выбором интеграционного модуля. Вам нужно выбрать "Конфигурации на базе УТ 11, ERP 2, КА 2".

P.S. Интеграционный модуль можно изменить в настройках в разделе "Системные"
Прикрепленные файлы:
53. EVGSPB 29.09.23 15:42 Сейчас в теме
Добрый день.

Подскажите пожалуйста, может кто сталкивался:

Как отправить из ут 11.5 документ на ящик грузополучателя?

Поле ИдПол поменял (подставил ID Грузополучателя) , но документ все ровно уходит на ящик головного контрагента:

Для Каждого Строка Из Content.Buyers Цикл

Строка.FnsParticipantId = СокрЛП(ИДпол);

КонецЦикла;

Файл выгружается с правильным ИДпол. Если его загрузить через вебинтерфейс - то все ок.

Что еще надо сделать?
59. charushkin 104 02.10.23 21:40 Сейчас в теме
(53) Привет!

В вашем примере меняется содержимое XML-файла. А вот кому этот файл будет отправлен, определяется настройками сопоставления контрагентов 1С с ящиками Диадока. Проверьте, с каким ящиком сопоставлен контрагент из учетного документа, на основании которого формируется электронный документ.

P.S. Если вам по каким-то причинам нужно динамически определять получателя пакета документов, то следует использовать возможности подключаемого модуля. Например, событие ПослеПодготовкиПакета: https://developer.kontur.ru/Docs/Diadoc_UM/func/pm/PoslePodgotovkiPaketa.html
65. petrobol25 27.10.23 11:38 Сейчас в теме
(59) а мы столкнулись с тем, что отличаются формы у 1С(УНФ типовая) и Диадок при работе с обособленными подразделениями в Диадок все равно подтягивается КПП Контрагента, а должно как в 1С - КПП Грузополучателя. Подскажите, как доработать?
Прикрепленные файлы:
60. EVGSPB 08.10.23 15:12 Сейчас в теме
(59) Спасибо, Вы очень помогли. Действительно процедура ПослеПодготовкиПакета идеально подошла для решения этой задачи.
61. Somebody1 68 13.10.23 06:46 Сейчас в теме
Здравствуйте! Кто может подсказать?

Стоит задача: Доработать Диадок 1С, чтобы в исходящих документах заполнялись счета-фактуры на основании документов 1С «ПередачаТоваровМеждуОрганизациями».

Решение: Создать «подключаемый модуль» для обработки Диадок 1С, используя предоставленные механизмы.

Вопрос: Как с помощью подключаемого модуля скорректировать процедуру заполнения электронного документа УПД из документа 1С «СчетФактура», чтобы она заполняла табличную часть УПД, используя документ ПередачаТоваровМеждуОрганизациями? При этом не переписывая заново и не копируя процедуры из обработки Диадок 1С?

К сожалению, плагин генерации ПМ выдаёт нерабочий код.

Из документации вижу, что подходит только событие "Формирование электронного документа", которое подразумевает полную замену типовой функции «Подготовить электронный документ», а этого хотелось бы избежать.
VyacheslavShilov; +1 Ответить
63. info1i 223 22.10.23 19:05 Сейчас в теме
Добрый день! Подскажите, пожалуйста, ответы.
1. Как однозначно идентифицировать входящий документ, который не требуют подписи с нашей стороны?
2. Как однозначно идентифицировать входящий документ, который требуют подписи с нашей стороны?
64. info1i 223 25.10.23 11:34 Сейчас в теме
Подскажите, пожалуйста, как программно (функцией в коде 1С) сформировать файл PDF с штампом двусторонней подписи из неформализованного документа с типами: xml,pdf, xls,xlsx, doc, jpeg?
67. Sparrow1974 8 04.11.23 14:48 Сейчас в теме
Как бы то ни было, у генератора есть огромный плюс. Если нужно решить какую-то задачу, и используешь этот генератор, начинаешь понимать логику модуля, и все остальные задачи становится понятно, как написать ручками, и вообще, все супер. Плюсую.
EarlyBird; kstukov; +2 Ответить
68. pumpa010 14.12.23 14:08 Сейчас в теме
Добрый день! Подскажите, пожалуйста, как доработать модуль Диадок, чтобы была возможность загрузки денежных документов - билетов? Доработала так, что на форме сопоставления номенклатуры появилась возможность выбора и сопоставления для справочника "Денежные документы", но при нажатии на кнопку "Создать документы" - денежные документы не подставляются в табличную часть, хотя сам документ "Поступление денежных билетов" создается, кол-во, сумма тоже заполняются, нет только самих сопоставленных билетов. Хотя в РС "Номенклатура контрагентов" билеты заполнены. Очень прошу помогите, сил уже нет.
69. fixin 4253 21.02.24 13:28 Сейчас в теме
Хорошая статья. Но не описывает весь процесс. С чего начать, как подлезть.
Я начал с этой статьи, остальное пришлось разгребать самому.
Поэтому рекомендую для прочтения свой путеводитель: Как написать простую доработку Контур.Диадок через подключаемый модуль
70. youarewelcome 03.04.24 04:45 Сейчас в теме
@VKuser139784027 правильно понимаю, что взаимодействие с пользователем на клиенте никак через подключаемый модуль не отписать, т.к. нам доступен только модуль объекта? получается весь тонкий клиент по прежнему отписываем непосредственно в обработке Диадок?
Оставьте свое сообщение