0. iolko 195 09.08.16 07:28 Сейчас в теме

Настройка бесшовной интеграции 1С: ERP 2.0 и 1С: "Документооборот" КОРП. Варианты реализации бизнес-процессов

Данная статья поможет настроить интеграцию 1С ERP и 1С "Документооборот" КОРП по технологии web сервисов. Описывается пошаговая настройка программ, а также приведены примеры процесса согласования договоров продажи контрагентам. Рассмотрены различные варианты реализации процесса согласования. Приведены примеры настроек маршрутизации процесса (условные и безусловные). В статье очень много скриншотов, может, кому-то это не понравится, но без этого считаю, что статья была бы не полной, т.к. описание именно "по шагам".

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. capitan 901 09.08.16 10:42 Сейчас в теме
Обстоятельная статья.
Пару замечаний.
1. Я бы не оставлял флажки "Обновлять" в настройках интеграции для всех полей. Иначе в ДО можно поменять ключевые поля договора, для пользователя ЕРП его создавшего, это может быть сюрпризом.
2. Бизнес процесс согласования в ДО лучше на мой взгляд стартовать автоматически. Иначе при большом объеме договоров как будете отслеживать ?
2. iolko 195 09.08.16 11:09 Сейчас в теме
(1) capitan, Вполне резонные замечания. Особенно про обновления. А старт в данном случае не делал автоматом, чтобы сделать скрин созданного БП и показать согласующих.
3. RailMen 771 09.08.16 13:23 Сейчас в теме
Очень актуальная статья. У нас обмен классический БП КОРП 3.0 <-> ДО 2.0. Планируем перейти на бесшовный, т.к. в БП КОРП появилась встроенная подсистема для бесшовной интеграции.
4. capitan 901 09.08.16 22:43 Сейчас в теме
5. 1Concept 280 10.08.16 11:54 Сейчас в теме
На практике крайне редко встречается ситуация, когда договор создается ДЕЛОПРОИЗВОДИТЕЛЕМ в ERP. Классика: в ДО ввод и согласование, по завершении, создание в ERP, например через автоматически созданную задачу по событию.
6. iolko 195 10.08.16 15:58 Сейчас в теме
(5) 1Concept, на практике - да. Это просто пример, у нас на предприятии есть такое понятие - инициатор договора (любой пользователь) . После процесса "инициации" и появления договора, как "объекта" идет процедура согласования. Не факт что он - Делопроизводитель. Еще раз уточню - это только пример, и ни чего более, логику БП, как и роли, права доступа, каждый выберет для себя сам, это частный случай. Через несколько дней статья будет дополнена настройкой условного согласования, на языке запросов (для полноты)
7. badboychik 60 16.09.16 10:40 Сейчас в теме
(5) 1Concept, каким образом реализовали автоматическое создание в ЕРП ? А то мне пришлось писать обработчик бизнес-события "Изменение внутреннего документа" и передавать на сторону ЕРП в собственный http-сервис ГУИД договора, а уже оттуда заполнять через типовой веб-сервис интеграции
8. iolko 195 22.09.16 14:29 Сейчас в теме
(7) badboychik, Доброго времени суток, возможно есть вопрос терминологии, карточка договора в 1С ERP не создается автоматически, ее должен создать сотрудник за это ответственный, на основе комплексного процесса. Т.е. в 1С дог проходит согласование, после его завершения , в зависимости от результатов, приходит пользователю оповещение сделать определенные шаги в 1С ERP. Такая схема выбрана потому, как в нашем случае в карточке договора ERP заполняется очень большое кол-во доп реквизитов, не влияющих на процесс согласования. Но они указаны в договоре (в печатной форме) и для отчетности должны быть. Ваш способ, конечно очень оригинален, но в моем случае не жизнеспособен, т.к. нарушает очень много регламентов.
9. dsdred 943 22.09.16 15:59 Сейчас в теме
По мне после того как создали и согласовали в ДО необходимо либо по самописному регламенту либо по самописной кнопке Расширения конфигурации Создать в ERP документ на основании ДО и в регистре документооборота и ERP проставить соответствие.
10. Xleo777 10 18.01.17 14:44 Сейчас в теме
Добрый день, Алексей!
У меня 2 вопроса по интеграции ERP 2.1.3.191 с 1С:Документооборот 2.1.7.9, платформа 1С:Предприятие 8.3 (8.3.9.1818):
1. По какому принципу мигрируют пользователи? У нас создаются дубли в 1С:Документооборот
2. При формировании списка задач пользователя в журнал регистрации записывается ошибка, Описанная ниже. Можно ли ее как-то обойти
{ОбщийМодуль.ИнтеграцияС1СДокументооборот.Модуль(22)}: Ошибка при вызове метода контекста (execute)
Результат = Прокси.execute(Запрос);
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса: {http://www.1c.ru/dm}:DMService:execute()
по причине:
При вызове веб-сервиса произошла ошибка. Неизвестная ошибка. Ошибка работы с Интернет: Превышено время ожидания
по причине:
Ошибка работы с Интернет: Превышено время ожидания
11. iolko 195 19.01.17 12:44 Сейчас в теме
(10)
Добрый день, Елена. Пользователи могут мигрировать только с планами обмена, либо вы заводите пользователя в ERP и затем такого же в ДО, при этом имя для входа должно быть одинаковым. А так же стоит учесть, что у пользователя должны быть права на выполнение требуемых операций, обычно достаточно включить пользователя в группу Пользователи в 1С ДО.
16. swetoch_ka 21.07.17 11:41 Сейчас в теме
(10)
Добрый день, Елена! Столкнулась с такой же ошибкой, как у Вас: {ОбщийМодуль.ИнтеграцияС1СДокументооборот.Модуль(22)}: Ошибка при вызове метода контекста (execute).
Скажите пожалуйста, удалось ли победить ошибку и как?
23. Xleo777 10 23.11.17 10:10 Сейчас в теме
(16)
Добрый день, Светлана!
В модуле ИнтеграцияС1СДокументооборот изменили Таймаут с 15 до 100 в функции

Функция ТаймаутСервиса() Экспорт

//Таймаут = 15;
Таймаут = 100;

ИнтеграцияС1СДокументооборотПереопределяемый.ПриОпределенииТаймаутаСервиса(Таймаут);

Возврат Таймаут;

КонецФункции
12. algora 52 07.06.17 16:35 Сейчас в теме
Добрый день.
Подскажите, что нужно сделать чтобы в безшовную интеграцию добавить свой (не типовой) бизнес процесс?
По нему получаем ошибку "попытка получить имя ссылки для неизвестного типа"
А куда его надо добавить?
13. badboychik 60 07.06.17 21:57 Сейчас в теме
Бизнес процесс или все таки документ? Чтоб импортировались документы надо добавить его в определяемый тип "интегрируемые с документооборотом объекты" и настроить сопоставление реквизитов в правилах интеграции
15. algora 52 09.06.17 14:53 Сейчас в теме
(13)именно бизнеспроцесс (был когда то создан). Но я разобрался, добавил структуру по аналогии с типовыми и в коде прописал. стали отображаться его задачи
14. iolko 195 08.06.17 04:04 Сейчас в теме
Добрый день. Полностью согласен с Сергеем Ведякиным.
17. iolko 195 25.07.17 07:56 Сейчас в теме
Коллеги, собратья, товарищи !!!! ))))))
Всем доброго времени суток. Столкнулся с такой проблемой при бесшовной нтеграции 1С Документооборот и 1С ЕРП. Суть:
Есть типовой документ 1С ЕРП- Заявка ТМЦ, у которой есть статусы : Утвержден, На Утверждении , отклонен итд. В 1С Документооборот есть внутренний документ, Заявка ТМЦ, с процедурой согласования.
Так вот. Если в 1С ЕРП в интеграции в настройках правил интеграции прописать что то типа:

