简介
最近我们被指导为我们的一个商业伙伴设计操作系统无关的射频屏幕。我们设想了一个基于web浏览器的屏幕,企业管理平台软件,大数据查询平台,可以从我们的android和基于windows的射频枪调用。我们不想采用模块池的方法&我们的ECC系统是一个较低级别的版本,因此我们无法实现UI5网关解决方案。在阅读了这些论坛之后,我们决定在ECC中实现一个独立的基于REST的web服务,可以从HTML5屏幕调用该服务。
这篇博客文章给出了我们作为解决方案的一部分开发的POC的详细信息。
我们发现Christian Jianelli的博客非常有用。
详细信息
POC有一个非常简单和独特的功能。它接受屏幕中的物料编号,从ECC检索物料组并显示。下面是步骤
2.再次在SE24中创建类CL\u TREX\u JSON\u序列化程序的"Z"副本。这将帮助我们创建序列化的json响应
3.返回到步骤1中创建的类,企业云服务器,在方法IF\u HTTP\u EXTENSION~ HANDLE\u REQUEST中。我们需要捕获请求中的动作动词。在我们的情况下,这将是一个简单的"获取"请求
如果操作不是"获取",我们将生成一个405错误
在上述循环的其他部分,怎么查看大数据,我们将有我们的逻辑来读取物料编号并返回物料组。
我们从请求中检索物料编号
我们做我们的工作选择
现在是调用在步骤2中创建的序列化程序类并生成响应的时候了
这就完成了我们类和方法的代码
激活服务
右键单击服务并选择测试服务
您的默认web浏览器将打开,它将询问您的ECC凭据。登录。从web浏览器复制URL
现在打开SOAPUI–在文件中选择新的REST项目
粘贴复制的URL
以下屏幕将打开
在sap客户端下面添加一个附加参数matnr并从系统中提供一个有效的物料编号
添加基本授权–这将是您的ECC凭证
执行
您应该看到以下响应
给出一个不存在的材料并执行,这将生成错误响应
因此我们的服务似乎正在工作。下一步是一个简单的HTML5屏幕。如果你对网络编程的接触有限的话https://www.w3schools.com很好的资源让你开始
我通过EclipseUI5项目创建了屏幕。打开eclipse并在弹出的屏幕中选择projects
选择UI5并按next。给出项目名称
它将打开一个项目,因为这是一个POC–我们在索引.html
我们创建了一个输入框和按钮
现在我们必须对myFunction进行编码。在这种情况下,点击我们的webservice将被调用并检索到材料组
将输入框的值传递给变量p\u ndc
将webservice的url传递给变量myurl
传递调用webservice所需的其他规范。我已经在呼叫中硬编码了ECC凭证
下面的屏幕应该出现
给出您的材料编号并按下按钮,您应该看到一个响应
,国内大数据