• 启动工作流


    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);

  • 相关阅读:
    php基本语法之逻辑运算符
    HTML5实现端访问时禁止放大和缩小网页
    javascript simple MVC
    GIS开发离线地图应用-初识gis
    百度应用开发--日期大写转换
    ThinkPHP与EasyUI整合之三(searchbox):在datagrid中查询指定记录
    ThinkPHP与EasyUI整合之二(datagrid):删除多条记录
    面向对象----类和对象
    Java 基本语法----数组
    Java 基本语法----流程控制
  • 原文地址:https://www.cnblogs.com/kevinhlj/p/1926018.html
Copyright © 2020-2023  润新知