DomHead[0][\主关键字段,int类型 DomHead[0][\盘点单号,string类型 DomHead[0][\盘点日期,DateTime类型 DomHead[0][\账面日期,DateTime类型 DomHead[0][\盘点仓库,string类型 ??
/***************************** 以下是非必输字段 ****************************/ DomHead[0][\修改人,string类型 DomHead[0][\修改日期,DateTime类型 DomHead[0][\制单时间,DateTime类型 DomHead[0][\修改时间,DateTime类型 DomHead[0][\审核时间,DateTime类型
??
2) 给普通参数赋值
例如,给普通参数sVouchType(参数名)赋值:
broker.AssignNormalValue(\
注意:所有参数名不限大小写。
3) 给“OUT型”参数赋值
为方便用户使用U8API,如果参数数据类型为一般值类型,如String、Integer、Long、Single、Double、Boolean、Date,则不必传入一个参数变量(传入也可);否则,则必须一个参数变量。
如: ??
// 该参数errMsg为OUT型参数,由于其数据类型为System.String,为一般值类型,因此不必传入一个参数变量。在API调用返回时,可以通过GetResult(\获取其值
//该参数domMsg为OUT型参数,由于其数据类型为MSXML2.IXMLDOMDocument2,非一般值类型,因此必须传入一个参数变量。在API调用返回时,可以直接使用该参数
MSXML2.IXMLDOMDocument2 domMsg = new MSXML2.IXMLDOMDocument2(); broker.AssignNormalValue(\
??
注意:当不传入一个参数变量时,在API调用返回时,可以通过GetResult(参数名)获取其值;当不必传入一个参数变量时,在API调用返回时,可以直接引用该参数。
4) 给“INOUT型”参数赋值
对“INOUT型”型参数,则不论是否是一般值类型,都需要传入参数变量。其他与“OUT型”参数一样。
6. 调用API
//示例调用如下:
if (!broker.Invoke())
{ }
注意:对调用失败,可以获取出错信息,如果是API框架的原因,则报告MomSysException异常,如果是业务组件的原因,则报告MomBizException异常。
//错误处理
Exception apiEx = broker.GetException(); if (apiEx != null) { }
//结束本次调用,释放API资源 broker.Release(); return;
if (apiEx is MomSysException) { }
else if (apiEx is MomBizException) { }
MomBizException bizEx = apiEx as MomBizException; Console.WriteLine(\异常:\//todo:异常处理
MomSysException sysEx = apiEx as MomSysException; Console.WriteLine(\系统异常:\//todo:异常处理
7. 获取返回结果
1) 获取BO对象
在“装载单据”时,通过GetBoParam方法获取表头或表体参数
BusinessObject DomHeadRet = broker.GetBoParam(\
Console.WriteLine(\对象行数为:\获取BO对象的行数 如果要取原始的XMLDOM对象结果,请使用GetResult(\MSXML2.DOMDocument DomHeadRet = broker. GetResult(\以上获取的行数是BO对象的实际行数。
//获取BO对象各字段的值。以下代码示例只取第一行。字段定义详见API服务接口定义
/****************************** 以下是必输字段 ****************************/ int id = Convert.ToInt32(DomHeadRet[0][\主关键字段,int类型
string ccvcode = Convert.ToString(DomHeadRet[0][\盘点单号,string类型 DateTime dcvdate = Convert.ToDateTime(DomHeadRet[0][\盘点日期,DateTime类型 DateTime dacdate = Convert.ToDateTime(DomHeadRet[0][\账面日期,DateTime类型 string cwhname = Convert.ToString(DomHeadRet[0][\盘点仓库,string类型
注意:
??
/***************************** 以下是非必输字段 ****************************/
string cmodifyperson = Convert.ToString(DomHeadRet[0][\修改人,string类型 DateTime dmodifydate = Convert.ToDateTime(DomHeadRet[0][\修改日期,DateTime类型
DateTime dnmaketime = Convert.ToDateTime(DomHeadRet[0][\制单时间,DateTime类型
DateTime dnmodifytime = Convert.ToDateTime(DomHeadRet[0][\//修改时间,DateTime类型
DateTime dnverifytime = Convert.ToDateTime(DomHeadRet[0][\//审核时间,DateTime类型 ??
2)
获取普通返回值
代码如下:
//获取普通返回值。此返回值数据类型为System.String,此参数按值传递,具体请参考服务接口定义 System.String result = broker.GetReturnValue() as System.String; 3)
获取普通“OUT型”或“INOUT型”返回值
如前所述,对普通“OUT型”或“INOUT型”参数,如果是一般值类型,则通过GetResult方法获取其返回值,否则直接使用该引用。
如,
//获取普通OUT参数domPos。此返回值数据类型为MSXML2.IXMLDOMDocument2,前面已定义该参数,请直接使用
//获取普通OUT参数errMsg。此返回值数据类型为System.String,在使用该参数之前,请判断是否为空 System.String errMsgRet = broker.GetResult(\??