【学习系列】SAP RAP 4:通过注解来完成一些常规需求

前言

在前一篇中已经创建了一个拥有三个层级的RAP应用,但只是最基本的界面展示,本篇中将介绍一些常用注解,来实现以下需求:

  1. 搜索帮助
  2. 文本描述绑定
  3. 联动搜索帮助
  4. 自定义文本描述
  5. 字段必输控制
  6. 默认排序
  7. 默认值设置
  8. 管理字段自动更新
  9. 长文本多行显示

正文

1.搜索帮助

效果:筛选或者创建界面编辑时可以使用搜索帮助。

实现方式:

在投影视图中使用注解@Consumption.valueHelpDefinition来实现添加搜索帮助,useForValidation:true用于检查输入值的有效性。

SAP RAP 校验全流程:从 EML 读取到消息上屏与阻止落库 本文系统梳理了 SAP ABAP RAP 中的校验流程(The Validation Process),结合 Airline/Connection 案例,详细讲解了三类核心校验:语义键唯一性、外键有效性和字段间一致性。文章覆盖了 EML 的 READ ENTITIES 操作、reported-* 与 failed-* 结构的使用方法、消息创建与字段绑定技巧,以及处理草稿数据时的 UNION 查询策略。通过代码示例演示了如何实现校验逻辑、生成错误消息并阻止无效数据持久化,同时提供了常见问题的排查建议。全文注重 阅读详情

相关推荐

让 RAP 业务对象字段更好用:Value Help 搜索帮助从绑定到智能检索的全套做法

本文详细介绍了在SAP Fiori Elements中实现Value Help(值帮助)的完整方案。从标准Value Help的复用到自建值帮助实体的创建,再到通过注解优化搜索体验和显示效果。文章重点讲解了如何通过@Consumption.valueHelpDefinition绑定值帮助实体,使用@Search注解实现模糊搜索功能,以及利用@ObjectModel.resultSet.sizeCategory实现下拉选择。同时提供了货币字段和国家代码两个典型示例,并分享了项目落地时的权限控制和性能优化要点。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1796

SAP RAP学习系列合集介绍

《SAP RAP学习系列合集:从入门到部署的完整指南》摘要: 本文介绍了作者创建的SAP RAP学习系列合集,涵盖RAP开发从基础概念到实战部署的全流程。系列目前包含17篇文章,系统讲解了RAP核心开发技术:从数据建模、UI构建到行为定义(包括并发控制、草稿功能、授权验证等),最后详细演示了应用部署到Fiori Launchpad的两种方案(OP版和ES版)。

DeveloperMrMeng的博客 1471

用 Service Definition 把 CDS 数据模型“变成服务”:RAP 暴露模型的关键一环(含扩展与避坑)

Service Definition 是 ABAP RAP 架构中的关键组件,它作为 CDS 数据模型与可消费服务之间的桥梁,定义了要暴露哪些业务实体及其关联关系。文章解析了其核心价值: 协议无关性 - 同一数据模型可为不同消费场景(Fiori/API/集成)提供定制化视图 语义解耦 - 通过别名(AS)隐藏技术命名,保障接口稳定性 架构定位 - 作为服务建模层,必须配合Service Binding完成协议绑定才能发布 实用技巧: 使用@EndUserText.label提升可读性 通过@ObjectMo

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2616

远程数据也能丝滑做 Fiori Elements:用 RAP Custom Entity + Unmanaged 打通 On-Premise OData 的完整套路

摘要: 在SAP BTP的ABAP Environment中扩展RAP应用时,若核心数据位于On-Premise系统的OData服务中,可采用"Custom Entity + Query Provider + Unmanaged行为"的混合架构方案。该方案通过Custom Entity定义数据契约与UI语义,由Query Provider将RAP查询转发至远端OData服务,并通过Unmanaged行为自主控制CRUD操作。技术实现上,Fiori Elements通过Service Bi

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1914

什么是 SAP ABAP CDS View 的关系建模?

ABAP CDS关系建模:从Join到Association的工程化实践 摘要:本文深入探讨SAP S/4HANA中ABAP CDS的关系建模技术,对比传统Join与Association的适用场景。Join适合简单直接的数据组合,而Association通过声明式建模实现关系复用和按需Join,避免结果集膨胀问题。文章重点解析了Cardinality对结果集的影响、Path Expression的导航式访问优势,以及Composition在生命周期管理中的作用。实践建议将Association作为关系层、

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1241

用 CDS 注解把业务时间完整暴露给 OData

