SAP RF 移动屏幕定制

SAP RF 移动屏幕定制

ITSmobile 是 SAP 当前将移动设备连接到 SAP 系统的技术基础。它基于 SAP Internet Transaction Server (ITS),从 Netweaver 2004 开始作为 Netweaver 平台的一部分提供。ITSmobile 提供了一个框架,用于为任何 SAP 事务生成基于 HTML 浏览器的屏幕。在本博客中,我们将重点讨论射频移动(LMxx)事务,该事务旨在支持各种仓库流程。

RF 移动事务通常不能很好地适应移动设备,而且往往缺少支持业务流程所需的数据字段和功能。因此,几乎总是需要定制来满足业务需求,并针对所选的移动设备优化屏幕。

在 IMG 中,物流执行->移动数据录入是 RF 移动定制的入口。从这里我们选择 “定义屏幕管理”,检索我们希望定制的屏幕的逻辑和原始屏幕编号。射频移动屏幕通常在 SAPLLMOB 模块池(功能组 LMOB)中实现。在本例中,我们将定制 LM00 登录屏幕,它是逻辑屏幕 889,原始屏幕 0889(窄格式)。

将功能模块 LMOB 0889 屏幕的原始屏幕复制到 “退出 ”功能模块 XLRF 9889 屏幕(标准做法是将原始屏幕编号的第一位数字替换为 9)。将新界面改为子界面并删除 ok 代码。

然后使用屏幕布局编辑器重新格式化并激活屏幕(在本例中,我们只是移动了一个按钮,并在布局底部添加了用户名):

BEFORE:

AFTER:

接下来,我们需要实现用户退出,以填充新字段并执行支持业务流程所需的任何附加处理。增强功能的命名惯例是 MWMRFxxx(xxx = 逻辑屏幕编号)。因此,在这种情况下,我们需要在 CMOD 中创建一个新项目,并分配增强功能 MWMRF889。完成后,进入组件查看屏幕退出前和退出后,本例中为 E  XIT_SAPLLMOB_720(前)和 EXIT_SAPLLMOB_730(后)。 这些函数模块是退出函数组 XLRF 的一部分,也就是我们在上面添加自定义屏幕的那个函数组。标准数据结构和任何自定义数据字段都需要添加到顶部包含 ZXLRFTOP 中。在本例中,需要为用户名 W_USERNAME 声明 include LLMOBDAT 和自定义数据字段。

*&———————————————————————*
*&  Include           ZXLRFTOP
*&———————————————————————*
include llmobdat.
data: w_username type adrp-name_text.

We need to transfer the “before” exit input parameters to the screen fields, as well as perform any additional processing needed. The following code is added to the “before” exit EXIT_SAPLLMOB_720 (include ZXLRFU67):

*&———————————————————————*
*&  Include           ZXLRFU67
*&———————————————————————*
* populate screen fields
lrf_wkqu = i_lrf_wkqu.
rlmob = i_rlmob.
logon_data-queue = i_logon_data_queue.
logon_data-lgnum = i_logon_data_lgnum.
logon_data-devty = i_logon_data_devty.
logon_data-exver = i_logon_data_exver.
lrf_wkqu-mmenu = i_logon_data_mmenu.

* read user full name
select adrp~name_text into w_username
from usr21
join adrp
on adrp~persnumber eq usr21~persnumber
where bname eq sy-uname.
exit.
endselect.

同样,屏幕字段值需要返回到 “后 ”退出 EXIT_SAPLLMOB_730(包括 ZXLRFU68)中的输出参数:

*&———————————————————————*
*&  Include           ZXLRFU68
*&———————————————————————*
o_rlmob_pback = rlmob-pback.
o_rlmob_psave = rlmob-psave.
o_rlmob_pmlgf = rlmob-pmlgf.
o_rlmob_pclear = rlmob-pclear.
o_logon_data_exver = logon_data-exver.
o_logon_data_mmenu = logon_data-mmenu.
o_logon_data_devty = logon_data-devty.
o_current_field = current_field.

现在只需激活增强项目,我们就快成功了。

回到 IMG,再次进入 “定义屏幕管理”,为变量 “1 ”添加一个表项,将逻辑屏幕指向新的退出屏幕。

