DOC_TYPE TYPE BAPIMEREQHEADER-DOC_TYPE, "单据类型(默认 'NB')
PUR_ORG TYPE BAPIMEREQHEADER-PUR_ORG, "采购组织(如 '0001')
PUR_GROUP TYPE BAPIMEREQHEADER-PUR_GROUP, "采购组(如 '001')
DELIV_DATE TYPE BAPIMEREQHEADER-DELIV_DATE, "需求日期(必填)
PRITEM 关键字段
PREQ_ITEM TYPE BAPIMEREQITEM-PREQ_ITEM, "行号(建议 '00010' 递增)
MATERIAL TYPE BAPIMEREQITEM-MATERIAL, "物料编号(需存在主数据)
PLANT TYPE BAPIMEREQITEM-PLANT, "工厂(与采购组织分配一致)
QUANTITY TYPE BAPIMEREQITEM-QUANTITY, "数量(>0)
ACCTASSCAT TYPE BAPIMEREQITEM-ACCTASSCAT, "账户分配类型(如 'K'=成本中心)
2. 输出参数(Export Parameters)
参数名
结构类型
说明
PURCHASINGDOCUMENT
BAPIMEREQHEADER-PREQ_NO
生成的采购申请号(如 ‘4500000123’)
RETURN
BAPIRET2_T
执行结果消息(成功/错误明细)
三、调用示例与分步解析
1. ABAP 代码示例
DATA: ls_header TYPE BAPIMEREQHEADER,lt_pritem TYPE TABLE OF BAPIMEREQITEM,lt_praccount TYPE TABLE OF BAPIMEREQACCOUNT,lt_return TYPE TABLE OF BAPIRET2,lv_preq_no TYPE BAPIMEREQHEADER-PREQ_NO.* 1. 抬头信息配置
ls_header = VALUE #(DOC_TYPE = 'NB' "采购申请类型PUR_ORG = '0001' "采购组织PUR_GROUP = '001' "采购组DELIV_DATE = sy-datum + 30 "30天后交货
).* 2. 行项目配置
APPEND VALUE #(PREQ_ITEM = '00010' "行号MATERIAL = 'MAT-1000' "物料号(需在MM01中存在)PLANT = '1000' "工厂QUANTITY = 5 "数量UNIT = 'EA' "单位ACCTASSCAT = 'K' "成本中心分配
) TO lt_pritem.* 3. 账户分配配置(若 ACCTASSCAT=K)
APPEND VALUE #(PREQ_ITEM = '00010' "关联行号CO_AREA = '1000' "控制范围COSTCENTER = 'KOSTEN_001' "成本中心(需在KS03激活)
) TO lt_praccount.* 4. 执行 BAPI
CALL FUNCTION 'BAPI_PR_CREATE'EXPORTINGPRHEADER = ls_headerIMPORTINGPURCHASINGDOCUMENT = lv_preq_noTABLESPRITEM = lt_pritemPRACCOUNT = lt_praccountRETURN = lt_return.* 5. 事务提交与错误处理
IF lt_return IS INITIAL.CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.WRITE: / 'PR Created:', lv_preq_no.
ELSE.CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.LOOP AT lt_return INTO DATA(ls_msg).WRITE: / ls_msg-type, ls_msg-message.ENDLOOP.
ENDIF.
在嵌入式 Linux 设备中,音频功能的实现离不开 Linux 声卡驱动。而 ALSA (Advanced Linux Sound Architecture) 作为 Linux 内核的音频框架,提供了一整套 API 和驱动模型,帮助开发者快速集成音频功能。本篇文章以 WM8960 音频编解码器…