Skip to Content
author's profile photo
Former Member

bdctable control

Hi

any one can expline the bdctable control concept and P+ concept.

how we write the code inthe programe...

Thanks.

Patil.

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

6 Answers

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 11:52 AM

    For bdc table control you must Know field of table control then only you are able to write bdc program.

    1)Program name

    2)Screen number also called dynpro

    3)dynbegin

    4)field name.

    5)Field value.

    for more try to learn bdcdata structure in se11.

    reward if helpful.

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 11:52 AM

    Check with the following links..

    /thread/455489 [original link is broken]

    regarding BDC - Table control

    BDC - TABLE CONTROL PROBLEM

    bdc table control

    Reward if helpful..

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 11:53 AM

    Recorded the BDC for one table control record entry.

    - In program loop that recording with the internal table having all records which are needed

    to be saved in table control.

    Ex : Loop at itab.

    <Copy the appropriate BDC recording for table control entry>

    Endloop.

    Then call the transaction.

    rewards point.

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 11:53 AM

    Use button "PageDown" in toolbar to scroll the grid screen.

    OK-Code is 'P' or 'P+'.

    regards,

    rewards point.

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 11:59 AM

    Hi,

    When u create bdc like fp09 tcode. in that i had to pass data in table control.

    i was facing problem that when i pressed button for next line it was not captured by my bdc . For that i user p+ code for jump to next line.

    Rewardsm points if it is useful.

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Posted on Aug 23, 2007 at 12:06 PM

    1. chk the table RSMPTEXTS for Fcodes

    2. to find OK_CODE for that transaction

    system >Status >click on GUI Title--> u can find all the OK codes of the

    respective TCODE

    3.Also you can go to menu painter (SE41) to find BDC_OKCODE value for corresponding program.

    Enter program name, select function list option and click on diplay. The list of function codes are the BDC_OKCODE.

    P- : Back

    P-- : Scroll to previous page

    P+ : Scroll to next page

    P++ Scroll to last page

    PL- : Scroll to first line in page

    PL-n : Scroll back n lines

    PL+ : Scroll to last line in page

    PL+n Scroll forward n lines

    PP- : Scroll back one page

    PP-n Scroll back n pages

    PP+ scroll forward one page

    PP+n : scroll forward n page

    PPn : Scroll to start of page n

    Ps- : Scroll to first column

    PS++ Scroll to last column

    <b>See this sample code</b>

    REPORT zsdr_price_upload MESSAGE-ID zsdr_bdc_vk11 LINE-SIZE 150

    LINE-COUNT 75 .

    ******Internal Table for Header Data.

    TYPES : BEGIN OF type_header,

    kschl LIKE konv-kschl,

    vkorg LIKE vbak-vkorg,

    vtweg LIKE komg-spart,

    matnr LIKE mvke-matnr,

    kbetr(11) TYPE c,

    datab(10) TYPE c,

    datbi(10) TYPE c,

    END OF type_header.

    ****Internal Table for Item Level.

    TYPES : BEGIN OF type_item,

    kschl LIKE konv-kschl,

    vkorg LIKE vbak-vkorg,

    vtweg LIKE komg-spart,

    matnr LIKE mvke-matnr,

    kbetr(11) TYPE c,

    datab(10) TYPE c,

    datbi(10) TYPE c,

    END OF type_item.

    ******Error Table For not found in MVKE.

    TYPES : BEGIN OF type_error ,

    kschl LIKE konv-kschl,

    vkorg LIKE vbak-vkorg,

    vtweg LIKE komg-spart,

    matnr LIKE mvke-matnr,

    kbetr LIKE konp-kbetr,

    datab(10) TYPE c,

    datbi(10) TYPE c,

    text(100) TYPE c,

    END OF type_error.

    ****For error Messages

    TYPES : BEGIN OF type_mtab,

    matnr LIKE mara-matnr,

    msgtyp LIKE bdcmsgcoll-msgtyp,

    msgid LIKE bdcmsgcoll-msgid,

    msgnr LIKE bdcmsgcoll-msgnr,

    text(100) TYPE c,

    END OF type_mtab.

    ****Internal Table

    TYPES: BEGIN OF type_mvke,

    matnr LIKE mvke-matnr,

    vkorg LIKE mvke-vkorg,

    vtweg LIKE mvke-vtweg,

    END OF type_mvke.

    ****Internal Table

    TYPES : BEGIN OF type_tvkov,

    vkorg LIKE tvkov-vkorg,

    vtweg LIKE tvkov-vtweg,

    END OF type_tvkov.

    • Declaring Internal Tables

    DATA : t_header TYPE STANDARD TABLE OF type_header,

    t_item TYPE STANDARD TABLE OF type_item,

    t_mvke TYPE STANDARD TABLE OF type_mvke,

    t_tvkov TYPE STANDARD TABLE OF type_tvkov,

    t_error TYPE STANDARD TABLE OF type_error,

    t_mtab TYPE STANDARD TABLE OF type_mtab.

    • Work Area Declaration.

    DATA : wa_header LIKE LINE OF t_header,

    wa_item LIKE LINE OF t_item,

    wa_error LIKE LINE OF t_error,

    wa_mtab LIKE LINE OF t_mtab,

    wa_tvkov LIKE LINE OF t_tvkov,

    wa_mvke LIKE LINE OF t_mvke.

    *Rows for Table with Excel Data*******

    DATA: t_xls_file LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.

    ***Constant.

    DATA : c_params LIKE ctu_params.

    DATA : c_ans(1) TYPE c.

    DATA : v_count(4) TYPE c. " To show No.of records

    DATA : bdctab LIKE bdcdata OCCURS 10 WITH HEADER LINE. " BDCDATA

    DATA : tmess_mtab LIKE bdcmsgcoll OCCURS 10 WITH HEADER LINE.

    ************************************************************************

    **

    • SELECTION SCREEN

    ************************************************************************

    **

    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

    PARAMETERS : p_fname LIKE rlgrap-filename OBLIGATORY.

    SELECTION-SCREEN : END OF BLOCK b1.

    **********************************************************************

    • END OF SELECTION SCREEN.

    **********************************************************************

    DATA : repid LIKE sy-repid.

    DATA : v_matnr(50) TYPE c, "used for line items

    v_kbetr(50) TYPE c, "used for line items

    v_dat1(50) TYPE c, "used for line items

    v_dat(50) TYPE c. "used for line items

    DATA : v_lindx(5) TYPE n ,"index counter for first 14 records.

    v_lindx1(5) TYPE n VALUE '01', "index counter for 13 records.

    v_item(5) TYPE c, "To increment the line index

    v_pgedwn2 TYPE i . "For Pagedown Counter

    DATA: v_currentrow TYPE i. "For Current Row

    DATA v_bdc(50) TYPE c." Text to apper in Confrim POPUP Window.

    ************AT SELECTION-SCREEN

    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.

    PERFORM get_filename USING p_fname.

    *************START-OF-SELECTION

    START-OF-SELECTION.

    ******Values for Ctu_params to Transaction

    c_params-defsize = 'X'.

    c_params-dismode = 'N'.

    c_params-updmode = 'S'.

    ******Refresh

    PERFORM f_refresh.

    *********To upload File.

    PERFORM upload_file.

    ****User Confrimation only BDC will Process

    IF c_ans = '1'.

    • *** BDC Process.

    PERFORM read_data.

    ELSE.

    FORMAT COLOR 3 INTENSIFIED .

    WRITE:/ 'Selected not to Process the Upload'.

    EXIT.

    ENDIF.

    ******On completion of Process Refresh the Internal Table

    REFRESH : t_xls_file,

    t_header,

    t_item,

    t_mvke,

    t_tvkov.

    CLEAR : t_xls_file,

    wa_header,

    wa_item,

    wa_mvke,

    wa_tvkov.

    ***************************************

    ***********Display Messages

    WRITE : /01 'Status',19 'Status Text'.

    WRITE AT 0(150) sy-uline.

    LOOP AT t_mtab INTO wa_mtab.

    WRITE :/01 wa_mtab-msgtyp,19 wa_mtab-text.

    ENDLOOP.

    SKIP 2.

    SORT t_error BY matnr.

    WRITE AT 0(150) sy-uline.

    WRITE 'ERROR MESSAGES'.

    WRITE AT 0(150) sy-uline.

    WRITE :/01 'Material.No',20 'Status Text'.

    WRITE AT 0(150) sy-uline.

    LOOP AT t_error INTO wa_error WHERE matnr NE ' '.

    !

    WRITE:/01 wa_error-matnr,20 wa_error-text.

    ENDLOOP.

    ----


    *& Form get_filename

    &----


    • text

    ----


    • -->P_FILENAME text

    ----


    FORM get_filename USING p_fname.

    *****To read the file from Presentation Server

    CALL FUNCTION 'KD_GET_FILENAME_ON_F4'

    EXPORTING

    program_name = repid

    dynpro_number ! ; = syst-dynnr

    field_name = p_fname

    • STATIC = ' '

    mask = '*.XLS'

    CHANGING

    file_name = p_fname

    EXCEPTIONS

    mask_too_long = 1

    OTHERS = 2

    .

    IF sy-subrc <> 0.

    • * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    ENDIF.

    ENDFORM. " get_filename

    &----


    *& Form upload_file

    &----


    • text

    ----


    • --> p1 text

    • <-- p2 text

    ----


    FORM upload_file.

    DATA : frow VALUE 2 TYPE i,

    fcol VALUE 1 TYPE i,

    erow VALUE 10000 TYPE i,

    ecol VALUE 7 TYPE i,

    ecol1 VALUE 1 TYPE i,

    c_col1 TYPE i VALUE '0001',

    c_col2 TYPE i VALUE '0002',

    c_col3 TYPE i VALUE '0003',

    &nb! sp; c_col4 TYPE i VALUE '0004',

    c_col5 TYPE i VALUE '0005',

    c_col6 TYPE i VALUE '0006',

    c_col7 TYPE i VALUE '0007'.

    ***FM used to UPLOAD data from Flat file

    CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'

    EXPORTING

    filename = p_fname

    i_begin_col = fcol

    i_begin_row = frow

    i_end_col = ecol

    i_end_row = erow

    TABLES

    intern = t_xls_file

    EXCEPTIONS

    inconsistent_parameters = 1

    upload_ole = 2

    OTHERS = 3.

    IF sy-subrc <> 0.

    MESSAGE e000.

    ENDIF.

    ****T_XLS_FILE is initial, stop the process & throw message

    IF t_xls_file[] IS INITIAL.

    FORMAT COLOR 6 ON INTENSIFIED ON.

    WRITE:/ 'No Data Exists '.

    FORMAT COLOR OFF INTENSIFIED OFF.

    STOP.

    ELSE.

    • Sort table by rows and colums

    SORT t_xls_file BY row col.

    • Get first row retrieved

    READ TABLE t_xls_file INDEX 1.

    • Set first row retrieved to current row

    v_currentrow = t_xls_file-row.

    **Loop to move data in internal Table

    LOOP AT t_xls_file .

    • Reset values for next row

    IF t_xls_file-row NE v_currentrow.

    APPEND wa_header TO t_header.

    CLEAR wa_header.

    v_currentrow = t_xls_file-row.

    ENDIF.

    CASE t_xls_file-col.

    WHEN c_col1. "Kschl

    wa_header-kschl = t_xls_file-value.

    WHEN c_col2. "Vkorg

    wa_header-vkorg = t_xls_file-value.

    WHEN c_col3. "vtweg

    wa_header-vtweg = t_xls_file-value.

    WHEN c_col4. "Matnr

    wa_header-matnr = t_xls_file-value.

    WHEN c_col5. "Kbetr

    wa_header-kbetr = t_xls_file-value.

    WHEN c_col6. "FROm

    wa_header-datab = t_xls_file-value.

    WHEN c_col7. "TO

    wa_header-datbi = t_xls_file-value.

    ENDCASE.

    ENDLOOP.

    APPEND wa_header TO t_header.

    CLEAR wa_header.

    ENDIF.

    ****To process the data

    PERFORM f_process.

    ENDFORM. " upload_file

    &----


    *& Form READ_DATA

    &----


    • text

    ----


    • --> p1 text

    • <-- p2 text

    ----


    FORM read_data.

    ****To make Uniq Records in Header Level

    SORT t_header BY kschl vkorg vtweg.

    DELETE ADJACENT DUPLICATES FROM t_header COMPARING

    kschl vkorg vtweg .

    SORT t_item BY vkorg vtweg matnr.

    DATA : wa1_item TYPE type_item.

    DATA : l_cnt TYPE i.

    DATA : flag(1) TYPE c. "to process the Line item.

    ***Looping Header Table.

    LOOP AT t_header INTO wa_header.

    ***************************************

    PERFORM bdc_dynpro US! ING 'SAPMV13A' '0100'.

    PERFORM bdc_field USING 'BDC_CURSOR'

    'RV13A-KSCHL'.

    PERFORM bdc_field USING 'BDC_OKCODE'

    '=ANTA'.

    PERFORM bdc_field USING 'RV13A-KSCHL'

    wa_header-kschl.

    PERFORM bdc_dynpro USING 'SAPLV14A' '0100'.

    PERFORM bdc_field USING 'BDC_CURSOR'

    'RV130-SELKZ(03)'.

    PERFORM bdc_field USING 'BDC_OKCODE'

    '=WEIT'.

    PERFORM bdc_field USING 'RV130-SELKZ(03)'

    'X'.

    PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.

    PERFORM bdc_field USING 'BDC_CURSOR'

    'KOMG-VKORG'.

    PERFORM bdc_field USING 'KOMG-VKORG'

    wa_header-vkorg.

    PERFORM bdc_field USING 'KOMG-VTWEG'

    wa_header-vtweg.

    ****To handle Line Items.

    LOOP AT t_item INTO wa1_item WHERE vkorg = wa_header-vkorg AND

    vtweg = wa_header-vtweg.

    wa_item = wa1_item.

    ******Flag Set only After processing first 14 records .

    IF flag = ' '.

    v_lindx = v_lindx + 01.

    SHIFT v_lindx LEFT DELETING LEADING '0'.

    v_item = v_lindx .

    CONCATENATE 'KOMG-MATNR(' v_item ')' INTO v_matnr.

    PERFORM bdc_field USING v_matnr

    wa_item-matnr.

    CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.

    PERFORM bdc_field USING v_kbetr

    wa_item-kbetr.

    CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.

    PERFORM bdc_field USING v_dat

    wa_item-datab.

    CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.

    PERFORM bdc_field USING v_dat1

    wa_item-datbi.

    IF v_item = 14.

    flag = 'X'.

    PERFORM bdc_field USING 'BDC_OKCODE'

    '/00'.

    <b>PERFORM bdc_field USING 'BDC_OKCODE'

    '=P+'.</b>

    PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.

    CLEAR v_lindx.

    CLEAR v_item.

    CONTINUE.

    ENDIF.

    ENDIF.

    ***Flag is Set after Processing of 14 records.

    • TO process rest of Records

    IF flag = 'X'.

    v_pgedwn2 = v_pgedwn2 + 1.

    v_lindx1 = v_lindx1 + 01.

    SHIFT v_lindx1 LEFT DE! LETING LEADING '0'.

    v_item = v_lindx1 .

    CONCATENATE 'KOMG-MATNR(' v_it! em ')' INTO v_matnr.

    PERFORM bdc_field USING v_matnr

    wa_item-matnr.

    CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.

    PERFORM bdc_field USING v_kbetr

    wa_item-kbetr.

    CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.

    PERFORM bdc_field USING v_dat

    wa_item-datab.

    CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.

    PERFORM bdc_field USING v_dat1

    wa_item-datbi.

    IF v_pgedwn2 = 13.

    PERFORM bdc_field USING 'BDC_OKCODE'

    '/00'.

    <b>PERFORM bdc_field USING 'BDC_OKCODE'

    '=P+'.</b>

    PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.

    v_pgedwn2 = 0.

    v_lindx1 = 1.

    CLEAR v_item.

    CONTINUE.

    ENDIF.

    ENDIF.

    ENDLOOP.

    PERFORM bdc_field USING 'BDC_OKCODE'

    '=SICH'.

    • Calling Transaction after Processing All items.

    CALL TRANSACTION 'VK11' USING bdctab

    OPTIONS FROM c_params MESSAGES INTO tmess_mtab.

    *

    REFRESH bdctab.

    CLEAR : bdctab.

    CLEAR : wa_item.

    CLEAR : wa1_item.

    CLEAR : wa_header.

    CLEAR : l_cnt.

    CLEAR : v_lindx1.

    CLEAR: v_pgedwn2,v_lindx.

    LOOP AT tmess_mtab .

    l_cnt = l_cnt + 1.

    READ TABLE t_item INTO wa_item INDEX l_cnt .

    !

    CALL FUNCTION 'MASS_MESSAGE_GET' "To get the Message Text

    EXPORTING

    arbgb = tmess_mtab-msgid

    msgnr = tmess_mtab-msgnr

    msgv1 = tmess_mtab-msgv1

    msgv2 = tmess_mtab-msgv2

    msgv3 = tmess_mtab-msgv3

    msgv4 ! = tmess_mtab-msgv4

    IMPORTING

    msgtext = wa_mtab-text

    EXCEPTIONS

    message_not_found = 1

    OTHERS = 2.

    IF sy-subrc <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    ENDIF.

    wa_mtab-matnr = wa_item-matnr.

    wa_mtab-msgtyp = tmess_mtab-msgtyp.

    wa_mtab-msgid = tmess_mtab-msgid.

    wa_mtab-msgn! r = tmess_mtab-msgnr.

    APPEND wa_mtab TO t_mtab.

    CLEAR wa_mtab-text.

    CLEAR wa_item.

    ENDLOOP.

    ENDLOOP.

    ENDFORM. " READ_DATA

    &----


    *& Form BDC_DYNPRO

    &----


    • text

    ----


    • -->P_0300 text

    • -->P_0301 text

    !

    ----


    ----


    • Start new screen *

    ----


    FORM bdc_dynpro USING program dynpro.

    CLEAR bdctab.

    bdctab-program = program.

    bdctab-dynpro = dynpro.

    bdctab-dynbegin = 'X'.

    APPEND bdctab.

    ENDFORM. " BDC_DYNPRO

    &----


    *& Form BDC_FIELD

    &----


    • text

    ----


    • -->P_0305 text

    • -->P_WA_HEADER_KSCHL text

    ----


    ----


    • Insert field *

    ----


    FORM bdc_field USING fnam fval.

    CLEAR bdctab.

    bdctab-fnam = fnam.

    bdctab-fval = fval.

    APPEND bdctab.

    ENDFORM. " BDC_FIELD

    &----


    *& Form bdc_trc_ansaction

    &----


    • text

    ----


    • -->P_0527 text

    *----


    &----


    *& Form f_Process

    &----


    • text

    ----


    • --> p1 text

    • <-- p2 text

    ----


    !

    FORM f_process.

    DATA : l_todate(12) TYPE c,

    l_frdate(12) TYPE c.

    ***Select for all entries of material in Header "Flat File Materials".

    IF NOT t_header[] IS INITIAL.

    SELECT matnr vkorg vtweg FROM mvke INTO TABLE t_mvke FOR ALL ENTRIES

    IN t_header WHERE matnr = t_header-matnr AND

    vkorg = t_header-vkorg AND

    vtweg = t_header-vtweg.

    ENDIF.

    *********select Sales.org & Dist.channel.

    IF NOT t_header[] IS INITIAL.

    SELECT vkorg vtweg FROM tvkov INTO TABLE t_tvkov FOR ALL ENTRIES IN

    t_header WHERE vkorg = t_header-vkorg

    AND vtweg = t_header-vtweg.

    ENDIF.

    ***Checking for material in Sales Master Table

    SORT t_mvke BY matnr vkorg vtweg.

    SORT t_tvkov BY vkorg vtweg.

    LOOP AT t_header INTO wa_header.

    READ TABLE t_mvke INTO wa_mvke WITH KEY matnr = wa_header-matnr

    vkorg = wa_header-vkorg

    ! ; vtweg = wa_header-vtweg BINARY SEARCH.

    IF sy-subrc <> 0.

    wa_error = wa_header.

    &nb! sp; MOVE text-011 TO wa_error-text.

    APPEND wa_error TO t_error.

    DELETE TABLE t_header FROM wa_header.

    ELSE.

    ********Date Validations

    IF ( wa_header-datab NE ' ! ; ' AND wa_header-datbi NE ' ' ) .

    l_todate = wa_header-datab.

    l_frdate = wa_header-datbi.

    REPLACE '.' INTO l_toda! te WITH ''.

    REPLACE '.' INTO l_todate WITH ''.

    CONDENSE l_todate NO-GAPS.

    REPLACE '.' INTO l_frdate WITH ''.

    REPLACE '.' INTO l_frdate WITH ''.

    CONDENSE l_frdate NO-GAPS.

    IF l_frdate < l_todate.

    wa_error = wa_header .

    MOVE text-012 TO wa_error-text.

    APPEND wa_error TO t_error.

    DELETE TABLE t_header FROM wa_header.

    ENDIF.

    ELSE.

    wa_error = wa_header .

    MOVE text-016 TO wa_error-text.

    APPEND wa_error TO t_error.

    DELETE TABLE t_header FROM wa_header.

    ENDIF.

    ENDIF.

    ********Rate Validation.

    IF wa_header-kbetr = ' '.

    wa_error = wa_header .

    MOVE text-017 TO wa_error-text.

    APPEND wa_error TO t_error.

    DELETE TABLE t_header FROM wa_header.

    ENDIF.

    ************************************************************************

    READ TABLE t_tvkov INTO wa_tvkov WITH KEY vkorg = wa_header-vkorg

    BINARY SEARCH.

    IF sy-subrc = 0.

    READ TABLE t_tvkov INTO wa_tvkov WITH KEY vtweg = wa_header-vtweg

    BINARY SEARCH.

    IF sy-subrc <> 0.

    wa_error = wa_header.

    MOVE text-015 TO wa_error-text.

    WRITE wa_header-vtweg TO wa_error-text+13(4).

    APPEND wa_error TO t_error.

    ENDIF.

    ELSE.

    wa_error = wa_header.

    MOVE text-013 TO wa_error-text.

    WRITE wa_header-vkorg TO wa_error-text+9(4).

    APPEND wa_error TO t_error.

    ENDIF.

    CLEAR wa_header.

    ENDLOOP.

    *****Deleting Duplicate Material Form Header "Flat File Data".

    SORT t_header BY kschl vkorg vtweg matnr.

    DELETE ADJACENT DUPLICATES FROM t_header COMPARING

    kschl! vkorg vtweg matnr .

    • ****Data Moving from Header to Item Level.

    t_item[] = t_header[].

    *To count No.of records in Item Table.

    DESCRIBE TABLE t_item LINES v_count.

    CONCATENATE text-014 ' ' v_count INTO v_bdc.

    ****Popup to get Confirmation from user to process BDC

    CALL FUNCTION 'POPUP_TO_CONFIRM'

    EXPORTING

    titlebar = 'Confirmation of File Data'

    text_question = v_bdc

    text_button_1 = 'Confirm'

    text_button_2 = 'Cancel Run'

    default_button = '1'

    IMPORTING

    answer = c_ans.

    .

    IF sy-subrc <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-! MSGV3 SY-MSGV4.

    ENDIF.

    ENDFORM. " f_Process

    *

    &----


    *& Form f_Refresh

    &----


    • text

    ----


    • --> p1 text

    • <-- p2 text

    ----


    FORM f_refresh.

    REFRESH : t_xls_file,

    t_header,

    t_item,

    t_mvke,

    t_tvkov,

    t_error,

    t_mtab.

    CLEAR : t_xls_file,

    wa_header,

    wa_item,

    wa_mvke,

    wa_tvkov,

    wa_error,

    wa_mtab.

    ENDFORM. " f_Refresh

    regards,

    srinivas

    <b>*reward for useful answers*</b>

    Add comment
    10|10000 characters needed characters exceeded