修改采购订单BAPI学习研究-BAPI_PO_CHANGE

这里是修改采购订单BAPI,修改订单数量和交货日期的简单应用

文章目录

  • 修改数量
    • 代码
    • 运行结果
  • 修改交货日期
    • 代码
    • 运行结果

修改数量

代码

*&---------------------------------------------------------------------*
*& Report Z_BAPI_PO_CHANGE
*&---------------------------------------------------------------------*
*& Creator:LiuHongyu
*& Create On:2024.12.24 17:04:09
*& Type:
*& Description:采购订单修改BAPI调用-BAPI_PO_CHANGE
*&---------------------------------------------------------------------*
*         Changed History
*--------------   ---------------   ------------------   --------------*
* Version         Changed By        Changed Date         Description
*--------------   ---------------   ------------------   --------------*
* N               LiuHongyu         24.12.2024 17:04:09
*&---------------------------------------------------------------------*REPORT Z_BAPI_PO_CHANGE.DATA PURCHASEORDER          TYPE BAPIMEPOHEADER-PO_NUMBER.
DATA POITEM                 TYPE STANDARD TABLE OF BAPIMEPOITEM.
DATA POITEMX                TYPE STANDARD TABLE OF BAPIMEPOITEMX.
DATA RETURN                 TYPE STANDARD TABLE OF BAPIRET2.
DATA LS_POITEM             TYPE BAPIMEPOITEM.
DATA LS_POITEMX            TYPE BAPIMEPOITEMX.PURCHASEORDER = '4500005963'. "采购订单BAPILS_POITEM-PO_ITEM = '00010'.
LS_POITEM-QUANTITY = 10.
APPEND LS_POITEM TO POITEM.LS_POITEMX-PO_ITEM = '00010'.
LS_POITEMX-QUANTITY = 'X'.
APPEND LS_POITEMX TO POITEMX.CALL FUNCTION 'BAPI_PO_CHANGE'EXPORTINGPURCHASEORDER = PURCHASEORDERTABLESRETURN        = RETURNPOITEM        = POITEMPOITEMX       = POITEMX.LOOP AT RETURN INTO DATA(LS_RETURN) WHERE TYPE = 'E' OR TYPE = 'A'.WRITE:LS_RETURN-MESSAGE.
ENDLOOP.IF SY-SUBRC <> 0. "没有发送错误WRITE:'采购订单修改成功!'.COMMIT WORK AND WAIT.
ELSE.WRITE:'采购订单修改失败!'.ROLLBACK WORK.
ENDIF.

运行结果

在这里插入图片描述

修改交货日期

代码

*&---------------------------------------------------------------------*
*& Report Z_BAPI_PO_CHANGE
*&---------------------------------------------------------------------*
*& Creator:LiuHongyu
*& Create On:2024.12.24 17:04:09
*& Type:
*& Description:采购订单修改BAPI调用-BAPI_PO_CHANGE
*&---------------------------------------------------------------------*
*         Changed History
*--------------   ---------------   ------------------   --------------*
* Version         Changed By        Changed Date         Description
*--------------   ---------------   ------------------   --------------*
* N               LiuHongyu         24.12.2024 17:04:09
*&---------------------------------------------------------------------*REPORT Z_BAPI_PO_CHANGE.DATA PURCHASEORDER         TYPE BAPIMEPOHEADER-PO_NUMBER.
DATA POITEM                TYPE STANDARD TABLE OF BAPIMEPOITEM.
DATA POITEMX               TYPE STANDARD TABLE OF BAPIMEPOITEMX.
DATA RETURN                TYPE STANDARD TABLE OF BAPIRET2.
DATA LS_POITEM             TYPE BAPIMEPOITEM.
DATA LS_POITEMX            TYPE BAPIMEPOITEMX.
DATA LS_POSCHEDULE         TYPE BAPIMEPOSCHEDULE.
DATA LS_POSCHEDULEX        TYPE BAPIMEPOSCHEDULX.
DATA LT_POSCHEDULE         TYPE TABLE OF BAPIMEPOSCHEDULE.
DATA LT_POSCHEDULEX        TYPE TABLE OF BAPIMEPOSCHEDULX.PURCHASEORDER = '4500005963'. "采购订单BAPILS_POITEM-PO_ITEM = '00010'.
LS_POITEM-QUANTITY = 10.
APPEND LS_POITEM TO POITEM.LS_POITEMX-PO_ITEM = '00010'.
LS_POITEMX-QUANTITY = 'X'.
APPEND LS_POITEMX TO POITEMX."交货计划
LS_POSCHEDULE-PO_ITEM = '00010'.
LS_POSCHEDULE-SCHED_LINE = 1.
LS_POSCHEDULE-DELIVERY_DATE = '20291001'.
APPEND LS_POSCHEDULE TO LT_POSCHEDULE."交货计划的更改计划行
LS_POSCHEDULEX-PO_ITEM = '00010'.
LS_POSCHEDULEX-SCHED_LINE = 1.
LS_POSCHEDULEX-PO_ITEMX = 'X'.
LS_POSCHEDULEX-SCHED_LINEX = 'X'.
LS_POSCHEDULEX-DELIVERY_DATE = 'X'.
APPEND LS_POSCHEDULEX TO LT_POSCHEDULEX.CALL FUNCTION 'BAPI_PO_CHANGE'EXPORTINGPURCHASEORDER = PURCHASEORDERTABLESRETURN        = RETURNPOITEM        = POITEMPOITEMX       = POITEMXPOSCHEDULE    = LT_POSCHEDULEPOSCHEDULEX   = LT_POSCHEDULEX.LOOP AT RETURN INTO DATA(LS_RETURN) WHERE TYPE = 'E' OR TYPE = 'A'.WRITE:LS_RETURN-MESSAGE.
ENDLOOP.IF SY-SUBRC <> 0. "没有发送错误WRITE:'采购订单修改成功!'.COMMIT WORK AND WAIT.
ELSE.WRITE:'采购订单修改失败!'.ROLLBACK WORK.
ENDIF.

