創(chuàng)建定價例程vk11的bapi會報錯

vk13查詢dump

內(nèi)部錯誤:T IVAKE F IVAKE_INSERT I MV130F0I

VK067

通過查看底表是那個日期重復(fù)了

解決辦法就是VK11,就是把這個日期給重新覆蓋點,原來是20230506到20230606然后中間還有一條20230510到20230610

Vk11創(chuàng)建20230101到20231010,覆蓋這段時間就可以了

這個是因為調(diào)用bapi的BAPI_PRICES_CONDITONS導(dǎo)致日期重復(fù)會報錯

使用另一個bapi不報錯RV_CONDITION_COPY

LOOP AT GT_REQ INTO GS_REQ.

? ? GS_RES-MATNR = GS_REQ-MATNR.

? ? LV_MATNR = GS_REQ-MATNR.

? ? LV_MATNR = |{ LV_MATNR ALPHA = IN }|.

? ? GS_REQ-MATNR = LV_MATNR.

? ? SELECT COUNT(*) FROM MARA WHERE MATNR = @GS_REQ-MATNR INTO @DATA(LV_CNT) .

? ? IF LV_CNT = 1."查詢到數(shù)據(jù)

? ? ? SELECT SINGLE *

? ? ? INTO @DATA(LS_A901)

? ? ? ? ? ? FROM A901

? ? ? ? ? ? WHERE KAPPL = 'V'? AND KSCHL = @GS_REQ-KSCHL

? ? ? ? ? ? AND MATNR = @GS_REQ-MATNR

? ? ? ? ? ? AND DATBI = @GS_REQ-DATBI

? ? ? ? ? ? AND DATAB = @GS_REQ-DATAB.

? ? ? IF SY-SUBRC = 0.

? ? ? ? LV_MODE = 'B'.

? ? ? ELSE.

? ? ? ? LV_MODE = 'A'.

? ? ? ENDIF.

? ? ? CLEAR: LS_KEY_FIELDS.

? ? ? "? LS_KEY_FIELDS-VKORG = IS_INPUT-VKORG.? " 銷售組織

? ? ? "? LS_KEY_FIELDS-VTWEG = IS_INPUT-VTWEG.? " 分銷渠道

? ? ? "? LS_KEY_FIELDS-KUNNR = IS_INPUT-KUNNR.? " 客戶

? ? ? LS_KEY_FIELDS-MATNR = GS_REQ-MATNR.? " 物料號

? ? ? CLEAR LS_COPY_RECORDS.

? ? ? " condtion fields

? ? ? LS_COPY_RECORDS-KOPOS = '01'.? ? ? ? ? " 條件的序列號

? ? ? LS_COPY_RECORDS-KSCHL = GS_REQ-KSCHL. " 條件類型

? ? ? LS_COPY_RECORDS-KAPPL = 'V'.? ? ? ? ? ? " 應(yīng)用程序

? ? ? LS_COPY_RECORDS-WAERS = GS_REQ-KONWA. " 貨幣碼

? ? ? LS_COPY_RECORDS-KMEIN = GS_REQ-KMEIN. " 單位

? ? ? LS_COPY_RECORDS-KBETR = GS_REQ-KBETR. " 金額

? ? ? LS_COPY_RECORDS-KPEIN = GS_REQ-KPEIN.? ? ? ? " 條件定價單位

? ? ? " ls_copy_records-stfkz = 'A'.? ? ? ? ? ? " 等級類型

? ? ? LS_COPY_RECORDS-KRECH = 'C'.? ? ? ? ? ? " 條件的計算類型

? ? ? APPEND LS_COPY_RECORDS TO LT_COPY_RECORDS.

? ? ? CALL FUNCTION 'RV_CONDITION_RESET'.

? ? ? CALL FUNCTION 'RV_CONDITION_COPY'

? ? ? ? EXPORTING

? ? ? ? ? APPLICATION? ? ? ? ? ? ? ? = 'V'

? ? ? ? ? CONDITION_TABLE? ? ? ? ? ? = '901'

? ? ? ? ? CONDITION_TYPE? ? ? ? ? ? ? = GS_REQ-KSCHL

? ? ? ? ? DATE_FROM? ? ? ? ? ? ? ? ? = GS_REQ-DATAB

? ? ? ? ? DATE_TO? ? ? ? ? ? ? ? ? ? = GS_REQ-DATBI

? ? ? ? ? KEY_FIELDS? ? ? ? ? ? ? ? ? = LS_KEY_FIELDS

? ? ? ? ? MAINTAIN_MODE? ? ? ? ? ? ? = LV_MODE? ? ? ? ? ? "A:創(chuàng)建? B:更新

? ? ? ? ? OVERLAP_CONFIRMED? ? ? ? ? = 'X'

