Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

RV_CONDITION_COPY

Former Member
0 Likes
679

Hallo experts,

I need help on creating / changing conditions in inforecords (in ME12 transaction) using RV_CONDITION_COPY .

Please help.

Thanks in advance.

Matt

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
547

Check if the below code can help you: U can try like this CONSTANTS: CON_A(1) TYPE C VALUE 'A', CON_B(1) TYPE C VALUE 'B', CON_C TYPE C VALUE 'C', CON_D TYPE C VALUE 'D', CON_E TYPE C VALUE 'E', CON_F TYPE C VALUE 'F', CON_G TYPE C VALUE 'G', CON_K TYPE C VALUE 'K', CON_T TYPE C VALUE 'T', CON_S(1) TYPE C VALUE 'S', CON_V LIKE T681A-KAPPL VALUE 'V', CON_X TYPE C VALUE 'x', CON_XX TYPE C VALUE 'X', CON_T074 LIKE T681-KOTABNR VALUE '074', CON_PREF LIKE T685A-KSCHL VALUE 'PREF', CON_ULTIMO LIKE RV13A-DATAB VALUE '99991231', CON_DATA_LOG_NAME(8) TYPE C VALUE 'PREF', CON_ERROR_LOG_NAME(8) TYPE C VALUE 'ERROR', CON_CUSTOM_LOG_NAME(8) TYPE C VALUE 'P_CUSTOM'. * Verkaufsmengeneinheit PERFORM f3_vkme_ermitteln. * Hauswährung IF t001w-werks NE cstmat-werks. PERFORM f3_waehrung_ermitteln USING cstmat-werks. ENDIF. * pro Zollgebiet Konditionssatz anlegen LOOP AT t_matwerte. CHECK t_matwerte-noupd_cond IS INITIAL. CLEAR: komk, komp, komg, w_komv. REFRESH w_komv. * Schlüssel füllen komg-werks = w_marc-werks. komg-matnr = w_marc-matnr. komg-gzolx = t_matwerte-gzolx. komg-land1 = t001w-land1. "101298 * Preisinfo füllen w_komv-kappl = 'V '. w_komv-kschl = con_pref. IF t_matwerte-kp = kp_max. w_komv-kpein = 1. MOVE kp_max TO w_komv-kbetr. ELSE. w_komv-kpein = pm_peinh. COMPUTE w_komv-kbetr = t_matwerte-kp * pm_peinh / hlp_ameng. ENDIF. IF w_komv-kbetr = 0. COMPUTE w_komv-kbetr = 1 / 100 * -1. ENDIF. w_komv-waers = t001-waers. w_komv-kmein = hlp_ame. APPEND w_komv. CHECK f3_kz_update_cond IS INITIAL OR NOT pm_simu IS INITIAL. IF NOT pm_mdmps IS INITIAL. MOVE komg-werks TO bg_kond-werks. MOVE komg-matnr TO bg_kond-matnr. MOVE komg-gzolx TO bg_kond-gzolx. MOVE w_komv-kpein TO bg_kond-kpein. MOVE w_komv-kbetr TO bg_kond-kbetr. MOVE w_komv-kmein TO bg_kond-kmein. MOVE w_komv-waers TO bg_kond-waers. *{ REPLACE D20K904946 1 * APPEND bg_kond. * Siemens: Fehlerkorektur SAP-Standard READ TABLE BG_KOND TRANSPORTING NO FIELDS WITH KEY WERKS = BG_KOND-WERKS MATNR = BG_KOND-MATNR GZOLX = BG_KOND-GZOLX BINARY SEARCH. INSERT BG_KOND INDEX SY-TABIX. *} REPLACE ENDIF. CHECK f3_kz_update_cond IS INITIAL. CALL FUNCTION 'RV_CONDITION_COPY' EXPORTING application = con_v condition_table = con_t074 "Konditionstabelle condition_type = con_pref "Konditionsart date_from = sy-datlo "Von jetzt an date_to = con_ultimo "Bis Ultimo enqueue = 'X' "Sperren ist besser i_komk = komk i_komp = komp key_fields = komg "Schlüssel maintain_mode = 'A' "Lieber A als B no_authority_check = 'X' "X wie nix keep_old_records = ' ' OVERLAP_CONFIRMED = 'X' IMPORTING e_komk = komk e_komp = komp new_record = i_new_record TABLES copy_records = w_komv EXCEPTIONS enqueue_on_record = 01 invalid_application = 02 invalid_condition_number = 03 invalid_condition_type = 04 no_authority_ekorg = 05 no_authority_kschl = 06 no_authority_vkorg = 07 no_selection = 08 table_not_valid = 09. CASE sy-subrc. WHEN 0. WHEN OTHERS. * MESSAGE A??? ENDCASE. CALL FUNCTION 'RV_CONDITION_SAVE'. CALL FUNCTION 'RV_CONDITION_RESET'. ENDLOOP.

