VL31N BAPI:GN_DELIVERY_CREATE创建内向交货单同时批次拆分

翻到之前写的测试代码,记录一下,用于创建DN的同时就进行批次拆分,不需要再调用变更的BAPI再去修改一次。

REPORT ZTEST_VL31N_BATCH_SPLIT.

DATA:
  GS_VBSK_I     TYPE VBSK,                                   "構造:販売伝票ヘッダIN
  GS_VBSK_E     TYPE VBSK,                                   "構造:販売伝票ヘッダOUT
  GS_BORGR_CT   TYPE BORGR_CONTROL,                          "構造:GN_DELIVERY_CREATE の管理区分
  GT_XKOMDLGN   TYPE STANDARD TABLE OF KOMDLGN,              "T:明細
  GS_XKOMDLGN   TYPE KOMDLGN,                                "構造:明細
  GT_PARTNER    TYPE STANDARD TABLE OF PARTNER_GN,
  GS_PARTNER    TYPE PARTNER_GN,
  GT_ADDRESS    TYPE STANDARD TABLE OF BAPIADDR1,
  GS_ADDRESS    TYPE BAPIADDR1,
  GT_XVBFS      TYPE STANDARD TABLE OF VBFS,                 "T:一括処理用エラーログ
  GS_XVBFS      TYPE VBFS,                                   "構造:一括処理用エラーログ
  GT_XVBLS      TYPE STANDARD TABLE OF VBLS,                 "T:一括処理用納品書
  GS_XVBLS      TYPE VBLS,                                   "構造:一括処理用納品書
  GS_ADDR_SEL   TYPE ADDR1_SEL,
  GS_ADDR_VALUE TYPE ADDR1_VAL.


*   抬头数据
  GS_BORGR_CT-SAVE_TEXTS = ABAP_TRUE.              "グループタイプ

  GS_VBSK_I-MANDT = SY-MANDT.                      "クライアント
  GS_VBSK_I-ERNAM = SY-UNAME.                      "オブジェクト登録者名
  GS_VBSK_I-ERDAT = SY-DATUM.                      "レコード登録日
  GS_VBSK_I-UZEIT = SY-UZEIT.                      "時刻
*  GS_VBSK_I-VSTEL = '100B'.                      "装运点
  GS_VBSK_I-PROGRAMM = SY-REPID.
  GS_VBSK_I-SELSET   = SY-SLSET.
  GS_VBSK_I-BATCH    = SY-BATCH.
  GS_VBSK_I-SMART = 'L'.                           "グループタイプ

*   内部番号割当の番号範囲取得
  SELECT SINGLE NUMKI
    INTO @DATA(GV_NUMKI)                           "変数:内部番号割当の番号範囲
    FROM TVSA
   WHERE SMART = @GS_VBSK_I-SMART.                 "グループタイプ

*   NUmber range: Assigns next free number
  CALL FUNCTION 'NUMBER_GET_NEXT'
    EXPORTING
      NR_RANGE_NR             = GV_NUMKI           "変数:内部番号割当の番号範囲
      OBJECT                  = 'RV_SAMMG'         "番号範囲オブジェクト名
*     QUANTITY                = '1'
*     SUBOBJECT               = ' '
*     TOYEAR                  = '0000'
*     IGNORE_BUFFER           = ' '
    IMPORTING
      NUMBER                  = GS_VBSK_I-SAMMG    "グループタイプ
*     QUANTITY                =
*     RETURNCODE              =
    EXCEPTIONS
      INTERVAL_NOT_FOUND      = 1
      NUMBER_RANGE_NOT_INTERN = 2
      OBJECT_NOT_FOUND        = 3
      QUANTITY_IS_0           = 4
      QUANTITY_IS_NOT_1       = 5
      INTERVAL_OVERFLOW       = 6
      BUFFER_OVERFLOW         = 7
      OTHERS                  = 8.

*   取得できなかた場合
  IF SY-SUBRC <> 0.
    ASSERT 0 = 0.
  ENDIF.