Если Источник.statusApproval.name = "Согласован" Тогда Результат = Перечисления.СтатусыПланов.Утвержден
 ИначеЕсли 
  Источник.statusApproval.name = "Не согласован" Тогда Результат = Перечисления.СтатусыПланов.Отклонен; 
 КонецЕсли; 


То часа 2 правило отрабатывает а потом ругается, что поле name в теге statusApproval не найдено. При этом ни чего не помогает до перезапуска службы 1С.

Важно то, что у нас 1С кластеризована, и такая ошибка появляется только при кластерной схеме.

Пришлось для того чтобы работало править переопределяемый модуль ИнтегарцияС1СДокументооборот. Если нужно могу кинуть процедуру и кусок кода.
26. Xleo777 10 23.11.17 10:33 Сейчас в теме
(17)
Добрый день, Алексей! Может у вас в ДО статус документа становится не согласован, а, например, Исполнен или утвержден. А тогда это уже не Источник.StatusApproval, а Источник.statusPerformance (исполнен) или Источник.statusConfirmation (Утвержден). И это тоже надо описывать. Я, кажется, проверяла на заполненность Источник.statusApproval, а уже потом проверяла реквизит name

ИменСвойствПоСостояниям.Вставить("Согласование", "statusApproval");
ИменСвойствПоСостояниям.Вставить("Утверждение", "statusConfirmation");
ИменСвойствПоСостояниям.Вставить("Регистрация", "statusRegistration");
ИменСвойствПоСостояниям.Вставить("Рассмотрение", "statusConsideration");
ИменСвойствПоСостояниям.Вставить("Исполнение", "statusPerformance");
Lena272; Spacer; +2 Ответить
18. strannik1982 14.11.17 12:51 Сейчас в теме
Коллеги подскажите, при бесшовной интеграции кушает ли ДО клиентские лицензии, когда пользователь согласовывает договор из 1с ERP? То есть пользователь в момент согласования будет использовать 2 клиентских лицензии? я говорю про случай с программными лицензиями.
19. iolko 195 15.11.17 09:12 Сейчас в теме
(18), Добрый день!
Если лицензии аппаратные, то нет - это одна лицензия
48. BalansI 10.01.19 13:05 Сейчас в теме
(19) Добрый день. У нас лицензии аппаратные, но съедает две лицензии. Не подскажите, что могли настроить не так? Лицензии раздаем хаспом.
20. dvdvan1 22.11.17 16:36 Сейчас в теме
Возникла такая проблема, при бесшовной интеграции ERP->ДО запускается процесс согласования документа «Заявка на расходование ДС», в ДО создается внутренний документ, заполненный данными из ERP. Документ проходит процесс согласования, меняется статус в ДО, процесс закрывается, но статус документа в ERP не меняется, причем не только статус , но и остальные реквизиты которые указаны в правиле интеграции «Получение из 1с Документооборота». Отмечу что правило интеграции «Передача в 1С Документооборот» отрабатывает полностью. Кто сталкивался с такой проблемой подскажите в чем причина?

