VL31N创建内向交货函数及增强字段

LIPS字段增强

结构KOMDLGN新增字段

在下面结构中新增字段,则两个都有了。

创建BADI: LE_SHP_GN_DLV_CREATE

METHOD if_ex_le_shp_gn_dlv_create~move_komdlgn_to_lips.

cs_lips-yhjdh = is_xkomdlgn-yhjdh.

cs_lips-yhjrs = is_xkomdlgn-yhjrs.

ENDMETHOD.

简单创建内向交货单函数:

BBP_INB_DELIVERY_CREATE

BAPI_DELIVERYPROCESSING_EXEC

调用函数创建内向交货单

DATA: l_vbeln         TYPE likp-vbeln,

l_msgtext       TYPE string.

DATA: ls_vbsk     LIKE  vbsk,

lt_spe_vbfs  TYPE TABLE OF  /spe/vbfs WITH HEADER LINE,

lt_komdlgn  TYPE TABLE OF komdlgn WITH HEADER LINE,

lt_vbfs    TYPE TABLE OF vbfs WITH HEADER LINE,

lt_vbls    TYPE TABLE OF vbls WITH HEADER LINE.

DATA: lt_prop LIKE wuebs OCCURS 100 WITH HEADER LINE.

DATA: ls_tvsa TYPE tvsa.

DATA: l_nrnr LIKE inri-nrrangenr.

IF is_data-item[] IS NOT INITIAL.

SELECT ebeln,ebelp,matnr,werks,meins

INTO TABLE @DATA(lt_ekpo)

FROM ekpo

FOR ALL ENTRIES IN @is_data-item

WHERE ebeln = @is_data-item-ebeln

AND   ebelp = @is_data-item-ebelp.

SORT lt_ekpo BY ebeln ebelp.

ENDIF.

*工厂、销售单位不能为空

LOOP AT is_data-item INTO DATA(ls_item).

lt_komdlgn-lfart = 'EL'.

lt_komdlgn-vgtyp = 'V'.

lt_komdlgn-kzazu = 'X'.

lt_komdlgn-lifex = is_data-lifex.

lt_komdlgn-lifexpos = ls_item-lifexpos.

lt_komdlgn-lfdat = is_data-lfdat.

lt_komdlgn-lfuhr = is_data-lfuhr. "交货时间

lt_komdlgn-traty = is_data-traty. "运输方式类型

lt_komdlgn-vgbel = ls_item-ebeln.

lt_komdlgn-vgpos = ls_item-ebelp.

lt_komdlgn-lfimg = ls_item-lfimg.

lt_komdlgn-lichn = ls_item-lichn.

lt_komdlgn-yhjdh = ls_item-yhjdh.

lt_komdlgn-yhjrs = ls_item-yhjrs.

READ TABLE lt_ekpo INTO DATA(ls_ekpo) BINARY SEARCH

WITH KEY ebeln = ls_item-ebeln ebelp = ls_item-ebelp.

IF sy-subrc = 0.

lt_komdlgn-matnr = ls_ekpo-matnr.

lt_komdlgn-werks = ls_ekpo-werks.

lt_komdlgn-vrkme = ls_ekpo-meins.

ENDIF.

APPEND lt_komdlgn.

CLEAR lt_komdlgn.

ENDLOOP.

*** Not Available in 3.1

CALL FUNCTION 'ME_CONFIRMATION_VIA_EDI'

TABLES

t_kom  = lt_komdlgn

errors = lt_prop

EXCEPTIONS

OTHERS = 1.

ls_vbsk-mandt = sy-mandt.

ls_vbsk-ernam = sy-uname.

ls_vbsk-erdat = sy-datum.

ls_vbsk-uzeit = sy-uzeit.

ls_vbsk-smart = 'L'.

SELECT SINGLE * INTO ls_tvsa

FROM tvsa WHERE smart = ls_vbsk-smart.

l_nrnr = ls_tvsa-numki.

CALL FUNCTION 'NUMBER_GET_NEXT'

EXPORTING

nr_range_nr = l_nrnr

object      = 'RV_SAMMG'

IMPORTING

number      = ls_vbsk-sammg

EXCEPTIONS

OTHERS      = 1.

CALL FUNCTION 'GN_DELIVERY_CREATE'

EXPORTING

vbsk_i      = ls_vbsk

IMPORTING

vbsk_e      = ls_vbsk

TABLES

xkomdlgn    = lt_komdlgn

xvbfs       = lt_vbfs

xvbls       = lt_vbls

et_spe_vbfs = lt_spe_vbfs.

READ TABLE lt_spe_vbfs WITH KEY msgty = 'E'.

IF sy-subrc = 0.

ROLLBACK WORK.

ev_type = 'E'.

CLEAR ev_msgtx.

LOOP AT lt_spe_vbfs WHERE msgty CA  'EAX'.

MESSAGE ID lt_spe_vbfs-msgid TYPE lt_spe_vbfs-msgty

NUMBER lt_spe_vbfs-msgno

INTO l_msgtext

WITH lt_spe_vbfs-msgv1 lt_spe_vbfs-msgv2

lt_spe_vbfs-msgv3 lt_spe_vbfs-msgv4.

IF ev_msgtx IS INITIAL.

ev_msgtx = l_msgtext.

ELSE.

CONCATENATE ev_msgtx l_msgtext INTO ev_msgtx SEPARATED BY ';'.

