当前位置: 首页 > news >正文

SUBMIT的用法

SUBMIT的用法

一、简介
  1. 系统MB52/MB51/MB5B等类似的报表 ,虽然数据很全面,执行效率也够快,但是经常会不满足用户需求(增添字段、添加查询条件等),很多ABAP 会选择去COPY出标准程序,然后去做修改,强烈不推荐此种方式,弊端太大,容易使标准程序出现问题,且效率低(特别涉及MSEG等数据库表)。

  2. 我们可以使用SUBMIT,此语法可将获取系统标准报表数据,然后你就可以自己去加一层壳来实现自己的定制。

  3. 语法:selscreen_options:主要是标准程序选择界面Field,通过F1去查看具体Field name。

    SUBMIT {rep|(name)} [selscreen_options]
    [list_options]
    [job_options]
    [AND RETURN].
    
二、Submit的使用方法和案例
  1. 下列案例是获取MB51的数据

  2. 有两个方法来建数据赋值

    • 方法一:获取ALV报表结果数据(不局限于严格意义上的ALV Grid、LIST报表也能获取到值),关键代码:

      *&---------------------------------------------------------------------*
      *&
      *& 获取MB5B数据 
      *&---------------------------------------------------------------------*
      DATA:lr_alv_data TYPE REF TO data. FIELD-SYMBOLS : <lt_alv_data> TYPE ANY TABLE .
      FIELD-SYMBOLS : <lt_data> TYPE ANY. "LIKE LINE OF  it_tab . *&---------------------------------------------------------------------*
      *& "计算特殊库存E的期初期末
      *&---------------------------------------------------------------------*cl_salv_bs_runtime_info=>set( EXPORTING display  = abap_falsemetadata = abap_falsedata     = abap_true ).CLEAR lr_alv_data.UNASSIGN <lt_alv_data>.SUBMIT rm07mlbd                                         "MB5B特殊库存及搜索条件WITH matnr IN so_matnrWITH werks IN so_werksWITH lgort EQ so_lgort-low "循环获取每个库存地点的期初期末WITH sobkz EQ 'E'WITH datum IN so_budat"库存类型-特殊库存WITH lgbst EQ spaceWITH bwbst EQ spaceWITH sbbst EQ 'X'"设置WITH xsum EQ spaceWITH pa_sumfl EQ 'X'WITH xchar EQ spaceWITH xnomchb EQ spaceWITH xnomchb EQ spaceWITH nosto EQ spaceWITH pa_dbstd EQ 'X'AND RETURN.TRY."关键代码cl_salv_bs_runtime_info=>get_data_ref( IMPORTING r_data = lr_alv_data ).ASSIGN lr_alv_data->* TO <lt_alv_data>.CATCH cx_salv_bs_sc_runtime_info.MESSAGE 'Unable to retrieve ALV data! Please try other conditions.' TYPE 'E'.ENDTRY.cl_salv_bs_runtime_info=>clear_all( )."IF <lt_alv_data> IS ASSIGNED.UNASSIGN <lt_data>.LOOP AT <lt_alv_data> ASSIGNING <lt_data>."即所需要内表数据ENDLOOP.ENDIF.
      
    • 将执行结果放入MEMORY(此法用于结果不是很明确的ALV结构),关键代码:

      *&---------------------------------------------------------------------*
      *& Report  ZTEST_CALL_MB51
      *&
      *&---------------------------------------------------------------------*
      *&
      *& 获取MB51数据
      *&---------------------------------------------------------------------*REPORT  ztest_call_mb51.TYPE-POOLS:abap.
      TABLES:mseg,mara,mard.DATA:flag(01)    TYPE  c VALUE 'X', "Name for compatibility with MB03 "MAA EhP4no_list(01) TYPE  c VALUE 'X'. "Do not show the list             "MAA EhP4DATA: BEGIN OF export_list OCCURS 0,matnr TYPE mseg-matnr,maktx TYPE makt-maktx,werks TYPE mseg-werks,name1 TYPE t001w-name1,lgort TYPE mseg-lgort,charg TYPE mseg-charg,                              "351455bwtar TYPE mseg-bwtar,                              "351455bwart TYPE mseg-bwart,sobkz TYPE mseg-sobkz,btext TYPE t156t-btext,mblnr TYPE mseg-mblnr,mjahr TYPE mseg-mjahr,zeile TYPE mseg-zeile,budat TYPE mkpf-budat,erfmg TYPE mseg-erfmg,erfme TYPE mseg-erfme,lifnr TYPE mseg-lifnr,vgart TYPE mkpf-vgart,END OF export_list.SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-t01.
      SELECT-OPTIONS:so_werks FOR mseg-werks OBLIGATORY,so_matnr FOR mseg-matnr,so_mtart FOR mara-mtart,so_matkl FOR mara-matkl,so_lgort FOR mard-lgort.
      SELECT-OPTIONS so_mtr_i FOR mseg-matnr NO-DISPLAY .
      SELECTION-SCREEN: END OF BLOCK blk1.START-OF-SELECTION.EXPORT flag TO MEMORY ID 'MB51_FLAG'.EXPORT no_list TO MEMORY ID 'MB51_NOLIST' .EXPORT export_list TO MEMORY ID 'MB51_EXPORT_LIST'.SUBMIT rm07docsWITH matnr IN so_matnrWITH werks IN so_werksWITH lgort IN so_lgortWITH database EQ abap_trueWITH pa_dbstd EQ abap_trueWITH mb51_flag EQ flagWITH mb51_nolist EQ no_listEXPORTING LIST TO MEMORY AND RETURN.IMPORT export_list FROM MEMORY ID 'MB51_EXPORT_LIST'."关键代码FREE MEMORY ID 'MB51_EXPORT_LIST'.LOOP AT export_list."export_list 为需要的内表数据ENDLOOP.
  3. 执行结果

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-my8VyMW4-1678545481098)(D:\学习计划笔记\问题解决办法\IMAGE\image-20220523091900701.png)]

