About table control

hi e
I want to search any field from table control.
means I have table (table control) on output screen and one input/output field.
There are some records in the table.
when user will enter one field(of table) in the input/output field on screen, and press 'enter', cursor should go to thet record in the table on screen. 
thanks

Hi,
From your specification it is not very clear as to what exactly you want to search. Will you search based on any fields, or the primary key fields ?
Well you can search the internal table in the PAI block and then can locate the row in the Table Control.
For the democode on Table Control have a look at the TCode: ABAPDOCU
Hope this helps.

Similar Messages

  • All about table control

    Hi,
    I am using a table control in my application vi for both reading inputs and displaying output. I have a few questions about it:
    1. Sometimes I send the data in multiple lines to a cell but at the output, I am only able to see the first line and not the other parts unless I hover around the cell. Is there any way to autoincrease the cell (or row) height so that the table control show the multiple line output properly.
    2. Also, how can I make cell of table to auto adjust the column width according to input text length.
    Please refer the attached image for details. All suggestions are welcome..

    Hi mnx,
    there's no auto-adjust. You have to set width/height using property nodes on your own…
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • About table control in the selection screen

    i want to create a table control in the selection screen of my report.i can create the table control using SE51.but how to program with the table control in the report.for example i should fetch the data for the personnel nos entered in the table control of the selection screen.how to do this.can any of u provide sample code for this.
    thanks.

    Hi vadivel,
    Create internal table and create table control using same internal table
    e.g.
    data : begin of it,
           end of it.
    start-of-selection.
    call screen 100.
    If you create table control using wizard then code automatically come here.
    Now, Put one push button in same screen where table control is available. let's say push button Display report.
    Now, use export <IT> to memory id <ID> and submit report <report name> and return. now, define same internal table in this submitted report and use import <IT> from memory id <ID>. Now, table control data is available in internal table, use that data and make code as per your requirement. If you dont want to use push button then use menu bar and at user-command event.
    Hope this help
    Regards,
    Parag

  • About table control in bdc

    what  i must do so tht this program runs
    REPORT Y730_BDC5 .
    *HANDLING TABLE CONTROL IN BDC
    DATA : BEGIN OF IT_DUMMY OCCURS 0,
           DUMMY(100) TYPE C,
           END OF IT_DUMMY.
    DATA : BEGIN OF IT_XK01 OCCURS 0,
           LIFNR(10) TYPE C,
           BUKRS(4)  TYPE C,
           EKORG(4)  TYPE C,
           KTOKK(4)  TYPE C,
           NAME1(30) TYPE C,
           SORTL(10) TYPE C,
           LAND1(3)  TYPE C,
           SPRAS(2)  TYPE C,
           AKONT(6)  TYPE C,
           FDGRV(2)  TYPE C,
           WAERS(3)  TYPE C,
           END OF IT_XK01,
           BEGIN OF IT_BANK OCCURS 0,
           BANKS(3)  TYPE C,
           BANKL(10) TYPE C,
           BANKN(10) TYPE C,
           KOINH(30) TYPE C,
           LIFNR(10) TYPE C,
           END OF IT_BANK.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
                                         CALL FUNCTION 'WS_UPLOAD'
                                          EXPORTING
    *                                       CODEPAGE                      = ' '
                                            FILENAME                      = 'C:Documents and Settingsphaneendranath.kolliDesktopVENDOR.TXT '
                                            FILETYPE                      = 'DAT'
    *                                        HEADLEN                       = ' '
    *                                        LINE_EXIT                     = ' '
    *                                        TRUNCLEN                      = ' '
    *                                        USER_FORM                     = ' '
    *                                        USER_PROG                     = ' '
    *                                        DAT_D_FORMAT                  = ' '
    *                                      IMPORTING
    *                                        FILELENGTH                    =
                                           TABLES
                                             data_tab                      = IT_DUMMY
                                          EXCEPTIONS
                                            CONVERSION_ERROR              = 1
                                            FILE_OPEN_ERROR               = 2
                                            FILE_READ_ERROR               = 3
                                            INVALID_TYPE                  = 4
                                            NO_BATCH                      = 5
                                            UNKNOWN_ERROR                 = 6
                                            INVALID_TABLE_WIDTH           = 7
                                            GUI_REFUSE_FILETRANSFER       = 8
                                            CUSTOMER_ERROR                = 9
                                            NO_AUTHORITY                  = 10
                                            OTHERS                        = 11
                                         IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
                                         ENDIF.
    LOOP AT IT_DUMMY.
      IF IT_DUMMY-DUMMY+0(2) = '11'.
        IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
        IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
        IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
        IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
        IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
        IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
        IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
        IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
        IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
        IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
        IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
        APPEND IT_XK01.
      ELSE.
        IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
        IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
        IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
        IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
        IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
        APPEND IT_BANK.
      ENDIF.
    ENDLOOP.
    LOOP AT IT_XK01.
    REFRESH IT_BDCDATA.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  IT_XK01-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    *perform bdc_field       using 'BDC_CURSOR'
    *                              'LFA1-TELX1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  IT_XK01-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_field       using 'LFA1-SPRAS'
                                  IT_XK01-SPRAS.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    *perform bdc_field       using 'BDC_CURSOR'
    *                              IT_XK01-KUNNR.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                   IT_BANK-KOINH(02).
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    DATA : FNAM(20) TYPE C,
           IDX      TYPE C.
      MOVE 1 TO IDX.
    LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
      CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKS.
      CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKL.
      CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKN.
      CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-KOINH.
      IDX = IDX + 1.
    ENDLOOP.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                   IT_BANK-BANKS(01).
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                   IT_XK01-FDGRV.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFB1-AKONT'
                                   IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                   IT_XK01-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    *perform bdc_field       using 'BDC_CURSOR'
    *                               IT_BANK-ZTERM.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    *perform bdc_field       using 'BDC_CURSOR'
    *                               IT_BANK-MAHNA.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                   IT_XK01-WAERS.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'WYT3-PARVW(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S'
                         MESSAGES INTO IT_BDCMSGCOLL.
    ENDLOOP.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.

    hi,
    kindly go thru this link and chk.
    http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
    regards,
    anver

  • A question about table control

    Hello Expert,
    I have created a table control with wizard using internal table. I can display the data in the table successfully. Now the new requirement is to add two buttons to sort the data in ascending or descending. But it seems that it's impossible to select the column that the user want to use as sort field.
    Does any expert tell me how i can select the column?
    Thanks & Regards, Johnny

    After doing the steps mentioned by sap fan you have to use below approach for coding.
    Your table control has structure  CXTAB_CONTROL defined in the type group CXTAB in the ABAP Dictionary and
    CXTAB_CONTROL contains a table of the structure CXTAB_COLUMN which has the attributes of a column of table control.
    Lets say you have defined table control as
    CONTROLS tab1 TYPE TABLEVIEW USING SCREEN <scr> then you have can read variable tab1-COLS[ ] into one internal table
    of type CXTAB_COLUMN (lets consider this table as tab2) then check this tab2-SELECTED, if column is selected then
    it will be 'X' else space. Accordingly sort your internal table of table control.
    Regards,
    Pawan

  • Could you help me about table control .. ?

    Dear All,
    I've a problem in table Control.
    I put table control inside tab control (there are many tab in one screen where one tab has one table control).
    The schenario of the program, i wanna use table control to maintain the value from some table.
    So certainly it has insert/add, delete function.
    As we know to do one function in those e.g. add record button, we need specify some code on that button.
    So ..
    Once when that button is pressed, we can check what button is being pressed using that code.
    And it can run well.
    But this is the strange one, if i have schenario like this :
    1. I click add record button
        I will get the add code through ok_code/SY-UCOMM variable.
    2. I scroll down/up the table control.
        (THIS IS THE WEIRD), the ok_code/SY-UCOMM variable still keep having add code. So every we scroll down/up, application also will add one record.
    Could you help me to make ok_code/SY-UCOMM blank in every time i scroll down/up the table control ??
    Or could you help me how to i specify the code for scroll down/up the table control so I can identify when user is scrolling down/up the table control??
    I really need  your guidance/suggestion how to overcome it .. ?
    Many tks for all your attention.
    Best regards,
    Daniel N.

    Following is a sample code of handling table control in BDC.
    REPORT Y730_BDC5 .
    *HANDLING TABLE CONTROL IN BDC
    DATA : BEGIN OF IT_DUMMY OCCURS 0,
           DUMMY(100) TYPE C,
           END OF IT_DUMMY.
    DATA : BEGIN OF IT_XK01 OCCURS 0,
           LIFNR(10) TYPE C,
           BUKRS(4)  TYPE C,
           EKORG(4)  TYPE C,
           KTOKK(4)  TYPE C,
           NAME1(30) TYPE C,
           SORTL(10) TYPE C,
           LAND1(3)  TYPE C,
           SPRAS(2)  TYPE C,
           AKONT(6)  TYPE C,
           FDGRV(2)  TYPE C,
           WAERS(3)  TYPE C,
           END OF IT_XK01,
           BEGIN OF IT_BANK OCCURS 0,
           BANKS(3)  TYPE C,
           BANKL(10) TYPE C,
           BANKN(10) TYPE C,
           KOINH(30) TYPE C,
           LIFNR(10) TYPE C,
           END OF IT_BANK.
    DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
           IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
       FILENAME                      = 'C:\VENDOR.TXT'
       FILETYPE                      = 'ASC'
    TABLES
       DATA_TAB                      = IT_DUMMY.
    LOOP AT IT_DUMMY.
      IF IT_DUMMY-DUMMY+0(2) = '11'.
        IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
        IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
        IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
        IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
        IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
        IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
        IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
        IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
        IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
        IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
        IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
        APPEND IT_XK01.
      ELSE.
        IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
        IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
        IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
        IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
        IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
        APPEND IT_BANK.
      ENDIF.
    ENDLOOP.
    LOOP AT IT_XK01.
    REFRESH IT_BDCDATA.
    perform bdc_dynpro      using 'SAPMF02K' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RF02K-REF_LIFNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RF02K-LIFNR'
                                  IT_XK01-LIFNR.
    perform bdc_field       using 'RF02K-BUKRS'
                                  IT_XK01-BUKRS.
    perform bdc_field       using 'RF02K-EKORG'
                                  IT_XK01-EKORG.
    perform bdc_field       using 'RF02K-KTOKK'
                                  IT_XK01-KTOKK.
    perform bdc_dynpro      using 'SAPMF02K' '0110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-TELX1'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFA1-NAME1'
                                  IT_XK01-NAME1.
    perform bdc_field       using 'LFA1-SORTL'
                                  IT_XK01-SORTL.
    perform bdc_field       using 'LFA1-LAND1'
                                  IT_XK01-LAND1.
    perform bdc_field       using 'LFA1-SPRAS'
                                  IT_XK01-SPRAS.
    perform bdc_dynpro      using 'SAPMF02K' '0120'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFA1-KUNNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-KOINH(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    DATA : FNAM(20) TYPE C,
           IDX      TYPE C.
      MOVE 1 TO IDX.
    LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
      CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKS.
      CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKL.
      CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-BANKN.
      CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.
      perform bdc_field       using FNAM
                                    IT_BANK-KOINH.
      IDX = IDX + 1.
    ENDLOOP.
    perform bdc_dynpro      using 'SAPMF02K' '0130'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFBK-BANKS(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPMF02K' '0210'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-FDGRV'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFB1-AKONT'
                                  IT_XK01-AKONT.
    perform bdc_field       using 'LFB1-FDGRV'
                                  IT_XK01-FDGRV.
    perform bdc_dynpro      using 'SAPMF02K' '0215'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB1-ZTERM'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFB5-MAHNA'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_dynpro      using 'SAPMF02K' '0310'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'LFM1-WAERS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'LFM1-WAERS'
                                  IT_XK01-WAERS.
    perform bdc_dynpro      using 'SAPMF02K' '0320'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'WYT3-PARVW(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    CALL TRANSACTION 'XK01' USING IT_BDCDATA
                            MODE  'A'
                           UPDATE 'S'
                         MESSAGES INTO IT_BDCMSGCOLL.
    ENDLOOP.
    FORM BDC_DYNPRO USING PROG SCR.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-PROGRAM = PROG.
      IT_BDCDATA-DYNPRO  = SCR.
      IT_BDCDATA-DYNBEGIN = 'X'.
      APPEND IT_BDCDATA.
    ENDFORM.
    FORM BDC_FIELD USING FNAM FVAL.
      CLEAR IT_BDCDATA.
      IT_BDCDATA-FNAM = FNAM.
      IT_BDCDATA-FVAL  = FVAL.
      APPEND IT_BDCDATA.
    ENDFORM.
    points plz (if this information is usefull).
    Regard's
    Raghunath.S

  • Copy selected values from a table control into another table control

    hi there,
    as seen in the subject i need to copy selected values from a table control into another table control in the same screen. as i dont know much about table controls i made 2 table controls with the wizard and started to change the code... right now im totally messed up. nothing works anymore and i don't know where to start over.
    i looked up the forums and google, but there is nothing to help me with this problem (or i suck in searching the internet for solutions)
    i have 2 buttons. one to push the selected data from the top table control into the bottom tc and the other button is to push selected data from the bottom tc into the top tc. does somebody has a sample code to do this?

    you're funny
    i still don't get it... can't believe, there is no tutorial or sample code around how to copy multiple selected rows from a tc.
    here's my code, maybe you can tell me exactly were i have to change it:
    tc1 = upper table control
    tc2 = lower table control
    SCREEN 0100:
    PROCESS BEFORE OUTPUT.
      MODULE status_0100.
      MODULE get_nfo. --> gets data from the dictionary table
      MODULE tc1_change_tc_attr.
      LOOP AT   it_roles_tc1
           INTO wa_roles_tc1
           WITH CONTROL tc1
           CURSOR tc1-current_line.
      ENDLOOP.
      MODULE tc2_change_tc_attr.
      LOOP AT   it_roles_tc2
           INTO wa_roles_tc2l
           WITH CONTROL tc2
           CURSOR tc2-current_line.
      ENDLOOP.
    PROCESS AFTER INPUT.
      LOOP AT it_roles_tc1.
        CHAIN.
          FIELD wa_roles_tc1-agr_name.
          FIELD wa_roles_tc1-text.
        ENDCHAIN.
        FIELD wa_roles_tc1-mark
          MODULE tc1_mark ON REQUEST.
      ENDLOOP.
      LOOP AT it_roles_tc2.
        CHAIN.
          FIELD wa_roles_tc2-agr_name.
          FIELD wa_roles_tc2-text.
        ENDCHAIN.
        FIELD wa_roles_tc2-mark
          MODULE tc2_mark ON REQUEST.
      ENDLOOP.
      MODULE ok_code.
      MODULE user_command_0100.
    INCLUDE PAI:
    MODULE tc1_mark INPUT.
      IF tc1-line_sel_mode = 2
      AND wa_roles_tc1-mark = 'X'.
        LOOP AT it_roles_tc1 INTO g_tc1_wa2
          WHERE mark = 'X'.    -
    > big problem here is, that no entry has an 'X' there
          g_tc1_wa2-mark = ''.
          MODIFY it_roles_tc1
            FROM g_tc1_wa2
            TRANSPORTING mark.
        ENDLOOP.
      ENDIF.
      MODIFY it_roles_tc1
        FROM wa_roles_tc1
        INDEX tc1-current_line
        TRANSPORTING mark.
    ENDMODULE.                    "TC1_MARK INPUT
    MODULE tc2_mark INPUT.
      IF tc2-line_sel_mode = 2
      AND wa_roles_tc2-mark = 'X'.
        LOOP AT it_roles_tc2 INTO g_tc2_wa2
          WHERE mark = 'X'.             -
    > same here, it doesn't gets any data
          g_tc2_wa2-mark = ''.
          MODIFY it_roles_tc2
            FROM g_tc2_wa2
            TRANSPORTING mark.
        ENDLOOP.
      ENDIF.
      MODIFY it_roles_tc2
        FROM wa_roles_tc2
        INDEX tc2-current_line
        TRANSPORTING mark.
    ENDMODULE. 
    thx for anybody who can help with this!

  • How to handle table control in PO change

    Hi All,
    R/3 is sending PO details and Vendor is using third party front end to access the PO.He has changed the PO and these changes need to be reflected in the PO. Data is coming from external sytem to R/3 through IDOC. I need to handle the changes in the PO at the ITEM level. It has the table control. I don't know about table control. Kindly help me inorder to update the PO for a particular tab in PO item(ME22N).
    I have checked the process code : ORDH and FM: MPN30_IDOC_INPUT_ORDCAD
    Regards
    Kannaiah
    Rewards for helpful answers

    Hi Ravikanth,
    Thanks for the reply.
    I checked the PO item for the fields which need to be updated. I am unable to find some fields in the FM which i had mentioned. Shall I need to use any Userexit or include for this. If yes, can you tell me the user exit for this. I have checked the following exits: AMPL0001 
    LMEDR001 
    LMELA002 
    LMELA010 
    LMEQR001 
    LMEXF001 
    LWSUS001 
    M06B0001 
    M06B0002 
    M06B0003 
    M06B0004 
    M06B0005 
    M06E0004 
    M06E0005 
    ME590001 
    MEETA001 
    MEFLD004 
    MELAB001 
    MEQUERY1 
    MEVME001 
    MM06E001 
    MM06E003 
    MM06E004 
    MM06E005 
    MM06E007 
    MM06E008 
    MM06E009 
    MM06E010 
    MMAL0001 
    MMAL0002 
    MMAL0003 
    MMDA0001
    MMFAB001
    MRFLB001

  • How to increase row height in table control?

    Hi experts,
    We have a push button in table control created using screen painter. Since this is a touch screen transaction, the default height is very small for the worker in the plant to click on a specific row, i would like to know if there is any way to increase the row height in the table control. There is no attribute in Screen painter for increasing row height in table control. I did try "import dynpro", hoping to increase the row height and export the dynpro, but that doesn't seem to have row height attributes. Any help in this regard is highly appreciated. Thanks,
    Raj

    Using a new technology means you have to recreate your screen: you may create an HTML using CL_DD_* classes (that's called "Dynamic Documents"). See [SAP Library - DD programming guide|http://help.sap.com/saphelp_nw2004s/helpdata/en/13/12284b019511d4a73e0000e83dd863/frameset.htm]. Demos are provided in SDYNAMICDOCUMENTS package. Or I think you may create web dynpro and define a CSS style to enlarge objects.
    If you don't want to create everything, maybe you can find out a workaround with GuiXT, for example creating a big button in each row (for example, with BUTTONSIZE, but don't know if it changes the height of rows but that's worth trying).
    Well, [Synactive documentation about table controls|http://www.synactive.com/docu_e/specials/tables.html] does not seem to allow that.
    Maybe you can move your question to the "scripting" forum and ask about how to do it with GuiXT...

  • Table control in module program

    hi,
    i don't know about table control in module program.so please send the faq's ?

    hi
    ganapathi
    Table Controls in ABAP Programs
    To handle table controls in ABAP programs, you must declare a control in the declaration part of the program for each table control using the following statement:
    CONTROLS .
    if you only want to determine the row of the table control. SY´-SUBRC allows you to check if the cursor is placed in a row of a table control.
    this is all information about table control still if u have any quiries my mailid is [email protected]
    plzz reward if usefull
    dont forget to reward

  • Uegent,,,,,,,Table control

    Hi there,
    I have got an requirement, which display final output in 3 different display modes, for this there are 3 radio buttons in selection-screen.
    1. Abap list display
    2. List weaver display
    3. Table control display
    if pa_alist = 'X'.
    perform abap_list_display.
    elseif pa_avr = 'X'.
    perform list_viewer_display.
    elseif pa_table = 'X'.
    perform table_control_display.
    endif.
    After getting final data in internal table how I populate that data in table control.
    Please help me.
    Thanks and Regards.
    Zakir khan.

    Hi,
    Check this link.Here I am explaining about table control manipulates.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/table%20control%20in%20abap.pdf
    If you check the PBO part, it can help you for displaying the data.

  • Table control programming

    Hi experts,
    Please give me information about table control programming.
    explain it with example.
    Thanks & Regards,
    Rajesh Kumar

    Hi Rajesh,
    Lets say the table has more than 20 fields and at first shot there are say 15 screen fields and to enter the 16th field you have to press page down so in this case you have to have a control on table..
    The below example would help you to analyse..
    check the example...
    *"Selection screen elements............................................
    parameters:
      p_file like rlgrap-filename.
    *" Data declarations...................................................
    * Work variables                                                      *
    data w_file type string.
    data wa(80) type c.
    data : w_fname(20),
        w_tabix(2) type n,
        w_table(20),
        w_index,
        w_fkey(20),
        w_ftype(20),
        w_flen(20),
        w_fdesc(20).
    *" Internal table declarations.........................................
    * Internal table to hold                                               *
    data:
      begin of itab_fields occurs 0,
        count,
        fname(20),
        fkey,
        ftype(10),
        flen(10),
        fdesc(30),
      end of itab_fields.
    data:
      begin of itab_header occurs 0,
        dbcheck,
        tname(20),
        tdesc(40),
        devclass,
        maintain,
      end of itab_header.
    data t_data like standard table of wa .
    data:
      t_bdcdata like
       standard table of bdcdata with header line.
    data w_count type i.
    *       AT SELECTION-SCREEN ON VALUE-REQUEST EVENT                    *
    at selection-screen on value-request for p_file.
      call function 'F4_FILENAME'
    * EXPORTING
    *   PROGRAM_NAME        = SYST-CPROG
    *   DYNPRO_NUMBER       = SYST-DYNNR
    *   FIELD_NAME          = ' '
       importing
         file_name           = p_file
      w_file = p_file.
    *                       START-OF-SELECTION EVENT                      *
    start-of-selection.
      call function 'GUI_UPLOAD'
        exporting
          filename                      = w_file
         filetype                      = 'ASC'
    *   HAS_FIELD_SEPARATOR           = 'X'
    *   HEADER_LENGTH                 = 0
    *   READ_BY_LINE                  = 'X'
    *   DAT_MODE                      = ' '
    *   CODEPAGE                      = ' '
    *   IGNORE_CERR                   = ABAP_TRUE
    *   REPLACEMENT                   = '#'
    * IMPORTING
    *   FILELENGTH                    =
    *   HEADER                        =
        tables
          data_tab                      = t_data
       exceptions
         file_open_error               = 1
         file_read_error               = 2
         no_batch                      = 3
         gui_refuse_filetransfer       = 4
         invalid_type                  = 5
         no_authority                  = 6
         unknown_error                 = 7
         bad_data_format               = 8
         header_not_allowed            = 9
         separator_not_allowed         = 10
         header_too_long               = 11
         unknown_dp_error              = 12
         access_denied                 = 13
         dp_out_of_memory              = 14
         disk_full                     = 15
         dp_timeout                    = 16
         others                        = 17
      if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
      loop at t_data into wa.
        if wa+0(1) eq 'H'.
          shift wa by 2 places left.
          split wa at ',' into itab_header-dbcheck
          itab_header-tname
          itab_header-tdesc
          itab_header-devclass
          itab_header-maintain.
          append itab_header.
          clear itab_header.
          add 1 to w_count.
        else.
          shift wa by 2 places left.
          split wa at ',' into itab_fields-fname
          itab_fields-fkey
          itab_fields-ftype
          itab_fields-flen
          itab_fields-fdesc.
          write w_count to itab_fields-count.
          append itab_fields.
          clear itab_fields.
        endif.
      endloop.
      call function 'BDC_OPEN_GROUP'
       exporting
         client                    = sy-mandt
    *   DEST                      = FILLER8
         group                     = 'PADMA'
    *   HOLDDATE                  = FILLER8
    *   KEEP                      = FILLER1
         user                      = sy-uname
    *   RECORD                    = FILLER1
    *   PROG                      = SY-CPROG
    * IMPORTING
    *   QID                       =
       exceptions
         client_invalid            = 1
         destination_invalid       = 2
         group_invalid             = 3
         group_is_locked           = 4
         holddate_invalid          = 5
         internal_error            = 6
         queue_error               = 7
         running                   = 8
         system_lock_error         = 9
         user_invalid              = 10
         others                    = 11
      if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
      loop at itab_header.
        w_table = itab_header-tname.
        w_index = sy-tabix.
        refresh t_bdcdata.
        perform populate_se11.
        call function 'BDC_INSERT'
         exporting
           tcode                  = 'SE11'
    *    POST_LOCAL             = NOVBLOCAL
    *    PRINTING               = NOPRINT
    *    SIMUBATCH              = ' '
    *    CTUPARAMS              = ' '
          tables
            dynprotab              = t_bdcdata
         exceptions
           internal_error         = 1
           not_open               = 2
           queue_error            = 3
           tcode_invalid          = 4
           printing_invalid       = 5
           posting_invalid        = 6
           others                 = 7
        if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        endif.
        refresh t_bdcdata.
        perform populate_se13.
        call function 'BDC_INSERT'
         exporting
           tcode                  = 'SE13'
    *    POST_LOCAL             = NOVBLOCAL
    *    PRINTING               = NOPRINT
    *    SIMUBATCH              = ' '
    *    CTUPARAMS              = ' '
          tables
            dynprotab              = t_bdcdata
         exceptions
           internal_error         = 1
           not_open               = 2
           queue_error            = 3
           tcode_invalid          = 4
           printing_invalid       = 5
           posting_invalid        = 6
           others                 = 7
        if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        endif.
        refresh t_bdcdata.
        perform activate.
        call function 'BDC_INSERT'
         exporting
           tcode                  = 'SE11'
    *    POST_LOCAL             = NOVBLOCAL
    *    PRINTING               = NOPRINT
    *    SIMUBATCH              = ' '
    *    CTUPARAMS              = ' '
          tables
            dynprotab              = t_bdcdata
         exceptions
           internal_error         = 1
           not_open               = 2
           queue_error            = 3
           tcode_invalid          = 4
           printing_invalid       = 5
           posting_invalid        = 6
           others                 = 7
        if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        endif.
      endloop.
      call function 'BDC_CLOSE_GROUP'
        exceptions
          not_open    = 1
          queue_error = 2
          others      = 3.
      if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
    *&      Form  POPULATE_SE11
    *    This subroutine is used to populate SE11 transaction data         *
    *     No interface parameters                                          *
    form populate_se11 .
      perform bdc_dynpro      using 'SAPMSRD0' '0102'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'RSRD1-TBMA_VAL'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=ADD'.
      perform bdc_field       using 'RSRD1-TBMA'
                                    itab_header-dbcheck.
      perform bdc_field       using 'RSRD1-TBMA_VAL'
                                    itab_header-tname.
      perform bdc_dynpro      using 'SAPLSD41' '2200'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=CHANGE_MAINTFLAG'.
      perform bdc_field       using 'DD02D-DDTEXT'
                                    itab_header-tdesc.
      perform bdc_field       using 'BDC_CURSOR'
                                    'DD02D-MAINFLAG'.
      perform bdc_field       using 'DD02D-CONTFLAG'
                                    itab_header-devclass.
      perform bdc_field       using 'DD02D-MAINFLAG'
                                    itab_header-maintain.
      perform bdc_dynpro      using 'SAPLSD41' '2200'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=DEF'.
      perform bdc_field       using 'DD02D-CONTFLAG'
                                    'A'.
      perform bdc_field       using 'DD02D-MAINFLAG'
                                    'X'.
      perform bdc_dynpro      using 'SAPLSD41' '2200'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=FTYP'.
      w_tabix = 0.
      loop at itab_fields where count eq w_index.
        add 1 to w_tabix.
        if w_tabix gt 13.
          perform bdc_dynpro      using 'SAPLSD41' '2200'.
          perform bdc_field       using 'BDC_CURSOR'
                                       w_fname.
          perform bdc_field       using 'BDC_OKCODE'
                                        '=P+'.
          w_tabix = 2.
        endif.
        concatenate 'DD03P-FIELDNAME(' w_tabix ')' into w_fname.
        concatenate 'DD03P-KEYFLAG(' w_tabix ')' into w_fkey.
        concatenate 'DD03D-DATATYPE(' w_tabix ')' into w_ftype.
        concatenate 'DD03P-LENG(' w_tabix ')' into w_flen.
        concatenate 'DD03P-DDTEXT(' w_tabix ')' into w_fdesc.
        perform bdc_dynpro      using 'SAPLSD41' '2200'.
        perform bdc_field       using 'BDC_OKCODE'
                                      '/00'.
        perform bdc_field       using w_fname
                                      itab_fields-fname.
        perform bdc_field       using w_fkey
                                      itab_fields-fkey.
        perform bdc_field       using w_ftype
                                      itab_fields-ftype.
        perform bdc_field       using w_flen
                                        itab_fields-flen.
        perform bdc_field       using w_fdesc
                                      itab_fields-fdesc.
      endloop.
      perform bdc_dynpro      using 'SAPLSD41' '2200'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=WB_SAVE'.
      perform bdc_dynpro      using 'SAPLSTRD' '0100'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=ADD'.
      perform bdc_field       using 'KO007-L_DEVCLASS'
                                    'Z1139'.
      perform bdc_field       using 'KO007-L_AUTHOR'
                                    'SAPDEV02'.
      perform bdc_dynpro      using 'SAPLSTRD' '0300'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=LOCK'.
      perform bdc_field       using 'KO008-TRKORR'
                                    'TR1K900085'.
      perform bdc_dynpro      using 'SAPLSD41' '2200'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'DD03P-DDTEXT(03)'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
      perform bdc_dynpro      using 'SAPMSRD0' '0102'.
      perform bdc_field       using 'BDC_CURSOR'
                                    'RSRD1-TBMA_VAL'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
    endform.                    " POPULATE_SE11
    *&      Form  POPULATE_SE13
    *    This subroutine is used to populate SE13 data                     *
    *     No interface parameters                                          *
    form populate_se13 .
      perform bdc_dynpro      using 'SAPMSEDS' '0010'.
      perform bdc_field       using 'DD09V-TABNAME'
                                    w_table.
      perform bdc_field       using 'BDC_OKCODE'
                                    'PFLG'.
      perform bdc_dynpro      using 'SAPMSEDS' '0050'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=SICH'.
      perform bdc_field       using 'DD09V-TABART'
                                    'APPL0'.
      perform bdc_field       using 'DD09V-TABKAT'
                                    '0'.
      perform bdc_field       using 'ALLOWSTATE-NOT_ALLOWED'
                                    'X'.
      perform bdc_dynpro      using 'SAPMSEDS' '0050'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
      perform bdc_field       using 'DD09V-TABART'
                                    'APPL0'.
      perform bdc_field       using 'DD09V-TABKAT'
                                    '0'.
      perform bdc_field       using 'ALLOWSTATE-NOT_ALLOWED'
                                    'X'.
      perform bdc_field       using 'BDC_OKCODE'
                                   '=WB_BACK'.
      perform bdc_dynpro      using 'SAPMSEDS' '0050'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
      perform bdc_dynpro      using 'SAPMSEDS' '0010'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
    endform.                    " POPULATE_SE13
    *&      Form  ACTIVATE
    *     This subroutine is used to activate the table from SE11          *
    *     No interface parameters.                                         *
    form activate .
      perform bdc_dynpro      using 'SAPMSRD0' '0102'.
      perform bdc_field       using 'RSRD1-TBMA'
                                    'X'.
      perform bdc_field       using 'RSRD1-TBMA_VAL'
                                    w_table.
      perform bdc_field       using 'BDC_OKCODE'
                                    'ACT'.
      perform bdc_dynpro      using 'SAPLSEWORKINGAREA' '0205'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=WEIT'.
      perform bdc_dynpro      using 'SAPMSRD0' '0102'.
      perform bdc_field       using 'BDC_OKCODE'
                                    '=BACK'.
    endform.                    " ACTIVATE
    *&      Form  bdc_dynpro
    *    This subroutine is used to populate the screen information        *
    *      -->prgname   Program name
    *      -->screenno  Screen number
    form bdc_dynpro  using    value(prgname)
                              value(screenno).
      clear t_bdcdata.
      t_bdcdata-program = prgname.
      t_bdcdata-dynpro = screenno.
      t_bdcdata-dynbegin = 'X'.
      append t_bdcdata.
    endform.                    " bdc_dynpro
    *&      Form  bdc_field
    *     This subroutine is used to populate the field values             *
    *      -->fnam   Field name                                            *
    *      -->fval   Field value                                           *
    form bdc_field  using    value(fnam)
                             value(fval).
      clear t_bdcdata.
      t_bdcdata-fnam = fnam.
      t_bdcdata-fval = fval.
      append t_bdcdata.
    endform.                    " bdc_field
    ******flat file ******
    **H,X,Z1139_REC_30,Recorded Table,A,X*
    **I,mandt,X,clnt,3,Client*
    **I,ENO,X,char,6,Employee Number*
    **I,ENAME, ,Char,20,Employee Name*
    **I,deptno, ,char,10,Department Number*
    **I,salary, ,int4, ,Salary*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    **H,X,Z1139_REC_31,Recorded Table,A,X*
    **I,mandt,X,clnt,3,Client*
    **I,deptno,X,char,10,Department Number*
    **I,dname, ,char,20,Department Name*
    **I,Locate, ,char,20,Location*
    hope the above example would help you and solve your issue.
    Regards
    Narin Nandivada

  • Query about screen as a structure used in table control.

    hi all,
    plz explain the fields in screen(structure).
    when and how it is used.
    specialy i/o, o/p,active,
    plz give example.

    hi,
    The screen elements text field, input/output field, status icon, group box, radio button, checkbox, and
    pushbutton all have general attributes, Dictionary attributes, program attributes, and display attributes.
    The elements subscreen, tabstrip control, and table control have general attributes, and special
    attributes relating to the respective type.
    We can divide the attributes of an element into:
    Statically definable attributes that cannot be changed dynamically
    Statically definable attributes that can be changed dynamically
    Attributes that can only be changed dynamically
    At the beginning of the PBO, the runtime system reads the statically-created and dynamically-modifiable
    attributes of each screen element on the current screen into a system table with the line type SCREEN.
    Dynamic changes to the attributes of screen elements are temporary.
    Using this technique to modify the attributes of a screen element (for example, to change whether an
    input/output field is ready for input), you can replace long sequences of separate screens, which are
    more costly in terms of both programming time and runtime.
    The system table with line type SCREEN will be called SCREEN system table in the following unit.
    When a screen is processed, the SCREEN system table contains an entry for each element created in
    the Screen Painter for that screen.
    The system table SCREEN is initialized at the start of the PBO event for the current screen. To do this, a
    system program copies the statically defined attributes of the individual screen elements into the table.
    You can then change the dynamically-modifiable attributes of the elements on the screen in a module at
    PBO using the following statements: LOOP AT SCREEN.
    MODIFY SCREEN.
    ENDLOOP.
    To do this, you use the structure SCREEN, which is created automatically by the system, and filled with
    the values of each successive line of the system table in the loop. Set attributes have the value '1',
    attributes that are not set have the value '0'. To change the system table, use MODIFY SCREEN. within
    the loop.
    To find the element whose attributes you want to modify, you can use a LOOP on the SCREEN table,
    and query one of the following fields: SCREEN-NAME, SCREEN-GROUP1 to SCREEN-GROUP4.
    You can change the attributes of several screen elements simultaneously at runtime, by including them
    in a modification group in the Screen Painter. Assign all elements that will be changed within a single
    processing step to a group in the Screen Painter.
    To do this, enter a group name for each of the relevant elements in one of the fields GROUP1 …
    GROUP4.
    You can include each element in up to four modification groups. You can choose any three-character
    sequence for the group name. You can assign elements to a modification group either in the element list
    or the layout editor in Screen Painter.
    You must program your screen modifications in a module that is processed during the PROCESS
    BEFORE OUTPUT processing block.
    You use a loop through the table SCREEN to change the attributes of an element or a group of
    elements. (LOOP AT SCREEN WHERE . . . and READ TABLE SCREEN are not supported).
    To activate and deactivate attributes, assign the value 1 (active) or 0 (inactive), and save your changes
    using the MODIFY SCREEN statement.
    Note that elements you have defined statically in the Screen Painter as invisible cannot be reactivated
    with SCREEN-ACTIVE = 1. Instead, use the statement SCREEN-INVISIBLE = 0. However, elements
    that you have statically defined as visible in the Screen Painter can dynamically be made invisible. This
    has the same effect as the three statements SCREEN-INVISIBLE = 1, SCREEN-INPUT = 0, SCREENOUTPUT
    = 0.
    There are three steps involved in displaying buffered data from the internal table in the table control:
    The system loops through the lines of the table control on the screen. The lines of the screen table are
    processed one by one. For each line, the system carries out the following steps:
    The current line of the internal table is placed in the work area of the internal table. (Note that it is
    possible to scroll in the table on the screen).
    The data from the work area of the internal table is copied into the relevant line of the table control.
    When you use table controls on a screen, the automatic field transport sequence changes.
    In the PBO processing block, data is transferred from the ABAP program to the screen after each loop
    pass in the flow logic. The rest of the screen fields are filled, as normal, at the end of the PBO.
    In the flow logic, the loop statement
    LOOP AT <itab> INTO <wa_itab> WITH CONTROL <tc_name>
    starts a loop through the screen table, and reads the line of the internal table corresponding to the
    current line of the screen table, placing it in <wa_itab>.
    <itab> is the name of the internal table containing the data, <wa_itab> is the name of the work area for
    the internal table, and <tc_name> is the name of the table control on the screen.
    If the fields in your table control have the same structure and name as those in the work area <wa_itab>,
    the system can transport data between the ABAP program and the screen automatically (step 3).
    If you are not using the same structure for the table control fields and the work area of the internal table,
    you must call a module between LOOP and ENDLOOP that moves the data from the work area
    <wa_itab> into the screen fields (MOVE-CORRESPONDING <wa_itab> TO …) .
    The system calculates the value of <ctrl>-TOP_LINE when you scroll, but not when you scroll a page at
    a time outside the table control.
    In order to transfer changed values from the table control back to the internal table the following three
    steps must be carried out:
    The system loops through the lines of the table control. The lines of the screen table are processed
    one by one. For each line, the system carries out the following steps:
    The data from the current line of the table control is copied into the header line of the internal table.
    The data in the work area must then be placed in the line of the internal table corresponding to the
    line of the table control that is being processed. (Note that it is possible to scroll in the table on the
    screen).
    In the PAI processing block, all screen fields that do not belong to a table control and that are not listed
    in a FIELD statement are transported back to the work fields in the ABAP program first.
    The contents of the table control are transported line-by-line to the corresponding work area in the ABAP
    program in the appropriate loop.
    As usual, the fields that occur in FIELD statements are transported directly before that statement.
    The structure of the screen tables contain.
    NAME
    GROUP 1
    GROUP 2
    GROUP 3
    GROUP 4
    OUTPUT
    REQUIRED
    LENGTH
    INTENSIFIED
    INVISIBLE
    ACTIVE
    Hope this helps, Do reward.
    Edited by: Runal Singh on Mar 13, 2008 10:41 AM

  • About the data of table control in tab strip control

    hi experts:
           I use screen 0001 include one tab strip control,and its include two subscreens,one of it is table control(subscreen is 0003).
    I input data in the table control,when I click the button of tab strip control to change to another subscreen 0002.I found that the data I input into table control have not append to internal table.how can I solve this problem?
           appreciate your reply.thanks a lot.

    Hi,
    in the Main Screen
    In PAI
    call subscreen sub. ---> here it calls the subscreen where the tablecontrol is placed
    then call module user_command
    In the subscreen where you have your table control
    in PAI
    Loop at itab.
    module modify_tab.
    endloop.
    module modify_tab,
    descirbe table itab lines tc-lilnes.
    if tc-lines <= tc-current_line.
    modify itab index tc-current_lilne.
    else.
    append itab.
    endmodule.
    next you call the module user_command on the main screen
    module user_command
    case sy-ucomm
    WHEN 'TAB1'
    TS-ACTIVE_TAB = 'TAB1'
    when tab2.
    ts-active_tab = 'TAB2'.
    endmodule
    further you can take the help of CONTROL EXAMPLES in DWDM tcode
    Regards
    Ramchander Rao.K

  • Question(s​) about the Active Cell:Posit​ion property node for a table control

    Hello,
       What determines the Active Cell Position property node for a table control? I have this in my code and I am displaying its value to a front panel indicator. The value displayed is always set to 0,0. The help for the property node say that it is "read -only" so what sets the value of Active Cell Position  for a Table Control?
    Regards,
    Kaspar
    Solved!
    Go to Solution.

    You set the active cell with a property node.  Once you select an active cell, you can do specific things to that cell and that cell alone, things like set the background color.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

Maybe you are looking for

  • Abap spool to pdf  as email

    Hi Gurus I have to send output of report as pdf attachment of the email. I have used Fm CONVERT_ABAPSPOOLJOB_2_PDF to convet spool request to pdf format. and SO_DOCUMENT_SEND_API1 Fm to send email. Its working Fine. But Now i need to send email by us

  • Trying to read a csv file

    Created a java program to read a .csv file but receiving an error when I try to run it. Here is program: import java.io.*; class TestRead { public static void main(File file) throws FileNotFoundException {try      {FileReader fr = new FileReader(file

  • KE30 - Characteristic in layout does not appear description

    Hi all, I have a query on my KE30 report where by the description of the characteristic does not appear as selection in change layout for object list display. For example, charateristic "customer" only appear value but there is no field in the select

  • Playing FLV in a layer - control problems

    I have several FLV files that I need to play in a layer that is hidden when page loads. If I set 'autoplay' in the parameters for the FLV player in my flash file, it of course, starts to play the video when the page loads (but is not seen). Once the

  • How to create a mp3 playlist compatable with the media server (storage link)

    Hi, I have setup the wrt160nl wireless router with the latest Firmware Version: 1.00.01 B17. Everything is working great. I can browse the artists, albums, song titles etc from my usb hard disk. What isn't working is the play lists. What format does