Ok-code to scroll down in a table control on batch input

Hello,
I'm trying to create a batch input session for transaction VA02 (Change  sales  order) :
I need to go scroll down in the table control of the screen (item -> Conditions) 3 times to delete the a line; In the batch input (SHDB), i go scroll down by clicking on the scroll bar of the table control, mark the line of the page and delete it.
The recording show me the ok-code /00 to scroll down (with BDC_CURSOR in the second line), but in the program it don't work, the ok do nothing the 3 times and mark the incorrect line.
Can anyone tell an idea of what is the correct ok-code to scroll down?
Thanks in advance
Alvaro
PD:  My SAP system is an ECC 6.0

Hi Alvaro
One time i had to do similar work for Creation of General Task List in PM module and this is how i did it
                         'X'      'SAPLCMDI'             '3500',
                         ' '      'BDC_CURSOR'          'RIHSTPX-DISP(01)',
                         ' '      'BDC_OKCODE'          '=P+',
                         ' '      'RIHSTPX-IDNRK(01)'    itab-idnrk,
                         ' '      'RIHSTPX-MENGE(01)'    itab-menge,
                         ' '      'RIHSTPX-MEINS(01)'    itab-meins,
                         ' '      'RIHSTPX-DISP(01)'     itab-disp.
I had to select line 1 hence you can see the position number ( 01 ) in the field name. As you can see based on this positioning you can select the appropriate line and make modifications as you like and also use okcode of  '=P+' to scroll done. Hope this  helps. Reward if appropriate.
Best Regards
Sid Arora