运行结果

在这里插入图片描述

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

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

相关文章

WSL2高级配置之mirrored镜像网络

WSL2高级配置之mirrored镜像网络 引言版本要求更改配置 引言 WSL2默认的网络模式为NAT。尽管WSL2原生提供了localhost转发这种能够方便地在Windows中访问子系统服务的特性&#xff0c;但如果想反过来&#xff0c;则只能通过局域网或者想办法桥接&#xff0c;这两种方法都有些许…

《ROS2 机器人开发 从入门道实践》 鱼香ROS2——第4章内容

第4章 服务和参数——深入ROS2通信 4.2 用Python服务通信实现人脸检测 4.2.1 自定义服务接口 1. 创建接口功能包 终端中输入 ros2 pkg create chapt4_interfaces --dependencies sensor_msgs rosidl_default_generators --license Apache-2.0 ros2 pkg create 功能包名称…

Linux系统编程深度解析:C语言实战指南

文章一览 前言一、gcc编译系统1.1 文件名后缀1.2 C语言编译过程1.3 gcc命令行选项 二、gdb程序调试工具2.1 启动gdb和查看内部命令2.2 显示源程序和数据2.2.1 显示和搜索源程序2.2.2 查看运行时数据 2.3 改变和显示目录或路径2.4 控制程序的执行2.4.1 设置断点2.4.2 显示断点2.…

SQL优化原理与具体实例分析

一、引言 SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;是关系型数据库的核心语言。在实际应用中&#xff0c;数据库查询性能往往成为系统性能瓶颈。因此&#xff0c;掌握SQL优化技巧对于提高数据库查询效率具有重要意义。本文将围绕SQL优…

安卓蓝牙扫描流程

目录 系统广播 流程图 源码跟踪 系统广播 扫描开启广播&#xff1a;BluetoothAdapter.ACTION_DISCOVERY_STARTED "android.bluetooth.adapter.action.DISCOVERY_STARTED";扫描关闭广播&#xff1a;BluetoothAdapter.ACTION_DISCOVERY_FINISHED "android.b…

shell 编程(三)

条件测试命令 条件测试&#xff1a;判断某需求是否满足&#xff0c;需要有测试机制来实现 专用的测试表达式需要由测试命令辅助完成测试过程&#xff0c;评估布尔生命&#xff0c;以便用在条件性执行中 若真,则状态码变量$? 返回0 // echo $? 打印0 反之返回1 t…

八股(One Day one)

最近老是看到一些面试的视频&#xff0c;对于视频内部面试所提到的八股文&#xff0c;感觉是知道是什么&#xff0c;但是要说的话&#xff0c;却又不知道该怎么说&#xff08;要不咋称之为八股文呢&#xff09;&#xff0c;所以就想到写一篇八股文总结的博客&#xff0c;以便进…

Rust 在前端基建中的使用

摘要 随着前端技术的不断发展&#xff0c;前端基础设施&#xff08;前端基建&#xff09;的建设已成为提升开发效率、保障产品质量的关键环节。然而&#xff0c;在应对复杂业务场景与高性能需求时&#xff0c;传统的前端技术栈逐渐暴露出诸多不足。近年来&#xff0c;Rust语言…

豆包MarsCode:a替换函数

