创建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向导创建的搜索相关推荐

  1. CRM WEB UI 04明细界面添加按钮

    好了,这个是个人测试玩的,略风骚...请自行鉴阅 1.明细的组件控制器中增加全局控制属性字段: 2.概览页中工具栏相关方法,重定义GET_BUTTONS METHOD IF_BSP_WD_TOOLBA ...

  2. abp web ui 负号提前显示

    crm web ui 负号默认显示在后面,统一把负号改为左边显示, 代码增强方法 CL_BSP_UTILITY->MAKE_STRING ENHANCEMENT 1  ZENH_CRM_CL_B ...

  3. 2022年8月10日:使用 ASP.NET Core 为初学者构建 Web 应用程序--使用 ASP.NET Core 创建 Web UI(没看懂需要再看一遍)

    ASP.NET Core 支持使用名为 Razor 的本地模板化引擎创建网页. 本模块介绍了如何使用 Razor 和 ASP.NET Core 创建网页. 简介 通过在首选终端中运行以下命令,确保已安 ...

  4. SAP CRM WebClient UI Text 可编辑与否的控制逻辑

    问题 在CRM WEB CLIENT UI上,什么情况下某个TEXT TYPE是只读的,什么情况下是可以修改的. 解答 结论:对于类型为R(Display log),A(Paste),C(displa ...

  5. SAP CRM WebClient UI上文本是否可编辑,取决于哪些条件

    Sent: Tuesday, December 16, 2014 11:44 AM Subject: [wave8 backend research ]when a text object could ...

  6. Jerry答网友提问:SAP CRM WebClient UI里的EXT,STRUCT等含义

    2020年,Jerry会做一个新的尝试,选择部分朋友向我提出的问题,在公众号,知识星球或者微信圈子这些平台上公开回答,这样或许能帮助到更多的朋友. 具体说明参见我前一篇文章:2020年关于SAP知识问 ...

  7. 堡垒机应用发布服务器是干嘛的_支持Web UI数据库审计和敏感数据国密算法加密,JumpServer堡垒机v2.5.0发布丨Release Notes...

    11月18日,JumpServer开源堡垒机正式发布v2.5.0版本.该版本的新增功能包括:支持Web UI数据库审计(X-Pack增强包内).支持敏感数据国密算法加密.新增克隆创建.新增高危命令告警 ...

  8. 分布式 Web UI 自动化系统的设计与实现

    背景 很久以前基于Robotframework + flask + reactjs开发了一套 Web UI 自动化系统,用于网站自动化测试和日常巡检.但是随着其应用覆盖的范围越来越广,发现存在一些设计 ...

  9. Web UI 自动化测试方案(超级干货)

    项目讨论 项目中符合自动化测试的部分有哪些?(目标和范围 scope, 准入准出标准) 稳定的需求点.变动较少的页面 每日构建后的测试验证 daily build 比较频繁的回归测试 需要在多平台上运 ...

  10. 15 个 JavaScript Web UI 库

    新闻来源:speckboy.com 几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 ...

最新文章

  1. L1-044 稳赢 (暴力法)
  2. 270亿参数、刷榜CLUE,达摩院神作!
  3. runtime 关联对象objc_setAssociatedObject
  4. Go 语言 Session机制和 Cookie机制
  5. HDOJ 1202 The calculation of GPA
  6. 基因序列算法:编辑距离( Levenshtein 距离)和LD算法
  7. 七、前端开发-JavaScript HTTP
  8. 【NLP】医学AI又一突破,微软开源生物医学NLP基准:BLURB
  9. 정규식 문법 정리.초급
  10. Liunx系统命令sed的使用
  11. Halcon学习(7):颜色识别
  12. JVM如何读GC日志以及如何使用工具分析
  13. C语言克鲁斯卡尔算法的实现
  14. 2021-2022 ACM-ICPC Brazil Subregional Programming Contest N. No Luck
  15. Android Jetpack Compose 最全上手指南 | 开发者说·DTalk
  16. [Mac OS]ASUS z97-K R2.0 + GTX960 + Clover v2.4k r4098 Install Sierra 10.12.5 安装过程中遇到的问题及解决方案
  17. 答疑+代码+视频|一个超干货的3D视觉学习社区
  18. 天纵智能软件快速开发平台日程安排插件
  19. (附源码)ssm基于SSM的南昌旅游网站管理系统设计与实现 毕业设计 101407
  20. 增量式PID算法控制房间温度变化的简单例子及python程序

热门文章

  1. 业务流程图_你会用Visio制作专业的业务流程图吗?
  2. 30天自制操作系统 定时器
  3. mac修改文件的默认打开方式
  4. qtqpixmap不出现图片_亚马逊对产品图片有哪些基本要求
  5. [渝粤教育] 长沙航空职业技术学院 信息技术 参考 资料
  6. 【渝粤教育】国家开放大学2018年春季 0047-21T计算机办公软件应用 参考试题
  7. 纽约出租车计费问题:一个简单的线性模型
  8. Linux系统(二)常用命令、进程管理
  9. 计算机视觉实战(五)图像梯度计算
  10. 快捷添加请求头的方法