Similar Messages

  • Regarding page down in the table control veritcally

    Hi all,
              I have an issue regarding page down in the Table control in module pool , i.e when i m click the vertical scroll bar and going for page down then , the control is flowing to the next sceen which is not needed , and it shuld just scroll down and up vetically.
    Can anyone help me how to handle the page down event ?
    Thanks & regards,
    satya

    Table Controls: Examples with Scrolling
    The following example processes a table control with LOOP without parallel loop using an internal table. In addition to the scroll bar, the user can also carry out program-controlled scrolling with function codes.
    REPORT demo_dynpro_tabcont_loop.
    CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.
    DATA: ok_code TYPE sy-ucomm,
          save_ok TYPE sy-ucomm.
    DATA: itab TYPE TABLE OF demo_conn,
          fill TYPE i.
          TABLES demo_conn.
    DATA: lines TYPE i,
          limit TYPE i.
    SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab.
    CALL SCREEN 100.
    MODULE status_0100 OUTPUT.
      SET PF-STATUS 'SCREEN_100'.
      DESCRIBE TABLE itab LINES fill.
      flights-lines = fill.
    ENDMODULE.
    MODULE fill_table_control OUTPUT.
      READ TABLE itab INTO demo_conn INDEX flights-current_line.
    ENDMODULE.
    MODULE cancel INPUT.
      LEAVE PROGRAM.
    ENDMODULE.
    MODULE read_table_control INPUT.
      lines = sy-loopc.
      MODIFY itab FROM demo_conn INDEX flights-current_line.
    ENDMODULE.
    MODULE user_command_0100 INPUT.
      save_ok = ok_code.
      CLEAR ok_code.
      CASE save_ok.
        WHEN 'NEXT_LINE'.
          flights-top_line = flights-top_line + 1.
          limit = fill - lines + 1.
          IF flights-top_line > limit.
            flights-top_line = limit.
          ENDIF.
        WHEN 'PREV_LINE'.
          flights-top_line = flights-top_line - 1.
          IF flights-top_line < 0.
            flights-top_line = 0.
          ENDIF.
        WHEN 'NEXT_PAGE'.
          flights-top_line = flights-top_line + lines.
          limit = fill - lines + 1.
          IF flights-top_line > limit.
            flights-top_line = limit.
          ENDIF.
        WHEN 'PREV_PAGE'.
          flights-top_line = flights-top_line - lines.
          IF flights-top_line < 0.
            flights-top_line = 0.
          ENDIF.
        WHEN 'LAST_PAGE'.
          flights-top_line =  fill - lines + 1.
        WHEN 'FIRST_PAGE'.
          flights-top_line = 0.
      ENDCASE.
    ENDMODULE.
    The layout of screen 100 is:
    A resizable table control called FLIGHTS is defined. The fields of the table control are transferred from the structure DEMO_CONN in the ABAP Dictionary. The first two columns are lead columns. The corresponding fields are output fields. A title bar, column headers, and a selection column are created. The component MARK of type character with length 1 from structure DEMO_CONN is assigned to the selection column. You can select one column and several lines.
    It has the following flow logic:
    PROCESS BEFORE OUTPUT.
      MODULE status_0100.
      LOOP WITH CONTROL flights.
        MODULE fill_table_control.
    ENDLOOP.
    PROCESS AFTER INPUT.
      MODULE cancel AT EXIT-COMMAND.
      LOOP WITH CONTROL flights.
        MODULE read_table_control.
    ENDLOOP.
      MODULE user_command_0100.
    The system executes a loop at PBO and PAI using the table control FLIGHTS. During the PBO loop, a module is called to fill the table control from table ITAB of the ABAP program. During the PAI loop, a module is called to modify table ITAB.
    Before the PBO loop, in the module STATUS_0100 the current number of lines of the internal table ITAB is placed in component LINES of control structure FLIGHTS. This helps the system to correctly install the scroll bar of the table control.
    During the PBO loop, in the module FILL_TABLE_CONTROL the work area DEMO_CONN is filled with values from the internal table, where the row index corresponds to the current row of the table control.
    During the PAI loop, in the module READ_TABLE_CONTROL the current number of the loop SY-LOOPC in the table control is placed an auxiliary variable. The number is dependent on the size of the screen. The rows of the internal table, whose row index corresponds to the current row of the table control, are overwritten with the contents of the work area DEMO_CONN. User input is transferred from the input fields of the control to the internal table. In particular, the internal table also contains a flag in the column MARK to indicate whether the row of the table control is selected or not.
    After the PAI loop, user input is processed in the module USER_COMMAND. The GUI status SCREEN_100 provides the appropriate function codes. You can scroll line by line or page by page, or Goto the first or last page. You can implement scrolling by setting the component TOP_LINE of control structure FLIGHTS. For page-by-page scrolling the auxiliary variable that is filled in the PAI loop by SY-LOOPC is used as the step size.

  • Page down functionality in table control BDC-CJ02 tcode

    Hi Friends,
    I am doing a BDC with Table control for Tcode CJ02.
    When I reach certain number of records, say 13, the page down functionality doesnt work.I tried different ways like using the BDC_OKCODE as "=P" and "=P+".Also, I tried doing a recording by pressing the down key in the table contral, in SHDB, but none of them worked.
    Refered a post in SDN as well, but it doesnt hold any solution.
    Do throw some light on the same to achieve page down functionality for the bdc tcode CJ02.
    Thanks in advance.
    Shri.

    Hi,
    I already posted an answer to that here Re: BDC scroll down with OK_CODE '=P+':
    P+ (=P+ in the BDC) is not a universal function code, but only one which is defined in ABAP lists . So, 99% of time, it doesn't work for all others situations (like yours).
    Scrolling a table control is not so easy to do. When you record a page down on a table control in SHDB, you'll get probably a /00 which corresponds to Enter. When you play the recording, it won't scroll. The issue is that "page down" is processed in 2 parts, it changes the "top line" of the table control, and executes Enter. But it's not possible to record/play the "top line" information.
    The solution is that the program usually implements a function code:
    either "add new line"
    or "position at line"
    Sometimes, the function code is hidden so you must look at inside the program (or search SAP notes, like here: [SAP note 187946 (No positioning on PRT overview in routing)|https://service.sap.com/sap/support/notes/187946 ])
    And sometimes, there's no function code at all, and then you're stuck ! (or use SAP GUI scripting, but it may only work in dialog).
    For CJ02, I can't tell how to scroll through BDC, but anyway, there is a BAPI (don't remember the name, search the forum, it will be easy to find it), so you should always prefer them over BDC.
    Sandra

  • How do I execute some code when a line of a table control is selected?

    Hi,
    I would like to execute some code when a line of a table control is selected.  At the moment I have to select one or multiple rows and then press enter, this forces a screen refresh and my code is executed but I would like the code to be executed as soon as any line is selected.
    I've done something like this using ALV grids and object orientated code but is there a way of doing this in a normal non-OO table control?
    Thanks in advance.
    Gill

    Hi,
    U need to declare a char1 field for marking (mark field).  This will reflect with value 'X' in your tcontrol internal table for all the selected rows. 
    Now u need to handle the okcode for enter in your PAI.
    There u need to loop through the table for all marked fields.
    There after u can do what ever u want.
    Venkat.

  • How to Enable to vertical scroll bar in a table control

    Hi,
    I have created a table control with a wizard and later did some modifications on it. Problem I have now is that the vertical scroll bar is disabled on this table control. The end user wants to enter as many rows as possible, however as the scroll bar is disabled, he is not able to add the rows at the end (of the visible table control area).
    How do I enable the vertical scroll bar of the table control?
    Please help.
    Thanks,
    Vishal.

    Hello Vishal,
    In PBO.
    Create a Module and in the module increment the value of tbcl-lines.
    ex:
    Data : L type i.
    IN PBO.
    MODULE vertical_scroll_bar.
    MODULE vertical_scroll_bar.
    DESCRIBE TABLE itab lines L.
    <table control name>-lines = L + 10.
    ENDMODULE.
    Hope this solves your issue.
    Cheers,
    Suvendu

  • IB51, IB52 : Page up & Page Down option for table control disabled

    Hi experts,
    IB51, IB52 Page up & Page Down option for table control is disabled.
    We want to use these options in the table control while recording .
    Can any one tell us?
    Regards,
    Lakshmi

    Hi,
    You can refer to Note 379208 .
    The same is applicable in CRM too.
    Thanks ,
    Jomy

  • How to delete a row in table control(accepts only input)?

    Hi All,
    I have an empty table control which is only use for data input(this data will then be use to store information to a custom table). I have two buttons, Create Entry and Delete Entry.
    In my screenPainter for the table control, I have the checkbox w/SelColumn ticked and assign variable T_DATA-MARK on it.
    Please see the actual screenshots and code below:
    The aim of the table control is just to accept inputs, so the internal table in the PBO is always empty.
    Table Control Screen Painter ScreenShot and Actual SAP Output:
    http://img710.imageshack.us/img710/4751/tablecontrolrowdelete.jpg
    PBO
    PROCESS BEFORE OUTPUT.
      LOOP WITH CONTROL TC_ID.
        MODULE LOAD_TABLECTRL.
      ENDLOOP.
    module LOAD_TABLECTRL output.
      READ TABLE T_ID_CHECK INTO WA_ID_CHECK INDEX TC_ID-current_line.
      IF SY-SUBRC EQ 0.
        MOVE-CORRESPONDING T_ID_CHECK TO TC_ID.
      ELSE.
          "EXIT FROM STEP-LOOP.
          CLEAR ZQID_CHECK.
      ENDIF.
    PAI
    PROCESS AFTER INPUT.
       LOOP WITH CONTROL TC_ID.
         CHAIN.
          MODULE CHECK_ENTRIES     ON CHAIN-INPUT.     
          MODULE MODIFY_T_ID_CHECK ON CHAIN-INPUT.
          MODULE DELETE_ROW        ON CHAIN-INPUT
         ENDCHAIN.
       ENDLOOP.
    module CHECK_ENTRIES input.
      CASE ok_code.
        WHEN 'DEL'.
            PERFORM F_FILL_ITABCREATE USING ZQID_CHECK-MATNR
                                            ZQID_CHECK-LICHA
                                            ZQID_CHECK-LIFNR.
      ENDCASE.
    endmodule.    
    form F_FILL_ITABCREATE  using    us_zqid_check_matnr LIKE MARA-MATNR
                                     us_zqid_check_licha LIKE MCHA-LICHA
                                     us_zqid_check_lifnr LIKE LFA1-LIFNR.
      MOVE: us_zqid_check_matnr TO WA_ID_CHECK-MATNR,
            us_zqid_check_licha TO WA_ID_CHECK-LICHA,
            us_zqid_check_lifnr TO WA_ID_CHECK-LIFNR.
      APPEND WA_ID_CHECK TO T_ID_CHECK.
      CLEAR WA_ID_CHECK.
    endform.
    module MODIFY_T_ID_CHECK input.
    DATA W_TEMPMARK(1) TYPE C.
      MOVE: T_ID_CHECK-MARK TO W_TEMPMARK,
            W_TEMPMARK TO T_ID_CHECK-MARK.
    MODIFY T_ID_CHECK INDEX SY-TABIX TRANSPORTING MARK.
    endmodule.
    module DELETE_ROW input.
      LOOP AT T_ID_CHECK WHERE MARK EQ 'X'.
        DELETE T_ID_CHECK.
      ENDLOOP.
    endmodule.   
    Edited by: Jaime Cabanban on Jan 7, 2010 8:46 PM

    Debugging the PBO part after deletion will help you know why the rows are getting deleted
    This is the sap doc answer for you question regarding LINE.
    Controls the scroll bar of the table control. At LOOP without internal table, LINES has the initial value zero and must be set in the program so that the scroll bar can be used. At LOOP AT <itab> the system sets this component to the number of rows of the internal table, whenever the table control is processed for the first time. The initialization event of a table control is not determined uniquely. If the corresponding internal table is not fully created at this event, then the LINES variable receives an incorrect value. If LINES in the LOOP loop is smaller as the number of rows of the internal table, then the table control contains blank rows at the end.
    Therefore you should always set the LINES component explicitly in the ABAP program, including at LOOP AT <itab>. In this way you have full control over the dimensions of the vertical scroll bar and so can control the number of rows that are ready for input. Initialization should usually occur at PBO directly before the LOOP statement for the table control.

  • Drop down list in Table Control - Value disappeared after pressing ENTER

    Dear Gurus,
    I have a problem in one of my development where I used a table control in which one field is a drop down list.
    I used VRM_SET_VALUES and VRM_GET_VALUES for populating the values from the programand not use any domain level value table for that field.
    My problem is when I select one value from this list , and pressing enter , the value get disappeared. But if I use a domain for this field with value table then everything working properly.
    My doubt is am I doing some miss coding or using the VRM_ function modules improperly ?
    I am sharing some code with you
    in PAI :
    CALL FUNCTION 'VRM_GET_VALUES'
        EXPORTING
          id            = 'ITAB-FIELD3'    "This is drop down list element on screen
        IMPORTING
          values        = values[]    " even it is not the expor parameter...it will work..
       EXCEPTIONS
         id_not_found   = 1
         OTHERS         = 2.
      IF sy-subrc NE 0.
      No sy-subrc check required.
      ENDIF.
    IN PBO
    CALL FUNCTION 'VRM_SET_VALUES'
           EXPORTING
                id     = 'IVBAP-ERNAM'
                values = values[].
    Can you please help me.
    Thanks .

    HI,
    The link contains the list box creation, just check if this might help.
    Re: Getting values back from a listbox.
    Regards and Best wishes.

  • Implement Entry up/down & Page up/down functions in table control

    Hi,
    I have to implement entry up/down and page up/down functions in my table control. The logic is :-
    Suppose the entries in my table control currently are:-
    Called "Initial Position" :-
    a
    b
    c
    d
    e
    My "Cursor Position" or say my selection column is at 'c' value currently.
    If I press entry down, the result should be:-
    a
    b
    d
    c
    e
    i.e. c shifted one value down. If I press value up from "Initial Position", it should be :-
    a
    c
    b
    d
    e
    If I press page down from "initial position", the result should be
    a
    b
    d
    e
    c
    i.e. c has scrolled to the last entry. Similarly for page up, where the entry goes up to the first place and all entries move one position down.
    The problem i am facing is:-
    1) How to get index of entry selected?
    2) How to change table control contents at runtime?
    Thanks.
    Edited by: dumbledorearmy on Nov 23, 2010 12:25 PM

    Hi,
    Please check the function module - 'SCROLLING_IN_TABLE'.
    It give you some idea.
    Thanks.
    Anversha

  • Page Up and Page down functionality in table control

    Hi,
        I want to add two pushbuttons in the module pool screen which has a table control that fetches data from the transparent table. One pushbutton is for the page up and other is for page down. If my table control <say tab_ctrl1> has 75 records in total with shows 25 at time so with a single page down it should show next 25 rows of the data.
    thanks
    ekta

    Hi,
    Use the function module SCROLLING_IN_TABLE.
    For ok_code pass P- for previous page and P+ for next page.
    Example:
       DATA L_TC_NEW_TOP_LINE     TYPE I.
         CALL FUNCTION 'SCROLLING_IN_TABLE'
              EXPORTING
                   ENTRY_ACT             = Table_Control-TOP_LINE
                   ENTRY_FROM            = 1
                   ENTRY_TO              = Table_Control-LINES
                   LAST_PAGE_FULL        = 'X'
                   LOOPS                 = 25
                   OK_CODE               = 'P+'
                   OVERLAPPING           = 'X'
              IMPORTING
                   ENTRY_NEW             = L_TC_NEW_TOP_LINE
              EXCEPTIONS
    *              NO_ENTRY_OR_PAGE_ACT  = 01
    *              NO_ENTRY_TO           = 02
    *              NO_OK_CODE_OR_PAGE_GO = 03
                   OTHERS                = 0.
       Table_Control-TOP_LINE = L_TC_NEW_TOP_LINE.
    Regards,
    Sesh

  • Make cells of Table control grayed out(input disabled) based on condition

    Hello Experts,
    I have a requirement where the data is getting populated in table control from my custom tables.
    Now in three columns of the table control if the data is coming as blank from z table then I have to show the cell as editable so that user can put the data and it can be saved back in custom table but If some data is coming from custom table and it is shown in the table control then the cell should be grayed out(Non Editable).
    To achive this I'm using the Following piece of code but it is not working still.
    In PBO 
    loop at   gi_actual_tc
           into gw_actual_tc
           with control tc_actual
           cursor tc_actual-current_line.
           module tc_get_lines. 
    endloop.
    MODULE tc_get_lines OUTPUT.
    data : lv_index  TYPE sy-index,
           lv_index1 TYPE sy-index.
    lv_index = sy-tabix.
    CHECK gw_actual_tc-zlc_subcon IS NOT INITIAL.
    LOOP AT SCREEN.
      IF screen-name = 'GW_ACTUAL_TC-ZLC_SUBCON'.
         lv_index1 = sy-tabix.
         IF lv_index = lv_index1.
         screen-active  = 0.
         exit.
         ENDIF.
        screen-intensified = 1.
      ENDIF.
    MODIFY SCREEN.
    ENDLOOP.
    ENDMODULE.    
    Please let me know where I'm missing the trick here.
    Thanks,
    Jai

    hi ,
    LOOP AT SCREEN.  
    IF ( screen-name = 'GW_ACTUAL_TC-ZLC_SUBCON' AND
    gw_actual_tc-zlc_subcon IS NOT INITIAL )
    OR ( screen-name = ' GW_ACTUAL_TC-ZLC_SCWORK' AND
    gw_actual_tc-zlc_scwork IS NOT INITIAL )
    OR ( screen-name = 'GW_ACTUAL_TC-ZLC_VALJOB' AND
    gw_actual_tc-zlc_valjob IS NOT INITIAL ) .
    change code  to  below code  if it is character field 
    IF ( screen-name = 'GW_ACTUAL_TC-ZLC_SUBCON' AND
    gw_actual_tc-zlc_subcon IS  INITIAL )
    OR ( screen-name = ' GW_ACTUAL_TC-ZLC_SCWORK' AND
    gw_actual_tc-zlc_scwork IS  INITIAL )
    OR ( screen-name = 'GW_ACTUAL_TC-ZLC_VALJOB' AND
    gw_actual_tc-zlc_valjob IS  INITIAL ) .
    IF field is type P or I 
    then
    IF ( screen-name = 'GW_ACTUAL_TC-ZLC_SUBCON' AND
    gw_actual_tc-zlc_subcon =0 )
    OR ( screen-name = ' GW_ACTUAL_TC-ZLC_SCWORK' AND
    gw_actual_tc-zlc_scwork =0 )
    OR ( screen-name = 'GW_ACTUAL_TC-ZLC_VALJOB' AND
    gw_actual_tc-zlc_valjob =0 ) .
    screen-input = 1.
    MODIFY SCREEN .
    ENDIF.
    ENDLOOP.
    regards
    Deepak.

  • Table control lines cannot be controlled in Batch Input session ?

    I am using a program which creates Batch Input sessions for the transaction FCHR (Online cashed checks) . The second screen is that of a table control where the check number is entered.
         I observed that while doing SHDB, if we tick the default size then changing the desktop resolution has no effect on the number of lines in table control - we see 14 lines in both cases.However, when the batch input session is processed, the number of table control lines varies according to the resoution(9 lines for 800600 and approx 15 for 1024768). Selecting the 'Dynpro standard size' option while processing the session has no effect.
      I know call transaction with 'default' parameter in optparam will take care of this problem. But I want to know whether Batch Input Session is known to have a problem with different resolutions.

    HI..
    i had the same problem once.... i dealt in the following way
    while entering values in table control
    1) enter value in the first line
    2) look for button on application toolbar using which you can increment line
    3) you will not find difference for first line but you will find it when you insert second line and go for next line.
    4) now for every increment you will get table conrol as (02) if you are going for recording.
    this will surely solve all issue related to table control as it solved for me
    regards
    Edited by: Mohit Kumar on Feb 19, 2009 12:04 PM

  • 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

  • BDC: How to enter data in Table control (With wizard) using scrolling?

    Using BDC, I am trying to enter the data in the table control (with wizard).
    I want to know what is the specific command to scroll down in table control (With Wizard).
    While recording I am getting these steps:
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     /00
    When I use above command and run BDC, it does not scroll.
    Kindly let me know where am I going wrong.
    Thanks in advance for your kind help.
    Ashish

    The transaction is CK94
    and the BDC recording is :
              T     CK94
    SAPLCKBASCR1     0200     X
                   BDC_CURSOR     CKI94A-BDATJ
                   BDC_OKCODE     =ENTR
                   CKI94A-MATNR     10000789
                   CKI94A-WERKS     VA79
                   CKI94A-BDATJ     2005
                   CKI94A-MGTYP     ZDU01
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MISCH_VERH(02)
                   BDC_OKCODE     /00
                   CKI94B-MIXCOST_PC(01)
                   CKI94B-MIXCOST_PC(02)     X
                   CKI94B-MISCH_VERH(01)
                   CKI94B-MISCH_VERH(02)                    40
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     /00
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     /00
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MISCH_VERH(07)
                   BDC_OKCODE     /00
                   CKI94B-MIXCOST_PC(07)
                   CKI94B-MISCH_VERH(07)                    60
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     /00
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     /00
    SAPLCKBASCR1     0202     X
                   BDC_CURSOR     CKI94B-MATNR
                   BDC_OKCODE     =STOR
    BDC_OKCODE  '/00' is recorded when I scroll down in the table control.
    Thanks for your kind  concern.
    Ashish

  • How do I identify OK Code in table control in BDC (scroll up/down)?

    Hi. I have read a lot of very good posts and articles here in the forums about how to work with table controls when writing a BDC program. Unfortunately I haven't found any that address the specific issue that I'm having.
    I'm writing a program to update the line items of a Parked Document using transaction FBV2. I want to be able to insert a row at the end of the previously existing rows regardless of how many there are and I can't seem to figure out the correct OK Codes to scroll up or down, or page up or down within the table control so I can guarantee that I will get to the next available row.
    For example. I have a Parked Document with 13 line items. I would like to insert the new line item as row 14. I know that 10 rows will be displayed at run time on this screen according to my settings in the BDC call and want to scroll down 1 time and then enter the new data on the 4th line on the new set of rows.
    Does anyone have any experience with this, or can someone point me in the right direction where I might find this information?
    Thanks in advance,
    Andy

    Hi
    In my system I can't run that trx, anyway there's any ok-code for the scrolling, you can have only the okcode for the page up/down buttons.
    So you should try to understand how many rows a page can have, so if a page have 10 rows per page and you need to change the row 22, it means you have to simulate to press the page down twice and change the second row of third page.
    If you run your BDC by CALL TRANSACTION u should use the option OPTIONS FROM opt, here you indicate to use the standard size of the dynpro. In this way the size of table control is not screen resolution dependent.
    TABLES CTU_PARAMS.
    CTU_PARAMS-DEFSIZE = 'X'.
    CALL TRANSACTION 'FBV1'  USING ITAB
                                                OPTIONS FROM CTU_PARAMS.
    Max