Заранее спасибо.
25. Xleo777 10 23.11.17 10:18 Сейчас в теме
Напишите ваше сообщение
(20)
Работает ли в ДО регламентное задание "Формирование сообщений обмена для интегрированных систем"?
27. dvdvan1 23.11.17 15:49 Сейчас в теме
(25)
Да работает, из ДО заполняется только поле комментарий, статус нет, причем статус из ДО приходит "Согласован".
Статус заполняется из выражения на встроенном языке:

Если Параметры.Источник.status.name = "Согласован" Тогда
	Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Согласована;
ИначеЕсли Параметры.Источник.status.name = "НеСогласован" Тогда
	Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Отклонена;
ИначеЕсли Параметры.Источник.status.name = "НаСогласовании" Тогда
	Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.НеСогласована;
КонецЕсли;
30. Xleo777 10 24.11.17 13:34 Сейчас в теме
(27) Добрый день, Иван!
Странно. Ведь в ДО несколько статусов
statusApproval
statusConfirmation
statusRegistration
statusConsideration
statusPerformance
Неужели у Вас отрабатывает условие Параметры.Источник.status.name ?
31. dvdvan1 24.11.17 18:43 Сейчас в теме
(30)
Добрый вечер.

Действительно странно, но условие отрабатывает. Например если записать условие "Параметры.Источник.status.name" в поле "Комментарий", то туда запишется "Согласован", "На согласовании" и т.д, если указать ТипЗнч(Параметры.Источник.status.name), то запишется "строка". То есть из ДО приходит все верно, но вот поле статус не меняется.
32. Xleo777 10 27.11.17 15:23 Сейчас в теме
(31)
Добрый день, Иван!
Если Вы используете стандартные правила интеграции может использовать возвращаемое значение Результат, а не Параметры.Результат (как у Вас написано)?
Если Параметры.Источник.status.name = "Согласован" Тогда
    Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Согласована;