*  GS_XKOMDLGN-POSNR = '000010'.
  GS_XKOMDLGN-SPE_POSNR = '000010'.
  GS_XKOMDLGN-LIFNR = '5000000000'.
  GS_XKOMDLGN-LFIMG = '0'.
  GS_XKOMDLGN-KCMENG = '50'.
  GS_XKOMDLGN-MATNR = '000000010000000047'.
  GS_XKOMDLGN-EMATN = '000000010000000047'.
  GS_XKOMDLGN-PSTYV = 'ELN'.
  GS_XKOMDLGN-BLDAT = SY-DATUM.
  GS_XKOMDLGN-WERKS = '100B'.
  GS_XKOMDLGN-LGORT = 'JA06'.
  GS_XKOMDLGN-MTART = 'Z001'.
  GS_XKOMDLGN-VGBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-VGPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-VGTYP = 'V'.                       "販売管理伝票カテゴリ
  GS_XKOMDLGN-RFBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-RFPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-LFART = 'EL'.
  GS_XKOMDLGN-AKMNG = 'A'.
  GS_XKOMDLGN-KZBEW = 'B'.
  GS_XKOMDLGN-LFDAT = SY-DATUM.
  GS_XKOMDLGN-VRKME = 'ST'.
  GS_XKOMDLGN-MEINS = 'ST'.
  GS_XKOMDLGN-KZAZU = 'X'.                       "受注結合区分
  GS_XKOMDLGN-XCHAR = 'X'.                       "
  GS_XKOMDLGN-XCHPF = 'X'.                       "
  APPEND GS_XKOMDLGN TO GT_XKOMDLGN.
  CLEAR GS_XKOMDLGN.

*  GS_XKOMDLGN-POSNR = '900001'.
  GS_XKOMDLGN-SPE_POSNR = '900001'.
  GS_XKOMDLGN-UECHA = '000010'.
  GS_XKOMDLGN-LIFNR = '5000000000'.
  GS_XKOMDLGN-LFIMG = '20'.
  GS_XKOMDLGN-LGMNG = '20'.
  GS_XKOMDLGN-CHARG = '90D128_80'.
  GS_XKOMDLGN-KCMENG = '0'.
  GS_XKOMDLGN-MATNR = '000000010000000047'.
  GS_XKOMDLGN-PSTYV = 'ELN'.
  GS_XKOMDLGN-BLDAT = SY-DATUM.
  GS_XKOMDLGN-WERKS = '100B'.
  GS_XKOMDLGN-LGORT = 'JA06'.
  GS_XKOMDLGN-MTART = 'Z001'.
  GS_XKOMDLGN-VGBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-VGPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-VGTYP = 'V'.                       "販売管理伝票カテゴリ
  GS_XKOMDLGN-RFBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-RFPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-LFART = 'EL'.
  GS_XKOMDLGN-AKMNG = 'A'.
  GS_XKOMDLGN-KZBEW = 'B'.
  GS_XKOMDLGN-LFDAT = SY-DATUM.
  GS_XKOMDLGN-VRKME = 'ST'.
  GS_XKOMDLGN-MEINS = 'ST'.
  GS_XKOMDLGN-KZAZU = 'X'.                       "受注結合区分
  GS_XKOMDLGN-XCHAR = 'X'.                       "
  GS_XKOMDLGN-XCHPF = 'X'.                       "
*  GS_XKOMDLGN-MFRGR = '02'.                     "便
  APPEND GS_XKOMDLGN TO GT_XKOMDLGN.

  GS_XKOMDLGN-SPE_POSNR = '900002'.
  GS_XKOMDLGN-UECHA = '000010'.
  GS_XKOMDLGN-LIFNR = '5000000000'.
  GS_XKOMDLGN-LFIMG = '30'.
  GS_XKOMDLGN-LGMNG = '30'.
  GS_XKOMDLGN-CHARG = '90D128_81'.
  GS_XKOMDLGN-KCMENG = '0'.
  GS_XKOMDLGN-MATNR = '000000010000000047'.
  GS_XKOMDLGN-PSTYV = 'ELN'.
  GS_XKOMDLGN-BLDAT = SY-DATUM.
  GS_XKOMDLGN-WERKS = '100B'.
  GS_XKOMDLGN-LGORT = 'JA06'.
  GS_XKOMDLGN-MTART = 'Z001'.
  GS_XKOMDLGN-VGBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-VGPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-VGTYP = 'V'.                       "販売管理伝票カテゴリ
  GS_XKOMDLGN-RFBEL = '4100002508'.              "参照伝票番号
  GS_XKOMDLGN-RFPOS = '000001'.                  "参照明細番号
  GS_XKOMDLGN-LFART = 'EL'.
  GS_XKOMDLGN-AKMNG = 'A'.
  GS_XKOMDLGN-KZBEW = 'B'.
  GS_XKOMDLGN-LFDAT = SY-DATUM.
  GS_XKOMDLGN-VRKME = 'ST'.
  GS_XKOMDLGN-MEINS = 'ST'.
  GS_XKOMDLGN-KZAZU = 'X'.                       "受注結合区分
  GS_XKOMDLGN-XCHAR = 'X'.                       "
  GS_XKOMDLGN-XCHPF = 'X'.                       "