ENDIF.

ENDLOOP.

et_output-zitem = 1.

et_output-ztype = ev_type.

et_output-zmessage = ev_msgtx.

APPEND et_output.

ELSE.

READ TABLE lt_vbls INDEX 1.

IF lt_vbls-vbeln_lif IS NOT INITIAL.

l_vbeln = lt_vbls-vbeln_lif.

ev_type = 'S'.

ev_msgtx = '创建成功'.

et_output-zitem = 1.

et_output-ztype = ev_type.

et_output-zmessage = l_vbeln.

APPEND et_output.

ENDIF.

ENDIF.

VL31N创建内向交货函数GN_DELIVERY_CREATE及增强字段相关推荐

  1. 【整理】内向交货(Inbound Delivery)

    内向交货(Inbound Delivery) 首先我们需要理解一个概念:内向交货和外向交货. 所谓外向交货(outbound delivery)是用在顾客与企业之间的交货单,多用于SD 模块: 而内向 ...

  2. SAP内向交货详解 Details on SAP inbound delivery

    内向交货单inbound delivery note---- VL31N/VL32N/VL33N   内向交货单:如果是采购那边的交货的话,一种是可以根据采购订单进行收货:一种是可以根据内向交货单进行 ...

  3. 关于通过使用BAPI创建销售订单(抬头信息中:含增强字段)

    通过bapi函数创建销售订单,并更新增强字段 1,为构造增强字段(BAPE_VBAK,BAPE_VBAKX,VBAK,VBAKKOM,) 2,增强标准程序:将增强的字段赋给标准程序 (FV45KFAK ...

  4. SAP SD VL31N BBP_INB_DELIVERY_CREATE 根据采购订单创建内向交货单

    本人诚心接ABAP远程开发任务,价格公道,有需要的联系我,欢迎个人,甲方爸爸,乙方私信联系. VL31N根据采购订单创建内向交货单 BBP_INB_DELIVERY_CREATE 代码示例 LS_HE ...

  5. SAP MM 公司间STO里交货单PGI之后自动触发内向交货单功能的实现

    SAP MM 公司间STO里交货单PGI之后自动触发内向交货单功能的实现 笔者所在的项目上的公司间STO的流程里,发货公司在做PGI之后系统自动触发收货公司的内向交货单.这个功能是通过交货单的Outp ...

  6. sap wm内向交货步骤_内向型人在数据科学中成功的五个有效步骤

    sap wm内向交货步骤 Just like most attributes of humans, including both the bright and dark sides, being an ...

  7. 内向交货和外向交货区别

    内向交货和外向交货区别 经查阅SAP的有关文献,出埠交货(outbound delivery)是用在顾客与企业之间的交货单,而入 埠交货(inbound delivery)则是用在供应商与企业之间的交 ...

  8. SAP QM 内向交货单包装的时候触发的检验批不能被自动取消?

    SAP QM 内向交货单包装的时候触发的检验批不能被自动取消? 如下的交货单 2500053233,包装完成后触发了三个检验批. 内向交货单并没有完成收货过账. Inspection lot 1000 ...

  9. SAP MM 带有Return标记的STO,不能创建内向交货单?

    SAP MM 带有'Return'标记的STO,不能创建内向交货单? 在研读所在项目上的global template文件里,笔者有留意这么一句话: The current version of ER ...

最新文章

  1. Android移动开发之【通往安卓的神奇之旅】Android的五大布局和AndroidManifest
  2. 征战蓝桥 —— 2014年第五届 —— C/C++A组第4题——史丰收速算
  3. [转] 移动平台Html5的viewport使用经验
  4. 项目管理(2):备战pmp
  5. c command语言学例子,乔姆斯基语言学理论发展史研究
  6. react之虚拟DOM的两种创建方式
  7. mysql订单详情的设计_订单功能模块设计与实现
  8. 给内部类对象数组属性赋值时报错:Exception in thread main java.lang.NullPointerException...
  9. jquery实现页面加载进度条(转)
  10. 如何用手机压缩JPG格式图片?一步轻松搞定
  11. 有密码的压缩包怎么解密
  12. springboot整合logback日志
  13. OpenGL ES EGL eglCreateContext
  14. 【nacos】com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
  15. 【微信朋友圈,如何测】
  16. AcWing - 寒假每日一题2023(DAY 11——DAY 15)
  17. 2021年R1快开门式压力容器操作考试题库及R1快开门式压力容器操作考试APP
  18. JavaScript 获取当前日期和三十天以前日期
  19. 光纤收发器的原理及应用_光纤收发器知识讲解(一)
  20. 分析自动化测试收益_分析自动化测试结果

热门文章

  1. 基于STM32单片机与wifi模块串口结合进行PC端或手机端无线通信(附项目资料包)
  2. 客户端dmesg_linux命令行安装oracle客户端 - 卡饭网
  3. 【NLP】BERT语言模型
  4. SpringBoot的pom.xml中parent和starter的区别
  5. 关于自然数集N到素数集P的一个单射的三种构造
  6. 生物传感器相关概念简述(一)
  7. 字节跳动发布独立业务品牌「大力教育」,陈林出任CEO
  8. 一个毕业两年IT民工
  9. C#中 MD5加密,解密
  10. 淘宝网及新浪网等几大官方IP查询API接口地址库的调用及使用方法教程