1C: Документооборот Можно ли настроить старт БП по получению электронного письма #768725


#0 by Strelolga
Добрый день! Внедряем 1с документооборот 2.0 корп. Возникла необходимость: пользователь отправляет письмо на почтовый ящик (создали отдельный, завели учетку в Документообороте, письма получить можно). при получении письма автоматически стартует БП, состоящий из уведомления и поручения? И как реализовать старт при получении письма?
#1 by AceVi
И в чем проблема то? Я делал такой функционал, правда стандартную конфу чуть дописывал(хотя мог бы и полностью весь функционал в отдельный(свой) модуль вынести, просто скопировал бы кусок стандартного). Делаешь рег задание которое каждые 10 минут читает почту. почту читать 1С умеет. сделай для письма какие либо обязательные символы(например - самые 3 ервых символа это управляющий код для создания того или иного задания) и обяжи пользователей их проставлять. или даже проще - все письма которые приходят на конкретный почтовый адрес - преобразуються в задачи в 1С. Ты проблему уточни, что конкретно не знаешь как делать.
#2 by Strelolga
Ну вот получила я почту. Есть кнопку - создать входящий документ. Создала шаблон входящего документа - Письмо. Я хочу чтобы, когда приходит письмо на конкретный адрес, стартовался БП, состоящий из 1ой функции: поручение отдела бухгалтерии ввести нового контрагента в программу и все. Про рег задания я поняла - рег заданием создаю из письма документ входящий. так?
#3 by vde69
не стоит поручать почте то, что ДОЛЖЕН делать юзер !!!! Пусть заходят в документооборот и делают нормальный БП... все эти "управление через почту" вылезает боком хотя-бы по причине глюков почты (не дошло, или дошло несколько раз, или на него ответили) почту можно использовать только для получения уведомлений но никак не для управления...
#4 by AceVi
сначала напиши полный круг задач которые будут запускаться из писем, а потом пронумеруй их. Например : СОздание контрагента - 001, Оплата счета - 002 и т.д. - и сделай что бы этот номер был обязательно первые 3 символа в письме. иначе письмо не будет зарегестрировано в 1С как задача. Вот у тебя теперь есть четкое понимание для какой задачи письмо. Потом создавай на каждую задачу шаблон. и когда приходит письмо с тем или иным кодом создаешь задачу и заполняешь ее по соответсвующему шаблону(там есть стандартные функции для этого)
#5 by AceVi
ага, я 100 раз говорил это людям - но собственники хотят только так и никак иначе(например в моем случае согласовывать любые счета только через почту не заходя в 1С).
#6 by vde69
это не возможно... если хотят не залазить в 1с, то есть 2 варианта 1. завести для них секретуток, которые будут за них в 1с работать 2. сделать для них отдельную WEB морду (можно даже похожую на почту) и пусть хоть с телефона согласуют
#7 by AceVi
Очень даже возможно - я же сделал(причем там целая цепочка задач). Просто у пользователя всегда перед глазами в нужный момент напоминалка(например формат не подходит - 1с в ответном письме спрашивает и уточняет задание - например говорит - возможно вы имелли ввиду задачу "Завести контрагента - 001" и пользователь уже точно пришлет верное письмо. 1. Дорого - деньги - зачем? если можно условиться о паре значений и определенных форм письма. 2.  предлагал - не хотят - хотят с помощью своей почты управлять согласованием и другими процессами.
#8 by vde69
создание БП - это транзакция, почта не имеет к транзакциям никакого отношения, она не может отслеживать получение письма в целостности.... конечно тут как говорится на цвет и вкус все фломастеры разные, но задай им вопрос "почему клиент банки на почте не делают????"
#9 by Strelolga
Потом создавай на каждую задачу шаблон. и когда приходит письмо с тем или иным кодом создаешь задачу и заполняешь ее по соответсвующему шаблону(там есть стандартные функции для этого) Создала шаблон вх документа - письмо создала шаблон БП - согласование заявок на заведение контрагента как создать задачу, если пришло письмо с заданным кодом? (через регламентное задание?)
#10 by AceVi
Потому что безопастность? Структурированные данные? А так у меня к нескольким банкам к их выгрузке в 1С пара вопросов. не соблюдают они формат и обязательные поля) Для управления процессами этого не требуется.
#11 by vde69
клиент банк - это и есть запуск БП по расходованию текущих ресурсов (денег). БП в документообороте ничем не отличается от заявки в клиент банке, только он расходует обычно не деньги а время, что в общем случае то же деньги...
#12 by Cyberhawk
Старт заявок (БП) по входящему письму - нормальная практика, много где такое видел, в т.ч. и у себя на одном из фиксов
#13 by vde69
+ и даже урон компания может получить очень неслабый, например: стартанули БП "оплатить НДС на сумму 1000тр", у тебя шаблон распознал как 1000 руб (а не лям что было в письме), в результате оплатят только 1/10 налога и кто будет виноват? начальник - у меня в письме 1000тыр исполнитель - в БП 1000 руб программист (доставая вазелин) - ну я не досмотрел....
#14 by Карупян
Такую умную систему никто и не предлагает
#15 by Карупян
Старт БП - это не есть старт автоматической обработки данных
#16 by vde69
уверяю тебя как только запускают на простых, следом идут более сложные задачи... в сабже есть АРХИТЕКТУРНЫЙ косяк который обязательно выскочит и больно ударит...
#17 by vde69
ответственность за корректность данных в БП на ком????
#18 by Карупян
По идее должно быть так. Кинули письмо" Оплатить НДС ххх руб. Стартовал БП Ответственный получил уведомление и сформировал платежку
#19 by Карупян
Примерный аналог, что нач кинул письмо непосредственно исполнителю
#20 by AceVi
Может все таки ВнутреннийДокумент(и создать вид для него ЭлектронноеПисьмо). а не входящий? Сейчас уже под рукой нет базы документооборота. Уточни вопрос - что значит КАК создать? как прочитать письмо? как распознать какое задание создавать из него? как получиться шаблон? как на основании шаблона создать задачу? Ты слишком заморачиваешься - просто договариваешься - вот шаблон письма все что не подходит под шаблон я ответсвенности не несу и все. Да есть косяк - но его точно так же можно обойти и свести к минимуму, проблем с этим нет. просто четко налаженный бизнес процесс.
#21 by vde69
+ почему все загрузки из файлов и т.д. загружают в открытую форму, но не записывают ее ??? по тому, что человек должен взять ответственность за результат на себя, и нажимая кнопку ОК он эту ответственность принимает... Представьте например автоматическую загрузку банковских выписок из клиент банка в фоновом режиме, удобно, классно, но ни один руководитель такое не разрешит....
#22 by vde69
просто я в банке работал :)
#23 by Карупян
И поэтому любой БП - это списание и выдача бабла )))
#24 by AceVi
Аха, пальцем в небо. я делал уже 2 раза автоматическую загрузку банковских выписок. По анализу НазначенияПлатежа. с логами всех действий робота. и все что делает в конце пользователь просто сверяет обороты и все. Есть расхождения копается - нет, его работа закончена. все работает, работу пользователя уменьшили на 90%. Просто грамотно поставили процесс контроля и все - ошибок при загрузке не пропускаются. Согласись контролировать только ошибки легче чем контролировать загрузку каждого файла и документа в нем.
#25 by Strelolga
Я думала. что письма - это входящие документы. Есть обработка - загрузка почты. Там вижу письмо. Внизу есть кнопка -создать внутр документ (вход / исход). по этой кнопке создается документ по заданному шаблону. Создала шаблон БП, привязала его к шаблону документа. При создании документа "Заявка" стартуется БП. 1. Видимо, мне необходимо через рек задание сделать нажатие кнопки "создать документ"? 2. В таком случае в базе будут хранится внутренние документы по заведению контрагентов. Можно ли просто хранить письма, как письма а не документы (внтр/вход) и при этом автоматизировать старт БП?
#26 by AceVi
Надо делать не так. не надо хранить письма как документы базы документооборот. Просто рег заданием читаешь почту и запоминаешь только одно - обработала ты это письмо или нет. Сам текст письма копируешь в описание бизнес процесса и все. Следовательно создавать нужно только бизнес процессы на основании шаблона.
#27 by spock
смотри про детекторы бизнес-событий. Настраивается это.
#28 by Strelolga
пишу регламентную обработку, которая стартует бизнес-процесс приема заявок через электронные письма. Не могу добавить в предмет бизнес-процесса письмо. В шаблоне указала. что основной предмет - письмо (Тип - входящее письмо)
#29 by Strelolga
Решено Новая проблема. У меня настроена легкая почта. с помощью кода не находит ни одного сообщения. Если зайти в обработку загрузки почты, нажать кнопку - обновить список сообщений..То обработкой получают сообщения. Тогда в дальнейшем по коду находятся сообщения. Как получить сообщения только по коду:
#30 by Strelolga
перейти с легкой почты на встроенную?
#31 by AceVi
А код в 29 ты скопировала из стандартной обработки? Просто я помню у меня таких проблем не было. просто скопировал часть кода который читает письма из стандартной обработки и все. И то мне так пришлось делать потому что стандартная обработка завязана на код который выполняется на клиенте(а рег задание выполнятся только на сервере).
#32 by Strelolga
Разобралась. Заработало. Код писала сама. теперь хочу понять как детекторы событий сделать, чтобы не регламентной обработкой. Не могу понять пока.
#33 by Strelolga
Как работать с детекторами событий? Вот например создаю детектор: появление письма заявки: А в дополнительном обработчике бизнес-событий что то вроде: подключиться к почту, прочитать почту, для каждого письма создать БП, отослать письмо-ответ. удалить письмо-заявку (БП уже стартован, письмо скопировано в описание БП) Вопросы: 1. если детекторы запускаются раз в минуту, а обработчик не успеет обработать все письма за минуту, не возникнет конфликтов? или повторной обработки писем 2. как в дополнительном обработчике из одной функции вызвать другую?
#34 by AceVi
1. Я тебе говорил - как либо запоминай письма которые отработаны(либо заведи регистр(где, например, учитывай по отправителю и дата_Время письма), либо у письма есть признак Прочитано, либо удаляй загруженные письма с сервера почты). 2. Не понял вопроса. приведи пример текста.
#35 by AceVi
Детекторы событий - ты поясни что ты имеешь ввиду? появление письма на почте? никак - только периодическое чтение почты рег. заданием.
#36 by Strelolga
Детекторы - типовой функционал документооборота. Доп обработчики событий привязываются к детекторам. так вот. там пишется код.. что то вроде                   БП.Наименование = "Поручение: Обработать заявку на ввод нового контрагента " + письмо.тема;
#37 by Strelolga
Так вот такой обработчик событий на срабатывает. БП не стартуется, письмо ответ не высылается. Через рег задание работает.
#38 by AceVi
Так давай последовательно. Мы говорим о детекторе событий. Тот текст что ты привела - это не детектор событий - это то что должно произойти когда детектор уже сработает. Давай разбираться с самим детектором. Детектор Это регистр сведений когда записываються определенные шаги бизнес процессов и задач(создание, заверешение конкретной задачи, завершение бизнес процесса и т.д.). В документообороте есть обычное рег. задание которое с определенной периодичностью(по умолчанию вроде 5 минут) проверяет этот регистр и в процедуре обработки этого рег задания описано как реагировать на ту или иную запись в  регистре(например старб БП после завершения другого или старт БП сразу после создания внутреннего документа и т.д.) Что конкретно ты хочешь от детектора событий? потому что там запрограммированы определенные действия(причем как на мой вкус механизм очень куцый, хотя на нем можно развернуться там мощно что можно будет в пользовательском режиме задавать цепочки бизнес процессов.
#39 by turbosuslic
А как в ДО 2.0 в детекторе событий обратиться к самому событию? Видел пример кода на ДО 1.4 там было так: Задача = Событие.Источник в 2.0 это не работает, начинает ругаться на Событие. Кто-нибудь сталкивался с таким?
#40 by AceVi
Что значит обратиться? Выполнить его(т.е. записать информацию в Регистр Сведений) или прочитать регистр? Все события хранятся в регистре сведений(не помню уже как называться) вот от туда и получай.
#41 by turbosuslic
Я имею ввиду то, что мне нужно настроить детектор события, например с видом "Завершение процесса". Так вот, в момент завершения какого-либо процесса будет стартовать этот детектор, в этот момент в самом детекторе мне нужно отследить сам бизнес-процесс, который был сейчас заверешен, чтобы дальше с ним работать. В 1.4 был такой пример: но в 2.0 он не срабатывает, ругается: Переменная не определена (Событие). Задача = <<?>>Событие.Источник Вот мне и нужно узнать, как в 2.0 обраться из детектора события к произошедшему бизнес-процессу или событию.
#42 by AceVi
Я тебя не пойму) Переменная не определена (Событие). Задача = <<?>>Событие.Источник Ну так определи событие) или ты думаешь что событие это реквизит бизнес процесса? Событие - это запись регистра сведений - ну получи нужную запись и бери от туда источник.
#43 by AceVi
Если вопрос звучит - как отследить завершение той или иной задачиБП - то стандартный механизм подразумевает чтение РС по событиям раз в 5-10 минут и обработка новых записей(у регистр есть реквизит отработана запись или нет)
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С