问题描述 思路分析 在这个问题中&#xff0c;我们的目标是将字符串中的所有小写字母 a 替换为 "%100"。为了实现这一点&#xff0c;我们需要分析问题的核心需求和合理的解决方案。以下是分析和思路的详细步骤&#xff1a; 1. 理解问题 给定一个字符串 s&#xff0…

人脸生成3d模型 Era3D

从单视图图像进行3D重建是计算机视觉和图形学中的一项基本任务&#xff0c;因为它在游戏设计、虚拟现实和机器人技术中具有潜在的应用价值。早期的研究主要依赖于直接在体素上进行3D回归&#xff0c;这往往会导致过于平滑的结果&#xff0c;并且由于3D训练数据的限制&#xff0…

【点估计】之Python实现

点估计是一种统计推断方法,它利用样本数据来估计总体的未知参数。在概率论和数理统计的框架下,点估计将总体的未知参数视为一个确定的值或一个具体的点,并试图通过样本数据来找到这个值的最佳估计。以下是对点估计的详细解释: 一、定义与原理 定义:点估计是根据样本数据估…

rust与python互通

互通三件套 rust侧与python互通的三个库&#xff1a; pyo3 pythonize serde pyo3 pyo3跟用Python C API写python扩展有点类似&#xff0c;核心是&#xff1a; #[pymodule] #[pyfunction]两个注解。前者对应Py_InitModule&#xff0c;后者对应PyMethodDef。 下面是其它博…

Ubuntu系统下 npm install -g tauri 报错问题处理

处理在安装 Tauri 时遇到的问题&#xff0c;可以按照以下步骤进行操作 npm install -g taurinpm warn deprecated inflight1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async …

信贷域——互联网金融理论基础

摘要 互联网金融这种新兴的金融业态近几年飞速发展&#xff0c;规模不断扩大&#xff0c;互联网金融在对我国金融体系和经济发展影响中所占的分量越来越重&#xff0c;一定程度上也推动了互联网金融理论的发展。 互联网金融与传统金融都是金融&#xff0c;有着相近的理论基础。…

C++软件设计模式之享元模式(FlyWeight)

享元&#xff08;Flyweight&#xff09;模式的动机与意图 动机 享元模式的主要动机是通过共享对象来减少内存使用&#xff0c;从而提高系统的性能。在某些情况下&#xff0c;系统中可能有大量细粒度的对象&#xff0c;这些对象具有共同的部分状态&#xff0c;而这些状态可以共…

LightGBM分类算法在医疗数据挖掘中的深度探索与应用创新(上)

一、引言 1.1 医疗数据挖掘的重要性与挑战 在当今数字化医疗时代,医疗数据呈爆炸式增长,这些数据蕴含着丰富的信息,对医疗决策具有极为重要的意义。通过对医疗数据的深入挖掘,可以发现潜在的疾病模式、治疗效果关联以及患者的健康风险因素,从而为精准医疗、个性化治疗方…

|-牛式-|

题目描述 下面是一个乘法竖式&#xff0c;如果用我们给定的那几个数字来取代 * &#xff0c;可以使式子成立的话&#xff0c;我们就叫这个式子牛式。 * * * x * * ------- * * * * * * ------- * * * * 数字只能取代 * &#xff0c;当然第一位不能为 0 。 写一个程序找…

es 3期 第18节-分页查询使用避坑的一些事

#### 1.Elasticsearch是数据库&#xff0c;不是普通的Java应用程序&#xff0c;传统数据库需要的硬件资源同样需要&#xff0c;提升性能最有效的就是升级硬件。 #### 2.Elasticsearch是文档型数据库&#xff0c;不是关系型数据库&#xff0c;不具备严格的ACID事务特性&#xff…

STM32串口第一次接收数据时第一个字节丢失的问题

解决方法&#xff1a;开启中断之前&#xff0c;先清除标志位【1】。 串口清除标志位&#xff1a; __HAL_UART_CLEAR_PEFLAG(&huart1); HAL_UART_Receive_IT(&huart1,&RxUart, 1); 定时器清除标志位&#xff1a; __HAL_TIM_CLEAR_FLAG(&htim3,TIM_FLAG_UPDATE);…

深度学习中的残差网络、加权残差连接(WRC)与跨阶段部分连接(CSP)详解

随着深度学习技术的不断发展&#xff0c;神经网络架构变得越来越复杂&#xff0c;而这些复杂网络在训练时常常遇到梯度消失、梯度爆炸以及计算效率低等问题。为了克服这些问题&#xff0c;研究者们提出了多种网络架构&#xff0c;包括 残差网络&#xff08;ResNet&#xff09;、…