2020-08-24 01:52发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
是否存在用于创建VENDOR的BAPI或功能模块
QUOTATION(ME41)。 我需要向SAP系统写询盘。
有人可以帮助我吗?
问候,
说
您好,
您可以使用此BAPI BAPI_VENDOR_CREATE 。
希望这会有所帮助。
此致 p>
渡轮联队
您可以使用FM:BS01_MM_QUOTATION_CREATE
示例代码:
METHOD CREATE_QUOTATION。 * ---------------------------------------- ------------------------------ * *数据定义 * --------- -------------------------------------------------- ----------- * 数据: L_QUOTATION类型BAPIEKKOC-PO_NUMBER, L_CNT_I类型EBELP。 * ---------- -------------------------------------------------- ---------- * *常量定义 * ----------------------------- ----------------------------------------- * 常量: L_C_INDXKEY类型INDX-SRTFD值'ARIBA_RFQ', L_C_ZA类型相关值'ZA'。 * ---------------------- ------------------------------------------------ * < br> *内部表和工作区定义 * -------------------------------------- -------------------------------- * 数据: BS01MMITEM的IT_ITEMS类型标准表, BS01MMSCHEDULE的IT_SCHEDULES类型标准表, BAPIPAREX的IT_EXTN类型标准表, L_WA_EXTN TYPE BAPIPAREX, IT_RETURN类型BAPIRET2_T, IT_ERRORS类型EHFND T_SBJ_SRC_T100_KEYS。 在C_INPUT_TAB分配字段符号()处循环。 *-填充日志标题-* 附加值#(MSGID = C_MSGID MSGNO ='160 ' ATTR1 = -SUPPLIERCODE ATTR2 = -ITEMCODE)到G_ERRORS。 *-验证是否存在任何具有相同物料代码和供应商的现有询价-* IF LINE_EXISTS(G_QUOTATION [SUPPLIER = -SUPPLIERCODE ITEM = -ITEMCODE])。 IF -ETP> SYDATUM。 APPID = C(MSID = C MSGNO ='000' ATTR1 = TEXT-001 ATTR2 = TEXT-002 ATTR3 = TEXT-003)到G_ERRORS。继续。 ENDIF。 ENDIF 。 *-填充标题-* L_CNT_I = L_CNT_I + 10. DATA(L_WA_HEADER)=值BS01MMHEAD( CO_CODE = C_1000 DOC_CAT = C_A DOC_TYPE ='ZH20' DOC_DATE = -STARTMONTH CREATED_ON = -STARTMONTH ITEM_INTVL = C_0010 供应商= -SUPPLIERCODE PURCH_OR = PUR_GROUP = C_ A01 QUOT_DEAD = -ETP MAST_COND = ABAP_TRUE 语言=值#(G_SUPPLIER [SUPPLIER = -SUPPLIERCODE] -SUPPLIER 默认空间*)-)。 -填充项-* DATA(L_WA_ITEMS)=值BS01MMITEM( DOC_ITEM = L_CNT_I SHORT_TEXT = -ITEMCODE CO_CODE = C_1000 植物= C_1000 MAT_GRP = '01' TARGET_QTY = C_9999 QUANTITY = C_9999 UNIT = C_TAG ACCTASSCAT ='U')。将L_WA_ITEMS追加到IT_ITEMS。 *-填写时间表 行-* DATA(L_WA_SCHEDULES)=值BS01MMSCHEDULE( DOC_ITEM = L_CNT_I SERIAL_NO =`` DEL_DATCAT ='1' DELIV_DATE = -ETP QUANT = C_9999 CREATE_IND = C_R DEL_DATCAT_EXT = C_D)。将L_WA_SCHEDULES附加到IT_SCHEDULES。 *-调用FM创建RFQ-* 调用功能' BS01_MM_QUOTATION_CREATE'导出 QUOTATION_HEADER = L_WA_HEADER SKIP_ITEMS_WITH_ERROR = ABAP_TRUE 导入报价= L_QUOTATION 表格 QUOTATION_ITEMS = IT_ITEMS QUOTATION_ITEM_SCHEDULES = IT_SCHEDULES RETURN = IT_RETURN EXTENSIONIN = IT_EXTN。如果L_QUOTATION不是初始的。 *-填写成功消息-* 附录 VALUE#(MSGID = C_MSGID MSGNO ='161' ATTR1 = L_QUOTATION)到G_ERRORS。 ELSE。 *-填写错误消息-* IT_ERRORS = VALUE#(FOR L_WA_RETURN IN IT_RETURN (MSGID = L_WA_RETURN-ID MSGNO = L_WA_RETURN-NUMBER ATTR1 = L_WA_RETURN-MESSAGE_V1 ATTR2 = L_WA_RETURN-MESSAGE_V2 ATTR3 = L_WA_RETURN-M -MESSAGE_V4))。将IT_ERRORS的行追加到G_ERRORS。 ENDIF。 清除: L_WA_HEADER,L_QUOTATION,IT_ITEMS,IT_SCHEDULES,IT_ERRORS,IT_RETURN,IT_EXTN。 > ENDLOOP。 ENDMETHOD。
嗨,渡轮,
感谢您的回答。 但是我需要Bapi或Function来插入报价单,而不是供应商! 这是交易代码ME41(供应商报价)。
有人可以帮我吗?
使用功能模块BAPI_REQUISITION_CREATE。
嗨,
检查下面提到的BAPI。/p>
BAPI_QUOTATION_CREATEFROMDATA
请注意,
Vara
我在此处附加示例代码。
您可以使用REQUISITION_ITEMS-DOC_TYPE传递DOC_TYPE参数。
设置请购单
清除ATB_REQ_ITEM。
刷新ATB_REQ_ITEM。
禁令。
如果BAN-MAT_GRP ='020004'。
BAN-GR_IND =''。
ELSE。
BAN-GR_IND ='X'。
ENDIF。
BAN-IR_IND ='X'。
BAN-MATERIAL = BAN-PUR_MAT。
禁令分配='X'。
如果BAN-DOC_TYPE ='YC'。 "对于确认订单,采用要求价格
BAN-PO_PRICE ='2'。
将禁令移动到ATB_REQ_ITEM。
APPEND ATB_REQ_ITEM。
ENDLOOP。
设置请购单会计信息
清除ATB_REQ_ITEM_ACCT。
刷新ATB_REQ_ITEM_ACCT。
在BSC上环游
将BSC移动到ATB_REQ_ITEM_ACCT。
如果要强制执行错误,请取消注释以下代码。
如果sy-tabix = 2。
atb_req_item_acct-g_l_acct ='xxxxx'。
APPEND ATB_REQ_ITEM_ACCT。
设置请购单文本信息
清除ATB_REQ_ITEM_TEXT。
刷新ATB_REQ_ITEM_TEXT。
在BANTX环游。
如果不是BANTX-TEXT_LINE是INITIAL,那么。
将对应的BANTX移动到ATB_REQ_ITEM_TEXT。
APPEND ATB_REQ_ITEM_TEXT。
清除ATB_RETURN。
刷新ATB_RETURN。
Aufruf BAPI zum Erzeugen der Bestellanforderung
通话功能'BAPI_REQUISITION_CREATE'
导入
NUMBER = H_BANFN
表格
REQUISITION_ITEMS = ATB_REQ_ITEM
REQUISITION_ACCOUNT_ASSIGNMENT = ATB_REQ_ITEM_ACCT
REQUISITION_ITEM_TEXT = ATB_REQ_ITEM_TEXT
RETURN = ATB_RETURN
例外情况
OTHERS = 0。
最多设置5个标签!
您好,
您可以使用此BAPI BAPI_VENDOR_CREATE 。
希望这会有所帮助。
此致 p>
渡轮联队
您可以使用FM:BS01_MM_QUOTATION_CREATE
示例代码:
METHOD CREATE_QUOTATION。
)处循环。 -SUPPLIERCODE -ITEMCODE)到G_ERRORS。
-SUPPLIERCODE -ITEMCODE])。 -ETP> SYDATUM。
-STARTMONTH -STARTMONTH -SUPPLIERCODE -ETP -SUPPLIERCODE] -SUPPLIER -ITEMCODE
-ETP QUANT = C_9999
* ---------------------------------------- ------------------------------ *
*数据定义
* --------- -------------------------------------------------- ----------- *
数据:
L_QUOTATION类型BAPIEKKOC-PO_NUMBER,
L_CNT_I类型EBELP。
* ---------- -------------------------------------------------- ---------- *
*常量定义
* ----------------------------- ----------------------------------------- *
常量:
L_C_INDXKEY类型INDX-SRTFD值'ARIBA_RFQ',
L_C_ZA类型相关值'ZA'。
* ---------------------- ------------------------------------------------ * < br> *内部表和工作区定义
* -------------------------------------- -------------------------------- *
数据:
BS01MMITEM的IT_ITEMS类型标准表,
BS01MMSCHEDULE的IT_SCHEDULES类型标准表,
BAPIPAREX的IT_EXTN类型标准表,
L_WA_EXTN TYPE BAPIPAREX,
IT_RETURN类型BAPIRET2_T,
IT_ERRORS类型EHFND T_SBJ_SRC_T100_KEYS。
在C_INPUT_TAB分配字段符号(
*-填充日志标题-*
附加值#(MSGID = C_MSGID
MSGNO ='160 '
ATTR1 =
ATTR2 =
*-验证是否存在任何具有相同物料代码和供应商的现有询价-*
IF LINE_EXISTS(G_QUOTATION [SUPPLIER =
ITEM =
IF
APPID = C(MSID = C
MSGNO ='000'
ATTR1 = TEXT-001
ATTR2 = TEXT-002
ATTR3 = TEXT-003)到G_ERRORS。
继续。
ENDIF。
ENDIF 。
*-填充标题-*
L_CNT_I = L_CNT_I + 10.
DATA(L_WA_HEADER)=值BS01MMHEAD(
CO_CODE = C_1000
DOC_CAT = C_A
DOC_TYPE ='ZH20'
DOC_DATE =
CREATED_ON =
ITEM_INTVL = C_0010
供应商=
PURCH_OR = PUR_GROUP = C_ A01
QUOT_DEAD =
MAST_COND = ABAP_TRUE
语言=值#(G_SUPPLIER [SUPPLIER =
默认空间*)-)。 -填充项-*
DATA(L_WA_ITEMS)=值BS01MMITEM(
DOC_ITEM = L_CNT_I
SHORT_TEXT =
CO_CODE = C_1000
植物= C_1000
MAT_GRP = '01'
TARGET_QTY = C_9999
QUANTITY = C_9999
UNIT = C_TAG
ACCTASSCAT ='U')。
将L_WA_ITEMS追加到IT_ITEMS。
*-填写时间表 行-*
DATA(L_WA_SCHEDULES)=值BS01MMSCHEDULE(
DOC_ITEM = L_CNT_I
SERIAL_NO =``
DEL_DATCAT ='1'
DELIV_DATE =
CREATE_IND = C_R
DEL_DATCAT_EXT = C_D)。
将L_WA_SCHEDULES附加到IT_SCHEDULES。
*-调用FM创建RFQ-*
调用功能' BS01_MM_QUOTATION_CREATE'
导出
QUOTATION_HEADER = L_WA_HEADER
SKIP_ITEMS_WITH_ERROR = ABAP_TRUE
导入
报价= L_QUOTATION
表格
QUOTATION_ITEMS = IT_ITEMS
QUOTATION_ITEM_SCHEDULES = IT_SCHEDULES
RETURN = IT_RETURN
EXTENSIONIN = IT_EXTN。
如果L_QUOTATION不是初始的。
*-填写成功消息-*
附录 VALUE#(MSGID = C_MSGID
MSGNO ='161'
ATTR1 = L_QUOTATION)到G_ERRORS。
ELSE。
*-填写错误消息-*
IT_ERRORS = VALUE#(FOR L_WA_RETURN IN IT_RETURN
(MSGID = L_WA_RETURN-ID
MSGNO = L_WA_RETURN-NUMBER
ATTR1 = L_WA_RETURN-MESSAGE_V1
ATTR2 = L_WA_RETURN-MESSAGE_V2
ATTR3 = L_WA_RETURN-M -MESSAGE_V4))。
将IT_ERRORS的行追加到G_ERRORS。
ENDIF。
清除:
L_WA_HEADER,L_QUOTATION,IT_ITEMS,IT_SCHEDULES,IT_ERRORS,IT_RETURN,IT_EXTN。
> ENDLOOP。
ENDMETHOD。
嗨,渡轮,
感谢您的回答。 但是我需要Bapi或Function来插入报价单,而不是供应商! 这是交易代码ME41(供应商报价)。
有人可以帮我吗?
使用功能模块BAPI_REQUISITION_CREATE。
嗨,
检查下面提到的BAPI。/p>
BAPI_QUOTATION_CREATEFROMDATA
请注意,
Vara
我在此处附加示例代码。
您可以使用REQUISITION_ITEMS-DOC_TYPE传递DOC_TYPE参数。
设置请购单
清除ATB_REQ_ITEM。
刷新ATB_REQ_ITEM。
禁令。
如果BAN-MAT_GRP ='020004'。
BAN-GR_IND =''。
ELSE。
BAN-GR_IND ='X'。
ENDIF。
BAN-IR_IND ='X'。
BAN-MATERIAL = BAN-PUR_MAT。
禁令分配='X'。
如果BAN-DOC_TYPE ='YC'。 "对于确认订单,采用要求价格
BAN-PO_PRICE ='2'。
ENDIF。
将禁令移动到ATB_REQ_ITEM。
APPEND ATB_REQ_ITEM。
ENDLOOP。
设置请购单会计信息
清除ATB_REQ_ITEM_ACCT。
刷新ATB_REQ_ITEM_ACCT。
在BSC上环游
将BSC移动到ATB_REQ_ITEM_ACCT。
如果要强制执行错误,请取消注释以下代码。
如果sy-tabix = 2。
atb_req_item_acct-g_l_acct ='xxxxx'。
ENDIF。
APPEND ATB_REQ_ITEM_ACCT。
ENDLOOP。
设置请购单文本信息
清除ATB_REQ_ITEM_TEXT。
刷新ATB_REQ_ITEM_TEXT。
在BANTX环游。
如果不是BANTX-TEXT_LINE是INITIAL,那么。
将对应的BANTX移动到ATB_REQ_ITEM_TEXT。
APPEND ATB_REQ_ITEM_TEXT。
ENDIF。
ENDLOOP。
清除ATB_RETURN。
刷新ATB_RETURN。
Aufruf BAPI zum Erzeugen der Bestellanforderung
通话功能'BAPI_REQUISITION_CREATE'
导入
NUMBER = H_BANFN
表格
REQUISITION_ITEMS = ATB_REQ_ITEM
REQUISITION_ACCOUNT_ASSIGNMENT = ATB_REQ_ITEM_ACCT
REQUISITION_ITEM_TEXT = ATB_REQ_ITEM_TEXT
RETURN = ATB_RETURN
例外情况
OTHERS = 0。
一周热门 更多>