Camstar获取回参
2024-10-21 19:48:30
public static bool SplitQty(string Username, string Password, string Container, int splitQty,int plateQty,ref List<string> childList,ref string Msg)
{
string SessionID = Guid.NewGuid().ToString();
csiClient Client = new csiClient();
csiConnection Connection = Client.createConnection(Constants.CAMSTAR_HOST, Constants.CAMSTAR_PORT);
Connection.setConnectionTimeout(600000);
csiSession Session = Connection.createSession(Username, Password, SessionID);
try
{
csiDocument Document = Session.createDocument("SplitDoc");
csiService Service = Document.createService("Split");
csiObject InputData = Service.inputData();
InputData.containerField("Container").setRef(Container, "");
InputData.dataField("AutoNumber").setValue("True");
InputData.dataField("CloseWhenEmpty").setValue("False");
InputData.namedObjectField("AutoNumberRule").setRef("SplitRule");
InputData.dataField("ES_SNDetail").setValue("1");
csiSubentityList Details = InputData.subentityList("ToContainerDetails");
for(int i=1;i<=plateQty;i++)
{
csiSubentity Detail = Details.appendItem();
Detail.dataField("Qty").setValue(splitQty.ToString());
}
Service.setExecute();
Service.requestData().requestField("CompletionMsg");
Service.requestData().requestField("ToContainerDetails");
Service.requestData().requestField("ChildContainers");
csiDocument ResponseDocument = Document.submit();
if (ResponseDocument.checkErrors())//提交失败
{
csiExceptionData csiexceptiondata = ResponseDocument.exceptionData();
Msg = csiexceptiondata.getDescription();
return false;
}
else//提交成功
{
csiService RespService = ResponseDocument.getService();
var xxxxx = RespService.responseData();
csiField CompletionMsg = RespService.responseData().getResponseFieldByName("CompletionMsg");
csiField details = RespService.responseData().getResponseFieldByName("ToContainerDetails"); //需要解析XML
csiSubentityList list = details.asSubentityList();
for (int i = 0; i < plateQty; i++)
{
csiSubentity item = list.getItemByIndex(i);
var a = item.getField("ToContainerName");
var sn=a.asDataField().getValue();
childList.Add(sn);
}
Msg = CompletionMsg.asDataField().getValue();
return true;
}
}
catch (Exception e)
{
Msg = e.Message;
return false;
}
finally
{
if (Session != null)
Session.removeDocument("SplitDoc");
if (Connection != null)
Connection.removeSession(SessionID);
if (Client != null)
Client.removeConnection(Constants.CAMSTAR_HOST, Constants.CAMSTAR_PORT);
}
}
最新文章
- 目标电脑未安装VC++6.0或者VS,运行APP丢失DLL问题解决办法
- 普华永道高级JAVA面试记录
- php_mysqli面向对象链接数据库(一)
- android之SQLlite操作
- 给Windows机器创建软连接
- 自动构建Makefile(1)--C/C++编译流程&;Makefile规则简介
- webstorm修改文件,webpack-dev-server不自动编译刷新的解决办法
- cocos2d-x调度器原理
- django种表单post出现CSRF verification failed( CSRF验证失败 ) 的两种解决方式
- JVM运行时内存结构
- Google Map Android api V2 中使用MapView遇到CameraUpdateFactory is not initialized!的解决办法
- revel框架教程之缓存和Job
- STM32 Cube mx 安装
- Spring Boot整合Mybatis并完成CRUD操作
- 解决consul覆盖注册
- SpringBoot与SpringCloud的版本对应详细版
- Java IO API记录
- bzoj千题计划316:bzoj3173: [Tjoi2013]最长上升子序列(二分+树状数组)
- [leetcode]366. Find Leaves of Binary Tree捡树叶
- spring-mybatis代码生成插件,与实例展示