• 如何为workflow单据类型定义一个form属性,在notify中通过这个属性打开表单


    表单名称:MYFORM
    数据块名称:MYBLOCK
    第一步:
    在表单中加入参数:WF_ITEMKEY
    MYBLOCK的数据来源中必须有WF_ITEMKEY这个字段。
    修改或添加数据块级触发器:WHEN-NEW-BLOCK-INSTANCE
    if :Parameter.wf_itemkey is not null
    then
       declare
          ls_where         varchar2(1000);
          ls_this_where    varchar2(1000);
       begin
          ls_where := GET_BLOCK_PROPERTY(MYBLOCK,DEFAULT_WHERE);
          if ls_where is null
          then
             ls_this_where := '1=1 ';
          else
             ls_this_where := ls_where;
          end if;

          ls_this_where := ls_this_where||' and (wf_itemkey = :Parameter.wf_itemkey)';

          SET_BLOCK_PROPERTY(MYBLOCK',DEFAULT_WHERE,LS_THIS_WHERE);
          app_find.find('MYBLOCK');
          SET_BLOCK_PROPERTY('MYBLOCK',DEFAULT_WHERE,LS_WHERE);
       end;
    end if;

    第二步:
    在plsql的包中设计:
    -- 创建工作流
          wf_engine.createprocess(
             itemtype    => lis_itemtype     ,   -- in varchar2
             itemkey     => lis_itemkey      ,   -- in varchar2
             process     => lis_wfprocess    ,   -- in varchar2 default ’’
          user_key    => ls_user_key      ,   -- in varchar2 default null
             owner_role => ls_owner_role    ); -- in varchar2 default null

    -- 打开表单MYFORM
          wf_engine.setitemattrtext(
             itemtype    => lis_itemtype               ,   -- in varchar2
             itemkey     => lis_itemkey                ,   -- in varchar2
             aname       => 'OPEN_FORM_COMMAND'        ,   -- in varchar2
             avalue      => 'MYFORM:WF_ITEMKEY="'        -- in varchar2
                           || lis_itemkey
                           || '"'
                             );

    --启动工作流
          wf_engine.startprocess(
             itemtype    => lis_itemtype     ,   -- in varchar2
             itemkey     => lis_itemkey      ); -- in varchar2

    第三步:
    在workflow builder中设计:
    增加属性,名称为OPEN_FORM_COMMAND    类型为: Form
    在message中,将此属性拉过去就好了,不必写在message body中。

    第四步:
    在notify中,应该可以会出现“OPEN_FORM_COMMAND”,选中点击就可以链接到表单了。

  • 相关阅读:
    启动docker 服务时 虚拟机端口转发 外部无法访问
    ADC滤波处理的十种方法
    ubuntu卸载软件
    Cannot fetch index base URL http://pypi.python.org/simple/
    pip命令详解
    QT入门
    tensorflow学习-第一章
    opencv学习-第一章
    二叉树详解
    C/C++内存地址划分
  • 原文地址:https://www.cnblogs.com/liuweicong39/p/2530657.html
Copyright © 2020-2023  润新知