ИначеЕсли Параметры.Источник.status.name = "НеСогласован" Тогда
    Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Отклонена;
ИначеЕсли Параметры.Источник.status.name = "НаСогласовании" Тогда
    Параметры.Результат = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.НеСогласована;
КонецЕсли;
33. dvdvan1 27.11.17 18:45 Сейчас в теме
(32)
Добрый вечер, Елена.

Если я использую Результат, а не Параметры.Результат правило не отрабатывает, при отправке инф. в ДО возникает исключительная ситуация (переменная результат не обнаружена).

При получении инф из ДО ошибки нет, но и данных нет. Версия erp 2.4.1.240, правила стандартные.
34. Xleo777 10 29.11.17 15:31 Сейчас в теме
(33)
Добрый день, Иван!
Понятно. У нас ERP 1С:ERP 2.2.4.81.

Спасибо за информацию! Будем готовиться к обновлению )))
40. Synoecium 417 18.12.17 16:33 Сейчас в теме
(20) столкнулся с такой же проблемой, выяснил что это косяк в типовой конфигурации ERP (2.2.4.81), там сделана неправильная проверка на изменение реквизитов в правилах обмена. Смотреть в модуль менеджера справочника "Правила интеграции", функция ЗаполнитьОбъектПоОбъектуXDTO(), в местах где устанавливается флаг ЕстьИзменения. Исправили ли косяк в новых версиях ERP не знаю, в моем случае проще было исправить.
21. sm.artem 11 23.11.17 07:24 Сейчас в теме
Спасибо за статью!

Я правильно понимаю, что в любом случае пользователь должен работать в двух системах? То есть, как описано в первом случае: в ERP создали договор, в "ДО" необходимо выбрать шаблон процесса и стартовать бизнес-процесс?
Или все же, "ДО" можно использовать как фоновый движок бизнес-процессов? Например, мне необходимо согласовать изменение Заказа клиента (который в ERP), тогда я из Заказа клиента запускаю бизнес-процесс (который в ДО) и дальнейшие шаги по бизнес-процессу делаются пользователями также в ERP?
22. iolko 195 23.11.17 09:56 Сейчас в теме
(21) Добрый день! Если Вы создали заказ в ERP или Бухгалтерии, и Вам необходимо его согласовать через 1С Док оборот, тогда, на стороне Вы создаете Вид внутреннего документа "Заказ" (на пример) , настраиваете необходимые доп реквизиты, которые должны присутствовать в карточке в документа 1С Документооборот. Это полезно, если от каких то реквизитов зависит маршрут согласования.
Пример: в Документе "ЗаказКлиенту" в 1С ERP вы добавили признак 100%% предоплаты (булево), по логике, если этот признак Истина, то в процесс согласования должен добавиться, скажем, коммерческий директор.

Тогда в состав внутреннего документа "Заказ" на стороне 1С Документооборот, Вы так же добавляете такой же реквизит, и настраиваете условия маршрутизации.

На стороне 1С ERP в правилах интеграции, настраиваете заполнение внутреннего документа 1С ДокОборот, из документа 1С ERP. В этих правилах Вы определяете какой реквизит из ЕРП попадет в карточку ДокОборот.

Следовательно, при создании на основании документа "ЗаказКлиенту" из ERP процесса согласование или любого другого комплексного процесса, произойдет заполнение требуемых реквизитов в 1С ДокОборот.
sm.artem; +1 Ответить
24. sm.artem 11 23.11.17 10:11 Сейчас в теме
(22) Спасибо за ответ.
Это понятно, что можно настроить создание объектов в ДО по созданному объекту в ERP.