*  GS_XKOMDLGN-MFRGR = '02'.                     "便
  APPEND GS_XKOMDLGN TO GT_XKOMDLGN.

  CALL FUNCTION 'GN_DELIVERY_CREATE'
    EXPORTING
      VBSK_I           = GS_VBSK_I
*     NO_COMMIT        = ' '
*     IF_SYNCHRON      = 'X'
*     VBLS_POS_RUECK   = ' '
*     IF_CREATE_DEC    = ' '
*     IF_NO_DEQUE      = ' '
*     IT_HANDLING_UNITS          =
*     IF_QUAN_NO_CHECK =
*     IF_MASS_READ_MAT_SW        = ' '
*     IS_DELIVERY_EXTEND         =
*     IS_CONTROL       =
      IS_BORGR_CONTROL = GS_BORGR_CT
*     IF_NO_INIT       = ' '
*     IF_NO_PARTNER_DIALOG       = 'X'
*     IF_CHECK_UOM     = ' '
*     IT_LECOMP        =
*     IF_CALL_ACTIVITY = ' '
    IMPORTING
      VBSK_E           = GS_VBSK_E
*     ET_SPLITPROT     =
*     ET_VBADR         =
*     ET_VBPA          =
    TABLES
      XKOMDLGN         = GT_XKOMDLGN
      XVBFS            = GT_XVBFS
      XVBLS            = GT_XVBLS
*     XXLIPS           =
*     XVERKO           =
*     XVERPO           =
      IT_GN_PARTNER    = GT_PARTNER
*     IT_GN_LIPSPO     =
*     IT_GN_LIPSRF     =
*     IT_GN_TEXTH      =
*     IT_GN_TEXTL      =
*     IT_GN_HUSERNR    =
*     IT_GN_SERNR      =
*     IT_TMSTMP        =
*     ET_SPE_VBFS      =
      IT_BAPIADDR1     = GT_ADDRESS
*     IT_GN_HU_HEADER_EPC        =
*     IT_GN_HU_ITEMS_EPC         =
*     IT_GN_HURES      =
    .

  READ TABLE GT_XVBLS INTO GS_XVBLS INDEX 1.
  IF GS_XVBLS-VBELN_LIF IS NOT INITIAL.
*   コミット
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT = ABAP_TRUE.

    WRITE GS_XVBLS-VBELN_LIF.
  ELSE.
*   ロールバック
    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

    DATA:
      LT_MESSAGE_TAB TYPE ESP1_MESSAGE_TAB_TYPE,
      LS_MESSAGE     TYPE ESP1_MESSAGE_WA_TYPE.

    LOOP AT GT_XVBFS INTO GS_XVBFS.

      LS_MESSAGE-MSGID  = GS_XVBFS-MSGID.
      LS_MESSAGE-MSGTY  = GS_XVBFS-MSGTY.
      LS_MESSAGE-MSGNO  = GS_XVBFS-MSGNO.
      LS_MESSAGE-MSGV1  = GS_XVBFS-MSGV1.
      LS_MESSAGE-MSGV2  = GS_XVBFS-MSGV2.
      LS_MESSAGE-MSGV3  = GS_XVBFS-MSGV3.
      LS_MESSAGE-MSGV4  = GS_XVBFS-MSGV4.
      LS_MESSAGE-LINENO = SY-TABIX.
      APPEND LS_MESSAGE TO LT_MESSAGE_TAB.

    ENDLOOP.

    CALL FUNCTION 'C14Z_MESSAGES_SHOW_AS_POPUP'
      TABLES
        I_MESSAGE_TAB = LT_MESSAGE_TAB.

*    CL_DEMO_OUTPUT=>DISPLAY( GT_XVBFS ).
  ENDIF.