本文介绍了SAP系统中的完整时间暴露(Business Date Exposure)功能,该功能通过ABAP CDS数据模型中的业务日期注解实现按日期读取历史数据的能力。文章重点分析了四点核心内容:1)完整时间暴露通过业务日期注解(Semantics.businessDate.from/to)和消费注解(Consumption.filter.businessDate.at)实现按指定日期过滤历史版本;2)该功能只适用于查询场景,不支持事务处理;3)数据建模需遵循四条规则:非重叠日期区间、DATS类型日期字段

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 35

损有馀而补不足,SAP Fiori Elements 开发里的平衡之道

摘要:SAP Fiori Elements项目后期常见问题是系统过度膨胀,如字段堆积、前端扩展过多、校验逻辑错位等。文章引用老子"损有馀而补不足"理念,提出应削减冗余的前端代码、重复状态和过度扩展,同时强化元数据注解、权限模型等基础语义。通过合理使用Fiori Elements框架特性,将业务逻辑回归后端,保持系统简洁高效。核心是平衡功能与架构,让系统既满足业务需求又保持可维护性。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2604

在时间轴上读取业务事实,SAP ABAP CDS 与 OData 的 Temporal Data 消费机制

SAP S/4HANA中的时间依赖数据(Temporal Data)存储了业务对象的历史版本,每条记录带有有效起止日期。通过CDS注解(如@Semantics.businessDate.from/to)声明时间语义,结合OData查询选项at,系统能返回指定业务日期的有效版本。该机制适用于主数据查询和历史分析,确保关联数据的时间一致性,但不适用于事务处理场景。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 50

在 Fiori Elements 中启用 Collaborative Draft:从概念、协议到实现与治理的全景解析

本文详细解析了SAP Fiori elements中Collaborative Draft的协作机制。该系统基于ABAP RAP架构,通过OData V4元数据和WebSocket实现多人实时协同编辑,支持字段级锁定、变更即时同步和事件通知。文章从技术实现角度阐述了协作草稿与排他草稿的差异、元数据协议要求、RAP后端配置、前端UI表现及使用限制,并提供了端到端的实施检查清单和常见故障排查方法。该机制通过可视化的参与者标识和实时反馈优化了团队协作体验,但需注意与批量编辑功能的互斥性,确保符合组织安全策略。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 126

用一份严谨的检查清单,吃透 SAP Fiori Elements 的前置条件

SAP Fiori Elements 项目启动关键检查点 单服务原则:应用数据应绑定至单一OData V4服务,仅ALP的KPI和ValueHelp可例外。需确保主服务与辅助服务兼容性。 OData V4基础能力:服务必须支持$count、$skip、$top,否则分页、值帮助等功能异常。CAP/RAP需验证实现。 草稿模式必需:V4编辑场景仅支持Draft服务,保障并发控制与跨页暂存。CAP/RAP需明确启用草稿注解。 工具链统一:推荐使用BAS/VS Code的Fiori Tools扩展,规范项目结构并

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 329

SAP 授权值维护,别把权限对象当成一张普通配置表

摘要: SAP权限控制的核心在于授权对象(authorization object)及其字段值的组合,而非事务码或角色本身。权限问题常表现为事务码可访问但具体操作报错,需通过SU53、STAUTHTRACE等工具定位缺失的授权对象及字段值。手工维护授权(如通过Tools > Administration > User Maintenance)虽可行,但现代项目更推荐使用PFCG角色维护。授权对象的字段(如ACTVT表示操作类型)与值(如03代表查看)共同决定权限范围,需注意单值仅填From字段、通配符和区间

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1588

ABAP 里没有 Angular @Optional() 注解,但有一套更 ABAP 的可选依赖写法

本文对比了Angular的@Optional()依赖注入注解与ABAP中的类似机制。Angular的@Optional()标记依赖为可选,当DI容器找不到时返回null。ABAP中没有直接对应的注解,而是通过语言特性组合实现类似功能: 方法参数声明使用OPTIONAL和DEFAULT关键字 运行时检查使用IS SUPPLIED判断参数是否传入 对象引用检查使用IS BOUND 配合构造器注入、setter注入、工厂模式和Null对象模式 ABAP中的这些机制虽然语法不同,但都能实现类似Angular中可选依

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 44

把 SAP Fiori 应用变成你的专属工作台:Launchpad 里的 App 个性化、视图与链接清单实战

