创智DRMS操作手册数据通讯WEBSERVICE.docx
《创智DRMS操作手册数据通讯WEBSERVICE.docx》由会员分享,可在线阅读,更多相关《创智DRMS操作手册数据通讯WEBSERVICE.docx(17页珍藏版)》请在冰豆网上搜索。
创智DRMS操作手册数据通讯WEBSERVICE
苏州创智科技有限公司|深圳中科创智科技有限公司
软件应用操作手册
数据通讯-WEBSERVICE前后台数据交互
创智科技
2015/05/18
数据通讯、WEBSERVICE相关手册
WEBSERVICE前后台数据交互
1、管理需求3
2、总部布署3
2.1、IIS安装3
2.2、安装.NETFramework4.04
2.3、ASP配置4
2.4、网站访问权限7
2.5、安装创智WEBSERVICE服务7
2.6、安装PB12.5动态库11
2.7、其它异常情况处理13
2.8、安装数据库客户端14
2.9、配置cz_conn_ws.ini文件15
2.10、安全性控制18
3、门店部署18
3.1、POS程序升级18
3.2、SOAP安装18
3.3、策略设置19
WEBSERVICE前后台数据交互
1、管理需求
通过WEBSERVICE的方式来解决门店与总部的数据通讯。
2、总部布署
2.1、IIS安装
安装winxp、win2003、win7或以上操作系统。
并配置好IIS(win2003和win7安装方法不一样,请查看相关操作手册,提供的操作手册只作为参考,成功安装好IIS即可)。
开放HTTP访问端口。
2.2、安装.NETFramework4.0
WS服务是基于.net技术的。
如果是用于发布环境(即客户应用服务器的服务端),则只需要安装.NETFrameWork4.0或以上版本即可。
如果在安装IIS之前,已经安装了.NETFrameWorkSDK,则需要在电脑开始-运行中执行以下命令,在IIS中注册.NETFrameWork的运行环境。
C:
\windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe-i
注:
1.如果是用于开发环境,则需要安装.NETFrameWork4.0或以上版本的SDK。
2.如果电脑没有C:
\windows\Microsoft.NET\Framework\v4.0.30319\这个目录,说明安装的.NETFrameWork版本太低,需要重新安装4.0版本以上。
(部分win2003环境在安装【dotNetFx40_Full_x86_x64.zip】前需要先安装32位windows映像处理组件【wic_x86_chs.exe】。
)
2.3、ASP配置
网站的ASP.NET版本必须选择4.0或以上版本。
(win2003)IIS里面Web服务扩展中ASP.NETv4.0.30319,必须启用(允许),如果没有该选项就要做上述说的aspnet_regiis注册。
默认网站-属性-ASP.NET,缺省的ASP.NET版本是1.1.4322或2.0.50727,需要手工修改为4.0.30319版本,至此IIS部署完毕,稍候可以把PB开发的WebService,发布到该网站下面。
如是WIN7系统,先要查看网站高级设置的应用程序池是什么,默认是DefaultAppPool,再到IIS应用程序池中,把相应程序池的.netframework版本改成v4.0.30319
WIN7的64位系统,还需把程序池高级设置里面的“启用32位应用程序”设为True。
2.4、网站访问权限
WIN7系统如遇权限问题,可对下面两个目录添加和设置NetworkService和IIS_IUSERS这两个用户的”完全访问”权限.
1、C:
\Windows\Temp
2、C:
\Windows\Microsoft.NET\Framework\v4.0.30319\TemporaryASP.NETFiles
相应文件夹右键-属性-安全-编辑,找到相应用户设置权限,没有则添加。
2.5、安装创智WEBSERVICE服务
运行ws.msi进行安装。
2.6、安装PB12.5动态库
动态库文件分两部分。
把需要用到的Sybase.PowerBuilder.*.dll动态库文件放到目录
C:
\ProgramFiles\webservice\ws\ws\bin下面
WIN7系统是C:
\ProgramFiles(x86)\webservice\ws\ws\bin下面
再把其它DLL动态库支持文件msvcp71.dll,msvcp100.dll,msvcr100.dll,PBSHR125.DLL,PBSYC125.DLL,PBSYJ125.DLL,PBSYS125.DLL,PBDWM125.DLL放到c:
\windows目录。
(注意:
由于oracle版本WS通讯的动态库支持文件尚未确认具体文件,测试时请把PB125_DLL_ALL.rar所有动态库文件拷到c:
\windows目录。
)
然后便可以测试WS的可用性(按下图操作或在浏览器中直接输入http:
//localhost/ws/n_ws.asmx):
出现上图的各类函数,表明安装成功。
如浏览仍然报错或出现其它异常错误,请看下一节“其它异常情况处理”。
2.7、其它异常情况处理
如果按上述要求拷贝了所有动态库文件到指定目录后,测试WS可用性仍然报错提示:
未能加载文件或程序集“Sybase.PowerBuilder.Interop.DLL”或它的某一个依赖项。
则说明相关动态库文件所在路径没有被找到或识别,需要更换动态库文件路径,主要出现在win7环境的PBSHR125.DLL文件,文件可放在c:
\windows或c:
\windows\system32。
如提示:
未能加载由“Sybase.PowerBuilder.Interop.DLL”导入的过程。
则说明相关动态库文件损坏或版本不符,需要替换动态库文件,主要出现在win7环境的msvcp71.dll文件,需替换掉c:
\windows\sysWOW64路径下原来的msvcp71.dll文件。
注:
如DLL文件提示被占用替换不了,可把原文件改名,再把你的DLL文件复制粘贴进去。
如何快速查询哪些DLL文件缺失、版本错误或系统识别不了?
可借助“DLL依赖查看工具”,打开未能加载的DLL文件,就会显示与它相关的其它所有依赖的动态库文件,如前面有黄色问号标识,就说明对应的DLL文件不存在或所在路径无法识别,如果DLL文件显示红色,则说明对应的DLL文件版本不符或损坏,系统无法识别。
2.8、安装数据库客户端
WS要连接访问数据库,就要安装数据库客户端支持,如安装SYBASE客户端、ORACLE客户端等。
如安装Oracle客户端,需通过ODBC在系统DSN中进行连接配置:
2.9、配置cz_conn_ws.ini文件
主要用于解决数据库联接配置问题。
修改C:
\ProgramFiles\webservice\ws\ws_root\file\common\c\目录下的cz_conn_ws.ini配置文件内容,包括数据库的服务名、数据库名、登录用户名和密码等。
注:
如果没有cz_conn_ws.ini文件,需要新建或复制一个进去。
Sybase数据库连接配置实例示例:
[webservice]
vendor=sybase
driver=SYCSybaseSystem10/11
server=服务名
database=数据库名
dbparm=cp850
logid=sa
logpw=
userid=sa
userpw=
connect_times=1
Oracle数据库通过ODBC连接配置实例示例:
[webservice]
vendor=oracle
driver=ODBC
server=服务名
database=数据库名
dbparm=ODBC名称
logid=登录用户名
logpw=密码
userid=system
userpw=
connect_times=1
2.10、安全性控制
WEBSERVICE是开放的,防止别人调用WS来恶意攻击。
前台WS通讯增加用户身份检查,在客户端用:
门店号+预设的密码进行验证。
后台pos.sys_license表增加机构WS通讯密码:
栏位
作用
示例
sl_type
类型
WS-webservice的控制项
sl_id
机构号
0001
sl_license
密码
tsc0001
insertintopos.sys_license(sl_type,sl_id,sl_license)
values('WS','机构号','CHALLENGE');
3、门店部署
3.1、POS程序升级
升级到PB9.0版本的程序。
a.先覆盖PB9.0所需要的DLL动态库包(PB90_dll.rar)。
b.再覆盖前台系统更新包升级到最新程序。
3.2、SOAP安装
特殊情况下,安装SOAPTOOLKIT
Windows自带有,如不支持才需安装。
3.3、策略设置
3.3.1、启用WS通讯
前台【系统维护】-【策略性控制】增加以下策略
[数据通讯][WS启用]=Y
N-不启用WS功能。
缺省值。
Y-启用WS功能。
3.3.2、设置WS通讯密码
前台【系统维护】-【策略性控制】增加以下策略
[数据通讯][WS密码]=CHALLENGE
CHALLENGE为密码,目前测试必须为大写,可自定义,需与后台设定的密码一致。
3.3.3、WS通讯地址设置
根据各类数据处理存贮的设定不同,分为二种WS服务器的设定。
[数据通讯][WS地址总部]=http:
//localhost:
80/ws/n_ws.asmx?
wsdl
[数据通讯][WS地址区域]=http:
//localhost:
80/ws/n_ws.asmx?
wsdl
如果不区分服务器,就二个地址设定成一样。
http:
//localhost:
80/ws/n_ws.asmx?
wsdl这个是示例,根据实际情况,要修改好域名、IP地址或端口,如:
http:
//10.2.80.121:
8080/ws/n_ws.asmx?
wsdl之类的。
注意:
后面要加上“?
wsdl”。
3.3.4、策略快速增加语法
同样,需先修改好域名、IP地址或端口。
insertintosys_var_set(svs_group_id,svs_item_id,svs_item_name)
values('数据通讯','WS启用','Y');
insertintosys_var_set(svs_group_id,svs_item_id,svs_item_name)
values('数据通讯','WS地址总部','http:
//localhost:
80/ws/n_ws.asmx?
wsdl');
insertintosys_var_set(svs_group_id,svs_item_id,svs_item_name)
values('数据通讯','WS地址区域','http:
//localhost:
80/ws/n_ws.asmx?
wsdl');
insertintosys_var_set(svs_group_id,svs_item_id,svs_item_name)
values('数据通讯','WS密码','CHALLENGE');
3.3.5、通讯操作
前后台通过日常的专用通道传输方式进行通讯即可。
如前台通讯报错,可查看WS服务器的通讯日志:
C:
\ProgramFiles\webservice\ws\ws_root\file\session\__webservice__\c\czws.txt