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

Urgent

Former Member
0 Likes
604

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

3 REPLIES 3
Read only

Former Member
0 Likes
554

Hi Bala,

see this link for abap bdc code....

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/abap%2b-%2bbdc%2bcode%2bfor%2bme31k%2b(O...

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

Read only

Former Member
0 Likes
554

hi,

your logic should be that you have to fill

Read only

Former Member
0 Likes
554

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.