相关文章:

SUBMIT的用法

SUBMIT的用法 一、简介 系统MB52/MB51/MB5B等类似的报表 &#xff0c;虽然数据很全面&#xff0c;执行效率也够快&#xff0c;但是经常会不满足用户需求&#xff08;增添字段、添加查询条件等&#xff09;&#xff0c;很多ABAP 会选择去COPY出标准程序&#xff0c;然后去做修改…...

网页基本标签、图像标签、链接标签、块内元素和块元素、列表标签、表格标签

一、网页基本标签 标题标签 段落标签 未写段落标签前&#xff0c;文本没有按照想要的格式排列显示 写段落标签后&#xff1a; 每句都是一段&#xff0c;所以句与句距离比较宽 换行标签 同一段&#xff0c;只是把文字换行&#xff0c;所以比较紧凑 水平线标签 字体样式标签 …...

RxJava操作符变换过程

要使用Rxjava首先要导入两个包&#xff0c;其中rxandroid是rxjava在android中的扩展 implementation io.reactivex:rxandroid:1.2.1implementation io.reactivex:rxjava:1.2.0我们在使用rxjava的操作符时都觉得很方便&#xff0c;但是rxjava是怎么实现操作符的转换呢&#xff0…...

开放平台订单接口

custom-自定义API操作 ​ ​​注册开通​​ taobao.custom 公共参数 名称 类型 必须 描述 key String 是 调用key&#xff08;必须以GET方式拼接在URL中&#xff09; secret String 是 调用密钥 api_name String 是 API接口名称&#xff08;包括在请求地址中&a…...

CDN相关知识点

1、什么是CDN&#xff1f;CDN的作用是什么&#xff1f; CDN&#xff08;Content Delivery Network&#xff0c;内容分发网络&#xff09;是一种通过在多个节点上分布内容以提高网络性能、可靠性和可扩展性的网络解决方案。CDN通过在不同的地理位置部署服务器&#xff0c;使用户…...

【论文阅读】注意力机制与二维 TSP 问题

前置知识 注意力机制 见 这篇 二维 TSP 问题 给定二维平面上 nnn 个点的坐标 S{xi}i1nS\{x_i\}_{i1}^nS{xi​}i1n​&#xff0c;其中 xi∈[0,1]2x_i\in [0,1]^2xi​∈[0,1]2&#xff0c;要找到一个 1∼n1\sim n1∼n 的排列 π\piπ &#xff0c;使得目标函数 L(π∣s)∥xπ…...

[深入理解SSD系列 闪存实战2.1.7] NAND FLASH基本编程(写)操作及原理_NAND FLASH Program Operation 源码实现

前言 上面是我使用的NAND FLASH的硬件原理图,面对这些引脚,很难明白他们是什么含义, 下面先来个热身: 问1. 原理图上NAND FLASH只有数据线,怎么传输地址? 答1.在DATA0~DATA7上既传输数据,又传输地址 当ALE为高电平时传输的是地址, 问2. 从N...

PMP项目管理项目资源管理

目录1 项目资源管理概述2 规划资源管理3 估算活动资源4 获取资源5 建设团队6 管理团队7 控制资源1 项目资源管理概述 项目资源管理包括识别、获取和管理所需资源以成功完成项目的各个过程&#xff0c;这些过程有助于确保项目经理和项目团队在正确的时间和地点使用正确的资源。…...

