工做流邮件审批设置

离线审批概念 数据库

离线审批--是指不进入系统,经过邮件来完成工做流审批的工做。适用于不但愿登陆系统,又能及时作审批的情形。服务器

当审批人点击了邮件中的批准或拒绝后,会向指定的收件人发一封邮件,Oracle会定时读取并处理收到的邮件,根据邮件中的标识来更新相应的单据状态,以使审批者不进系统而能够完成审批的工做。网络

通知和邮件处理过程 并发


1.       邮件处理程序定时读取收件箱文件夹中的邮件。若是邮件是工做流节点的通知响应,这意味着它包含当前节点的节点标识(NID)和响应结果。spa

2.       若是通知不存在,意味着通知ID或NID是不合法或者是NID格式不对,邮件将被移到删除文件夹。代理

3.       若是通知存在,但已经关闭或取消,邮件将被移到删除文件夹,并发送工做流关闭或取消通知给相关职责。unix

4.       若是通知存在,并是打开的,邮件处理程序把响应的消息生成XML,并放到代理WF_NOTIFICATION_IN中。同时电子邮件将被移到已处理的文件夹。server

OracleWorkflow支持的协议队列

目前,Oracle Workflow支持SMTP协议(默认端口是25)处理出站消息、IMAP4协议(默认端口是143)处理进站消息,不支持pop3,这也是Oracle Workflow对Mail服务器的要进程

求。     

检查邮件服务器协议

若是想使用ORACLE的邮件离线审批功能,邮件服务器必须开通SMTP,IMAP4协议。这个要根据不一样类型的邮件服务器去具体分析和设置。好比EXCHANGE服务器能够经过命令get-imapsettings获得imap4协议的配置。

通常经常使用的邮件服务器只会开通SMTP和POP3服务。若是邮件服务器支持的话,能够只对中转邮箱开通IMAP4协议。

最简单的作法,就是 经过客户端使用SMTP,IMAP4去登陆,看是否能正常收发邮件。

建立收发中转邮箱

建立收发中转邮箱,EBS 经过此邮箱向用户发送消息;用户向此邮箱发送审批或拒绝信息。EBS定时读取和分析指定目录的邮件,以便完成流程的审批或拒绝。

好比,ERPinbox@xxxxxx.com.cn

中转邮箱中建立文件夹

    

文件夹

用途

举例

收件箱文件夹

EBS定时读取和分析此文件夹中的邮件

ERPINBOX

已处理的文件夹

已读取并处理完成的邮件,将被转移到此文件夹

PROCESS

删除文件夹

已读取并被删除的邮件,将被转移到此文件夹

DISCARD

收件箱文件夹建议不要使用标准的收件箱(INBOX),把符合审批条件的邮件经过邮箱规则转移到收件箱文件夹。这样能够尽可能避免无关邮件的干扰。

将mail server的ip和域名解析增长到erp server的host文件中。

unix下/etc/hosts中设置的是:

vi/etc/hosts

192.168.100.2 mailer.xxxxxx.com.cnmailer


检查“工做流代理接收器服务”和“工做流邮件程序服务”是否已经启动,如没有启动,请选择并经过下方的按钮来激活。



系统管理员/工做流/工做流管理器/



点击Service Components,出现服务列表窗口


(注:这里查看“WorkflowNotification Mailer”的当前状态,并能够在动做框中选择启动,中止,刷新等操做。因为邮件服务器、网络等缘由致使“WorkflowNotification Mailer”服务中断中止,能够经过这里从新启动。)

点击WorkflowNotification Mailer,出现工做通知邮件设置窗口


点击Edit按钮,能够进行设置

 

参数

说明

Outbound Server Name

mailer.xxxxxx.com.cn

默认端口是25

Outbound SSL Enabled

N

 

Inbound Processing

Y

启用离线审批

Inbound Server Names

mailer.xxxxxx.com.cn

默认端口是143

Username

ERPinbox@xxxxxx.com.cn

 

Password

******

 

Reply-To Address

ERPinbox@xxxxxx.com.cn

 

Inbound SSL Enabled

N

 


1.1.       修改参数

参数

说明

JOB_QUEUE_PROCESSES

20

它指定每一个例程的 SNP 做业队列进程的数量

AQ_TM_PROCESSES

10

启用对队列消息的时间监视。该时间值可用于指定消息的延迟和失效属性

WF_NOTIFICATION_OUT retry_delay

600

输出消息的重试延迟时间(600秒)

WF_NOTIFICATION_IN retry_delay

600

输入消息的重试延迟时间(600秒)

 

 

 

注:参数根据实际的须要来设置。

ORACLE 建议设置 JOB_QUEUE_PROCESSES=10. AQ_TM_PROCESSES >= 1.

 

使用APPS在数据库中执行以下语句:

   ALTER SYSTEM SET  JOB_QUEUE_PROCESSES = 20;

   ALTER SYSTEM SET  AQ_TM_PROCESSES = 10;

   BEGIN

      DBMS_AQADM.ALTER_QUEUE(queue_name => 'APPLSYS.WF_NOTIFICATION_OUT',retry_delay => 600);

   END;

 

   BEGIN

      DBMS_AQADM.ALTER_QUEUE(queue_name => 'APPLSYS.WF_NOTIFICATION_IN',retry_delay => 600);

   END;

 

要使参数设置永久有效,须要修改数据库参数文件:

vi $ORACLE_HOME/dbs/initPROD.ora



验证参数:

导航路径:系统管理员/工做流/工做流管理器





若是是在现有的系统中增长邮件通知和邮件审批功能,系统中可能存在大量没有发送的通知,须要进行清理。

在全部用户完成必需的工做流审批以后,对相关表进行处理。

更新表 WF_NOTIFICATIONS

update WF_NOTIFICATIONS

set mail_status = 'SENT'

where mail_status = 'MAIL';

 

更新表WF_ITEMS

UPDATE WF_ITEMS
 SET end_date = SYSDATE
WHERE end_date IS NULL

 

用产品语言

针对须要电子邮件通知和电子邮件审批的用户,建议修改用户的“默认的应用产品语言”为“简体中文”,此选项会影响用户获取电子邮件通知时所用的语言。

若是默认的应用产品语言”为“美式英语”,可能会出现接收的待审批邮件题头存在乱码的现象。特别是OIE审批中,题头上的员工姓名可能会出现乱码。

电子邮件样式

须要审批的用户,应该设置为“HTML邮件”。不须要邮件提醒和审批的用户,能够设置为“请不要给我发送邮件”。对同一个用户,尽可能避免同时使用邮件审批和通知审批两种方式。

相关文章
相关标签/搜索