以上。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

root密码忘了怎么办(从系统引导过程解决)

目录 1.Linux系统密码忘记 2.系统引导过程 2.1 systemd 2.2 GRUB和GRUB2 2.3 运行级别 3.修复MBR扇区故障和GRUB引导故障 3.1 MBR扇区故障 3.2 GRUB引导故障 1.Linux系统密码忘记 我们在生活中经常遇到这类困扰&#xff0c;就是某个账号还是账户密码忘了&#xff0c;这…

Docker 部署 Nacos v2.3.2 版本

文章目录 Github官网文档Nacos 生态图Nacos Dockerdocker-compose.ymlapplication.propertiesNacos 官方示例 Github https://github.com/alibaba/nacos 官网 https://nacos.io/ 文档 https://nacos.io/docs/latest/what-is-nacos/ Nacos 生态图 Nacos Docker 镜像&…

《信创数据库沙龙上海站:共话发展,智启未来》

2024 年 6 月 29 日周六 14:00&#xff0c;信创数据库沙龙在上海市徐汇区建国西路 285 号科投大厦 13 楼金星厅成功举办。本次活动吸引了众多学术界和产业界的专家、学者以及技术爱好者参与。 活动中&#xff0c;多位嘉宾带来了精彩分享。薛晓刚探讨了 Oracle 在国内的前景&a…

Java全套智慧校园系统源码:微信小程序+电子班牌 让教育更智能化的一套数字化校园管理系统源码

Java全套智慧校园系统源码&#xff1a;微信小程序电子班牌 让教育更智能化的一套数字化校园管理系统源码 智慧校园管理系统是一种利用科技手段优化学校教育和管理的平台。它可以涵盖多个方面&#xff0c;例如教学、管理、服务等。其中包括智能化教室、智慧校园卡、校园安全监控…

基于flask的闪现、g对象、蓝图

【 一 】闪现&#xff08;flash&#xff09; # 1 flask中得闪现存放数据的地方&#xff0c;一旦取了&#xff0c;数据就没了-实现跨请求间传递数据 # 2 django中有没有类似的东西&#xff1f;message 消息框架# 3 基本使用1 设置&#xff1a;flash(欢迎你、欢迎来到澳门赌场&a…

Dns被莫名篡改的问题定位(笔记)

引言&#xff1a;最近发现用户的多台机器上出现了Dns被莫名修改的问题&#xff0c;从系统事件上看并未能正常确定到是那个具体软件所为&#xff0c;现在的需求就是确定和定位哪个软件具体所为。 解决思路&#xff1a; 首先到IPv4设置页面对Dns进行设置&#xff1a;通过ProcExp…

昇思25天学习打卡营第8天|MindSpore-SSD目标检测

SSD目标检测介绍 SSD,全称Single Shot MultiBox Detector,是Wei Liu在ECCV 2016上提出的一种目标检测算法。使用Nvidia Titan X在VOC 2007测试集上,SSD对于输入尺寸300x300的网络,达到74.3%mAP(mean Average Precision)以及59FPS;对于512x512的网络,达到了76.9%mAP ,超…

短视频电商源码怎么选择

随着移动互联网的迅猛发展&#xff0c;短视频电商成为了一种热门的商业模式。很多商家和创业者都希望能够快速搭建一个短视频电商平台来推广和销售自己的产品。然而&#xff0c;选择合适的短视频电商源码并不是一件容易的事情。在选择之前&#xff0c;有一些关键因素需要考虑。…

STC8/32 软硬件I2C通讯方式扫描I2C设备地址

STC8/32 软硬件I2C通讯方式扫描I2C设备地址 📄主要用于检测挂载在I2C总线上的设备。在驱动I2C设备之前,如果能扫描到该设备,说明通讯设备可以连接的上,在提前未知I2C地址的情况下,可以方便后面的驱动代码的完善。 🔬扫描测试效果:(测试mpu6050以及ssd1306 i2c oled )…

本科学历|艺术创业公司经理限定美国西部访问学者申请成功

U经理属于自费访学&#xff0c;本科学历&#xff0c;无文章及课题&#xff0c;但有较丰富的艺术创意及艺术教育实际操作经验&#xff0c;要求申美国西部地区的学校。最终我们为其获得俄勒冈州立大学访问学者邀请函。之前拟定的申请设想全部实现&#xff1a;西部地区、专业契合、…