程序的编译和链接

程序的编译和链接程序的编译和链接程序的两种环境翻译环境详解编译和链接预处理编译汇编链接运行环境程序的编译和链接 程序的两种环境 在ANSI C的任何一种实现中&#xff0c;存在两个不同的环境。 第1种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令。 …...

Win11的两个实用技巧系列之无法联网怎么办、耳机没声音的多种解决办法

Win11无法联网怎么办? win11安装后设备不能上网的解决办法Win11无法联网怎么办&#xff1f;电脑安装win11系统以后&#xff0c;发现不能上网&#xff0c;连接不上网络&#xff0c;该怎么办呢&#xff1f;下面我们就来看看win11安装后设备不能上网的解决办法Win11安装后&#x…...

【微信小程序】-- 自定义组件 - 数据监听器 - 案例 (三十五)

&#x1f48c; 所属专栏&#xff1a;【微信小程序开发教程】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &…...

Linux - 第7节 - 进程间通信

1.进程间通信介绍 进程间通信目的&#xff1a; 数据传输&#xff1a;一个进程需要将它的数据发送给另一个进程 。​​​​​​​ 资源共享&#xff1a;多个进程之间共享同样的资源。 ​​​​​​​ 通知事件&#xff1a;一个进程需要向另一个或一组进程发送消息&#xff0c;通…...

# 数据完整性算法在shell及python中的实践

数据完整性算法在shell及python中的实践 文章目录数据完整性算法在shell及python中的实践1 预备知识1.1 摘要算法1.2 报文&#xff08;数据&#xff09;完整性校验1.3 python byte类型字符串与普通字符串区别2 传统方法&#xff08;散列函数&#xff09;2.1 在shell中实践2.2 在…...

QEMU启动x86-Linux内核

目录QEMU简介linux启动流程我的环境安装QEMU软件包安装源码安装编译linux内核编译busybox制作initramfs使用QEMU启动linux内核简化命令参考QEMU简介 QEMU&#xff08;quick emulator&#xff09;是一个通用的、开源的硬件模拟器&#xff0c;可以模拟不同硬件架构&#xff08;如…...

C/C++每日一练(20230311)

目录 1. 计算阶乘的和 ★ 2. 基本计算器 ★★★ 3. N皇后 II ★★★ &#x1f31f; 每日一练刷题专栏 C/C 每日一练 ​专栏 Python 每日一练 专栏 1. 计算阶乘的和 计算&#xff1a;1!-2!3!-4!5!-6!7!-8!9!-10!&#xff0c;并输出计算结果。 注意&#xff1a;不全是…...

哪个牌子的洗地机耐用?耐用的洗地机推荐

作为当下非常热销的洗地机&#xff0c;它不仅解放了双手&#xff0c;使用也非常的便捷。是生活品质提高的最好代表&#xff0c;但是面对市面上让人眼花缭乱的洗地机&#xff0c;挑选几个来回都决定不了到底入手哪个好&#xff01;为了能帮助大家选购到合适的洗地机&#xff0c;…...

搭建一个中心化的定时服务

1. 背景 在物联网络&#xff0c;很多设备之间都在进行交互&#xff0c;其中云端在远程交流中起到了很重要的作用。比如&#xff0c;一台设备想进行调温&#xff0c;但是需要知道此时房间的温度&#xff0c;那就需要定时去查询传感器测出来的房间温度&#xff0c;如果温度过高&a…...

【CSS】快速入门笔记

视频链接&#xff1a;https://www.bilibili.com/video/BV1mS4y1Z7Ga/?spm_id_from333.999.0.0&vd_source1ad00d913eae8281cbadad6ae66fb06c 文章目录一、CSS语法1.结构2.样式类型1&#xff09;内联样式 Inline Style2&#xff09;内部样式 Internal Style3&#xff09;外部…...

第161篇 笔记-去中心化的含义

本文主要内容来自Vitalik Buterin的文章。“去中心化”这个词是在加密经济学领域用得最多的一个词&#xff0c;通常也作为辨别区块链的依据。然而&#xff0c;这个词也可能是被定义得最不恰当的一个词。数千小时的研究和价值数十亿美元哈希算力的投入都旨在实现去中心化&#x…...

「计算机组成原理」数据的表示和运算(二)

文章目录五、奇偶校验码六、算术逻辑单元ALU6.1 电路的基本原理6.2 加法器的设计6.2.1 一位全加器6.2.2 串行加法器6.2.3 串行进位的并行加法器6.2.4 并行进位的并行加法器七、补码加减运算器八、标志位的生成九、定点数的移位运算9.1 算数移位9.2 逻辑移位9.3 循环移位五、奇偶…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...