Вопрос в том, что после того как создался внутренний документ "Заказ" в ДО. Сотрудник через ERP запускает бизнес-процесс. Есть ли необходимость ему (или другим согласующим) заходить еще и в ДО и там выполнять действия, или же все участники так и продолжают работать в ERP, без запуска ДО на всем протяжении процесса?
28. iolko 195 24.11.17 03:33 Сейчас в теме
(24), Добрый день. Нет необходимости нет, если настроена интеграция, то на начальной странице 1С ERP, в форсе интеграции с 1С Документооборот, пользователь будет видеть все свои задачи. Т.е. Петров АА отправил Заказ Иванову ВВ, у Иванова ВВ, появилась в ERP новая задача. Он может согласовать или нет, если согласовал, Петров АА получает уведомление "ознакомиться с результатом согласования" так же в ЕРП.

Могу кинуть в личку скрины того как это происходит
Lena272; sm.artem; +2 Ответить
29. sm.artem 11 24.11.17 06:42 Сейчас в теме
(28) Алексей, спасибо за ответ.

Мне пока достаточно знать, что мой вопрос можно решить штатными средствами.
Думаю, что в скриншотах нет необходимости, основной функционал хорошо описан в статье.
35. Xleo777 10 29.11.17 15:32 Сейчас в теме
Добрый день, коллеги!
Документооборот 8 КОРП, редакция 2.1 (2.1.10.2)
Скажите, пожалуйста, почему в ДО пользователи могут видеть только комплексные процессы, в которых являются автором или согласантом? У пользователей есть роли на работу с внутренними документам, процессами и задачами.

У нас настроена форма в интеграции, которая проверяет наличие действующих процессов и запрещает редактирование Заявок на расходование ДС, если процессы обнаружены через интеграцию.
В итоге, так как пользователь не видит процессов других, заявки стали доступны для редактирования.
36. Xleo777 10 30.11.17 14:55 Сейчас в теме
(35)Упс. Это типовое поведение системы (RLS) при использовании ролей "Изменение и выполнение задач" и "Работа с задачами и бизнес процессами". Чтобы читали все процессы и задачи, нужна роль "Чтение процессов и задач без ограничения"... или напильник :)
38. iolko 195 05.12.17 07:11 Сейчас в теме
(35) Добрый день! Необходимо настроить права, дать доступ на просмотр всех документов, а именно...
В Полномочиях, для "Пользователь", добавить роль (включить ее) - "Чтение внутренних документов без ограничений"
37. iolko 195 05.12.17 07:06 Сейчас в теме
Всем доброго времени суток!
При работе с 1С Документооборот и маршрутами согласования (при использовании условий маршрутизации) столкнулся с такой проблемой.

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

1) Проверяем предыдущие шаги согласования и результат, чтобы понять а нужно ли переходить к согласованию "Экономистом предприятия", для этого проверим, согласование предыдущих шагов

	

Юрист = Ложь;
Бухгалтер = Ложь;
Рез = Ложь;

Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ВизыСогласования.РольИсполнителя,
		|	ВизыСогласования.РезультатСогласования
		|ИЗ
		|	Справочник.ВизыСогласования КАК ВизыСогласования
		|ГДЕ
		|	ВизыСогласования.ПомещенаВИсторию = &ПомещенаВИсторию
		|	И ВизыСогласования.Удалена = &Удалена
		|	И ВизыСогласования.Документ = &Документ";
	
	Запрос.УстановитьПараметр("Документ", Предмет.Ссылка);
	Запрос.УстановитьПараметр("ПомещенаВИсторию", Ложь);
	Запрос.УстановитьПараметр("Удалена", Ложь);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		Если Строка (ВыборкаДетальныеЗаписи.РольИсполнителя) = "Юрист И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Юрист = Истина;                                      
		КонецЕсли;

		Если Строка (ВыборкаДетальныеЗаписи.РольИсполнителя) = "Бухгалтер" И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Бухгалтер= Истина;                                      
		КонецЕсли;
КонецЦикла;		

Если Юрист И Бухгалтер Тогда
       Рез = Истина;
КонецЕсли;

Результат = Рез;

Показать



По идее все хорошо, но если только в маршруте пользователь выбрал РОЛЬ, а если выбрал сотрудника, который назначен на эту роль, то условие не отработает.

Во избежание подобных ошибок, был добавлен общий модуль "РаботаСУсловиямиМаршрутизации" (Сервер). В котором прописана экспортная функция