Hallo experts,

I need help on creating / changing conditions in inforecords (in ME12 transaction) using RV_CONDITION_COPY .

Please help.

Thanks in advance.

Matt

1 REPLY 1
Read only

Former Member
0 Likes
548

Check if the below code can help you: U can try like this CONSTANTS: CON_A(1) TYPE C VALUE 'A', CON_B(1) TYPE C VALUE 'B', CON_C TYPE C VALUE 'C', CON_D TYPE C VALUE 'D', CON_E TYPE C VALUE 'E', CON_F TYPE C VALUE 'F', CON_G TYPE C VALUE 'G', CON_K TYPE C VALUE 'K', CON_T TYPE C VALUE 'T', CON_S(1) TYPE C VALUE 'S', CON_V LIKE T681A-KAPPL VALUE 'V', CON_X TYPE C VALUE 'x', CON_XX TYPE C VALUE 'X', CON_T074 LIKE T681-KOTABNR VALUE '074', CON_PREF LIKE T685A-KSCHL VALUE 'PREF', CON_ULTIMO LIKE RV13A-DATAB VALUE '99991231', CON_DATA_LOG_NAME(8) TYPE C VALUE 'PREF', CON_ERROR_LOG_NAME(8) TYPE C VALUE 'ERROR', CON_CUSTOM_LOG_NAME(8) TYPE C VALUE 'P_CUSTOM'. * Verkaufsmengeneinheit PERFORM f3_vkme_ermitteln. * Hauswährung IF t001w-werks NE cstmat-werks. PERFORM f3_waehrung_ermitteln USING cstmat-werks. ENDIF. * pro Zollgebiet Konditionssatz anlegen LOOP AT t_matwerte. CHECK t_matwerte-noupd_cond IS INITIAL. CLEAR: komk, komp, komg, w_komv. REFRESH w_komv. * Schlüssel füllen komg-werks = w_marc-werks. komg-matnr = w_marc-matnr. komg-gzolx = t_matwerte-gzolx. komg-land1 = t001w-land1. "101298 * Preisinfo füllen w_komv-kappl = 'V '. w_komv-kschl = con_pref. IF t_matwerte-kp = kp_max. w_komv-kpein = 1. MOVE kp_max TO w_komv-kbetr. ELSE. w_komv-kpein = pm_peinh. COMPUTE w_komv-kbetr = t_matwerte-kp * pm_peinh / hlp_ameng. ENDIF. IF w_komv-kbetr = 0. COMPUTE w_komv-kbetr = 1 / 100 * -1. ENDIF. w_komv-waers = t001-waers. w_komv-kmein = hlp_ame. APPEND w_komv. CHECK f3_kz_update_cond IS INITIAL OR NOT pm_simu IS INITIAL. IF NOT pm_mdmps IS INITIAL. MOVE komg-werks TO bg_kond-werks. MOVE komg-matnr TO bg_kond-matnr. MOVE komg-gzolx TO bg_kond-gzolx. MOVE w_komv-kpein TO bg_kond-kpein. MOVE w_komv-kbetr TO bg_kond-kbetr. MOVE w_komv-kmein TO bg_kond-kmein. MOVE w_komv-waers TO bg_kond-waers. *{ REPLACE D20K904946 1 * APPEND bg_kond. * Siemens: Fehlerkorektur SAP-Standard READ TABLE BG_KOND TRANSPORTING NO FIELDS WITH KEY WERKS = BG_KOND-WERKS MATNR = BG_KOND-MATNR GZOLX = BG_KOND-GZOLX BINARY SEARCH. INSERT BG_KOND INDEX SY-TABIX. *} REPLACE ENDIF. CHECK f3_kz_update_cond IS INITIAL. CALL FUNCTION 'RV_CONDITION_COPY' EXPORTING application = con_v condition_table = con_t074 "Konditionstabelle condition_type = con_pref "Konditionsart date_from = sy-datlo "Von jetzt an date_to = con_ultimo "Bis Ultimo enqueue = 'X' "Sperren ist besser i_komk = komk i_komp = komp key_fields = komg "Schlüssel maintain_mode = 'A' "Lieber A als B no_authority_check = 'X' "X wie nix keep_old_records = ' ' OVERLAP_CONFIRMED = 'X' IMPORTING e_komk = komk e_komp = komp new_record = i_new_record TABLES copy_records = w_komv EXCEPTIONS enqueue_on_record = 01 invalid_application = 02 invalid_condition_number = 03 invalid_condition_type = 04 no_authority_ekorg = 05 no_authority_kschl = 06 no_authority_vkorg = 07 no_selection = 08 table_not_valid = 09. CASE sy-subrc. WHEN 0. WHEN OTHERS. * MESSAGE A??? ENDCASE. CALL FUNCTION 'RV_CONDITION_SAVE'. CALL FUNCTION 'RV_CONDITION_RESET'. ENDLOOP.