然后进入 RF 队列管理->为队列分配处理器,并为测试用户配置文件分配适当的屏幕格式和变体。

一个好的测试方法是运行 LM00,看看是否出现新的登录屏幕。​编辑

最后一步是生成互联网服务和模板,有关说明可在此处找到:

http://help.sap.com/saphelp_nw70/helpdata/en/46/668d4b72255de4e10000000a1553f6/frameset.htm

我们还需要创建 ICF 服务:

http://help.sap.com/saphelp_nw70/helpdata/en/46/668d4b72255de4e10000000a1553f6/frameset.htm

需要为公司业务流程中使用的所有屏幕生成模板。我们很可能还需要创建一个 Z 版本的 ITSmobile HTML 生成类,并针对使用中的射频设备对其进行调整,主要是调整屏幕尺寸等。这同样适用于 HTML 模板,以便我们添加公司徽标等。Blue Harbors 可以在所有这些方面提供帮助,我们计划在后续博客中逐步介绍定制 ITSmobile 的过程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/906071.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spark,数据提取和保存

以下是使用 Spark 进行数据提取(读取)和保存(写入)的常见场景及代码示例(基于 Scala/Java/Python,不含图片操作): 一、数据提取(读取) 1. 读取文件数据&a…

如何用mockito+junit测试代码

Mockito 是一个流行的 Java 模拟测试框架,用于创建和管理测试中的模拟对象(mock objects)。它可以帮助开发者编写干净、可维护的单元测试,特别是在需要隔离被测组件与其他依赖项时。 目录 核心概念 1. 模拟对象(Mock Objects) 2. 打桩(Stubbing) 3. 验…

最新缺陷检测模型:EPSC-YOLO(YOLOV9改进)

目录 引言:工业缺陷检测的挑战与突破 一、EPSC-YOLO整体架构解析 二、核心模块技术解析 1. EMA多尺度注意力模块:让模型"看得更全面" 2. PyConv金字塔卷积:多尺度特征提取利器 3. CISBA模块:通道-空间注意力再进化 4. Soft-NMS:更智能的重叠框处理 三、实…

【Linux网络与网络编程】12.NAT技术内网穿透代理服务

1. NAT技术 之前我们说到过 IPv4 协议中IP 地址数量不充足的问题可以使用 NAT 技术来解决。还提到过本地主机向公网中的一个服务器发起了一个网络请求,服务器是怎么将应答返回到该本地主机呢?(如何进行内网转发?) 这就…

uniapp的适配方式

