通过LDB_PROCESS函数使用逻辑数据库
样例代码及说明
TABLES SPFLI.
SELECT-OPTIONS S_CARR FOR SPFLI-CARRID.
TYPE-POOLS: RSDS, RSFS.
DATA: CALLBACK TYPE TABLE OF LDBCB,
CALLBACK_WA LIKE LINE OF CALLBACK.
DATA: SELTAB TYPE TABLE OF RSPARAMS,
SELTAB_WA LIKE LINE OF SELTAB.
DATA: TEXPR TYPE RSDS_TEXPR,
FSEL TYPE RSFS_FIELDS.
*设置需要回调的数据节点和回调对应的子程序
CALLBACK_WA-LDBNODE = 'SPFLI'.
CALLBACK_WA-GET = 'X'.
CALLBACK_WA-GET_LATE = 'X'.
CALLBACK_WA-CB_PROG = SY-REPID.
CALLBACK_WA-CB_FORM = 'CALLBACK_SPFLI'.
APPEND CALLBACK_WA TO CALLBACK.
CLEAR CALLBACK_WA.
CALLBACK_WA-LDBNODE = 'SFLIGHT'.
CALLBACK_WA-GET = 'X'.
CALLBACK_WA-CB_PROG = SY-REPID.
CALLBACK_WA-CB_FORM = 'CALLBACK_SFLIGHT'.
APPEND CALLBACK_WA TO CALLBACK.
*设置对应的选择屏幕的参数的传入值
SELTAB_WA-KIND = 'S'.
SELTAB_WA-SELNAME = 'CARRID'.
LOOP AT S_CARR.
MOVE-CORRESPONDING S_CARR TO SELTAB_WA.
APPEND SELTAB_WA TO SELTAB.
ENDLOOP.
*调用函数
CALL FUNCTION 'LDB_PROCESS'
EXPORTING
LDBNAME = 'F1S'
VARIANT = ' '
EXPRESSIONS = TEXPR
FIELD_SELECTION = FSEL
TABLES
CALLBACK = CALLBACK
SELECTIONS = SELTAB
EXCEPTIONS
LDB_NOT_REENTRANT = 1
LDB_INCORRECT = 2
LDB_ALREADY_RUNNING = 3
LDB_ERROR = 4
LDB_SELECTIONS_ERROR = 5
LDB_SELECTIONS_NOT_ACCEPTED = 6
VARIANT_NOT_EXISTENT = 7
VARIANT_OBSOLETE = 8
VARIANT_ERROR = 9
FREE_SELECTIONS_ERROR = 10
CALLBACK_NO_EVENT = 11
CALLBACK_NODE_DUPLICATE = 12
OTHERS = 13.
IF SY-SUBRC <> 0.
WRITE: 'Exception with SY-SUBRC', SY-SUBRC.
ENDIF.
*SPFLI节点对应的回调处理函数
FORM CALLBACK_SPFLI USING NAME TYPE LDBN-LDBNODE
WA TYPE SPFLI
EVT TYPE C
CHECK TYPE C.
CASE EVT.
WHEN 'G'.
WRITE: / WA-CARRID, WA-CONNID, WA-CITYFROM, WA-CITYTO.
ULINE.
WHEN 'L'.
ULINE.
ENDCASE.
ENDFORM.
*SFIGHT节点对应的回调处理函数
FORM CALLBACK_SFLIGHT USING NAME TYPE LDBN-LDBNODE
WA TYPE SFLIGHT
EVT TYPE C
CHECK TYPE C.
WRITE: / WA-FLDATE, WA-SEATSOCC, WA-SEATSMAX.
ENDFORM.
注意:通过'LDB_PROCESS'函数访问逻辑数据库时,请不要在程序属性里绑定逻辑数据库,否则会出LDB_ALREADY_RUNNING错误。
通过LDB_PROCESS函数使用逻辑数据库相关推荐
- ABAP--通过LDB_PROCESS函数使用逻辑数据库
1.概览 通过LDB_PROCESS函数可以允许任何程序访问逻辑数据库,允许一个程序访问多个逻辑数据库,当然也允许多次连续访问访问同个逻辑数据库.当使用LDB_PROCESS函数来访问逻辑数据库时,选 ...
- ABAP 通过LDB_PROCESS函数使用逻辑数据库
更多内容关注公众号:SAP Technical 各位可以关注我的公众号:SAP Technical 样例代码及说明 TABLES SPFLI. SELECT-OPTIONS S_CARR FOR SP ...
- Logical Databases逻辑数据库
主要组成部分 结构(Structure) 选择(Selections) 数据库程序(Database program) LDB程序结构 FORM PUT_XXX性能问题 GET_EVENT内表 报表程 ...
- 逻辑数据库读取bseg
相关t-code sldb 一定要清空 :转到-〉属性-〉逻辑数据库设定 *&--------------------------------------------------------- ...
- 重新学习一下ABAP里面的逻辑数据库
之前以为逻辑数据库就仅仅是个选择界面那么简单,其实不是的,逻辑数据库还有很多名堂的. 逻辑数据常常要与 "START-OF-SELECTION"连合着一起使用. NODES: sp ...
- 以下哪个函数不能选择mysql数据库_PHP使用以下哪个函数连接MySQL数据库服务器...
PHP使用以下哪个函数连接MySQL数据库服务器 更多相关问题 (6分)化合物A分子式为C6H120,能与苯肼作用,但不发生银镜反应.A经催化氢化得化合物B(C6H140).B(6分)化合物A分子式为 ...
- R语言广义线性模型函数GLM、广义线性模型(Generalized linear models)、GLM函数的语法形式、glm模型常用函数、常用连接函数、逻辑回归、泊松回归、系数解读、过散度分析
R语言广义线性模型函数GLM.广义线性模型(Generalized linear models).GLM函数的语法形式.glm模型常用函数.常用连接函数.逻辑回归.泊松回归.系数解读.过散度分析 目录
- R语言dplyr包filter函数通过逻辑条件过滤数据实战
R语言dplyr包filter函数通过逻辑条件过滤数据实战 目录 R语言dplyr包filter函数通过逻辑条件过滤数据实战 #导入dplyr包 #仿真数据
- R语言all函数、any函数判断逻辑向量(logical vector)实战
R语言all函数.any函数判断逻辑向量(logical vector)实战 目录 R语言all函数.any函数判断逻辑向量(logical vector)实战 #基本语法
最新文章
- Oracle字符串转BooIean,利用Java的多线程技术实现数据库的访问.pdf
- java RSA加密解密--转载
- ffmpeg 从mp4上提取H264的nalu
- ie8.0 不能用document.all兼容IE7模式
- unity随笔(1)-材质、对象
- 【NLP】ACL 2010-2020研究趋势总结
- word2vec词向量 文本分类实现(TensorFlow版,算法TextCNN)
- 基于Jenkins的持续交付全流程设计与实践
- java与.net平台之间进行RSA加密验证
- cmd连接不了mysql_cmd连接mysql操作命令
- jquery ui accordion的详细参数
- 计算机领域数据集下载链接
- 样本量估算:随机对照试验(两组均数)比较的样本量计算方法
- BoundsChecker使用说明(代码调试)
- Apache监控与调优(七)MPM相关参数
- Visual Studio无法定位于动态链接库
- @人生随笔:一年一影帝,百年周星驰
- Day10:捡烟蒂投资法:便宜组合
- 《关键对话:如何高效能沟通(原书第2版)》 摘录及总结
- 如何一键去除Word文件中的水印
热门文章
- 图解设计模式-Abstract Factory模式
- YYCache深入学习
- Strophe的示例程序运行
- Oracle Enterprise Linux
- 【Visual C++】游戏开发笔记二十一 游戏基础物理建模(三) 摩擦力系统模拟
- Python Django 前后端数据交互 之 HttpRequest、HttpResponse、render、redirect
- mpvue生命周期初探
- python练习笔记——面试题 F(n) = F(n-1)+F(n-2)
- 6年Microsoft MVP,是否还能坚持4年?
- Latex 经常见到的问题和解决方法