Current Path : /var/www/html/clients/wiki.e-nk.ru/data/cache/0/ |
Current File : /var/www/html/clients/wiki.e-nk.ru/data/cache/0/0b1791c82e0e2843e1942b714497d086.xhtml |
<h3 class="sectionedit1" id="рассылка_уведомлений_через_роль_при_изменении_данных_справочника">Рассылка уведомлений через роль, при изменении данных справочника</h3> <div class="level3"> <p> <strong>Краткое описание:</strong> </p> <pre class="code">Рассылка уведомлений через роль, если в справочнике ДОГОВОРЫ, изменилось поле статус на: "Документ подписан с двух сторон".</pre> <p> <strong>Событие: «Показ формы»</strong> </p> <pre class="code">//Первоначальный статус заносится в константу str=format("%s|%s";arrayof(object.Requisites('SpisokStatus').displaytext;object.ID)) Конст('dgvstate';str) //showmessage("Считываю данные в начале: "&Конст('dgvstate';str)) //showmessage("Название документа: "&object.Requisites('LongString').DisplayText&CR&"Вид: //"&object.Requisites('RegisteringContractDocKind').DisplayText&CR&"Статус: "&Конст('dgvstate')&CR&object.ID)</pre> <p> <strong>Событие: «Сохранение После»</strong> </p> <pre class="code">//-------- Уведомление о изменении статуса------- status_from_const=SubString(Конст('dgvstate');"|";1) object_id=SubString(Конст('dgvstate');"|";2) record=references.ДГВ.getobjectbyid(object_id) objectinfo=references.ДГВ.ObjectInfoByCode(record.Requisites('Код').asstring) state=record.Requisites('SpisokStatus').displaytext //showmessage(Конст('dgvstate')) //showmessage(status_from_const&CR&object_id&CR&state) if status_from_const<<>>state if state=="Документ подписан с двух сторон" RoleUser = ServiceFactory.GetRoleByName('Экономист') PerformerUserList = ServiceFactory.GetRoleMembers(RoleUser;nil) ContractName=record.Requisites('LongString').DisplayText // showmessage("Название договора: "&record.Requisites('LongString').DisplayText&CR&"Вид: //"&record.Requisites('RegisteringContractDocKind').DisplayText&CR&"Статус: "&Конст('dgvstate')&CR&record.ID) // showmessage("Отсылаю уведомление...") task=tasks.createnew() task.requisites('Subject').value= ContractName&" подписан с двух сторон" i=1 foreach x in PerformerUserList routestep = tasks.createroutestep(i;x;jkNotice;"";"";"") task.route.add(routestep) i=i+1 endforeach Task.CheckedTask = NO_VALUE attlist=task.getattachments(false) attlist.add(objectinfo) task.start() else // showmessage("Не уведомлять") endif endif //--------------------------------------------------</pre> </div>