&НаСервере
Функция ПроверитьИсполнителяНаРоль (ИсполнительДелегат, КодРоли) Экспорт
	//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
	// Данный фрагмент построен конструктором.
	// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ИсполнителиРолейИДелегаты.ИсполнительДелегат КАК ИсполнительДелегат,
		|	ИсполнителиРолейИДелегаты.РольПользователь КАК РольПользователь,
		|	ИсполнителиРолейИДелегаты.РольПользователь.Код КАК РольПользовательКод
		|ИЗ
		|	РегистрСведений.ИсполнителиРолейИДелегаты КАК ИсполнителиРолейИДелегаты
		|ГДЕ
		|	ИсполнителиРолейИДелегаты.ИсполнительДелегат = &ИсполнительДелегат
		|	И ИсполнителиРолейИДелегаты.РольПользователь.Код = &Код";
	
	Запрос.УстановитьПараметр("ИсполнительДелегат", ИсполнительДелегат);
	Запрос.УстановитьПараметр("Код", КодРоли);
	
	РезультатЗапроса = Запрос.Выполнить();
	Если Не РезультатЗапроса.Пустой() Тогда 
		Возврат Истина;
	Иначе
		Возврат Ложь;
	КонецЕсли;
	//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
	
КонецФункции

Показать


Теперь немного изменим наше условие маршрутизации


Юрист = Ложь;
Бухгалтер = Ложь;
Рез = Ложь;

Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ВизыСогласования.РольИсполнителя,
		|	ВизыСогласования.РезультатСогласования,
		|	ВизыСогласования.Исполнитель
		|ИЗ
		|	Справочник.ВизыСогласования КАК ВизыСогласования
		|ГДЕ
		|	ВизыСогласования.ПомещенаВИсторию = &ПомещенаВИсторию
		|	И ВизыСогласования.Удалена = &Удалена
		|	И ВизыСогласования.Документ = &Документ";
	
	Запрос.УстановитьПараметр("Документ", Предмет.Ссылка);
	Запрос.УстановитьПараметр("ПомещенаВИсторию", Ложь);
	Запрос.УстановитьПараметр("Удалена", Ложь);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		Если Строка (ВыборкаДетальныеЗаписи.РольИсполнителя) = "Юрист" И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Юрист = Истина;                                      
		КонецЕсли;

		
		Если РаботаСУсловиямиМаршрутизации.ПроверитьИсполнителяНаРоль(ВыборкаДетальныеЗаписи.Исполнитель,"00000001") И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Юрист = Истина;                                      
		КонецЕсли;
			
		
		Если Строка (ВыборкаДетальныеЗаписи.РольИсполнителя) = "Бухгалтер" И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Бухгалтер= Истина;                                      
		КонецЕсли;
		
		
		Если РаботаСУсловиямиМаршрутизации.ПроверитьИсполнителяНаРоль(ВыборкаДетальныеЗаписи.Исполнитель,"00000002") И ВыборкаДетальныеЗаписи.РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
			Бухгалтер = Истина;                                      
		КонецЕсли;
		
КонецЦикла;		

Если Юрист И Бухгалтер Тогда
       Рез = Истина;
КонецЕсли;

Результат = Рез;

Показать


Как видно мы изменили запрос, добавив в него исполнителя, а так же передали на проверку данные.
Обращу Ваше внимание на то, что в качестве кода роли, передается код из справочника "ПолныеРоли" - это важно.

Всем заранее спасибо, и с наступающим, в качестве небольшого бонуса, прикрепляю внешнюю обработку, которая позволяет тестировать и создавать условия маршрутизации.....
Прикрепленные файлы:
ПроверкаУсловийМаршрутизации_2_1.epf
39. Xleo777 10 11.12.17 18:13 Сейчас в теме
(37) Добрый день, Алексей!
Мы решили эту проблему создав отдельный комплексный процесс с согласованием "Юриста", "Бухгалтера" - Этап1, А на этап2 Экономиста маршрут попадал по итогам успешного выполнения этапа1.
41. Sanek_159 1 18.04.18 16:45 Сейчас в теме
Добрый день.

Подскажите как при настройке правил интеграции, в зависимости от условия, выбрать папку сохранения документа в документообороте? Т.е. в "выражения на встроенном языке" прописать алгоритм выбора того или иного значения из документооборота?

