赛捷软件论坛's Archiver

lynn.yu 发表于 2020-1-31 20:20

[V12功能解说] 5天学习Sage X3 Web Services 第2天

[b]* 本文由赛捷软件(上海)有限公司翻译完成,未经授权不得转载。如需转载,请先联系相应版块的版主取得授权。[/b]

[attach]5806[/attach]

[b]第2天 创建并发布Web Services[/b]

这是整个5部分系列的第2部分,涉及如何为Sage X3 V12创建和耗用web services。这部分将侧重于创建web services。在第一部分中我们探讨了如何设置Sage X3 Web Services池。

[b]将一个SAGE X3对象发布为一项Web Service[/b]

很多Sage X3对象都可以发布为web service。以下是具体操作的步骤:

1. 登录至Sage X3 web客户端
2. 导航至功能:开发→脚本字典→脚本→Web服务

[attach]5807[/attach]

3. 点击右侧的“新建”按钮。

[attach]5808[/attach]

4. 填写或选择以下突出显示的字段。
o        【发布名称】——这是web service的发布名称。应当以“Y”或“Z开头,表明这是一项合作伙伴或客户定制。
o        【描述】——为web service录入一个描述。
o        【类型】——对于对象,请选择“对象”类型。而“子程序”则会在下一部分中提到。
o        【对象】——为需要发布的web service录入对象名称。
o        【交易】——如果对象是基于交易的,那么就必须选择交易。因为web services的字段数是受限的,如果发布过多字段,那么就会出现报错。要想限定为web service发布的字段数,请选择一个启用最少字段的交易。

[attach]5809[/attach]

5. 点击右侧的“创建”按钮。会出现一条消息,表明web service已创建。

6. 点击右侧的“保存”按钮。

7. 在创建并保存web service之后,“发布”按钮就可用了。点击“发布”按钮。

[attach]5810[/attach]

8. 发布web service之后,发布日期会得到更新。

[attach]5811[/attach]


[b]创建一个定制子程序,以便将其作为Web Service调用[/b]

定制子程序同样可以创建,并可以作为一项web service来调用。以下示例检索了过去n天内添加或更新的客户列表。

[b]创建子程序[/b]

[b]创建X3 4GL 源代码[/b]

1. 自Eclipse程序,前往File > New > Safe X3 Source File(文件→新建→Safe X3源代码)

[attach]5812[/attach]

2. 录入文件名,并点击“Finish(完成)”。

[attach]5813[/attach]

3. 录入X3 4GL代码,以便自X3选择客户。

[attach]5814[/attach]

4. 编译代码。


[b]创建X3子程序:[/b]

1. 自Sage X3菜单,前往功能:开发→脚本字典→脚本→子程序

[attach]5815[/attach]

2. 录入如下所示的信息。
o        【文件】——这是Eclipse中创建的原始文件名称。
o        【子程序】——录入原始文件中创建的子程序名称。
o        【描述】——为子程序录入描述
o        【业务代码】——为子程序指定一个业务代码
o        【模块】——选择模块
o        【Web services】——必须勾选这个才能创建web service。

[attach]5816[/attach]

3. 向下滚动至页面底部的【参数】部分。在子程序刚创建好时,【分析元】字段的值都会默认为1。这表示可以在web service调用中返回的数组元素的数量。由于我们在子程序源代码中指定了100,所以每个返回的变量的【分析元】值(地址变量类型)必须如下所示更改为100。

[attach]5817[/attach]

4. 点击“创建”图标。

5. 现在,就在X3中设定了子程序。要想为这个子程序创建一项web service,需点击屏幕顶部的“发布”按钮。

[attach]5818[/attach]

6. 录入web service的名称和描述。web service的名称必须以“Y”或者“Z”开头。

[attach]5819[/attach]

7. 需要填写发布日期,以表明该web service已发布且可供使用。

[attach]5821[/attach]


[b]结论[/b]

基于对象的web service和基于子程序的web service现在就可以使用任何编程语言了,例如C#、Java或PHP。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.