工作流集成开发3au8之_第1页
工作流集成开发3au8之_第2页
工作流集成开发3au8之_第3页
工作流集成开发3au8之_第4页
工作流集成开发3au8之_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

U8工作流系统是以规格化的流程描述作为输入的软件组件,它流程的运行状态,并在人U8系统安装完毕后,首先需要配置HR基础数据和运行参数。工作流程流转中需要人工参与的活(比如是以HR数据为基础进行流转的包括人员的组织结构、时需要和外界交互,包括消息、邮件、UTU等,这些交互需要一些运行参数,比如邮件服务器的设置、应用服务器的地址、UTU服务器等,这些运行时参数也需要提;之同意:审核单据内容并批准,流程流向下一个节点在流程模型中的类型是人;之不同意:工作任务委托人可以按单据类型将任务委托给别人代为进行,和转签的区别:UTU:工作流引擎可以给UTU发送一条待审消息,人可以在UTU中完成的邮件模板:发送给接收人的邮件、UTU消息、快速任务,附带的单据内容和格式是根据设定的邮件模板确定的预制运行时活动插件编写客户端提交代码等工作是在业务模块中实现功能都可能服务开发无特别约定,服务内部如果需要CallContext、发起人等工作流系统内置变量信息,可以在流程设计过程中,指定变量->服务传入参数的映射方式来获得。[流程发起人[UNDO[UNDO[UNDO接口返回值[工作流构造LoginContext对象 U8API资源管理器,在 该服务的,要求在同一子产品节点下编码惟一。 U8 u8应用服务器:D:\U8SOFT 2、非基本类型的参数必须部署在GACref4、对于VB中为ByRef的参数,必须是Variant类型。"string",(对应设计器变量类型string)"short",(对应设计器变量类型float)"int",(对应设计器变量类型int)"long",(对应设计器变量类型int)"double",(对应设计器变量类型double)"bool",(对应设计器变量类型bool)"datetime",(datetime)"object"(对应设计器变量类型object)务也需要回滚,则该服务还需要对应的Undo接口信息。约定Undo接口方法名为3个属性:undo_location:当是.Net程序的时候表示为程序集的名usingusingusingSystem.Collections.Generic;usingSystem.Text;namespace{publicclass{/////////returns>{ return}//////returns> {return}}}Submit=//Agree=//Disagree=//Dispatch=//Reject=//Revocation=//Return=//Abandon=//publicpublicinterface{boolUndoAudition(stringprimBizData,stringauditAction,refstringbizdata,objectcalledCtx,refstringerrMsg);boolDoAudition(stringprimBizData,stringauditAction,refstringbizdata,objectcalledCtx,refstringerrMsg);boolHandleBizException(stringprimBizData,stringauditAction,refstringhandleResult,refstringbizdata,objectcalledCtx,refstringerrMsg);}auditAction/// ///</summary>publicenum{}usingusingusingSystem.Collections.Generic;usingSystem.Text;usingUFSoft.U8.Framework.LoginContext;usingUFIDA.U8.Audit.Interface; usingUFSoft.U8.EX.Server.BusinessObject;usingUFSoft.U8.EX.Framework.DataModel;namespace{privatestringGetVoucherId(string{KeySetDataReaderreader=newKeySetDataReader(keySetData);returnreader["VoucherId"];}privatestringGetVoucherType(string{KeySetDataReaderreader=newKeySetDataReader(keySetData);returnreader["VoucherType"];}{KeySetDataReaderreader=newKeySetDataReader(keySetData);returnreader["VoucherCode"];}publicboolHandleBizException(stringprimBizData,stringauditAction,stringcontext,refstringhandleResult,refstringbizdata,objectcalledCtx,refstringerrMsg){thrownewException("Themethodoroperationisnot}publicboolUndoAudition(stringprimBizData,stringauditAction,stringcontext,refstringbizdata,objectcalledCtx,refstringerrMsg){LoginServicelogin=newLoginService((CalledContext)calledCtx);OrderBObo=newOrderBO(login);AuditArgsauditArg=newintid=int.Parse(GetVoucherId(primBizData));Orderorder=bo.dataasauditArg.ID=order.orderHeader.id;auditArg.Guid=order.orderHeader.guid;bo.BatchUnAudit(newbo.BatchUnAudit(newAuditArgs[]{auditArgreturnthrownewException("Themethodoroperationisnot}}OptionDimOptionDimserviceAsPublicFunctionDoAudition(keyDataAsString,auditActionAsString,ByRefbizDataString,calledCtxAsObject,ByRef errMsgAsString)AsBooleanSetservice=NewPuServiceAdapterDoAudition=service.VerifyVoucher(keyData,auditAction,context,EndPublicFunctionUndoAudition(keyDataAsString,auditActionAsString,ByRefAsString,calledCtxAsObject,ByRef errMsgAsString)AsBooleanSetservice=NewPuServiceAdapterEndPublicFunctionHandleBizException(keyDataAsString,auditActionAsString,handleResultAsString,ByRefbizDataAsString,calledCtxAsObject,ByRef errMsgAsString)AsBooleanHandleBizException=DimbizDataObjAsNewhandleResult="UnHandle"EndbizData=bizDataObj.XMLMsgBox"BizData="&bizDataEnd业务对象是指流程处理的各种类型业务对象(比如:采购订单、材料出库单、出口订单等。新的流利用UAP的数据引擎来定义这些业务对象,这样就可以通过修改数据引擎中的业务对象的查询结果来形成不同的业务对象的Schema,从而可以将这些对象的Schema用作流程定义的条件并在流程运行时获取业务对象实例的属性值来进行相应的处理。UAPUAP数据引擎中查询结果的数据,具体设计步骤及其与预置数据之间的VoucherId,VoucherCode,VoucherType。这三列在流中是关键业务数据,会在任务项的扩展属性中出现,可以作为任务项显示名称、4.5.业务对象批业务对象(注意:与数据引擎中所描述的业务对象是两不同概念。过程使用位于U8SOFT\WorkflowAuditBusinessServiceTool.exe来完成。业务对象步骤如下增加业务业务可理解为对对象所可以进行的操作如对请假单这一业务对 业务URL中包含响应该业务的业务模块,在运行期间,门户将根据该信息加载相应的业务模块来完成该业务的响应。URL预置格式如下:<?xmlversion="1.0"encoding="utf-<paramName="id"<paramName="name"<paramName="authID"<paramName="cmdLine"<paramName="docType"<paramName="docID"<paramName="subFunction"<paramName="SubSysID"上述各参数值与UFSystem.UA_中的字段存在对应关系,id->UA_. <?xmlversion="1.0"encoding="utf-<paramName="id""<paramName="authID" <paramName="cmdLine"<paramName="docType"<paramName="docID"<paramName="subFunction"Value="<paramName="SubSysID"“1(,打回重做的任务类型,需要填入“2指定业务对应的业务实指定业务所需要的关键业务参务时传递给业务模块。通常业务均应至少包含三个参数:VoucherId,5.设置业务插 :注业务对象完成后可以导出,然后到别的服务器导入,省去了重新:4.6.提交客户端编流流 否 @cBizEventIdnvarchar(40),@iYearsmallint,@cAcc_Idnvarchar(3),@bControlledbitout DimoAuditasSetoAudit= PublicFunctionSubmitApplicationMessage(primBizDataAsString,calledCtxAsCalledContext,ByRefisWFControledAsBoolean,ByReferrMsgAsString)AsBooleanprimBizDataXML串,XMLSchema<KeySet<Keyname="BizObjectId"<Keyname="BizEventId"<Keyname="VoucherId"<Keyname="TimeStamp"</KeySetPublicFunctionSubmitApplicationMessage_2(bizObjectIdAsString,eventidAsString,voucherIdAsString,calledCtxAsCalledContext,ByRefisWFControledAsBoolean,ByReferrMsgAsString)AsBoolean1VBFunctionSubmitApplicationMessage_2(bizObjectIdAsString,eventIdAsString,voucherIdAsString,calledCtxAsCalledContext,ByRefisWFControledAsBoolean,ByReferrMsgAsString)AsBooleanDimDimloginAsU8Login.clsLogin DimauditSvcAsNewUFIDA_U8_Audit_Service'Login服务的LoginContext对象DimcalledCtxAsNew DimstrBizObjectIdAs'业 DimstrBizEventIdAsDimiVoucherIdAsIntegerDimretAsDimbControlledAs‘OnErrorGoTostrBizObjectId="PU88"strBizEventId="PU88.Submit"strContext=""iVoucherId=1calledCtx.SubId="DP"calledCtx.token=login.userTokenIf(strBizObjectId="")Or(strBizEventId="")Then ret=auditSvc.SubmitApplicationMessage_2(strBizObjectId,strBizEventId,iVoucherId,IfIf(ret=True)IfbControlledTrueThenMsgBox("提交成功")EndMsgBox提交失败,失败原因:&errMsg)EndIfEndIf2..NET voucherId,stringcontext,CalledContextcalledCtx)//////提交消/////////<paramname="eventId">业务标识/////////<usingusingusingUFIDA.U8.Audit.BusinessService;usingUFIDA.U8.Audit.WorkList;usingUFIDA.U8.Audit.Service usingUFSoft.U8.Framework.Login.UI;using//privateconststringSubId={// auditSvc=new////LoginCalledContextCalledContextcalledCtx=newcalledCtx.subId=calledCtx.TaskID=_login.GetTaskID(SubId);calledCtx.token=_login.userToken;stringbizObjectId=//业 标stringbizEventId=intvoucherId=if(bizEventId==string.Empty||bizObjectId=={} bControlled,referrMsg);if(ret==true&&bControlled)"+}catch(Exception{}批审界面接3.10的审核接口进行批量处理)<paramname="calledCtx"///<paramname="action">动作,传出参数///<paramname="state">状态,传出参数///<paramname="opinion">意见,传出参数returnsTrueFalse</returns>FunctionShowAuditSimpleUI(calledCtxAsCalledContext,byrefactionAsInteger,byrefstateAsInteger,byrefopinionAsString)Asparamname="calledCtx"///<paramname="state">状态,传出参数///<paramname="opinion">意见,传出参数returnsTrueFalse</returns>FunctionShowAuditAbandonUI(calledCtxAsCalledContext,byrefstateAsInteger,byrefopinionAsString)Asparamname="flags"paramname="calledCtx"///<paramname="action">动作,传出参数///<paramname="state">状态,传出参数///<paramname="opinion">意见,传出参数returnsTrueFalse</returns>FunctionShowAuditUI(flagsAsInteger,calledCtxAsCalledContext,byrefactionAsInteger,byrefstateAsInteger,byrefopinionAsString)AsflagsEnum{AuditUIItemFlags_None=AuditUIItemFlags_AgreeButton=AuditUIItemFlags_DisagreeButton=AuditUIItemFlags_AbandonButton=AuditUIItemFlags_CheckedBatch=8, ction=16}ShowAuditSimpleUI功能:根据批审界面返回的参数,逐次调用该接口进行处paramname="keySet">关键业务数据///<paramname="action">动作///<paramname="state">状态///<paramname="opinion">意见paramname="calledCtx"///<paramname="auditResult">返回信息returns>truefalse-失败</returns>FunctionAudit(keySetAsString,actionAsInteger,stateAsInteger,opinionAsString,calledCtxAsCalledContext,auditResultAsString)AsBooleankeySet<Keyname="VoucherId"<Key<Keyname="VoucherCode"value=""<Keyname="AuditAuthId"value=""AuditOpinion="意见,界面输入的意见"

paramname="keySet">关键业务数据///<paramname="opinion">意见///<paramname="state">状态paramname="calledCtx"///<paramname="auditResult">返回信息returns>truefalse-失败</returns>FunctionAbandon(

keySetAsString,opinionAsString,stateAsInteger,calledCtxAsCalledContext,auditResultAsString)AsBoolean.//////paramname="bizObjectID">业务对象///<paramname="eventID">业务IDparamname="VoucherId">单据paramname="V

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论