SAP BDC 录屏及 ABAP 调用 BDC

news2024/11/23 1:25:47

1:输入事务代码:SHDB.点击新建记录。

在这里插入图片描述

输入记录名和需要录屏的事务代码。

在这里插入图片描述

开始记录后会进入事务代码点击返回后会记录下操作过程。

在这里插入图片描述
在这里插入图片描述

点击程序按钮,生成可以调用的代码。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码如下:

report ZTEST_APPLICTION
       no standard page heading line-size 255.

include bdcrecx1.

parameters: dataset(132) lower case.
***    DO NOT CHANGE - the generated data section - DO NOT CHANGE    ***
*
*   If it is nessesary to change the data section use the rules:
*   1.) Each definition of a field exists of two lines
*   2.) The first line shows exactly the comment
*       '* data element: ' followed with the data element
*       which describes the field.
*       If you don't have a data element use the
*       comment without a data element name
*   3.) The second line shows the fieldname of the
*       structure, the fieldname must consist of
*       a fieldname and optional the character '_' and
*       three numbers and the field length in brackets
*   4.) Each field must be type C.
*
*** Generated data section with specific formatting - DO NOT CHANGE  ***
data: begin of record,
* data element: VBELN_VA
        VBELN_001(030),
      end of record.

*** End generated data section ***

start-of-selection.

perform open_dataset using dataset.
perform open_group.

do.

read dataset dataset into record.
if sy-subrc <> 0. exit. endif.

perform bdc_dynpro      using 'SAPMV45A' '0102'.
perform bdc_field       using 'BDC_CURSOR'
                              'VBAK-VBELN'.
perform bdc_field       using 'BDC_OKCODE'
                              '=ENT2'.
perform bdc_field       using 'VBAK-VBELN'
                              record-VBELN_001.
perform bdc_dynpro      using 'SAPMV45A' '4001'.
perform bdc_field       using 'BDC_OKCODE'
                              '=HEAD'.
perform bdc_field       using 'BDC_CURSOR'
                              'RV45A-MABNR(01)'.
perform bdc_dynpro      using 'SAPMV45A' '4002'.
perform bdc_field       using 'BDC_OKCODE'
                              '/EBACK'.
perform bdc_field       using 'BDC_CURSOR'
                              'VBAK-VBELN'.
perform bdc_dynpro      using 'SAPMV45A' '4001'.
perform bdc_field       using 'BDC_OKCODE'
                              '/EBAC1'.
perform bdc_transaction using 'VA03'.

enddo.

perform close_group.
perform close_dataset using dataset.

如果需要调用 BDC 只需要 perform bdc_field 。
调用的实际应用例子——清账:

  LOOP AT lt_sel INTO ls_sel WHERE s_count = 0.
    CLEAR:bdcdata,lv_index,ls_alv2.
    REFRESH:bdcdata,lt_belnr.

    split ls_sel-s_belnr at ',' into TABLE lt_belnr.


    perform bdc_dynpro      using 'SAPMF05A' '0131'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF05A-XPOS1(04)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF05A-AGKON'
                                  ls_sel-kunnr.
    perform bdc_field       using 'BKPF-BUDAT'
                                  sy-datum.
    perform bdc_field       using 'BKPF-MONAT'
                                  sy-datum+4(2).
    perform bdc_field       using 'BKPF-BUKRS'
                                  ls_sel-bukrs.