摘要:本文深入解析SAP Fiori应用的个性化功能如何提升用户体验效率。重点介绍了视图管理(Variant Management)功能,包括筛选条件、表格布局和图表设置的保存与复用,以及如何通过个性化链接清单优化导航路径。文章通过采购、财务等业务场景案例,展示了这些功能如何减少重复操作,提升工作效率。同时为ABAP开发者提供了技术建议,包括CDS注解优化、默认值设置和视图治理策略,帮助在On-Premise和BTP环境中实现更稳定的个性化体验。这些看似简单的功能调整,往往比定制开发更能显著改善用户满意度。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 124

用 SAP CDS 视图 I_MaintOrderOperTechObj 打通维修订单工序与技术对象的数据链路

本文介绍了SAP S/4HANA中ABAP CDS视图的选型方法,重点解析了Supported Capabilities和Modeling Pattern两类关键注解。Supported Capabilities表示视图的适用场景(可多选),Modeling Pattern则说明视图的主设计意图(单选)。通过View Browser和ADT可以查看这些信息,帮助开发者选择最合适的CDS视图,避免性能、扩展性和语义一致性等问题。文章还列举了常见注解类型及其适用场景,为ABAP开发提供了实用的选型指导。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 175

AJ-Report开源数据大屏存在远程命令执行漏洞

该平台可以通过post方式在validationRules参数对应值中进行命令执行,可以获得服务器权限,登陆管理后台接管大屏。如果被攻击者利用,危害后果十分严重。

swordheart的博客 379

别再只调颜色阈值了!优化K210色块追踪性能的5个关键参数与实战技巧

本文深入探讨了K210色块追踪性能优化的五大核心策略,包括图像预处理参数精细调控、find_blobs参数进阶配置、运动控制算法升级、硬件时序优化以及可视化调试系统构建。通过实战技巧和参数调整方法,帮助开发者提升K210在色块追踪项目中的识别稳定性和响应速度,适用于云台追踪等应用场景。

weixin_42531588的博客 222

【算法设计与分析】期末复习题(超详细)

刚刚整理了一下电脑的文件,发现了这份上学期的算法设计与分析期末复习题,有需要的文后自取。

a1234567822的博客 6587

关于MII、RMII、GMII、RGMII、PHY、网络变压器、RJ45的硬件总结

文章目录前言一、网络传输结构及原理1.以太网的工作原理2.TCP/IP协议3.数据链路层(MAC)二、介质独立接口MII,RMII,GMII,RGMII1.MII(Media Independent interface)2.RMII(Reduced Media Independent Interface)3.GMII(Gigabit Medium Independent)4.RGMII(Reduced Gigabit Media Independent Interface)三、物理层芯片(PHY)二、使用步

weixin_44415816的博客 3万+

RADIOML 2018.01A数据集在自动调制识别中的实战应用指南

本文提供了RADIOML 2018.01A数据集在自动调制识别(AMR)任务中的完整实战指南。内容涵盖从数据集介绍、数据获取与解包、高效预处理流程,到构建PyTorch数据管道、模型设计(如1D CNN、ResNet)以及训练调参策略。重点阐述了如何利用该数据集训练鲁棒的AI模型,以应对复杂信道环境和低信噪比挑战,并给出了详细的性能评估方法。

plant的博客 166

Boost电路双闭环控制MATLAB仿真

通过电流内环控制,我们可以改变目标平均电流基准值的大小来闭环改变占空比,再改变输出电压与电路电流,直到电路电流达到基准电流才达到稳态。但是我们的基准电流依旧是外部提供的,下边的电压外环控制就是电路自己计算基准电流。

Fourglsl的博客 5832

英飞凌TC377的Flash管理、UCB配置与HSM安全机制解析

本文深入解析了英飞凌TC377微控制器的Flash存储结构、UCB配置机制与HSM安全模块。详细阐述了带Cache与不带Cache的PFlash地址访问差异、利用SOTA与AB Swap实现无感OTA更新的原理,以及如何通过UCB安全配置启动流程与写保护。重点剖析了HSM硬件安全模块在密钥管理、安全启动与安全OTA中的核心作用,为开发高可靠性嵌入式系统提供实战指南。

weixin_29170327的博客 514

2026年1至9月武汉市房地产价格深度分析报告

本报告基于2026年1月至9月武汉市实际成交案例,从成交价格、区域分布、户型结构、价格走势等维度进行深度分析。数据来源包括武汉市住房保障和房屋管理局备案数据、主要中介机构成交记录及典型楼盘网签案例,覆盖全市15个行政区及主要功能板块。

王国平的博客 283

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: 【学习系列】SAP RAP 3:添加多层级的子节点
下一篇: 【学习系列】SAP RAP 5:行为定义-Numbering
DeveloperMrMeng
博客等级 码龄5年 1764粉丝 113原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeveloperMrMeng

觉得有用的佛系投币哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值