【Lua小知识】Vscode中Emmylua插件大量报错的解决方法

起因 Vscode写Lua用的好好的&#xff0c;最近突然出现了大量报错。 看报错是有未定义的全局变量&#xff0c;这里查日志才发现是由于0.7.5版本新增诊断启用配置&#xff0c;所以导致了原先好的代码&#xff0c;现在出现了大量的报错。 解决方案一 最直接的方法当然是在配置中直…

【单片机毕业设计选题24040】-基于STM32的蓝牙防丢器设计

系统功能: 系统上电后显示“欢迎使用蓝牙防丢系统请稍后”两秒钟显示正常界面&#xff0c;如果蓝牙正常连接OLED显示Connected, 蓝牙未连接则显示DisConnected同时蜂鸣器报警 蓝牙正常连接后在APP上每隔三秒显示一个Connected 系统功能框图: 主要功能模块原理图: 电源时钟…

CSS|04 复合选择器伪类选择器属性选择器美化超链接

基本选择器&#xff1a;见上篇基本选择器 复合选择器选择器1,选择器2{属性:值;} 多元素选择器&#xff0c;同时匹配选择器1和选择器2&#xff0c;多个选择器之间用逗号分隔举例&#xff1a; p,h1,h2{margin:0px;}E F{属性:值;} 后代元素选择器&#xff0c;匹配所有属于E元素后…

【Python机器学习】模型评估与改进——分组交叉验证

分组交叉验证是非常常见的一种交叉验证策略&#xff0c;它适用于数据中的分组高度相关时。比如我们想构建一个从人脸图片中识别情感的系统&#xff0c;并且收集了100个人的照片的数据集&#xff0c;其中每个人都进行了多次拍摄&#xff0c;分别展示了不同的情感。我们的目标是构…

Python 文件操作

文件编码 将文件的内容翻译为二进制 文件操作 打开文件 open函数 语法&#xff1a; open(name, mode, encoding)name&#xff1a;文件名的字符串&#xff0c;可以包含具体路径。若没有路径&#xff0c;则默认为与py文件位于同一层 mode&#xff1a;打开文件的模式&#xf…

PP-JITTER \RMS-JITTER 及其他Jitter解析

Jitter概念 Jitter(抖动)是从时域评价时钟信号质量的重要参数。 首先要明确的是它是一个统计量,因此有标准差(均方根,rms)和范围(峰峰值,p2p); 然后根据样本的类型可以划分成不同的分类,如Jabs(absolute jitter)、Jp(period jitter)、Jc2c(cycle-to-cycle ji…

Forecasting from LiDAR via Future Object Detection

Forecasting from LiDAR via Future Object Detection 基础信息 论文&#xff1a;cvpr2022paper https://openaccess.thecvf.com/content/CVPR2022/papers/Peri_Forecasting_From_LiDAR_via_Future_Object_Detection_CVPR_2022_paper.pdfgithub&#xff1a;https://github.co…

UWB透传模块-通信距离1KM UWB650 透明传输 | 双向测距 | 定位模块

UWB650模块是思为无线推出的一款基于UWB&#xff08;Ultra Wide Band&#xff0c;超宽带&#xff09;技术的无线通讯模块&#xff0c;遵循IEEE 802.15.4-2020 Standard协议。UWB650模块是在UWB3000F27基础上研发&#xff0c;使该模块拥有0.5W的高功率功放芯片。用户无需去设计电…

Ubuntu使用chkconfig命令时报错:chkconfig: command not found解决办法

文章目录 前言一、安装sysv-rc-conf1.1 引入库安装可能报错&#xff1a;E: Unable to locate package sysv-rc-conf1.2 添加镜像源后更新安装源&#xff1a;1.3 更新安装源可能报错如下内容&#xff1a;1.4 添加密钥1.5 添加密钥后更新安装源&#xff1a;1.6 用apt-get安装sysv…

能源企业的“宿命”,是成为穿越时代的传奇

2012年&#xff0c;杰里米里夫金的《第三次工业革命》出版&#xff0c;他在书中提出了能源互联网的观点&#xff0c;将互联网技术和可再生能源结合起来&#xff0c;用以支持未来的产业革命。 里夫金不愧是和凯文凯利&#xff08;KK&#xff09;齐名的未来学家&#xff0c;十几…