*    perform bdc_field       using 'BKPF-WAERS'
*                                  'CNY'.
    perform bdc_field       using 'RF05A-XNOPS'
                                  'X'.
    perform bdc_field       using 'RF05A-XPOS1(01)'
                                  ''.
    perform bdc_field       using 'RF05A-XPOS1(04)'
                                  'X'.
    perform bdc_dynpro      using 'SAPMF05A' '0731'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF05A-SEL01(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=PA'.
*如果是表格,可以循环赋值
    LOOP at lt_belnr into ls_belnr.
      CLEAR lv_str.
      lv_index = lv_index + 1.
      CONCATENATE 'RF05A-SEL01(' lv_index ')' INTO lv_str.
          perform bdc_field       using lv_str
                                  ls_belnr-belnr.
    ENDLOOP.


*    perform bdc_field       using 'RF05A-SEL01(01)'
*                                  '5200000000'.
*    perform bdc_field       using 'RF05A-SEL01(02)'
*                                  '5200000002'.


    perform bdc_dynpro      using 'SAPDF05X' '3100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=BU'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'DF05B-PSSKT(01)'.
    perform bdc_field       using 'RF05A-ABPOS'
                                  '1'.

    opt-dismode = 'N'. "显示模式
    opt-updmode = 'L'. "更新模式
    opt-racommit = 'X'.  "提交后继续
    REFRESH gt_message.
    CALL TRANSACTION 'F-32' USING bdcdata
          OPTIONS FROM opt
          MESSAGES INTO gt_message.
    CLEAR:lv_message,lv_bdc_message.
*获取返回的错误提示    
    LOOP AT gt_message.
      IF gt_message-msgtyp = 'E' OR gt_message-msgtyp = 'A'
        OR ( gt_message-msgid = 'F5' AND gt_message-msgnr = '263' ).
        CLEAR: lv_bdc_message.
        MESSAGE ID gt_message-msgid TYPE gt_message-msgtyp NUMBER gt_message-msgnr
        WITH gt_message-msgv1 gt_message-msgv2 gt_message-msgv3 gt_message-msgv4
        INTO lv_bdc_message.
        CONCATENATE lv_message lv_bdc_message INTO lv_message.
      ENDIF.
    ENDLOOP.

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

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

相关文章

2-Spring cloud之Eureka快速剔除失效服务

2-Spring cloud之Eureka快速剔除失效服务 1. eureka server端修改yml配置2. 客户端配置 1. eureka server端修改yml配置 添加如下配置&#xff1a; server:enable-self-preservation: false # 关闭自我保护eviction-interval-timer-in-ms: 3000 # 清理间隔(剔除失效服务…

骨传导耳机音质怎么样,推荐几款音质表现不错的骨传导耳机

最近体验了几款骨传导耳机&#xff0c;分享下我的使用感受。首先说一下为什么要选择骨传导耳机&#xff0c;我之前是使用入耳式耳机&#xff0c;戴久了耳朵会疼&#xff0c;而且晚上睡觉不能戴。于是就考虑骨传导耳机&#xff0c;因为骨传导耳机在传声的过程中不需要经过耳膜&a…

界面控件KendoReact PivotGrid组件,开启交互式数据探索新方式!

数据透视表将数据网格的功能与图形和图表的显示结合起来&#xff0c;允许用户以交互式的方式探索数据&#xff0c;今天将带大家一起学习如何开始使用KendoReact PivotGrid组件&#xff01; Kendo UI致力于新的开发&#xff0c;来满足不断变化的需求&#xff0c;通过React框架的…

gRPC远程调用服务端与客户端连接详解

proto插件生成文件 参考之前的文章构建一个grpc实例&#xff0c;初步认识gprcgRPC教程与应用。 首先早gprc中下载了protoc插件&#xff0c;然后编写了.proto配置文件&#xff0c;通过插件生成了xxx.pb.go和xxx_gprc.pb.go两个文件。前者是rpc服务器请求和响应参数的定义&…

[ZJCTF 2019]NiZhuanSiWei1

拿到是一段php代码 <?php $text $_GET["text"]; $file $_GET["file"]; $password $_GET["password"]; if(isset($text)&&(file_get_contents($text,r)"welcome to the zjctf")){echo "<br><h1>&quo…

【高端设计】DDR4设计方法与仿真分析(一)

本文主要介绍了DDR4设计方法与仿真分析&#xff0c;并示范SIwave如何做DDR4的瞬时眼图、SSN、on-die de-cap影响、DBI耗电分析与规范性测试。 1.DDR4和DDR3的区别 1.1 DDR4传输速度与带宽增加 DDR3 1600/1866MHz -> DDR4 1866/3200MHz DDR3采用多点分支单流架构&#xff…

【电路原理学习笔记】第2章:电压、电流和电阻:2.7基本电路的测量

第2章&#xff1a;电压、电流和电阻 2.7基本电路的测量 用来测量电压的仪器是电压表&#xff0c;用来测量电流的仪器是电流表&#xff0c;用来测量电阻的仪器是欧姆表。通常&#xff0c;这3种仪器被集成到一个称为万用表的仪器中。在万用表中&#xff0c;可以通过开关选择特定…

Python接收摄像头输出的YCbYCr数据并显示图像(附Python源码)

前言 摄像头用的OV的2640&#xff0c;输出YCbYcr的十六进制数据&#xff0c;数据保存成字符串形式的hex文件&#xff0c;之后用Python读取文件&#xff0c;并显示图片。 文章先搭建Python环境&#xff0c;之后编程实现十六进制数据显示图片的功能。 十六进制文件格式如下图&am…

el-table合计样式修改,增加图片

这里的表格用的是el-table组件。如上图&#xff0c;在底部合计的两个字段上增加图片。合计用的是:summary-method"getSummaries"。增加图片的原理其实就是获取这个单元格的dom元素定位&#xff0c;然后在这个元素里面增加 img元素&#xff0c;还可以设置样式。如下图…

Django之常用组件

一、分页器组件 class Pagination(object):def __init__(self,current_page,all_count,per_page_num2,pager_count11):"""封装分页相关数据:param current_page: 当前页:param all_count: 数据库中的数据总条数:param per_page_num: 每页显示的数据条数:par…

峰会来袭 | CAD模型转换工具选择的难点和关键点解答

作为世界顶尖的3D软件开发SDK和CAD模型转换工具——HOOPS Exchange已问世十多年&#xff0c;深受开发者好评&#xff0c;并在工业测量、机械加工、造船设计等领域都有广泛的应用。 本次峰会将围绕CAD软件造型技术的多样性、CAD模型数据解析的难点、3D模型转换的经典问题等&…

曝光调整和曝光融合论文粗读

曝光调整论文调研 M. Afifi, K. G. Derpanis, B. Ommer and M. S. Brown, “Learning Multi-Scale Photo Exposure Correction,” 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Nashville, TN, USA, 2021, pp. 9153-9163, doi: 10.1109/CVPR4…

开放式耳机什么牌子性价比好,这些高颜值蓝牙耳机分享给你

入耳式耳机在运动过程中会与耳道产生摩擦&#xff0c;产生咀嚼音、摩擦音等杂音&#xff0c;会让耳朵难受&#xff0c;听音也会受到影响&#xff0c;特别是像边看电视剧边吃零食等情况&#xff0c;会很影响体验感&#xff0c;所以开放式耳机不入耳的设计完全处理了这一问题&…

卷积神经网络| 猫狗系列【AlexNet】

首先&#xff0c;搭建网络&#xff1a; AlexNet神经网络原理图&#xff1a; net代码&#xff1a;【根据网络图来搭建网络&#xff0c;不会的看看相关视频会好理解一些】 import torchfrom torch import nnimport torch.nn.functional as Fclass MyAlexNet(nn.Module): def…

Linux系统之neofetch工具的基本使用

Linux系统之neofetch工具的基本使用 一、neofetch工具介绍1.1 neofetch简介1.2 neofetch特点 二、检查本地环境2.1 检查操作系统版本2.2 检查内核版本 三、安装neofetch工具3.1 配置yum仓库3.2 安装neofetch3.3 查看neofetch版本 四、neofetch工具的基本使用4.1 直接使用neofet…

quilt data-Working with the Catalog

Quilt Catalog 是 Quilt 的第二部分。它提供了一个在您的 S3 存储桶上的界面&#xff0c;将 Quilt 的数据包和搜索等功能带到了 Web 界面上。 请注意&#xff0c;您可以在不使用 Quilt Catalog 的情况下使用 Quilt Python API&#xff0c;但它们是设计为配合使用的。 简要介绍…

【实现openGauss5.0企业版一主一备搭建部署】

【实现openGauss5.0企业版一主一备搭建部署】 &#x1f53b; 前言&#x1f53b; 一、安装前准备&#x1f530; 1.1 openGauss安装包下载&#x1f530; 1.2 安装环境准备⛳ 1.2.1 硬件环境要求⛳ 1.2.2 软件环境要求⛳ 1.2.3 软件依赖要求⛳ 1.2.4 修改 hosts 和 hostname&#…

【react】创建启动react项目和跨域代理:

文章目录 1、创建启动react项目&#xff1a;2、跨域代理&#xff1a;【1】文档&#xff1a;[https://create-react-app.dev/docs/proxying-api-requests-in-development/](https://create-react-app.dev/docs/proxying-api-requests-in-development/)【2】src/setupProxy.js: 1…

阿姆斯特丹大学Max Welling教授-深度学习和自然科学

目录 简介 AI4Science & Science4AI 深度学习简介 AI4Science Science4AI 总结/结束语 参考 简介 人工智能一直与自然科学有着深厚的联系。 人工神经网络最初被认为是生物神经网络的抽象&#xff0c;许多后续算法&#xff08;例如强化学习&#xff09;也是如此。 神经…

springcloud actuator暴露端点漏洞修复

前段时间网络安全的同事突然通知系统漏洞&#xff0c;swagger漏洞和暴露多余端点等&#xff0c;可能会泄露信息。刚开始只是修改了相关配置。如下&#xff1a; 更改config配置 management:security:enabled: true security:user:name: xxxpassword: xxxbasic:enabled: trueen…