? ? ? ? ? USED_BY_IDOC? ? ? ? ? ? ? ? = 'X'

? ? ? ? ? KEEP_OLD_RECORDS? ? ? ? ? ? = 'X'

*? ? ? IMPORTING

*? ? ? ? e_komk? ? ? ? ? ? ? ? ? ? ? = ls_komk

*? ? ? ? e_komp? ? ? ? ? ? ? ? ? ? ? = ls_komp

*? ? ? ? new_record? ? ? ? ? ? ? ? ? = lv_record

? ? ? ? TABLES

? ? ? ? ? COPY_RECORDS? ? ? ? ? ? ? ? = LT_COPY_RECORDS

*? ? ? ? copy_staffel? ? ? ? ? ? ? ? = lt_copy_staffel

? ? ? ? EXCEPTIONS

? ? ? ? ? ENQUEUE_ON_RECORD? ? ? ? ? = 1

? ? ? ? ? INVALID_APPLICATION? ? ? ? = 2

? ? ? ? ? INVALID_CONDITION_NUMBER? ? = 3

? ? ? ? ? INVALID_CONDITION_TYPE? ? ? = 4

? ? ? ? ? NO_AUTHORITY_EKORG? ? ? ? ? = 5

? ? ? ? ? NO_AUTHORITY_KSCHL? ? ? ? ? = 6

? ? ? ? ? NO_AUTHORITY_VKORG? ? ? ? ? = 7

? ? ? ? ? NO_SELECTION? ? ? ? ? ? ? ? = 8

? ? ? ? ? TABLE_NOT_VALID? ? ? ? ? ? = 9

? ? ? ? ? NO_MATERIAL_FOR_SETTLEMENT? = 10

? ? ? ? ? NO_UNIT_FOR_PERIOD_COND? ? = 11

? ? ? ? ? NO_UNIT_REFERENCE_MAGNITUDE = 12

? ? ? ? ? INVALID_CONDITION_TABLE? ? = 13

? ? ? ? ? OTHERS? ? ? ? ? ? ? ? ? ? ? = 14.

? ? ? IF SY-SUBRC = 0.

? ? ? ? " Commit and Get Condition NO.

? ? ? ? CALL FUNCTION 'RV_CONDITION_SAVE'

? ? ? ? ? TABLES

? ? ? ? ? ? KNUMH_MAP = LT_KNUMH_COMP.

? ? ? ? CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

? ? ? ? ? EXPORTING

? ? ? ? ? ? WAIT = 'X'.

? ? ? ? CALL FUNCTION 'RV_CONDITION_RESET'.

? ? ? ? READ TABLE LT_KNUMH_COMP INTO LS_KNUMH_COMP INDEX 1.

? ? ? ? IF SY-SUBRC = 0 AND LS_KNUMH_COMP-KNUMH_NEW IS NOT INITIAL.

? ? ? ? ? GS_RES-MSGTX = LS_KNUMH_COMP-KNUMH_NEW.

? ? ? ? ? GS_RES-Msgty? ? = 'S'.

? ? ? ? ELSE.

? ? ? ? ? IF LV_MODE EQ 'A'.

? ? ? ? ? ? IF SY-MSGTY EQ ''.

? ? ? ? ? ? ? GS_RES-MSGTX = '創(chuàng)建失敗'.

? ? ? ? ? ? ELSE.

? ? ? ? ? ? ? MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

? ? ? ? ? ? ? WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4

? ? ? ? ? ? ? INTO GS_RES-MSGTX.

? ? ? ? ? ? ENDIF.

? ? ? ? ? ? GS_RES-Msgty? ? = 'E'.

? ? ? ? ? ELSE.

? ? ? ? ? ? GS_RES-MSGTX = '修改成功'.

? ? ? ? ? ? GS_RES-Msgty? ? = 'S'.

? ? ? ? ? ENDIF.

? ? ? ? ENDIF.

? ? ? ELSE.

? ? ? ? IF SY-MSGTY EQ ''.

? ? ? ? ? GS_RES-MSGTX = '失敗'.

? ? ? ? ELSE.

? ? ? ? ? MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

? ? ? ? ? WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4

? ? ? ? ? INTO GS_RES-MSGTX.

? ? ? ? ENDIF.

? ? ? ? GS_RES-Msgty? ? = 'E'.

? ? ? ENDIF.

? ? ? APPEND GS_RES TO Gt_RES.

? ? ELSE.

? ? ? GS_RES-Msgty = 'E'.

? ? ? GS_RES-MSGTX = '該物料不存在請檢查后再傳輸'.

? ? ? APPEND GS_RES TO Gt_RES.

? ? ENDIF.

? ? CLEAR:GS_REQ.

? ENDLOOP.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容