|   |   | 
| 
 | Старт бизнес- процесса Документооборота из другой конфигурации | ☑ | ||
|---|---|---|---|---|
| 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) Виктор, добрый день. Вы решили задачу?!     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |