news 2026/7/16 10:29:23

【ABAP】SAP中 ITS 服务从配置到发布详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【ABAP】SAP中 ITS 服务从配置到发布详解

目录

一、ITS 是什么?

技术演进与两大分支

两大应用场景分支

二、ITS 的架构与角色

1、集成 ITS 完整架构(当前主流)

(1)用户端

(2)ICF 接入层

(3)ITS 引擎层

(4)Dynpro 运行时

2、通信流程

三、开发流程(逐步操作)

阶段一:自定义 ITS 服务入口

1、在SAP GUI 中输入 SICF 进入服务配置

2、配置 its 子元素

3、配置服务的 GUI 接口

4、配置登陆用户名

5、处理器清单中填写请求处理器 “CL_HTTP_EXT_ITS”

6、错误页配置,选择系统登陆 => 配置

7、配置页面默认路径

阶段二:ABAP 端开发(底层程序+屏幕)

1、创建 ABAP Dialog 程序 YRFMAIN

2、在 SE93 为这个程序创建事务代码 YRF

3、在 SE80 创建名称为 YRF 的 Internet 服务

阶段三:ITS 服务相关开发

1、SE80 创建 Internet Service(重要!!)

2、发布模板

阶段四:测试页面

四、ITS HTML 模板核心语法

1、字段引用

2、条件控制

3、循环渲染内表

4、按钮与功能码


一、ITS 是什么?

ITS 的全称是 Internet Transaction Server(互联网事务服务器),是 SAP 体系中将 Dynpro 屏幕转化为 Web 页面的核心技术,是 Web 浏览器与 SAP 后端系统之间的桥梁。

核心作用:将SAP GUI的 Dynpro 屏幕(通常是文本和表格形式)动态地转换成HTML格式,从而让用户通过标准的Web浏览器(无需安装SAP GUI)访问和操作SAP系统

技术演进与两大分支

ITS 经历了两代架构演进,当前主流使用的是集成式 ITS:

  • 独立 ITS(Standalone ITS):R/3 时代的早期方案,ITS 作为独立服务器部署,通过 DIAG 协议连接 ABAP 后端,现已基本淘汰。
  • 集成 ITS(Integrated ITS):从 Web AS 6.20 开始,ITS 引擎直接集成在 ABAP 应用服务器内部,基于 ICF(互联网通信框架)运行,也就是我们通过 SICF 配置的模式,无需单独部署服务器。

两大应用场景分支

  • SAP GUI for HTML(Web GUI):完整还原 SAP GUI 的功能与布局,适配 PC 端浏览器,可运行几乎所有标准事务码,多用于替代桌面客户端、远程运维。
  • ITS Mobile:针对 PDA、手持扫码枪等移动端设备优化的轻量方案,简化 HTML 结构、采用无表格布局、适配小屏幕,是仓储物流、生产车间扫码场景的主流方案,本笔记的配置流程均属于 ITS Mobile 场景。

二、ITS 的架构与角色

1、集成 ITS 完整架构(当前主流)

(1)用户端

用户只需通过浏览器、PDA 扫码设备访问 URL 即可,无需安装 SAP GUI,部署和运维成本低。

(2)ICF 接入层

  • 是 ABAP 系统的网络入口,对应事务码 SICF 配置的服务节点
  • 接收 HTTP/HTTPS 请求,通过请求处理器 CL_HTTP_EXT_ITS 将请求转发给 ITS 引擎

(3)ITS 引擎层

  • 集成在 ABAP 内核中,负责解析 Dynpro 屏幕元数据
  • 加载对应主题的 HTML 模板,将屏幕字段、按钮、消息等动态渲染为 HTML 页面

(4)Dynpro 运行时

  • 执行业务程序、处理屏幕逻辑,和 SAP GUI 后端的运行逻辑完全一致
  • 业务代码无需为 ITS 做特殊改造,一套 Dynpro 可同时支持 SAP GUI 和 ITS 访问

2、通信流程

  • 独立 ITS 时代:ITS 服务器 ↔ ABAP 后端使用 DIAG 协议(与 SAP GUI 通信协议一致)
  • 集成 ITS 时代:ITS 引擎与 Dynpro 运行时在同一实例内,直接内部调用,不再走网络 DIAG;仅客户端 ↔ 服务器之间使用 HTTP/HTTPS 协议

  • DIAG协议:ITS与SAP后端系统之间使用的协议是 DIAG(动态信息和操作网关),也就是传统 SAP GUI 与服务器之间用来通信的标准协议。

三、开发流程(逐步操作)

阶段一:自定义 ITS 服务入口

当浏览器访问这个路径时,直接启动 SAP ITS 引擎

1、在SAP GUI 中输入 SICF 进入服务配置

2、配置 its 子元素

进入路径/default_host/sap/bc/gui/sap/its/,右击 “ its ”创建一个新的子元素 YRF

3、配置服务的 GUI 接口

服务数据中 “GUI 接口”选择“是”,并进行GUI配置

GUI 配置中填写核心参数,完整说明如下:

序号参数名称
1~TRANSACTIONYRF
2~THEME99
3~ITSMOBILE1
4~ITSMOBILEELEMUNITSPX
5~ITSMOBILEELEMFACTOR15
6~ITSMOBILEMSGSOUND1
7~ITSMOBILECSSINCLUDEMOBILE_BIG

4、配置登陆用户名

配置登陆数据中的用户名(控制后续调用免登录);一定要勾选“使用所有登陆过程”,如不勾选浏览器会反复跳出输入用户名弹窗

