首页 > 其他分享 >外部调用Camstar服务

外部调用Camstar服务

时间:2024-02-29 17:45:10浏览次数:20  
标签:调用 Camstar 外部 代码 dllCamstar WCF new config

方式一:

需要通过引用动态运行库方式来支持对Camstar的WCF服务进行调用

InSiteXMLClient.dll
Camstar.Exceptions.dll
Camstar.Util.dll
Camstar.Utility.dll
Camstar.Constants.dll
SharpZipLib.dll

配置Web.config,和Endpoints.Config  文件搭配使用

app.config配置WCF 端点:
从C:\Program Files (x86)\Camstar\Camstar Portal 中的web.config 复制
<system.serviceModel> 节点到app.config或web.config中
Endpoints.Config 文件含入:
将Camstar安装目录中的Endpoints.Config 文件
含入到您的解决方案bin\debug (或者bin\release) 文件夹中

以下代码是公用代码,通过以下代码学习如何使用Camstar服务。备注:标红的部分为公共代码。

 

 

        需要注意以下几点:

1、 XMLClient中输入的用户名和密码,不是数据库连接的用户名和密码,而是Camstar登陆的用户名和密码。

2、 Client.CreateDocumentandService("gwTestPrintDoc", "gwTestPrint");//创建服务并创建log文档。其中gwTestPrintDoc是创建服务的Doc文档,gwTestPrint对应Camstar中具体的Services。

方式二:

使用添加动态运行库方式进行Camstar的服务调用:

InSiteXMLClient.dll
Camstar.Exceptions.dll
Camstar.Util.dll
Camstar.Utility.dll
Camstar.Constants.dll
SharpZipLib.dll

以下代码是公用代码,通过以下代码学习如何使用Camstar服务。

MoveStdService moveStdService = new MoveStdService(new UserProfile(Constants.CamstarAccount, Constants.CamstarPwd, utcOffset));
MoveStd moveStdTxn = new MoveStd();
moveStdTxn.Container = new ContainerRef(mainBoardBarcode);
moveStdTxn.Resource = new NamedObjectRef(ResourceName);
moveStdService.BeginTransaction();
moveStdService.ExecuteTransaction(moveStdTxn);
ResultStatus resultStatus = moveStdService.CommitTransaction();
receiveBody.STATUS = resultStatus.IsSuccess ? "S" : "E";
if (!resultStatus.IsSuccess)
{
new LogHelper("CamstarTransaction").Info(">>>Container: " + mainBoardBarcode + ",MoveStd失败>>");
receiveBody.MESS = resultStatus.ExceptionData.Description;
new LogHelper("CamstarTransaction").Error("MoveStd:" + receiveBody.MESS);
return;
}
receiveBody.MESS = "移动下一站成功!";

PS:方式一:缺点:使用起来比较繁琐,如果有新增的WCF服务,需要手动更新Endpoints.Config 文件,优点:但是可以对于字段的管控不需要实时与MDB最新的WCF服务保持一致,MDB的开发和第三方代码开发互补干扰

         方式二:缺点:需要和MDB最新的生成的WCF相关的动态运行库保持一致,MDB更新,相关引用的WCF.dll也需要更新, 优点:新手上手难度较低,相关字段可以通过联想自动检索带出。对于编写字段赋值比较友好。

 

标签:调用,Camstar,外部,代码,dllCamstar,WCF,new,config
From: https://www.cnblogs.com/Zhu-jk/p/18044917

相关文章

  • Camstar配置Audit Trail
     打开AuditTrail配置器  使用Camstar账号登录  新建默认查询视图  点击右侧的FiledSelection,选择详情中需要展示的字段 点击保存 点击查询 点击详情......
  • 求求你别再用OkHttp调用API接口了,快来试试这款HTTP客户端库吧
    引言在日常业务开发中,我们时常需要使用一些其他公司的服务,调用第三方系统的接口,这时就会涉及到网络请求,通常我们可以使用HttpClient,OkHttp等框架去完成网络请求。随着RESTfulAPI的普及,一个高效、简洁且易于维护的HTTP客户端库显得尤为关键。而本文主要介绍一款强大的网络客户端......
  • CSS内联样式,内部样式表,外部样式表
    1.内联样式 直接在标签添加样式<h1style="text-align:center;">内容</h1>2.内部样式表在head标签里面定义<head><styletype="text/css">h1{text-align:center;}</style></head>3.外部样......
  • python远程服务调用
    一GET请求设置headers,user-agent用来模拟浏览器。cookie是远程服务需要校验的认证信息:比如token。请求:requests.get(url,headers=headers,params=params,verify=False),params是get请求时的form表单里的参数,verify=False设置为false即可。得到响应结果response后,可以转化为j......
  • 【总结】对大量函数进行trace调用流程+国际AIS3题
    现在混淆的主要目的之一就有让逆向分析人员不清楚函数的调用流程,给你一堆函数,加了高强度的OLLVM,更不能看了。那么Trace跟踪技术就显得很重要的,如果清楚了函数调用流程,那么逐个分析,距离成功不就很快了。万事开头难,逆向程序难在不知道从哪开始。前几天做了一道AIS3的题目,内含50个......
  • Delphi调用BPL并显示窗体
    bplunitUnit2;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Vcl.Controls,Vcl.Forms,Vcl.Dialogs,Vcl.StdCtrls;typeTForm2=class(TForm)Label1:TLabel;Button1:TBu......
  • 解决HttpServletRequest调用getInputStream()方法读取参数只能获取一次问题
    1、问题描述由于后端接口获取前端传过的参数是通过HttpServletRequest接收获取的。现有一需求需要在接口调用之前拦截接口进行业务处理。在拦截类中调用getInputStream()获取参数之后,在接口方法里获取参数为空。2、解决方法自定义一个过滤器过滤所有请求,使用HttpServletRequest......
  • js调用斑马打印机打印二维码
    斑马打印机打印二维码项目(Web项目)功能中存在生成并打印二维码的功能,需要借助打印机打印出二维码。由于业务需求二维码需要打印在不干胶的材料上并可以进行粘贴,所以借助斑马打印机通过热敏不干胶纸进行打印。需要结合所使用的的斑马打印机的型号,去官网下载相关的浏览器打印插件。(......
  • 如何在SpringBoot中优雅地重试调用第三方API?
    1引言在实际的应用中,我们经常需要调用第三方API来获取数据或执行某些操作。然而,由于网络不稳定、第三方服务异常等原因,API调用可能会失败。为了提高系统的稳定性和可靠性,我们通常会考虑实现重试机制。本文将深入探讨如何在SpringBoot项目中优雅地重试调用第三方API,并结合代码......
  • rn 调用webview组件调用h5传参
    webview组件调用html页面并实现互相传值的功能1.rn页面 html——> rnhtml页面传参 if(window.ReactNativeWebView){  window.ReactNativeWebView.postMessage('值');}接收html的数据使用接收onMessage={(event)=>this.onMessage(event)} 2.html页面......