文章目录 前言✅ 一、核心适配方式对比📏 二、rpx 单位:uni-app 的核心适配机制🧱 三、默认设计稿适配(750宽)🔁 四、字体 & 屏幕密度适配🛠 五、特殊平台适配(底部安全区、刘海…

JAVA EE(进阶)_进阶的开端

别放弃浸透泪水的昨天,晨光已为明天掀开新篇 ——陳長生. ❀主页:陳長生.-CSDN博客❀ 📕上一篇:JAVA EE_HTTP-CSDN博客 1.什么是Java EE Java EE(Java Pla…

SQL脚本规范

主要作用:数据库的备份和迁移 SQL脚本规范 每一个sql语句必须与;结束 脚本结构: { 删库,建库 删表,建表 插入初始数据 } 建库语法: CREATE DATABASE 数据库名CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CHARA…

std::ratio<1,1000> 是什么意思?

author: hjjdebug date: 2025年 05月 14日 星期三 09:45:24 CST description: std::ratio<1,1000> 是什么意思&#xff1f; 文章目录 1. 它是一种数值吗&#xff1f;2. 它是一种类型吗&#xff1f;3. std:ratio 是什么呢&#xff1f;4. 分析一个展开后的模板函数5.小结: …

测试--测试分类 (白盒 黑盒 单元 集成)

一、按照测试目标分类&#xff08;测试目的是什么&#xff09; 主类别细分说明1. 界面测试UI内容完整性、一致性、准确性、友好性&#xff0c;布局排版合理性&#xff0c;控件可用性等2. 功能测试检查软件功能是否符合需求说明书&#xff0c;常用黑盒方法&#xff1a;边界值、…

整理了 2009 - 2025 年的【199 管综真题 + 解析】PDF,全套共 34 份文件

每年真题原卷 ✅ 每年详细解析 ✅ &#x1f4c2;【管综真题 2009-2025】 &#x1f4c2;【管综解析 2009-2025】 目录树&#xff1a; ├── 2009-2025管综真题 PDF │ ├── 2009年199管综真题.pdf │ ├── 2010年199管综真题.pdf │ ├── 2011年199管综真题.pd…

用golang实现二叉搜索树(BST)

目录 一、概念、性质二、二叉搜索树的实现1. 结构2. 查找3. 插入4. 删除5. 中序遍历 中序前驱/后继结点 一、概念、性质 二叉搜索树&#xff08;Binary Search Tree&#xff09;&#xff0c;简写BST&#xff0c;又称为二叉查找树 它满足&#xff1a; 空树是一颗二叉搜索树对…

自动化:批量文件重命名

自动化&#xff1a;批量文件重命名 1、前言 2、效果图 3、源码 一、前言 今天来分享一款好玩的自动化脚&#xff1a;批量文件重命名 有时候呢&#xff0c;你的文件被下载下来文件名都是乱七八糟毫无规律&#xff0c;但是当时你下载的时候没办法重名或者你又不想另存为重新重…

VueUse/Core:提升Vue开发效率的实用工具库

文章目录 引言什么是VueUse/Core&#xff1f;为什么选择VueUse/Core&#xff1f;核心功能详解1. 状态管理2. 元素操作3. 实用工具函数4. 浏览器API封装5. 传感器相关 实战示例&#xff1a;构建一个拖拽上传组件性能优化技巧与原生实现对比常见问题解答总结 引言 在现代前端开发…

stm32 ADC单通道转换

stm32c8t6仅有12位分辨率 1、单次转换 非扫描 1、初始化 void Ad_Init() {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);//配置ADCCLK时钟分频,ADC的输入时钟不得超过14MHzRCC_ADCCLKConfig(RCC_PCLK2_Div6);G…

2KW压缩机驱动参考设计【SCH篇】

实物展示&#xff1a; ACDC: VAC和VAC-为交流电压检测&#xff1a; 1.C33 C34作为Y电容走线宽度要求&#xff1a; Y电容一般用于L/N到地之间&#xff08;L-PE 或 N-PE&#xff09;&#xff0c;主要作用是抑制共模干扰。其走线的电流非常小&#xff0c;推荐使用 ≥ 1mm 宽的走…

python05——循环结构

1、while循环 n0 #初始条件 while n<5: #判断print(hello python) #要重复执行的代码print(n) #注意同级代码缩进相同n1 #计数器结果&#xff1a; hello python 0 hello python 1 hello python 2 hello python 3 hello python 4 hello python 5 #求阶乘和 sum0 n1 whil…

LINUX编译、运行、测试lowcoder_CN

参考 二者没有太大差异。 LINUX编译、运行、测试lowcoder-CSDN博客 下载 git clone https://github.com/mousheng/lowcoder_CN 或 git clone https://gitcode.com/gh_mirrors/lo/lowcoder_CNcd lowcoder_CN三个模块 node-service api-service client 每个模块都有自己的…

Python 基础之函数命名

几个问题 使用描述性蛇形命名法&#xff08;snake_case&#xff09;Python函数名应使用什么大小写格式&#xff1f;为什么函数名要具有描述性&#xff1f;方法的命名规范是什么&#xff1f;函数、变量和类的命名有何区别&#xff1f; Python函数的命名有一些不可违背的硬性规…

redis 命令大全整理

http://doc.redisfans.com/ 原网址 Redis 命令分类 Key(键) Key(键)命令 exists/del/keys/type/scanobject/move/dump/migratettl/pttl/persist/expireat/pexpireat/expire/pexpirerename/renamenxsort/randomkey/restoreexists 语法:exists key [key ...] 检查一个或多…

React中useDeferredValue与useTransition终极对比。

文章目录 前言一、核心差异对比二、代码示例对比1. useDeferredValue&#xff1a;延迟搜索结果更新2. useTransition&#xff1a;延迟路由切换 三、应用场景总结四、注意事项五、原理剖析1. 核心机制对比2. 关键差异3. 代码实现原理 总结 前言 在React的并发模式下&#xff0c…