5、处理器清单中填写请求处理器 “CL_HTTP_EXT_ITS”

6、错误页配置,选择系统登陆 => 配置

7、配置页面默认路径

阶段二:ABAP 端开发(底层程序+屏幕)

1、创建 ABAP Dialog 程序 YRFMAIN

此处程序开发省略,,,需要确保在 SAP GUI 中可以跑起这个程序。

2、在 SE93 为这个程序创建事务代码 YRF

3、在 SE80 创建名称为 YRF 的 Internet 服务

右击“包名称” → 创建 → 其它(1)→ Internet 服务,Internet 服务和事务代码都填 YRF

阶段三:ITS 服务相关开发

1、SE80 创建 Internet Service(重要!!)

SE80 → 右击需要转换成 ITS 服务的屏幕→下拉选附加功能→ 创建 HTML 模板→输入服务名 YRF,主题默认 99,生成样式选择MOBILE4 Mobile Devices (No HTML Tables) → 创建。

界面字段说明

字段你的值含义
Internet 服务YRF你要操作的 ITS 服务名称,这是自定义服务名
主题99模板主题,一般用于区分不同样式 / 设备
HTML 模板名称YRFMAIN生成的 HTML 模板名称,后续会和 Dynpro 绑定
屏幕编号8888对应 Dynpro 的屏幕号,这里是自定义值
生成样式MOBILE4 Mobile Devices (No HTML Tables)专门为移动端优化的无表格布局样式,适配手机 / PDA

2、发布模板

开发者如果认为 SAP 自动生成 HTML 页面丑或不适配设备,完全可以自行修改 HTML 代码优化页面。

注意:每次修改完成代码后,一定要点击发布模板!!!

阶段四:测试页面

进入 SICF ,右击前面介绍的创建的服务节点 “YRF”,选择测试服务即可。

四、ITS HTML 模板核心语法

ITS 模板是在 HTML 中嵌入 ITS 控制语句,动态渲染 Dynpro 字段与逻辑,核心语法如下:

1、字段引用

使用 #字段名 引用 Dynpro 屏幕上的字段变量:

<!-- 渲染物料号输入框 --> <input type="text" name="~field01" value="#MATNR" class="input">

2、条件控制

通过 #if / #else / #endif 控制元素显隐,支持系统变量、屏幕字段判断:

#if SY-MSGTY = 'E' <div class="error-msg">#MESSAGE</div> #elseif SY-MSGTY = 'S' <div class="success-msg">#MESSAGE</div> #endif

3、循环渲染内表

通过 #loop / #endloop 遍历内表,生成列表:

<div class="list"> #loop IT_MAT_LIST <div class="item">#MATNR - #MAKTX</div> #endloop </div>

4、按钮与功能码

通过 ~okcode 触发 Dynpro 的 OK-CODE,与 SAP GUI 按钮逻辑完全一致:

<button type="submit" name="~okcode" value="QUERY">查询</button> <button type="submit" name="~okcode" value="SAVE">保存</button>

================================================================

欢迎指正。。。ITS + HTML 的语法持续更新。。。。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/16 10:29:17

MaixCAM Pro开发板AI视觉开发实战与YOLO模型部署

1. MaixCAM Pro开发板初体验&#xff1a;开箱与硬件解析 第一次拿到Sipeed MaixCAM Pro开发板时&#xff0c;最直观的感受是其紧凑的工业设计——67x51x12mm的机身尺寸下集成了完整的AI视觉处理能力。包装内除了主机外&#xff0c;还附带了Type-C数据线、2.4寸IPS触摸屏和配套的…

作者头像 李华
网站建设 2026/7/16 10:27:29

FastGPT | 10 - 会话、消息与对话记录模型

开篇问题 第八篇我们从 /api/v1/chat/completions 看到了聊天主链路,第九篇进一步拆解了鉴权、权限、频控和用量。 这一篇继续沿着同一条链路往下看: 一次聊天完成后,FastGPT 到底把什么保存到了数据库?这个问题看似简单,实际牵涉很多设计: 会话列表如何展示。 Human …

作者头像 李华
网站建设 2026/7/16 10:26:48

GitHub Copilot CLI离线模式:本地大模型编程工作流实战指南

1. 这不是“断网就能用”&#xff0c;而是开发者工作流的范式转移“GitHub Copilot CLI现在可以完全脱离GitHub服务器运行&#xff0c;这意味着什么&#xff1f;”——这个标题乍看像一句技术通告&#xff0c;实则是一把撬动整个AI编程生态的杠杆。我从2022年Copilot刚开放CLI测…

作者头像 李华
网站建设 2026/7/16 10:24:36

.NET模式窗体开发指南与最佳实践

1. 模式窗体基础概念解析在.NET平台Windows开发中&#xff0c;模式窗体&#xff08;Modal Form&#xff09;是一种特殊的用户界面元素&#xff0c;它会阻止用户与应用程序其他部分交互&#xff0c;直到该窗体被关闭。这种交互模式在需要用户立即响应或确认关键操作时尤为重要。…

作者头像 李华
网站建设 2026/7/16 10:23:45

HarmonyOS7 富文本与图文混排:Text 进阶用法

文章目录前言Span&#xff1a;一段里多种样式代码实现ImageSpan&#xff1a;文字里插图片核心代码可点击的富文本&#xff08;链接/提及&#xff09;完整示例实战&#xff1a;一条带表情的评论常见误区&#xff08;小白必踩&#xff09;完整可运行示例&#xff1a;图文混排代码…

作者头像 李华