【ABAP系列】SAP ABAP BAPI_REQUISITION_CREATE创建采购申请
前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
最近一个开发,在eban里追加了字段,
调用bapi赋值总是赋不进去
后来发现找的结构名称不对,
是:BAPI_TE_REQUISITION_ITEM 不是BAPI_TE_MEREQITEM
实例代码如下:
REPORT zlm_pr_create.
DATA: pr_item LIKE TABLE OF bapiebanc WITH HEADER LINE,
pr_account LIKE TABLE OF bapiebkn WITH HEADER LINE,
pr_item_id LIKE TABLE OF bapiebantx WITH HEADER LINE,
pr_return LIKE TABLE OF bapireturn WITH HEADER LINE.
DATA: l_return LIKE pr_return.
DATA: extensionin TYPE TABLE OF bapiparex WITH HEADER LINE .
DATA: lw_itm TYPE bapi_te_requisition_item.
DATA: matnr TYPE matnr.
DATA: pr_no TYPE bapiebanc-preq_no.
START-OF-SELECTION.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = '500000004'
IMPORTING
output = matnr.
pr_item-doc_type = 'NB'. "凭证类型
pr_item-preq_item = '00010'. "项目
pr_item-material = matnr. "商品代码
pr_item-quantity = 1. "数量
pr_item-deliv_date = '20130819'. "交货日期
pr_item-plant = 'BA01'. "工厂
pr_item-pur_group = 'B02'. "采购组
pr_item-c_amt_bapi = 100. "评估价格
APPEND pr_item.
CLEAR pr_item.
lw_itm-csid = '991'.
lw_itm-preq_item = '00010'.
extensionin-structure = 'BAPI_TE_REQUISITION_ITEM'.
extensionin-valuepart1 = lw_itm.
APPEND extensionin.
CALL FUNCTION 'BAPI_REQUISITION_CREATE'
IMPORTING
number = pr_no
TABLES
requisition_items = pr_item
requisition_account_assignment = pr_account
requisition_item_text = pr_item_id
return = pr_return
extensionin = extensionin[].
LOOP AT pr_return WHERE type = 'E' OR type = 'A'.
ENDLOOP.
FREE pr_item.
FREE pr_account.
FREE pr_item_id.
FREE pr_return.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决