|
Старт бизнес- процесса Документооборота из другой конфигурации | ☑ | ||
---|---|---|---|---|
0
ВикторП
25.06.18
✎
17:27
|
Настроена интеграция конфигурации (УТ) с документооборотом. Ручной запуск бизнес- процесса работает.
Как "сделать" старт бизнес- процесса Документооборота из другой конфигурации по событию в этой конфигурации? |
|||
1
anatoly
25.06.18
✎
17:58
|
интеграция - через web-service?
в таком варианте из УПП 1.3 у меня все стартовало.. |
|||
2
ВикторП
25.06.18
✎
20:36
|
Да, через веб-сервис. Нужнен не ручной старт, программный
|
|||
3
PR
25.06.18
✎
20:41
|
(2) Нужно дописывать
|
|||
4
alkorolev
25.06.18
✎
23:38
|
ну если это легендарная бесшовная интеграция, то что-то типа этого:
ИнтегрированныйОбъект = Новый Структура; ИнтегрированныйОбъект.Вставить("Объект", ОбъектСсылка); ИнтегрированныйОбъект.Вставить("ПравилоЗаполнения", Справочники.ПравилаИнтеграцииС1СДокументооборотом.НайтиПоНаименованию("Твое правило")); ИнтегрированныйОбъект.Вставить("ТипОбъектаДокументооборота", "DMInternalDocument"); ИнтегрированныйОбъект.Вставить("ИдентификаторОбъектаДокументооборота", Строка(ОбъектСсылка.УникальныйИдентификатор())); ОбъектXDTO = ИнтеграцияС1СДокументооборот.ПолучитьXDTOИзмененийИзОбъекта(ИнтегрированныйОбъект); Прокси = ИнтеграцияС1СДокументооборотПовтИсп.ПолучитьПрокси(); Запрос = ИнтеграцияС1СДокументооборот.СоздатьОбъект(Прокси, "DMGetNewObjectRequest"); Запрос.type = ИнтегрированныйОбъект.ТипОбъектаДокументооборота; Результат = Прокси.execute(Запрос); ИнтеграцияС1СДокументооборот.ПроверитьВозвратВебСервиса(Прокси, Результат); ЕстьФайлы = Ложь; Если ОбъектXDTO.files.Count() > 0 Тогда files = Новый Массив; ЕстьФайлы = Истина; Для Каждого file Из ОбъектXDTO.files Цикл files.Добавить(file); КонецЦикла; ОбъектXDTO.files.Clear(); КонецЕсли; ОбъектXDTO.author = Результат.author; ОбъектXDTO.subdivision = Результат.subdivision; ИнтеграцияС1СДокументооборот.СоздатьНовыйОбъект(Прокси, ОбъектXDTO); Если ЕстьФайлы Тогда Для Каждого file Из files Цикл ОбъектXDTO.files.Добавить(file); КонецЦикла; ИнтеграцияС1СДокументооборот.ЗаписатьОбъект(Прокси, ОбъектXDTO); КонецЕсли; |
|||
5
ВикторП
26.06.18
✎
10:07
|
(4) Откуда это?
|
|||
6
alkorolev
26.06.18
✎
16:27
|
(5) из ЕРП выковыривал
|
|||
7
rphosts
26.06.18
✎
17:41
|
Зачем ковырять, стандартной доки вроде хватает https://its.1c.ru/db/biddoc#content:304:hdoc
|
|||
8
ВикторП
26.06.18
✎
21:26
|
Не хватает:)
|
|||
9
alkorolev
26.06.18
✎
22:50
|
(7) как говорил один мой коллега: "это не наш метод!"
|
|||
10
rphosts
27.06.18
✎
02:42
|
(8) ну мне как-то хватило что-бы интегрировать корп с нетленкой...
|
|||
11
rphosts
27.06.18
✎
02:44
|
(9) не наш метод это когда как вчера ко мне пристали: а что-бы не синтегрировать перку с корпом... у кого просрочка - того не выпускать с работы... разумеется были посланы.
|
|||
12
ВикторП
27.06.18
✎
08:35
|
Мне не нужно интегрировать, это уже есть. Мне нужно запустить бизнес процесс документооборота не из документооборота, а из конфигурации, которая с ней интегрирована с помощью БИД, на которую вы прислали ссылку. Спасибо, но нужно не это.
Просто интеграция даёт возможность запуска процесса вручную, а надо автоматически, по событию, например, в УТ провели документ, в документообороте запустился процесс |
|||
13
alkorolev
27.06.18
✎
09:06
|
(12) в (4) был код создания предмета согласования. Само согласование:
Предмет = Новый Структура; Предмет.Вставить("id", мИдентификаторОбъектаДокументооборота); Предмет.Вставить("type", "DMInternalDocument"); ИдентификаторШаблона = ГУИДШаблонаСогласования(); Шаблон = Новый Структура; Шаблон.Вставить("id", ИдентификаторШаблона); Шаблон.Вставить("type", "DMBusinessProcessApprovalTemplate"); Прокси = ИнтеграцияС1СДокументооборотПовтИсп.ПолучитьПрокси(); ШаблонПроцесса = ИнтеграцияС1СДокументооборот.НовыйБизнесПроцессПоШаблону(Прокси, "DMBusinessProcessApproval", Шаблон, Предмет); НовыйПроцесс = ИнтеграцияС1СДокументооборот.СоздатьОбъект(Прокси, ШаблонПроцесса.ObjectId.type); ИнтеграцияС1СДокументооборот.ЗаполнитьЗначенияСвойствXDTO(Прокси, НовыйПроцесс, ШаблонПроцесса); РезультатЗапуска = ИнтеграцияС1СДокументооборот.ЗапуститьБизнесПроцесс(Прокси, НовыйПроцесс); БизнесПроцессID = РезультатЗапуска.businessProcess.objectID.id; |
|||
14
ВикторП
27.06.18
✎
11:09
|
Пока я "нашел" обработку ИнтеграцияС1СДокументооборот , а в ней форму СозданиеБизнесПроцесса .Мне кажется , я уже близок с своей цели :)
|
|||
15
Active PM
20.12.18
✎
10:16
|
(14) Виктор, добрый день. Вы решили задачу?!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |