2021 Apr 02 8:03 AM
REPORT zap_frieght_test.
" Data declaration for test Program
DATA : it_t685 LIKE t685,
it_t681 LIKE t681,
it_tmc1t LIKE tmc1t,
ls_komg LIKE komg,
ls_komk LIKE komk,
ls_komp LIKE komp,
lt_komv TYPE TABLE OF komv,
ls_komv LIKE komv,
lt_scale TYPE TABLE OF condscale,
ls_scale LIKE condscale,
t_komv_idoc LIKE TABLE OF komv_idoc WITH HEADER LINE.
" selection for Condition type
CALL FUNCTION 'SD_COND_T685_SELECT'
EXPORTING
cts_kappl = 'M'
cts_kschl = 'XXXX'
cts_kvewe = 'A'
IMPORTING
cts_t685 = it_t685.
" Details of Conditon table
CALL FUNCTION 'RV_GET_CONDITION_TABLES'
EXPORTING
access_sequence = it_t685-kozgf
application = 'M'
condition_type = 'XXXX' " Already enter a correct value
condition_use = 'A'
* DISPLAY_ALWAYS = ' '
get_text = 'X'
* LIKE_PF4 = ' '
* NO_PICKUP = ' '
* TABLE_STATUS = ' '
* TABLE_CHECK_RULE = ' '
table_generate = 'X'
IMPORTING
table_t681 = it_t681
table_tmc1t = it_tmc1t
EXCEPTIONS
invalid_condition_type = 1
missing_parameter = 2
no_selection_done = 3
no_table_found = 4
table_not_valid = 5
OTHERS = 6.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
*cr–kopos = 1.
*cr–kzbzg = ‘C’.
*cr–konms = ‘EA’.
*cr–stfkz = ‘A’.
*APPEND cr.
*
** – Fill Scales
**- Scale Item 1
*copy_staffel–klfn1 = ‘0001’.
*copy_staffel–kopos = ’01’.
*copy_staffel–kstbm = ‘1’.
*copy_staffel–kbetr = ’21’. ” Scale Price
*copy_staffel–kzbzg = ‘C’.
*copy_staffel–rv13akonwa = ‘EUR’.
*copy_staffel–konpkmein = ‘EA’.
*copy_staffel–konpkonms = ‘EA’
ls_komv-kappl = 'M '.
ls_komv-kschl = 'XXXX'.
ls_komv-kbetr = '20.00'.
ls_komv-waers = 'USD'.
ls_komv-kposn = '000001'." important field
ls_komv-konms = 'KG'." important field
ls_komv-stfkz = 'A'." important field
ls_komv-kzbzg = 'B'. " important field
APPEND ls_komv TO lt_komv.
"scales
ls_scale-klfn1 = '0001'.
ls_scale-kopos = '01'.
*ls_scale-updkz
ls_scale-kstbm = '10.00'.
ls_scale-kbetr = '20.00'.
ls_scale-kstbw = '20.00'.
ls_scale-kzbzg = 'B'.
ls_scale-rv13akonwa = 'USD'.
ls_scale-konpkonws = 'USD'.
ls_scale-konpkmein = 'KG'.
APPEND ls_scale TO lt_scale.
ls_komg-ekorg = 'XXXX'.
ls_komg-werks = 'XXX'.
ls_komk-ekorg = ls_komg-ekorg.
ls_komk-werks = ls_komg-werks.
ls_komk-mandt = '100'.
ls_komk-werks = ls_komg-werks.
ls_komp-kposn = '000001'.
t_komv_idoc-kznep ='V'.
t_komv_idoc-kstbw = '20.00'.
APPEND t_komv_idoc.
CALL FUNCTION 'RV_CONDITION_COPY'
EXPORTING
application = 'M'
condition_table = it_t681-kotabnr
condition_type = '7OA1'
date_from = '20210404'
date_to = '20210405'
* ENQUEUE = ' '
i_komk = ls_komk
i_komp = ls_komp
key_fields = ls_komg
maintain_mode = 'A'
no_authority_check = 'X'
* NO_FIELD_CHECK = ' '
* SELECTION_DATE = '00000000'
* KEEP_OLD_RECORDS = ' '
* MATERIAL_M =
used_by_idoc = 'X'
* I_KONA =
overlap_confirmed = 'X'
no_db_update = ' '
* USED_BY_RETAIL = ' '
* IMPORTING
* E_KOMK =
* E_KOMP =
* NEW_RECORD =
* E_DATAB =
* E_DATBI =
* E_PRDAT =
TABLES
copy_records = lt_komv
copy_staffel = lt_scale
copy_recs_idoc = t_komv_idoc
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 EQ 0.
* Implement suitable error handling here
CALL FUNCTION 'RV_CONDITION_SAVE'.
CALL FUNCTION 'RV_CONDITION_RESET'.
COMMIT WORK.
WRITE: 'Work Done for table ',it_t681-kotab, 'and Key Combination ', it_tmc1t-gstxt.
ENDIF.
Kindly help me to update the scale quantity
REPORT zap_frieght_test.
" Data declaration for test Program
DATA : it_t685 LIKE t685,
it_t681 LIKE t681,
it_tmc1t LIKE tmc1t,
ls_komg LIKE komg,
ls_komk LIKE komk,
ls_komp LIKE komp,
lt_komv TYPE TABLE OF komv,
ls_komv LIKE komv,
lt_scale TYPE TABLE OF condscale,
ls_scale LIKE condscale,
t_komv_idoc LIKE TABLE OF komv_idoc WITH HEADER LINE.
" selection for Condition type
CALL FUNCTION 'SD_COND_T685_SELECT'
EXPORTING
cts_kappl = 'M'
cts_kschl = 'XXXX'
cts_kvewe = 'A'
IMPORTING
cts_t685 = it_t685.
" Details of Conditon table
CALL FUNCTION 'RV_GET_CONDITION_TABLES'
EXPORTING
access_sequence = it_t685-kozgf
application = 'M'
condition_type = 'XXXX' " Already enter a correct value
condition_use = 'A'
* DISPLAY_ALWAYS = ' '
get_text = 'X'
* LIKE_PF4 = ' '
* NO_PICKUP = ' '
* TABLE_STATUS = ' '
* TABLE_CHECK_RULE = ' '
table_generate = 'X'
IMPORTING
table_t681 = it_t681
table_tmc1t = it_tmc1t
EXCEPTIONS
invalid_condition_type = 1
missing_parameter = 2
no_selection_done = 3
no_table_found = 4
table_not_valid = 5
OTHERS = 6.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
*cr–kopos = 1.
*cr–kzbzg = ‘C’.
*cr–konms = ‘EA’.
*cr–stfkz = ‘A’.
*APPEND cr.
*
** – Fill Scales
**- Scale Item 1
*copy_staffel–klfn1 = ‘0001’.
*copy_staffel–kopos = ’01’.
*copy_staffel–kstbm = ‘1’.
*copy_staffel–kbetr = ’21’. ” Scale Price
*copy_staffel–kzbzg = ‘C’.
*copy_staffel–rv13akonwa = ‘EUR’.
*copy_staffel–konpkmein = ‘EA’.
*copy_staffel–konpkonms = ‘EA’
ls_komv-kappl = 'M '.
ls_komv-kschl = 'XXXX'.
ls_komv-kbetr = '20.00'.
ls_komv-waers = 'USD'.
ls_komv-kposn = '000001'." important field
ls_komv-konms = 'KG'." important field
ls_komv-stfkz = 'A'." important field
ls_komv-kzbzg = 'B'. " important field
APPEND ls_komv TO lt_komv.
"scales
ls_scale-klfn1 = '0001'.
ls_scale-kopos = '01'.
*ls_scale-updkz
ls_scale-kstbm = '10.00'.
ls_scale-kbetr = '20.00'.
ls_scale-kstbw = '20.00'.
ls_scale-kzbzg = 'B'.
ls_scale-rv13akonwa = 'USD'.
ls_scale-konpkonws = 'USD'.
ls_scale-konpkmein = 'KG'.
APPEND ls_scale TO lt_scale.
ls_komg-ekorg = 'XXXX'.
ls_komg-werks = 'XXX'.
ls_komk-ekorg = ls_komg-ekorg.
ls_komk-werks = ls_komg-werks.
ls_komk-mandt = '100'.
ls_komk-werks = ls_komg-werks.
ls_komp-kposn = '000001'.
t_komv_idoc-kznep ='V'.
t_komv_idoc-kstbw = '20.00'.
APPEND t_komv_idoc.
CALL FUNCTION 'RV_CONDITION_COPY'
EXPORTING
application = 'M'
condition_table = it_t681-kotabnr
condition_type = '7OA1'
date_from = '20210404'
date_to = '20210405'
* ENQUEUE = ' '
i_komk = ls_komk
i_komp = ls_komp
key_fields = ls_komg
maintain_mode = 'A'
no_authority_check = 'X'
* NO_FIELD_CHECK = ' '
* SELECTION_DATE = '00000000'
* KEEP_OLD_RECORDS = ' '
* MATERIAL_M =
used_by_idoc = 'X'
* I_KONA =
overlap_confirmed = 'X'
no_db_update = ' '
* USED_BY_RETAIL = ' '
* IMPORTING
* E_KOMK =
* E_KOMP =
* NEW_RECORD =
* E_DATAB =
* E_DATBI =
* E_PRDAT =
TABLES
copy_records = lt_komv
copy_staffel = lt_scale
copy_recs_idoc = t_komv_idoc
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 EQ 0.
* Implement suitable error handling here
CALL FUNCTION 'RV_CONDITION_SAVE'.
CALL FUNCTION 'RV_CONDITION_RESET'.
COMMIT WORK.
WRITE: 'Work Done for table ',it_t681-kotab, 'and Key Combination ', it_tmc1t-gstxt.
ENDIF.
Kindly help me to update the scale quantity
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |