zoukankan      html  css  js  c++  java
  • 启动工作流

    MAXIMO实施过程中,有时需要从外部系统中通过接口自动导入一些数据,如采购申请单PR,领料单等,客户在外部系统中,已经做好数据了,希望数据进入MAXIMO系统后,能自动启动业务流程。经过几天的研究发现,可以在后台手工实现!

        注意:此工作流的第一个节点不能为交互式节点 

       代码如下:

    /*
    * 工作流 得到当前应用,当前对像的工作流名称
    * appname:应用程序名称
    * tbname:主对像名
    */
    private String getProcessName(String appname,String tbname)throws MXException,RemoteException
    {
    MboSetRemote apptoolbarset=MXServer.getMXServer().getMboSet("WFAPPTOOLBAR", userinfo);
    SqlFormat sqlf=new SqlFormat("APPNAME=:1 and OBJECTNAME=:2");
    sqlf.setObject(1, "WFAPPTOOLBAR", "APPNAME", appname);
    sqlf.setObject(2,  "WFAPPTOOLBAR", "OBJECTNAME", tbname);
    apptoolbarset.setWhere(sqlf.format());
    if (apptoolbarset.isEmpty())
    {
    return "";
    }
    MboRemote mbo=apptoolbarset.getMbo(0);
    if (mbo==null)
    {
    return "";
    }
    if (mbo.isNull("PROCESSNAME"))
    {
    return "";
    }
    return  mbo.getString("PROCESSNAME");
    }
    /*
    * 启动工作
    * appname:应用程序名称
    * mbo 当前对像
    */
    private void startworkflow(String appname,MboRemote mbo)throws MXException,RemoteException
    {
    String tbname=mbo.getThisMboSet().getName();
    String processname=getProcessName(appname,tbname);
    if ("".equalsIgnoreCase(processname)||processname==null)
    {
    return;
    }
    WorkFlowServiceRemote wfs=(WorkFlowServiceRemote)MXServer.getMXServer().lookup("WORKFLOW");
    wfs.initiateWorkflow(processname, mbo);

  • 相关阅读:
    toString
    React系列,jsx
    React系列,初识
    如何在数据库中存储一棵树
    Linux-gate.so技术细节
    主引导记录MBR/硬盘分区表DPT/主分区、扩展分区和逻辑分区/电脑启动过程
    8259A工作原理描述
    汇编指令大全
    汇编条件判断整理(JCC,CMP/TEST的实现)
    【汇编】字符串处理指令 stosb、lodsb、movsw、scasb、rep
  • 原文地址:https://www.cnblogs.com/kevinhlj/p/1926018.html
Copyright © 2011-2022 走看看