|
Контур.Диадок Регламентные задания ч. 2 Доминошник, okmail, anikev, , Kolls, Bigbro, Vstur, Voronve, FormatC, zaika7777, boozin, Gennady, d4rkmesa, saaken, Prog_man, Джордж1, orakool, mmg, rozer76, АгентБезопаснойНацио, Lexey_, Черников, Страждущий, Hawk_1c, ADirks, Кирпич, PLUT, nick86, kostyan29, formista2000, denk32, Seriy_Volk, piter3, shuhard, LuckyStar, Ёпрст, Double_Medved, Mafiozaa, Silgis, frmdtf1, John D, Ivanich, ReaLg, Hmster, Valdis2007, ads55, , U4Me2, StarPer,
| ☑ | ||
---|---|---|---|---|
0
anikev
26.02.25
✎
04:52
|
Всем привет!
Это вторая часть погружения в регламентные задания Контур.Диадока. Первая часть: Контур.Диадок Регламентные задания Я думал, что победил контур, установив расширение через обработку. Но нет. Я так же получаю ошибку {КонтурДиадок Обработка.КонтурДиадокВызовыПМ.МодульОбъекта(4973)}: Метод работает только на объектах подсистемы Диадок (ЭДО_Модуль_ОбработатьНовыеСобытияДокументов) Я смирился с этой ошибкой, признал что УПП 1.3 - это старье, на котором даже контур нормально работать не может и решил попробовать Контур в ERP (1С:ERP Управление предприятием 2.5.17.95) Но я был удивлен, что там при запуске регламентного задания выскакивает такая же ошибка. {КонтурДиадок Обработка.КонтурДиадокВызовыПМ.МодульОбъекта(4973)}: Метод работает только на объектах подсистемы Диадок (ЭДО_Модуль_ОбработатьНовыеСобытияДокументов) Получается я имею: - Конфигурация: 1С:ERP Управление предприятием 2 (2.5.17.95) - КонтурДиадок 4.49.1 (расширение) - Подключаемый модуль (далее ПМ) с обработкой события "ВыполнитьРегламентныеДействия". Мне кажется, я нашел в чем причина... Я использовал Генератор ПМ версии 1.3.1 от 21.04.2022 .Неужели Контур не обновляют этот генератор, чтобы можно было внедрить ПМ без оплаты услуг их программистов... |
|||
1
anikev
26.02.25
✎
06:47
|
Может у кого-нибудь есть реализация Диадока 1С с регламентными заданиями и возможность скинуть код ПМ?
|
|||
2
Bigbro
26.02.25
✎
07:37
|
попробуй без расширений
метаданные зашей в конфигурацию у меня все вхлам переписано, не смогу поделиться. |
|||
3
anikev
26.02.25
✎
08:01
|
(2) Я разберусь, если что
|
|||
4
Bigbro
26.02.25
✎
08:55
|
не думаю что это возможно с учетом требований безопасников и всяческих НДА, извините.
у меня метаданные в конфигурации, в таком режиме работает, предлагаю начать с этого попробовать. |
|||
5
anikev
26.02.25
✎
10:29
|
Я сдался, будем оплачивать услуги Контура
|
|||
6
rozer76
26.02.25
✎
10:31
|
(0)
так в ПМ у меня// Выполняет регламентные действия, требующие инициализацию основного модуля Функция ВыполнитьРегламентныеДействия(Параметры) Экспорт //+++//roz//2024-05-08 [170912,161300,170752,159492] ////http://1c-pro-docs.diadoc.ru/ru/latest/func/pm/Vypolnit'_Reglamentnyye_Deystviya.html Если ТипЗнч(Параметры) <> Тип("Строка") Тогда ЗаписатьВЖурналРегистрацииИнформацию("Диадок.РегламентныеДействия.Запуск",УровеньЖурналаРегистрации.Ошибка,, "Не указан параметр запуска задания"); Возврат Истина; КонецЕсли; Если НЕ ЗначениеЗаполнено(УчетнаяЗапись().Логин) Тогда ОсновнойМодуль.ЭДО_АвторизоватьсяПодСертификатомНаСервере1С(); ЗаписатьВЖурналРегистрацииИнформацию("Диадок.РегламентныеДействия.Запуск",УровеньЖурналаРегистрации.Информация, , "Авторизация по сертификату"); Иначе Результат = ОсновнойМодуль.ЭДО_ЗаполнитьКонтекстСеансаДляСлужебнойУчетнойЗаписи(); Если Результат <> Неопределено Тогда ЗаписатьВЖурналРегистрацииИнформацию("Диадок.РегламентныеДействия.Запуск",УровеньЖурналаРегистрации.Информация, УчетнаяЗапись().Логин, "Авторизация по логину выполнена"); Иначе ЗаписатьВЖурналРегистрацииИнформацию("Диадок.РегламентныеДействия.Запуск",УровеньЖурналаРегистрации.Ошибка, УчетнаяЗапись().Логин, "Авторизация по логину не выполнена"); Возврат Истина; КонецЕсли; КонецЕсли; Если Параметры = "Лента" Тогда вртПрочитатьЛентуСобытий(); ИначеЕсли Параметры = "Сопоставление" Тогда вртВыполнитьСопоставлениеВходящихДокументов(); ИначеЕсли Параметры = "Подписание" Тогда вртОтправитьИсходящиеДокументыИнтеркампани(); ПодписатьВходящиеДокументы(); ИначеЕсли Параметры = "Маршруты" Тогда вртВыполнитьМаршрутизациюДокументов(); ИначеЕсли Параметры = "ПодписаниеРТУ" Тогда Если Константы.вртДиадокАвтоподписьСертификатомОтвественногоЗаДокумент.Получить() Тогда вртОтправитьИсходящиеДокументыПоКлиентамОтпечатокПользователя(); Иначе вртОтправитьИсходящиеДокументыПоКлиентамОтпечатокОрганизации(); КонецЕсли; КонецЕсли; Возврат Истина; КонецФункции |
|||
7
rozer76
26.02.25
✎
10:32
|
||||
8
rozer76
26.02.25
✎
10:34
|
я сам потратил немало времени чтобы запустить сбор ленты, подписание, сопоставление на 1ссервере при учете что рег.задание это должно выполняться только на 1срабочем сервере и только там стоит криптопро...тот еще квест )
|
|||
9
anikev
26.02.25
✎
10:36
|
(7) Проблема в том, что у меня не запускается процедура
ПрочитатьЛентуСобытий() В этом модуле ОсновнойМодуль.ЭДО_Модуль_ОбработатьНовыеСобытияДокументов(ОписаниеОрганизации, КоличествоПорцийСобытий); Возвращает Исключение: {ВнешняяОбработка.КонтурДиадокВызовыПМ.МодульОбъекта(4973)}: Метод работает только на объектах подсистемы Диадок (ЭДО_Модуль_ОбработатьНовыеСобытияДокументов) Я уже пробовал и в конфигурации запускать, и в расширени, и как внешнюю |
|||
10
rozer76
26.02.25
✎
10:37
|
(9) да, конечно надо внедрить cf ник - он лежит в основной обработке диадока в макете
|
|||
11
rozer76
26.02.25
✎
10:38
|
пользуем версию 4.47 в КА 2.5
|
|||
12
Bigbro
26.02.25
✎
10:50
|
да не обработку надо в конфигурацию
а вот эти все объекты типа Диадок_Документы и прочая. |
|||
13
anikev
26.02.25
✎
11:11
|
(12) У меня сейчас в конфигурации все:
Таблицы Диадока Обработка Диадока Подключаемый модуль Диадока |
|||
14
Bigbro
26.02.25
✎
11:18
|
ну так в отладке то посмотрите
что конкретно не так включите в настройках отладку и логирование чтобы точки останова расставить в обработках ВызовыПМ, Ядро и так далее. в ПМ тоже точку останова воткните прямо в обработатьсобытие в самом начале. |
|||
15
Kolls
26.02.25
✎
11:23
|
(0) может имеет смысл просто заюзать их API через их SDK? Сама обработка внутри себя вроде его же использует, на сайте контура достаточно толковое описание.
|
|||
16
anikev
26.02.25
✎
11:32
|
Я уже нашел, где ошибка
Функция ЭДО_Модуль_ОбработатьНовыеСобытияДокументов() Результат = Неопределено; Если НЕ ИспользоватьПодсистемуДиадока() Тогда Вызвать Исключение " Метод работает только на объектах подсистемы Диадок (ЭДО_Модуль_ОбработатьНовыеСобытияДокументов" КонецЕсли ...... КонецФункции ........ Функция ИспользоватьПодсистемуДиадока() Экспорт Результат = Истина; ИспользоватьТиповуюПодсистему1С = ИспользоватьТиповуюПодсистему1С(); Если ИспользоватьТиповуюПодсистему1С = Истина Тогда Результат = Ложь; КонецЕсли; Возврат Результат; КонецФункции Вот тут она нам возвращает ложь, поэтому возвращается исключение Осталось только разобрать ИспользоватьТиповуюПодсистему1С(). Получается, она нам должна вернуть ложь, чтобы прошло дальше |
|||
17
anikev
26.02.25
✎
11:51
|
Нашел, что у меня в Регистре сведений "Значения свойств объектов" свойство "DDPro_ИспользоватьТиповуюПодсистему1С" стоит в значении "Да", только я не знаю, можно ли его менять непосредственно здесь
|
|||
18
anikev
26.02.25
✎
11:52
|
(15) Этот вариант не подходит, лучше уже механизмами Обработки
|
|||
19
anikev
26.02.25
✎
12:24
|
Успех!
Поменял в Регистре сведений "Значения свойств объектов" свойство "DDPro_ИспользоватьТиповуюПодсистему1С" на "Ложь" Перезапустил обработку КонтурДиадок и запустил регламентное задание. Выполнилось без ошибок |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |