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

using function module "rv_condition_copy"

Former Member
0 Likes
1,014

pls help me out in using the FM "rv_condition_copy"...... the problem is that when i m using it in a report and passing it "valid on" and "valid to" to change dates of an existing record of in tables "A880" , it creates a new record along with the existing one .....pls help me out that wat all parameters shud i pass so that it doesnt create d above problem ...

Message was edited by:

swapnil kubal

Message was edited by:

swapnil kubal

3 REPLIES 3
Read only

Former Member
0 Likes
565

Try using the fm RV_CONDITION_FIELD_CHANGE instead.

Regards,

Ravi

Read only

Former Member
0 Likes
565

Hi,

Look at the below thread ....

Regards

Sudheer

Read only

Former Member
0 Likes
565

Swapnil,

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.