CRM WEB UI 01 BOL向导创建的搜索
创建BOL的步骤就不说了,自己找,学习这个之前,需要自己先找个SAP CRM资料预习一下
T-CODE:BSP_WD_CMPWB
1.创建组件:输入组件名:ZLYTEST03,点击创建按钮,回车,选择包和请求。。。回车,回车,回车,知道创建成功,进入组件里。
2.加入BOL:点击运行时资源库编辑器,点击修改右键'MODEL',添加自建的或者标准的BOL。保存,F3退出一下,再进入,会带出BOL浏览器按钮。
3.创建视图:点击组件结构浏览器,选择视图,右键,‘创建搜索页面’,选择搜索节点和结果节点(此节点需要在BOL中添加)。单选或者多选。。选择需要做链接的字段(如无,则下一步),如果需要结果视图中增加按钮,可自行添加,点击继续,完成。
4.配置SEARCH界面和RESULT界面,需要那些字段自己加。
5.运行,会出现上面配置的搜索条件和搜索界面界面(如果是自己一个个建的,需要将查询和结果视图加到视图集中,将视图集加到WINDOWS中)
6.搜索代码实现:在查询视图的事件处理器中,重定义查询(如果已经在BOL里写了查询代码的,自行解决)
DATA:LR_QUERY_SERVICE TYPE REF TO CL_CRM_BOL_DQUERY_SERVICE,LR_MESSAGE_SERVICE TYPE REF TO CL_BSP_WD_MESSAGE_SERVICE,LV_MESSAGE TYPE STRING,LR_SEL_PARAMS TYPE REF TO IF_BOL_BO_COL,LR_COL TYPE REF TO IF_BOL_BO_COL,LR_PARAM TYPE REF TO IF_BOL_BO_PROPERTY_ACCESS,LR_ITERATOR TYPE REF TO IF_BOL_BO_COL_ITERATOR,LS_SELECTION TYPE GENILT_SELECTION_PARAMETER,LT_PARAMS TYPE GENILT_SELECTION_PARAMETER_TAB,LV_MAX_HITS TYPE I,LR_VALUENODE TYPE REF TO CL_BSP_WD_VALUE_NODE,GS_CLAUSE TYPE STRING,GT_CLAUSE TYPE TABLE OF STRING,GT_EKKO TYPE TABLE OF EKKO,GW_EKKO TYPE EKKO.."获取当前查询节点LR_QUERY_SERVICE ?= ME->TYPED_CONTEXT->SEARCHQUERYNODE->COLLECTION_WRAPPER->GET_CURRENT( )."检查查询节点实例化CHECK LR_QUERY_SERVICE IS BOUND."清空结果节点内容ME->TYPED_CONTEXT->SEARCHRESULTNODE->COLLECTION_WRAPPER->CLEAR( )."获取查询对象LR_SEL_PARAMS = LR_QUERY_SERVICE->GET_SELECTION_PARAMS( )."获取最大值LR_QUERY_SERVICE->GET_PROPERTY_AS_VALUE( EXPORTING IV_ATTR_NAME = 'MAX_HITS'IMPORTING EV_RESULT = LV_MAX_HITS )."获取查询对象的BOL迭代器^_^LR_ITERATOR = LR_SEL_PARAMS->GET_ITERATOR( )."迭代器循环获取查询对象的值LR_PARAM = LR_ITERATOR->GET_FIRST( ).WHILE LR_PARAM IS BOUND.LR_PARAM->GET_PROPERTIES( IMPORTING ES_ATTRIBUTES = LS_SELECTION ).IF LS_SELECTION-LOW IS NOT INITIAL OR LS_SELECTION-HIGH IS NOT INITIAL."选择条件有值IF LS_SELECTION-LOW IS NOT INITIAL AND LS_SELECTION-HIGH IS NOT INITIAL AND LS_SELECTION-OPTION = 'BT'.CONCATENATE LS_SELECTION-ATTR_NAME 'BETWEEN' LS_SELECTION-LOW 'AND' LS_SELECTION-HIGH INTO GS_CLAUSE SEPARATED BY ' '.ENDIF.IF LS_SELECTION-LOW IS NOT INITIAL.
IF LS_SELECTION-OPTION <> 'EQ' AND LS_SELECTION-OPTION <> 'NE'.REPLACE ALL OCCURRENCES OF '*' IN LS_SELECTION-LOW WITH '%'.CONCATENATE '''' LS_SELECTION-LOW '''' INTO LS_SELECTION-LOW.CONCATENATE LS_SELECTION-ATTR_NAME 'LIKE' LS_SELECTION-LOW INTO GS_CLAUSE SEPARATED BY ' '.ELSE.CONCATENATE LS_SELECTION-ATTR_NAME LS_SELECTION-OPTION LS_SELECTION-LOW INTO GS_CLAUSE SEPARATED BY ' '.ENDIF.
ENDIF. APPEND GS_CLAUSE TO GT_CLAUSE.
ENDIF. * APPEND LS_SELECTION TO LT_PARAMS.LR_PARAM = LR_ITERATOR->GET_NEXT( ).ENDWHILE.SELECT * INTO CORRESPONDING FIELDS OF TABLE GT_EKKOFROM EKKO WHERE (GT_CLAUSE).DATA: LR_REF_ANY TYPE REF TO DATA,LR_VALUE_NODE TYPE REF TO CL_BSP_WD_VALUE_NODE.CREATE OBJECT LR_COL TYPE CL_CRM_BOL_BO_COL.LOOP AT GT_EKKO INTO GW_EKKO.GET REFERENCE OF GW_EKKO INTO LR_REF_ANY.CREATE OBJECT LR_VALUE_NODETYPECL_BSP_WD_VALUE_NODEEXPORTINGIV_DATA_REF = LR_REF_ANY.LR_COL->ADD( LR_VALUE_NODE ).ENDLOOP.ME->TYPED_CONTEXT->SEARCHRESULTNODE->COLLECTION_WRAPPER->ADD_COLLECTION( LR_COL ).
好了,到这里,搜索视图搞定了。。。可以运行起来看看了
转载于:https://www.cnblogs.com/sapSB/p/6340237.html
CRM WEB UI 01 BOL向导创建的搜索相关推荐
- CRM WEB UI 04明细界面添加按钮
好了,这个是个人测试玩的,略风骚...请自行鉴阅 1.明细的组件控制器中增加全局控制属性字段: 2.概览页中工具栏相关方法,重定义GET_BUTTONS METHOD IF_BSP_WD_TOOLBA ...
- abp web ui 负号提前显示
crm web ui 负号默认显示在后面,统一把负号改为左边显示, 代码增强方法 CL_BSP_UTILITY->MAKE_STRING ENHANCEMENT 1 ZENH_CRM_CL_B ...
- 2022年8月10日:使用 ASP.NET Core 为初学者构建 Web 应用程序--使用 ASP.NET Core 创建 Web UI(没看懂需要再看一遍)
ASP.NET Core 支持使用名为 Razor 的本地模板化引擎创建网页. 本模块介绍了如何使用 Razor 和 ASP.NET Core 创建网页. 简介 通过在首选终端中运行以下命令,确保已安 ...
- SAP CRM WebClient UI Text 可编辑与否的控制逻辑
问题 在CRM WEB CLIENT UI上,什么情况下某个TEXT TYPE是只读的,什么情况下是可以修改的. 解答 结论:对于类型为R(Display log),A(Paste),C(displa ...
- SAP CRM WebClient UI上文本是否可编辑,取决于哪些条件
Sent: Tuesday, December 16, 2014 11:44 AM Subject: [wave8 backend research ]when a text object could ...
- Jerry答网友提问:SAP CRM WebClient UI里的EXT,STRUCT等含义
2020年,Jerry会做一个新的尝试,选择部分朋友向我提出的问题,在公众号,知识星球或者微信圈子这些平台上公开回答,这样或许能帮助到更多的朋友. 具体说明参见我前一篇文章:2020年关于SAP知识问 ...
- 堡垒机应用发布服务器是干嘛的_支持Web UI数据库审计和敏感数据国密算法加密,JumpServer堡垒机v2.5.0发布丨Release Notes...
11月18日,JumpServer开源堡垒机正式发布v2.5.0版本.该版本的新增功能包括:支持Web UI数据库审计(X-Pack增强包内).支持敏感数据国密算法加密.新增克隆创建.新增高危命令告警 ...
- 分布式 Web UI 自动化系统的设计与实现
背景 很久以前基于Robotframework + flask + reactjs开发了一套 Web UI 自动化系统,用于网站自动化测试和日常巡检.但是随着其应用覆盖的范围越来越广,发现存在一些设计 ...
- Web UI 自动化测试方案(超级干货)
项目讨论 项目中符合自动化测试的部分有哪些?(目标和范围 scope, 准入准出标准) 稳定的需求点.变动较少的页面 每日构建后的测试验证 daily build 比较频繁的回归测试 需要在多平台上运 ...
- 15 个 JavaScript Web UI 库
新闻来源:speckboy.com 几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 ...
最新文章
- L1-044 稳赢 (暴力法)
- 270亿参数、刷榜CLUE,达摩院神作!
- runtime 关联对象objc_setAssociatedObject
- Go 语言 Session机制和 Cookie机制
- HDOJ 1202 The calculation of GPA
- 基因序列算法:编辑距离( Levenshtein 距离)和LD算法
- 七、前端开发-JavaScript HTTP
- 【NLP】医学AI又一突破,微软开源生物医学NLP基准:BLURB
- 정규식 문법 정리.초급
- Liunx系统命令sed的使用
- Halcon学习(7):颜色识别
- JVM如何读GC日志以及如何使用工具分析
- C语言克鲁斯卡尔算法的实现
- 2021-2022 ACM-ICPC Brazil Subregional Programming Contest N. No Luck
- Android Jetpack Compose 最全上手指南 | 开发者说·DTalk
- [Mac OS]ASUS z97-K R2.0 + GTX960 + Clover v2.4k r4098 Install Sierra 10.12.5 安装过程中遇到的问题及解决方案
- 答疑+代码+视频|一个超干货的3D视觉学习社区
- 天纵智能软件快速开发平台日程安排插件
- (附源码)ssm基于SSM的南昌旅游网站管理系统设计与实现 毕业设计 101407
- 增量式PID算法控制房间温度变化的简单例子及python程序