当前位置:网站首页>T100接口开发步骤简介
T100接口开发步骤简介
2022-07-16 04:30:00 【四方木2021】
T100 WebService Server端开发:
开发流程:1.服务注册;2.服务程序签出;3.服务程序撰写;4.服务程序上传
1.azzi700注册服务规格编号,然后签出就可以写程序了

2.宣告JSON组成Requent和Response的内容
#add-point:自定義客戶專用模組變數(Module Variable)
PRIVATE TYPE type_detail RECORD #传入单身数组
isagseq LIKE isag_t.isagseq, #项次
isag001 LIKE isag_t.isag001, #来源类型
isag002 LIKE isag_t.isag002, #来源单号
isag003 LIKE isag_t.isag003, #来源项次
isag009 LIKE isag_t.isag009, #料号
isag004 LIKE isag_t.isag004, #发票数量
isag005 LIKE isag_t.isag005, #发票单位
isag101 LIKE isag_t.isag101, #原币单价
isag105 LIKE isag_t.isag105 #原币税后金额
END RECORD
PRIVATE TYPE type_master RECORD #传入单头数组
isaf003 LIKE isaf_t.isaf003, #账款客户
isafdocdt LIKE isaf_t.isafdocdt, #单据日期
isaf018 LIKE isaf_t.isaf018, #税率
isafud001 LIKE isaf_t.isafud001, #EDB对账单号
items DYNAMIC ARRAY OF type_detail
END RECORD
PRIVATE TYPE type_return RECORD #返回数组
code LIKE type_t.chr20,
sqlcode LIKE type_t.chr20,
description LIKE type_t.chr1000,
orderNo LIKE type_t.chr50 #EDB销退单单号
END RECORD
3.从json中读取request数据
#取回 datakey 資料內容
LET g_ent = cl_aws_json_getValue("datakey","EntId")
LET g_company = cl_aws_json_getValue("datakey","CompanyId")
LET l_json_obj = cl_aws_json_getParam()
#將data 轉入l_master record
CALL l_json_obj.toFGL(l_master)
IF l_json_obj IS NULL THEN
LET g_status.code = "wss-00216" #讀入json 發生問題
RETURN
END IF
#检查传入datakey是否为空
IF cl_null(g_ent) THEN
LET g_status.code = "wss-00138"
LET l_str = cl_replace_err_msg(cl_getmsg('wss-00138',g_dlang),'EntId')
LET g_status.description = l_str
RETURN
END IF
IF cl_null(g_company) THEN
LET g_status.code = "wss-00138"
LET l_str = cl_replace_err_msg(cl_getmsg('wss-00138',g_dlang),'CompanyId')
LET g_status.description = l_str
RETURN
END IF
4.返回response的json
#返回值
CALL cl_aws_json_addParam(util.JSONObject.fromFGL(l_return))
在Server端的开发过程中,有几个常用的方法:
5.常用函数解释
cl_aws_json_getValue() 取得字段值
cl_aws_json_getParam() 取得整个param段
l_json_obj.toFGL() 将param段的数据转换读取到预定义变量
cl_aws_json_addParam(util.JSONObject.fromFGL(l_return)) 将返回变量自动加入response的json中
T100 WebService Client端开发:
宣告JSON组成Request所必须的内容,参考下列的type_service 的RECORD,先将这些必要宣告出来以利后面调用:
type type_service RECODE
prod STRING,
name STRING,
ip STRING
END RECODE
举例说明:
程序开始先宣告会调用到模组变数,如type_service,接着对这些变数进行初始化,像是预设的参数内容以及预设的服务产品、服务名称、ip:
宣告完变数后:
- 初始化JSON内容,参考cl_rest_json_init();
- 呼叫addParam()以及addDatakey() function进行增加parameter、datakey的动作;
- 透过cl_rest_json_invokeSrv()将request传送出去并且取得执行状态码、回传內容以及错误信息,当状态码为0是代表执行成功;
- 使用cl_rest_json_getParam()取得parameter的內容并将其內容透过toFGL()这个function 來转成RECORD形式以利我们取得所需的资讯,反之可从l_errmsg取得错误讯息
T100 WebService Client 端开发(中台)
宣告应用服务要传给对方产品的主体资料,与接收回传的主体资料RECORD
边栏推荐
- 03_ Case setup [resttemplate calls microservices]
- $attrs is readonly $listenners is readonly 报错解决方法
- 阅读真题 | 真题阅读 做题记录 二
- [phase locked loop] design and Simulation of all digital phase locked loop based on MATLAB
- 贝加莱PLC-更改轴任务扫描时间和周期位置下发
- Leetcode - interview question 02.05 List summation
- Idea merges dev branch code into master and so on
- 2018 Jiangsu Provincial Information and future programming expert competition test question -- (New) chicken and rabbit in the same cage
- Box model, document flow, positioning, layout and responsive design
- 【FPGA教程案例25】通过NCO核和除法器实现tan(x)计算
猜你喜欢

Filebeat collects kubernetes cluster logs

Opencv:05 filter

晴空一“鹤”排“云”上:以数为翅的中国飞鹤

山东省中小企业数字化转型论坛成功举办,九州云赋能中小企业数智升级

Advanced principle of MySQL: MySQL execution process and order

贝加莱PLC-更改轴任务扫描时间和周期位置下发

老子云3D产品及服务全介绍,一张图告诉你如何选!

数字孪生工厂丨智慧工厂孪生驾驶舱,实现智能化精益生产管理

micro、M3O微服务系列(一)

Analysis of JSON operation examples in golang
随机推荐
2.4_ 9 MySQL by separator, row to column
leetcode445. Add two numbers II
Jishili multimeter dmm6500
【目标跟踪】基于背景消减的图像帧间差分法目标检测及matlab仿真
自动补全(春季每日一题 58)
盒子模型、文檔流、定比特、布局和響應式設計
Quick use of jdbctemplate
ORA-600:[qertbGetPartitionNumber:qesma2],[],[],[]
Hcip static comprehensive review experiment
leetcode 2. Add two numbers
关于XML文件(五)
idea 将dev分支代码合并到master类推
记一篇IT培训日记068-心里有点不平衡
7.15 simulation summary
Rust中的函数function与方法method的区别
leetcode 143. Rearrange linked list
2.18 haas506 2.0 development tutorial - communication between Alibaba cloud M2M devices - rule engine /topic message routing (only versions above 2.2 are supported)
2018年江苏省信息与未来程序设计小能手比赛试题--(新)鸡兔同笼
DSP-Core类库的.NET版本降级
Single cell paper record (Part15) -- integrated analysis of multimodal single cell data