Maybe you are looking for

  • Very slow Word file import on RoboHelp HTML 8

    Hello, I am currently using RoboHelp HTML 8.0.2 on Vista 64-bit and when I import Word files (both .doc and .docx) it takes a really long time to complete (10-15 minutes for a 200pg/50topic/10MB Word file). Is this normal? At the end of the process i

  • Acrobat toolbars - default to open?

    When I open Acrobat, all of my custom toolbars were previously displayed. I must have accidentally turned this off because, when I open a Acrobat now, the toolbars are hidden. I know how to get them to display again, but how do I return to the defaul

  • Sync Aperture and iTunes from second computer?

    Hi All. i've been reading up on articles related to this and I'm still a little confused. I am thinking that I'd like to sync my iPhone to my MacBookPro (right now I think? it is synced to the MacPro) so that I can travel with it and backup once in a

  • Photos taken on my iphone are white/blank?

    I'm having trouble viewing the photos I've taken as well as my sister's Iphone. What happens is the photo are there but there are white and are white on the photo stream but when you access the photos through instagram the photos can be viewed. Why a

  • "Seq Header Duplication" does anyone knows what this means?

    Hi, I have a SD project with several MPEG1 assets, Everything works well except when I try to burn the message "Seq Header Duplication" comes up in the log and the burn stops. Any Ideas? Thank you Alex