Можно создать несколько вариантов правил для одного документа, с разными папками и тогда при нажатии кнопки "создать" будет предложено выбрать несколько вариантов правил в которых указаны разные папки. Но это не красивый и чувствую не правильный метод.
42. iolko 195 19.04.18 04:08 Сейчас в теме
(41) Добрый день! Да Лучше прописать правила на встроенном языке.

Если Параметры.Источник (Какое то значение), Тогда Параметры.Результат = 
43. Sanek_159 1 26.04.18 11:16 Сейчас в теме
(42) вот как раз проблема в "Параметры.Результат", т.к. в "Параметры.Результат" нужно передать не значение "Параметры.Источник", а выбрать значение (не из источника) скажем произвольного справочника с определенным значением.
44. iolko 195 30.04.18 18:50 Сейчас в теме
в "Параметры.Результат" нужно передать не значение "Параметры.Источник" - это вообще зачем в результат передавать источник ? Источник - это какое значение обрабатываем, результат- это то что хотим присвоить. Напишите пример словами, я Вам просто кусок кода напишу.
45. Sanek_159 1 25.07.18 10:13 Сейчас в теме
(44) Вопрос уже решен, спасибо. Данные создаются из бухгалтерии 3 в документооборот 2.1.
Нужно было результату присвоить не значение справочника Источника (бухгалтерии), а выбрать из справочника Документооборота и его подставить. Т.е. в документообороте во внутренних документах есть допустим 2 папки куда создаются документы. При создании нужно было автоматически выбирать нужную папку.
46. sapsalev 01.12.18 11:43 Сейчас в теме
Уважаемый автор, спасибо за толковую статью!
Позвольте несколько вопросов:
1) в случае использования «1С:Документооборот 8 ПРОФ» вместо «КОРП» единственное отличие — это невозможность настройки ограничения на сумму договора?
2) можно ли настроить БП согласования договора в ДО более сложным, чем в ERP, т.е. сделать так, чтобы некоторые этапы согласования совпадали с этапами ERP, но при этом между ними были бы ещё внутренние этапы ДО?
3) правильно ли я понимаю, что веб-сервер можно использовать любой, аналогично всё будет работать и на IIS?
Заранее спасибо за ответ!
47. iolko 195 01.12.18 17:26 Сейчас в теме
(46) Доброго дня!

в случае использования «1С:Документооборот 8 ПРОФ» вместо «КОРП»
Вот тут подсказать не могу, надо смотреть описание поставок.

можно ли настроить БП согласования договора в ДО более сложным, чем в ERP

Да, именно для этого и создан 1С ДО, т.к. там можно как угодно усложнить процесс согласования

правильно ли я понимаю, что веб-сервер можно использовать любой, аналогично всё будет работать и на IIS?

Совершенно верно, мы и на IIS работали, но потом все-таки перешли на апач, к стати сейчас переходим на апач х64, и на платформу 8,3,13, вроде бы как, это даст заметный прирост производительности.

НО! Мы пошли немного по другому (пришлось) , а именно:
Сделали некий промежуточный документ - Проект договора в 1С ERP, на него навешали кучу контролей заполнения, добавили все требуемые договорным управлением реквизиты итд. И уже этот документ интегрировали в 1С ДО, и именно он у нас идет на согласование, а уже после того как проект согласован, то из него можно уже создать договор (с контрагентом, кредитов, лизинга, займа )

Такой подход позволил нам не плодить мусора в справочниках договоров, и получить всю требуемую отчетность не изменяя типовые документы. Т.е. есть некий регистр сведений, в котором хранятся связи между проектом договора и самим договором,следовательно формирую отчеты (которые требуют договорники) мы всегда имеем доступ к проекту договора, и следовательно ко всем его реквизитам. Ну и соотвественно еще допили периодику статуса договора, а то в типовых решениях этого нет. Т.е. статус - это факт (Действует или Закрыт) , а часто надо так... Количество действующих договоров за месяц. Следовательно тут без периодики не обойтись. Пишите, если что, отвечу
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Москва
Полный день

Программист 1С
Видное
Полный день

Программист 1С
Москва
зарплата до 120 000 руб.
Полный день

Консультант-аналитик 1С
Москва
зарплата от 100 000 руб. до 170 000 руб.
Полный день