2008 Jun 03 8:00 AM
Hi Experts..
How to Handle the table controls in BDC for Tcode ME31K.
Actually i created one counter and i put like
if lv_counter_items GE 14."gc_max_item.
perform bdc_dynpro using 'SAPMM06E' '0220'.
perform bdc_field using 'BDC_CURSOR'
'RM06E-EBELP'. "'EKPO-MATKL'.
perform bdc_field using 'BDC_OKCODE'
'P+'. "'=NP'.
clear lv_field.
concatenate 'EKPO-KTMNG(' lv_item_lineno ')' into lv_field.
perform bdc_field using lv_field
wa_f_itab-KTMNG.
above code is in the items loop.
But its not working...Plz Guide me
Hi Experts..
How to Handle the table controls in BDC for Tcode ME31K.
Actually i created one counter and i put like
if lv_counter_items GE 14."gc_max_item.
perform bdc_dynpro using 'SAPMM06E' '0220'.
perform bdc_field using 'BDC_CURSOR'
'RM06E-EBELP'. "'EKPO-MATKL'.
perform bdc_field using 'BDC_OKCODE'
'P+'. "'=NP'.
clear lv_field.
concatenate 'EKPO-KTMNG(' lv_item_lineno ')' into lv_field.
perform bdc_field using lv_field
wa_f_itab-KTMNG.
above code is in the items loop.
But its not working...Plz Guide me
2008 Jun 03 10:09 AM
Hi Bala,
see this link for abap bdc code....
Use CALL TRANSACTION 'ME21N' OPTIONS FROM w_ctu_params.( type CTU_PARAMS)
This structure contains the follwing.
DISMODE : Display mode (like the MODE addition)
UPDMODE: Update mode (like the UPDATE addition)
CATTMODE: CATT mode (controls a CATT)
CATT mode can have the following values:
' ' No CATT active
'N' CATT without single-screen control
'A' CATT with single-screen control
DEFSIZE : Use default window size (Here we are handling those transaction by giving default window size)
RACOMMIT: Do not end transaction at COMMIT WORK
NOBINPT : No batch input mode (that is, SY-BINPT = SPACE)
NOBIEND : No batch input mode after the end of BDC data.
The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
'X' Yes.
thanks
karthik
reawrd me if usefull
2008 Jun 03 10:45 AM
2008 Jun 03 11:17 AM
Hi Bala,
It is better to add new line after every record than adding it after 14 records.
You are writing like after adding 14 records you are using +p function code to pagedown.But that 14 depends on system settings.
You can look into my code i wrote for handling table control.
*Reward points if useful.*
LOOP AT pi_loadbkt INTO lw_loadbkt.
tmp_loadbkt = lw_loadbkt.
AT FIRST.
PERFORM bdc_dynpro USING 'SAPMV13A' '0100'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ANTA'.
PERFORM bdc_field USING 'RV13A-KSCHL'
'YSBC'.
PERFORM bdc_dynpro USING 'SAPLV14A' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RV130-SELKZ(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=WEIT'.
ENDAT.
AT NEW prodh4.
PERFORM bdc_dynpro USING 'SAPMV13A' '1734'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'KOMG-KONDA'
tmp_loadbkt-konda.
PERFORM bdc_field USING 'KOMG-ZOBKT'
tmp_loadbkt-zobkt.
PERFORM bdc_field USING 'KOMG-PRODH1'
tmp_loadbkt-prodh1.
PERFORM bdc_field USING 'KOMG-PRODH2'
tmp_loadbkt-prodh2.
PERFORM bdc_field USING 'KOMG-PRODH3'
tmp_loadbkt-prodh3.
PERFORM bdc_field USING 'KOMG-PRODH4'
tmp_loadbkt-prodh4.
ENDAT.
* Concatenating fieldname
PERFORM string_concatenate USING 'KOMG-PRODH5(' pv_count ')'
CHANGING lv_prodh5.
PERFORM bdc_field USING lv_prodh5
tmp_loadbkt-prodh5.
PERFORM string_concatenate USING 'KONP-KBETR(' pv_count ')'
CHANGING lv_kbetr.
PERFORM bdc_field USING lv_kbetr
tmp_loadbkt-kbetr.
PERFORM string_concatenate USING 'KONP-KONWA(' pv_count ')'
CHANGING lv_konwa.
PERFORM bdc_field USING lv_konwa
tmp_loadbkt-konwa.
PERFORM string_concatenate USING 'KONP-KPEIN(' pv_count ')'
CHANGING lv_kpein.
PERFORM bdc_field USING lv_kpein
tmp_loadbkt-kpein.
PERFORM string_concatenate USING 'KONP-KMEIN(' pv_count ')'
CHANGING lv_kmein.
PERFORM bdc_field USING lv_kmein
tmp_loadbkt-kmein.
CONCATENATE tmp_loadbkt-datab+4(2) '/' "Month
tmp_loadbkt-datab+6(2) '/' "Date
tmp_loadbkt-datab+0(4) "Year
INTO tmp_loadbkt-datab.
PERFORM string_concatenate USING 'RV13A-DATAB(' pv_count ')'
CHANGING lv_datab.
PERFORM bdc_field USING lv_datab
tmp_loadbkt-datab.
CONCATENATE tmp_loadbkt-datbi+4(2) '/' "Month
tmp_loadbkt-datbi+6(2) '/' "Date
tmp_loadbkt-datbi+0(4) "Year
INTO tmp_loadbkt-datbi.
PERFORM string_concatenate USING 'RV13A-DATBI(' pv_count ')'
CHANGING lv_datbi.
PERFORM bdc_field USING lv_datbi
tmp_loadbkt-datbi.
* To perform vertical scrolling
PERFORM bdc_dynpro USING 'SAPMV13A' '1734'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
AT END OF prodh4.
PERFORM bdc_dynpro USING 'SAPMV13A' '1734'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=SICH'.
IF p_altern = gc_yes.
PERFORM bdc_insert USING i_bdcdata.
ELSE.
* Call the transaction to upload the data
CALL TRANSACTION gc_vk11 USING i_bdcdata MODE lv_mode
MESSAGES INTO i_messtab.
* Handling Errors
PERFORM format_message USING tmp_loadbkt
i_messtab
CHANGING pi_loadbkt_error.
ENDIF.
REFRESH : i_bdcdata,
i_messtab.
ENDAT.
CLEAR tmp_loadbkt.
ENDLOOP.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |