Mark tables

Hello!
I get a ID dokument with 200 tables in 1 box.
now 1 want to mark 50 tables, but it doesn´t work.
I can mark only one table but I have to mark more then one.("shift" doesn´t work)
How it works?
Please help me.
thx

I know that my english isn´t realy good 
I want select more than 1 tabel (but not all )
in this example I want select table1 und table 2,
I have to copy them to an other document.

Similar Messages

  • How to automatically update marked table

    Hi Friends,
    I am using Oracle SQL Developer and want to set the in Preferences menu that my actual selected and viewed database table is marked automatically in Connections/Tables menu.
    How can I set this function in Oracle SQL Developer.
    Br,
    Ugur

    There is currently no way to do this. I think it could be quite useful. You can raise an enhancement request in the SQL Developer exchange.

  • How to mark table text as placeholder text

    I have a Pages document that I would like to turn into a template. I have laid the document out on a table. Some of the table text I would like to mark as placeholder text. I can see the option on the Format ---> Advanced menu, and I can select table text and click to supposedly apply the option, but, the option is not applied. When I click the text in the template, it remains ordinary text. I can mark text that is in the body no problem, just not when it is in the table.
    Am I missing something?
    Thanks in advance for any advice or suggestion.

    itutorit wrote:
    Here's hoping Apple addresses this bug soon.
    Excuse me for bursting out laughing!
    Peter

  • Sequencially marking tables and illustrations?,, so that they auto re-number when rearranged?,,

    Help!
        I am now being tasked (and time crunched under the gun-Argh!) to drastically re-arrange and revise some of our larger technical documents which are loaded with tables and diagrams and illustrations and graphs (etc). The person whom used to do this muscled her way thru them by just renaming them, but often there are sentences that say 'See Table 14' that then becomes a painful mis leads.
        I know that InDesign must have this feature,, to sequencially tag a line of text somehow,, so that if pages are re-arranged, that text re-numbers according to sequence,, but I don't even know what this auto re-numbering function is called,,!!!  So it's hard to look it up. 
        Can someone give me some direction in this? All of our technical documents should be set up this way!  I am surprised that they are not.  I have a huge task ahead of me, once I figure out how to do it. 
       Thanks!
          Harvey

    You can number graphs, illustrations etc. using Bullets and Numbering in the paragraph styles.
    You can make a new list type for each different item, like graphs, and a list type for illustrations etc.
    http://help.adobe.com/en_US/indesign/cs/using/WSa285fff53dea4f8617383751001ea8cb3f-6da6a.h tml#WSa285fff53dea4f8617383751001ea8cb3f-6d9ba
    You could prefix the Numbering with "Figure " or "Illustration " etc.
    You can then use Cross References to link the place in text to the appropriate image.
    http://help.adobe.com/en_US/indesign/cs/using/WS9AD9A0DA-E10F-4d1e-9EB2-999FB61D21E8.html
    These are just the help files on these subjects, there are plenty of resources online.

  • Table control Dialog program

    I am Using table control wizard.once user click on button data will be populated in Table control from datatabase table
    once after getting data the lines which doesnot have data are disabled but
    user should be allowed to  enter and Update and delete data once after clicking
    ENTER Key  that data should be updated in the data base table.
    i am sending my program.
    SCREEN DESIGN .
    PROCESS BEFORE OUTPUT.
    *&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'TAB1'
      MODULE TAB1_CHANGE_TC_ATTR.
    *&SPWIZARD: MODULE TAB1_CHANGE_COL_ATTR.
      LOOP AT   IT_TAB3
           INTO WA_TAB3
           WITH CONTROL TAB1
           CURSOR TAB1-CURRENT_LINE.
        MODULE TAB1_GET_LINES.
    *&SPWIZARD:   MODULE TAB1_CHANGE_FIELD_ATTR
      ENDLOOP.
    * MODULE STATUS_1002.
    PROCESS AFTER INPUT.
    *&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'TAB1'
      LOOP AT IT_TAB3.
        CHAIN.
          FIELD WA_TAB3-VBELN.
          FIELD WA_TAB3-POSNR.
          MODULE TAB1_MODIFY ON CHAIN-REQUEST.
        endchain.
        FIELD WA_TAB3-SP1
          MODULE TAB1_MARK ON REQUEST.
      ENDLOOP.
    *  MODULE TAB1_BUTTON.
      MODULE TAB1_BUTTONIP.
      MODULE TAB1_USER_COMMAND.
    *&SPWIZARD: MODULE TAB1_CHANGE_TC_ATTR.
    *&SPWIZARD: MODULE TAB1_CHANGE_COL_ATTR.
    * MODULE USER_COMMAND_1002.
    PROGRAM  Z_VI_TABL2.
    TYPES: BEGIN OF TY_TAB3,
           SP1(2) TYPE C,
           VBELN TYPE VBELN_VL,
           POSNR TYPE POSNR_VL,
           END OF TY_TAB3.
    TYPES: BEGIN OF TY_FILL,
           OBJKY TYPE OBJKY,
           END OF TY_FILL.
    DATA : IT_TAB3 TYPE STANDARD TABLE OF TY_TAB3,
           WA_TAB3 TYPE TY_TAB3,
           IT_FILL TYPE STANDARD TABLE OF TY_FILL,
           WA_FILL TYPE TY_FILL,
           G_VBELN TYPE VBELN_VL,
           G_POSNR TYPE POSNR_VL.
    *&SPWIZARD: DECLARATION OF TABLECONTROL 'TAB1' ITSELF
    CONTROLS: TAB1 TYPE TABLEVIEW USING SCREEN 1002.
    *&SPWIZARD: LINES OF TABLECONTROL 'TAB1'
    DATA:     G_TAB1_LINES  LIKE SY-LOOPC.
    DATA:     OK_CODE LIKE SY-UCOMM.
    *&SPWIZARD: OUTPUT MODULE FOR TC 'TAB1'. DO NOT CHANGE THIS LINE!
    *&SPWIZARD: UPDATE LINES FOR EQUIVALENT SCROLLBAR
    MODULE TAB1_CHANGE_TC_ATTR OUTPUT.
      DESCRIBE TABLE IT_TAB3 LINES TAB1-lines.
    ENDMODULE.                    "TAB1_CHANGE_TC_ATTR OUTPUT
    *&SPWIZARD: OUTPUT MODULE FOR TC 'TAB1'. DO NOT CHANGE THIS LINE!
    *&SPWIZARD: GET LINES OF TABLECONTROL
    MODULE TAB1_GET_LINES OUTPUT.
      G_TAB1_LINES = SY-LOOPC.
    ENDMODULE.                    "TAB1_GET_LINES OUTPUT
    *&SPWIZARD: INPUT MODULE FOR TC 'TAB1'. DO NOT CHANGE THIS LINE!
    *&SPWIZARD: MODIFY TABLE
    MODULE TAB1_MODIFY INPUT.
    *  MODIFY IT_TAB3
    *    FROM WA_TAB3
    *    INDEX TAB1-CURRENT_LINE.
      WA_TAB3-POSNR = 10.
      APPEND WA_TAB3 TO IT_TAB3.
    ENDMODULE.                    "TAB1_MODIFY INPUT
    *&SPWIZARD: INPUT MODUL FOR TC 'TAB1'. DO NOT CHANGE THIS LINE!
    *&SPWIZARD: MARK TABLE
    MODULE TAB1_MARK INPUT.
      DATA: g_TAB1_wa2 like line of IT_TAB3.
      if TAB1-line_sel_mode = 1
      and WA_TAB3-SP1 = 'X'.
        loop at IT_TAB3 into g_TAB1_wa2
          where SP1 = 'X'.
          g_TAB1_wa2-SP1 = ''.
          modify IT_TAB3
            from g_TAB1_wa2
            transporting SP1.
        endloop.
      endif.
      MODIFY IT_TAB3
        FROM WA_TAB3
        INDEX TAB1-CURRENT_LINE.
    *    TRANSPORTING SP1.
    ENDMODULE.                    "TAB1_MARK INPUT
    *&SPWIZARD: INPUT MODULE FOR TC 'TAB1'. DO NOT CHANGE THIS LINE!
    *&SPWIZARD: PROCESS USER COMMAND
    MODULE TAB1_USER_COMMAND INPUT.
      OK_CODE = SY-UCOMM.
      PERFORM USER_OK_TC USING    'TAB1'
                                  'IT_TAB3'
                                  'SP1'
                         CHANGING OK_CODE.
      SY-UCOMM = OK_CODE.
    ENDMODULE.                    "TAB1_USER_COMMAND INPUT
    *   INCLUDE TABLECONTROL_FORMS                                         *
    *&      Form  USER_OK_TC                                               *
    FORM USER_OK_TC USING    P_TC_NAME TYPE DYNFNAM
                             P_TABLE_NAME
                             P_MARK_NAME
                    CHANGING P_OK      LIKE SY-UCOMM.
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA: L_OK              TYPE SY-UCOMM,
            L_OFFSET          TYPE I.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
    *&SPWIZARD: Table control specific operations                          *
    *&SPWIZARD: evaluate TC name and operations                            *
      SEARCH P_OK FOR P_TC_NAME.
      IF SY-SUBRC <> 0.
        EXIT.
      ENDIF.
      L_OFFSET = STRLEN( P_TC_NAME ) + 1.
      L_OK = P_OK+L_OFFSET.
    *&SPWIZARD: execute general and TC specific operations                 *
      CASE L_OK.
        WHEN 'INSR'.                      "insert row
          PERFORM FCODE_INSERT_ROW USING    P_TC_NAME
                                            P_TABLE_NAME.
          CLEAR P_OK.
        WHEN 'DELE'.                      "delete row
          PERFORM FCODE_DELETE_ROW USING    P_TC_NAME
                                            P_TABLE_NAME
                                            P_MARK_NAME.
          CLEAR P_OK.
        WHEN 'P--' OR                     "top of list
             'P-'  OR                     "previous page
             'P+'  OR                     "next page
             'P++'.                       "bottom of list
          PERFORM COMPUTE_SCROLLING_IN_TC USING P_TC_NAME
                                                L_OK.
          CLEAR P_OK.
    *     WHEN 'L--'.                       "total left
    *       PERFORM FCODE_TOTAL_LEFT USING P_TC_NAME.
    *     WHEN 'L-'.                        "column left
    *       PERFORM FCODE_COLUMN_LEFT USING P_TC_NAME.
    *     WHEN 'R+'.                        "column right
    *       PERFORM FCODE_COLUMN_RIGHT USING P_TC_NAME.
    *     WHEN 'R++'.                       "total right
    *       PERFORM FCODE_TOTAL_RIGHT USING P_TC_NAME.
        WHEN 'MARK'.                      "mark all filled lines
          PERFORM FCODE_TC_MARK_LINES USING P_TC_NAME
                                            P_TABLE_NAME
                                            P_MARK_NAME   .
          CLEAR P_OK.
        WHEN 'DMRK'.                      "demark all filled lines
          PERFORM FCODE_TC_DEMARK_LINES USING P_TC_NAME
                                              P_TABLE_NAME
                                              P_MARK_NAME .
          CLEAR P_OK.
    *     WHEN 'SASCEND'   OR
    *          'SDESCEND'.                  "sort column
    *       PERFORM FCODE_SORT_TC USING P_TC_NAME
    *                                   l_ok.
      ENDCASE.
    ENDFORM.                              " USER_OK_TC
    *&      Form  FCODE_INSERT_ROW                                         *
    FORM fcode_insert_row
                  USING    P_TC_NAME           TYPE DYNFNAM
                           P_TABLE_NAME             .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA L_LINES_NAME       LIKE FELD-NAME.
      DATA L_SELLINE          LIKE SY-STEPL.
      DATA L_LASTLINE         TYPE I.
      DATA L_LINE             TYPE I.
      DATA L_TABLE_NAME       LIKE FELD-NAME.
      FIELD-SYMBOLS <TC>                 TYPE CXTAB_CONTROL.
      FIELD-SYMBOLS <TABLE>              TYPE STANDARD TABLE.
      FIELD-SYMBOLS <LINES>              TYPE I.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (P_TC_NAME) TO <TC>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE P_TABLE_NAME '[]' INTO L_TABLE_NAME. "table body
      ASSIGN (L_TABLE_NAME) TO <TABLE>.                "not headerline
    *&SPWIZARD: get looplines of TableControl                              *
      CONCATENATE 'G_' P_TC_NAME '_LINES' INTO L_LINES_NAME.
      ASSIGN (L_LINES_NAME) TO <LINES>.
    *&SPWIZARD: get current line                                           *
      GET CURSOR LINE L_SELLINE.
      IF SY-SUBRC <> 0.                   " append line to table
        L_SELLINE = <TC>-LINES + 1.
    *&SPWIZARD: set top line                                               *
        IF L_SELLINE > <LINES>.
          <TC>-TOP_LINE = L_SELLINE - <LINES> + 1 .
        ELSE.
          <TC>-TOP_LINE = 1.
        ENDIF.
      ELSE.                               " insert line into table
        L_SELLINE = <TC>-TOP_LINE + L_SELLINE - 1.
        L_LASTLINE = <TC>-TOP_LINE + <LINES> - 1.
      ENDIF.
    *&SPWIZARD: set new cursor line                                        *
      L_LINE = L_SELLINE - <TC>-TOP_LINE + 1.
    *&SPWIZARD: insert initial line                                        *
      INSERT INITIAL LINE INTO <TABLE> INDEX L_SELLINE.
      <TC>-LINES = <TC>-LINES + 1.
    *&SPWIZARD: set cursor                                                 *
      SET CURSOR LINE L_LINE.
    ENDFORM.                              " FCODE_INSERT_ROW
    *&      Form  FCODE_DELETE_ROW                                         *
    FORM fcode_delete_row
                  USING    P_TC_NAME           TYPE DYNFNAM
                           P_TABLE_NAME
                           P_MARK_NAME   .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA L_TABLE_NAME       LIKE FELD-NAME.
      FIELD-SYMBOLS <TC>         TYPE cxtab_control.
      FIELD-SYMBOLS <TABLE>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <WA>.
      FIELD-SYMBOLS <MARK_FIELD>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (P_TC_NAME) TO <TC>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE P_TABLE_NAME '[]' INTO L_TABLE_NAME. "table body
      ASSIGN (L_TABLE_NAME) TO <TABLE>.                "not headerline
    *&SPWIZARD: delete marked lines                                        *
      DESCRIBE TABLE <TABLE> LINES <TC>-LINES.
      LOOP AT <TABLE> ASSIGNING <WA>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT P_MARK_NAME OF STRUCTURE <WA> TO <MARK_FIELD>.
        IF <MARK_FIELD> = 'X'.
          DELETE <TABLE> INDEX SYST-TABIX.
          IF SY-SUBRC = 0.
            <TC>-LINES = <TC>-LINES - 1.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.                              " FCODE_DELETE_ROW
    *&      Form  COMPUTE_SCROLLING_IN_TC
    *       text
    *      -->P_TC_NAME  name of tablecontrol
    *      -->P_OK       ok code
    FORM COMPUTE_SCROLLING_IN_TC USING    P_TC_NAME
                                          P_OK.
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA L_TC_NEW_TOP_LINE     TYPE I.
      DATA L_TC_NAME             LIKE FELD-NAME.
      DATA L_TC_LINES_NAME       LIKE FELD-NAME.
      DATA L_TC_FIELD_NAME       LIKE FELD-NAME.
      FIELD-SYMBOLS <TC>         TYPE cxtab_control.
      FIELD-SYMBOLS <LINES>      TYPE I.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (P_TC_NAME) TO <TC>.
    *&SPWIZARD: get looplines of TableControl                              *
      CONCATENATE 'G_' P_TC_NAME '_LINES' INTO L_TC_LINES_NAME.
      ASSIGN (L_TC_LINES_NAME) TO <LINES>.
    *&SPWIZARD: is no line filled?                                         *
      IF <TC>-LINES = 0.
    *&SPWIZARD: yes, ...                                                   *
        L_TC_NEW_TOP_LINE = 1.
      ELSE.
    *&SPWIZARD: no, ...                                                    *
        CALL FUNCTION 'SCROLLING_IN_TABLE'
             EXPORTING
                  ENTRY_ACT             = <TC>-TOP_LINE
                  ENTRY_FROM            = 1
                  ENTRY_TO              = <TC>-LINES
                  LAST_PAGE_FULL        = 'X'
                  LOOPS                 = <LINES>
                  OK_CODE               = P_OK
                  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.
      ENDIF.
    *&SPWIZARD: get actual tc and column                                   *
      GET CURSOR FIELD L_TC_FIELD_NAME
                 AREA  L_TC_NAME.
      IF SYST-SUBRC = 0.
        IF L_TC_NAME = P_TC_NAME.
    *&SPWIZARD: et actual column                                           *
          SET CURSOR FIELD L_TC_FIELD_NAME LINE 1.
        ENDIF.
      ENDIF.
    *&SPWIZARD: set the new top line                                       *
      <TC>-TOP_LINE = L_TC_NEW_TOP_LINE.
    ENDFORM.                              " COMPUTE_SCROLLING_IN_TC
    *&      Form  FCODE_TC_MARK_LINES
    *       marks all TableControl lines
    *      -->P_TC_NAME  name of tablecontrol
    FORM FCODE_TC_MARK_LINES USING P_TC_NAME
                                   P_TABLE_NAME
                                   P_MARK_NAME.
    *&SPWIZARD: EGIN OF LOCAL DATA-----------------------------------------*
      DATA L_TABLE_NAME       LIKE FELD-NAME.
      FIELD-SYMBOLS <TC>         TYPE cxtab_control.
      FIELD-SYMBOLS <TABLE>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <WA>.
      FIELD-SYMBOLS <MARK_FIELD>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (P_TC_NAME) TO <TC>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE P_TABLE_NAME '[]' INTO L_TABLE_NAME. "table body
      ASSIGN (L_TABLE_NAME) TO <TABLE>.                "not headerline
    *&SPWIZARD: mark all filled lines                                      *
      LOOP AT <TABLE> ASSIGNING <WA>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT P_MARK_NAME OF STRUCTURE <WA> TO <MARK_FIELD>.
        <MARK_FIELD> = 'X'.
      ENDLOOP.
    ENDFORM.                                          "fcode_tc_mark_lines
    *&      Form  FCODE_TC_DEMARK_LINES
    *       demarks all TableControl lines
    *      -->P_TC_NAME  name of tablecontrol
    FORM FCODE_TC_DEMARK_LINES USING P_TC_NAME
                                     P_TABLE_NAME
                                     P_MARK_NAME .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA L_TABLE_NAME       LIKE FELD-NAME.
      FIELD-SYMBOLS <TC>         TYPE cxtab_control.
      FIELD-SYMBOLS <TABLE>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <WA>.
      FIELD-SYMBOLS <MARK_FIELD>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (P_TC_NAME) TO <TC>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE P_TABLE_NAME '[]' INTO L_TABLE_NAME. "table body
      ASSIGN (L_TABLE_NAME) TO <TABLE>.                "not headerline
    *&SPWIZARD: demark all filled lines                                    *
      LOOP AT <TABLE> ASSIGNING <WA>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT P_MARK_NAME OF STRUCTURE <WA> TO <MARK_FIELD>.
        <MARK_FIELD> = SPACE.
      ENDLOOP.
    ENDFORM.                                          "fcode_tc_mark_lines
    *&      Module  TAB1_BUTTON  INPUT
    *       text
    MODULE TAB1_BUTTONIP.
      CASE SY-UCOMM.
        WHEN 'DELI'.
          REFRESH IT_TAB3.
          SELECT OBJKY
                 INTO TABLE IT_FILL
                 FROM DRAD
                 WHERE DOKNR = 'T-F122' AND
                       DOKOB = 'LIPS'.
          IF SY-SUBRC = 0.
            LOOP AT IT_FILL INTO WA_FILL.
              wa_tab3-vbeln = WA_FILL-OBJKY+0(10).
              wa_tab3-posnr = WA_FILL-OBJKY+10(4).
              APPEND wa_tab3 TO IT_TAB3.
            ENDLOOP.
            DELETE ADJACENT DUPLICATES FROM IT_TAB3.
         ENDIF.
      ENDCASE.

    hi Sonarali,
    this FM is of no use to you.
    in your PAI you have to loop at the table control table and put a method here you read the lines and save it.
    if you use wizard to create a table control it will automatically give the code to you...

  • Sorting not working if table linked to another table

    Got a table with student marks:
    Table 1 student
    mark
    A
    98
    B
    79
    C
    82
    if I copy/paste the marks to another table then sort (ascending, sort by B entire table), it is sorting as expected:
    Table 2 student
    Mark
    B
    79
    C
    82
    A
    98
    if instead I go in Table 2 and enter a formula in B2 to get the mark from table 1 (=Table1::B2), fill down the cells, Table 2 will not sort correctly and output this instead!!!!:
    Table 2 student
    Mark
    B
    98
    C
    79
    A
    82
    Yet another bug and it got submitted to Apple but if more users complain as well (using Provide Numbers Feedback), we might finally get Apple to release a bug-free version of Numbers that works as well as Excel for such basic tasks.

    squarebox is styled in three different places
    http://mljdesigns.com.au/Beaumaris%20North_2-2013/index-beaunps4.css line#513
    http://mljdesigns.com.au/Beaumaris%20North_2-2013/index-beaunps4.css line#623
    In the main document line#10
    I do noy know if this has anything to do with your problem as I cannot fault the position of the image.
    You may also want to have a look at line#104 of the main document where there is a stray ending division tag.

  • How to perform 'block selection' in table control?

    Hi,
    I'm looking for an easy way to implement block selection in a table control (i.e. select one line, hit 'block select' button, select a second line, hit 'block select' button again, and all lines between first and last are selected).
    I'm currently with a customer who is on 4.0b, so I can't use the wizard, it didn't exist back then.
    I hope someone knows
    regards,
    rs

    Rob,
    I generated a quick screen with wizard doing the multiple select.  This is the code chucks it generated
    in _TOP  first part is my definition of the table to be displayed and the one column on it.
    TABLES:   zsd_act_salespr.
    DATA:
      BEGIN OF wk_rec.
            INCLUDE STRUCTURE zsd_act_salespr.
    DATA:
        sel    TYPE c,
      END OF wk_rec,
      it_wk   LIKE STANDARD TABLE OF wk_rec.
       controls: TBLCLT_MAIN type tableview using screen 0100.   " Table Control on screen
    in I01
    *&spwizard: input modul for tc 'TBLCLT_MAIN'. do not change this line!
    *&spwizard: mark table
    module TBLCLT_MAIN_mark input.
      data: g_TBLCLT_MAIN_wa2 like line of IT_WK.
      if TBLCLT_MAIN-line_sel_mode = 1.
         loop at IT_WK into g_TBLCLT_MAIN_wa2
           where SEL = 'X'.
           g_TBLCLT_MAIN_wa2-SEL = ''.
           modify IT_WK
             from g_TBLCLT_MAIN_wa2
             transporting SEL.
         endloop.
      endif.
      modify IT_WK
        from WK_REC
        index TBLCLT_MAIN-current_line
        transporting SEL.
    endmodule.
    in the screen workflow
    PROCESS BEFORE OUTPUT.
    *&spwizard: pbo flow logic for tablecontrol 'TBLCLT_MAIN'
      module TBLCLT_MAIN_change_tc_attr.
    *&spwizard: module TBLCLT_MAIN_change_col_attr.
      loop at   IT_WK
           into WK_REC
           with control TBLCLT_MAIN
           cursor TBLCLT_MAIN-current_line.
    *&spwizard:   module TBLCLT_MAIN_change_field_attr
      endloop.
    PROCESS AFTER INPUT.
    *&spwizard: pai flow logic for tablecontrol 'TBLCLT_MAIN'
      loop at IT_WK.
        chain.
          field WK_REC-SPNUM.
        endchain.
        field WK_REC-SEL
          module TBLCLT_MAIN_mark on request.
      endloop.
    *&spwizard: module TBLCLT_MAIN_change_tc_attr.
    *&spwizard: module TBLCLT_MAIN_change_col_attr.
    in the O01
    *&spwizard: output module for tc 'TBLCLT_MAIN'. do not change this line!
    *&spwizard: update lines for equivalent scrollbar
    module TBLCLT_MAIN_change_tc_attr output.
      describe table IT_WK lines TBLCLT_MAIN-lines.
    endmodule.
    in the F01 nothing
    Edited by: Paul Chapman on Apr 24, 2008 4:56 PM

  • 'how to code for table control wizard in module pool program

    Hi Gurus,
    Please provide me a sample code of table control wizard...
    Thanks in advance!!!!
    Regards,
    Kranthi

    Hi Kranti,
    check this code... it should be helpful
    *& Module pool       Z_TABLE_CONTROL_WIZARD_DEMO                       *
    PROGRAM  z_table_control_wizard_demo             .
    DATA: BEGIN OF lt_vbak OCCURS 0,
           flag  TYPE c,
           vbeln TYPE vbeln_va,
           netwr TYPE netwr,
           kunnr TYPE kunnr,
          END OF lt_vbak.
    DATA: sfkunnr TYPE kunnr.
    *&spwizard: declaration of tablecontrol 'TCONTROL' itself
    CONTROLS: tcontrol TYPE TABLEVIEW USING SCREEN 9000.
    *&spwizard: lines of tablecontrol 'TCONTROL'
    DATA:     g_tcontrol_lines  LIKE sy-loopc.
    DATA:     ok_code LIKE sy-ucomm.
    *&spwizard: output module for tc 'TCONTROL'. do not change this line!
    *&spwizard: update lines for equivalent scrollbar
    MODULE tcontrol_change_tc_attr OUTPUT.
      DESCRIBE TABLE lt_vbak LINES tcontrol-lines.
    ENDMODULE.                    "TCONTROL_change_tc_attr OUTPUT
    *&spwizard: output module for tc 'TCONTROL'. do not change this line!
    *&spwizard: get lines of tablecontrol
    MODULE tcontrol_get_lines OUTPUT.
      g_tcontrol_lines = sy-loopc.
    ENDMODULE.                    "TCONTROL_get_lines OUTPUT
    *&spwizard: input module for tc 'TCONTROL'. do not change this line!
    *&spwizard: modify table
    MODULE tcontrol_modify INPUT.
      MODIFY lt_vbak
        INDEX tcontrol-current_line.
    ENDMODULE.                    "TCONTROL_modify INPUT
    *&spwizard: input modul for tc 'TCONTROL'. do not change this line!
    *&spwizard: mark table
    MODULE tcontrol_mark INPUT.
      DATA: g_tcontrol_wa2 LIKE LINE OF lt_vbak.
      IF tcontrol-line_sel_mode = 1.
        LOOP AT lt_vbak INTO g_tcontrol_wa2
          WHERE flag = 'X'.
          g_tcontrol_wa2-flag = ''.
          MODIFY lt_vbak
            FROM g_tcontrol_wa2
            TRANSPORTING flag.
        ENDLOOP.
      ENDIF.
      MODIFY lt_vbak
        INDEX tcontrol-current_line
        TRANSPORTING flag.
    ENDMODULE.                    "TCONTROL_mark INPUT
    *&spwizard: input module for tc 'TCONTROL'. do not change this line!
    *&spwizard: process user command
    MODULE tcontrol_user_command INPUT.
      ok_code = sy-ucomm.
      PERFORM user_ok_tc USING    'TCONTROL'
                                  'LT_VBAK'
                                  'FLAG'
                         CHANGING ok_code.
      sy-ucomm = ok_code.
    ENDMODULE.                    "TCONTROL_user_command INPUT
    *   INCLUDE TABLECONTROL_FORMS                                         *
    *&      Form  USER_OK_TC                                               *
    FORM user_ok_tc USING    p_tc_name TYPE dynfnam
                             p_table_name
                             p_mark_name
                    CHANGING p_ok      LIKE sy-ucomm.
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA: l_ok              TYPE sy-ucomm,
            l_offset          TYPE i.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
    *&SPWIZARD: Table control specific operations                          *
    *&SPWIZARD: evaluate TC name and operations                            *
      SEARCH p_ok FOR p_tc_name.
      IF sy-subrc <> 0.
        EXIT.
      ENDIF.
      l_offset = STRLEN( p_tc_name ) + 1.
      l_ok = p_ok+l_offset.
    *&SPWIZARD: execute general and TC specific operations                 *
      CASE l_ok.
        WHEN 'INSR'.                      "insert row
          PERFORM fcode_insert_row USING    p_tc_name
                                            p_table_name.
          CLEAR p_ok.
        WHEN 'DELE'.                      "delete row
          PERFORM fcode_delete_row USING    p_tc_name
                                            p_table_name
                                            p_mark_name.
          CLEAR p_ok.
        WHEN 'P--' OR                     "top of list
             'P-'  OR                     "previous page
             'P+'  OR                     "next page
             'P++'.                       "bottom of list
          PERFORM compute_scrolling_in_tc USING p_tc_name
                                                l_ok.
          CLEAR p_ok.
    *     WHEN 'L--'.                       "total left
    *       PERFORM FCODE_TOTAL_LEFT USING P_TC_NAME.
    *     WHEN 'L-'.                        "column left
    *       PERFORM FCODE_COLUMN_LEFT USING P_TC_NAME.
    *     WHEN 'R+'.                        "column right
    *       PERFORM FCODE_COLUMN_RIGHT USING P_TC_NAME.
    *     WHEN 'R++'.                       "total right
    *       PERFORM FCODE_TOTAL_RIGHT USING P_TC_NAME.
        WHEN 'MARK'.                      "mark all filled lines
          PERFORM fcode_tc_mark_lines USING p_tc_name
                                            p_table_name
                                            p_mark_name   .
          CLEAR p_ok.
        WHEN 'DMRK'.                      "demark all filled lines
          PERFORM fcode_tc_demark_lines USING p_tc_name
                                              p_table_name
                                              p_mark_name .
          CLEAR p_ok.
    *     WHEN 'SASCEND'   OR
    *          'SDESCEND'.                  "sort column
    *       PERFORM FCODE_SORT_TC USING P_TC_NAME
    *                                   l_ok.
      ENDCASE.
    ENDFORM.                              " USER_OK_TC
    *&      Form  FCODE_INSERT_ROW                                         *
    FORM fcode_insert_row
                  USING    p_tc_name           TYPE dynfnam
                           p_table_name             .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA l_lines_name       LIKE feld-name.
      DATA l_selline          LIKE sy-stepl.
      DATA l_lastline         TYPE i.
      DATA l_line             TYPE i.
      DATA l_table_name       LIKE feld-name.
      FIELD-SYMBOLS <tc>                 TYPE cxtab_control.
      FIELD-SYMBOLS <table>              TYPE STANDARD TABLE.
      FIELD-SYMBOLS <lines>              TYPE i.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (p_tc_name) TO <tc>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE p_table_name '[]' INTO l_table_name. "table body
      ASSIGN (l_table_name) TO <table>.                "not headerline
    *&SPWIZARD: get looplines of TableControl                              *
      CONCATENATE 'G_' p_tc_name '_LINES' INTO l_lines_name.
      ASSIGN (l_lines_name) TO <lines>.
    *&SPWIZARD: get current line                                           *
      GET CURSOR LINE l_selline.
      IF sy-subrc <> 0.                   " append line to table
        l_selline = <tc>-lines + 1.
    *&SPWIZARD: set top line                                               *
        IF l_selline > <lines>.
          <tc>-top_line = l_selline - <lines> + 1 .
        ELSE.
          <tc>-top_line = 1.
        ENDIF.
      ELSE.                               " insert line into table
        l_selline = <tc>-top_line + l_selline - 1.
        l_lastline = <tc>-top_line + <lines> - 1.
      ENDIF.
    *&SPWIZARD: set new cursor line                                        *
      l_line = l_selline - <tc>-top_line + 1.
    *&SPWIZARD: insert initial line                                        *
      INSERT INITIAL LINE INTO <table> INDEX l_selline.
      <tc>-lines = <tc>-lines + 1.
    *&SPWIZARD: set cursor                                                 *
      SET CURSOR LINE l_line.
    ENDFORM.                              " FCODE_INSERT_ROW
    *&      Form  FCODE_DELETE_ROW                                         *
    FORM fcode_delete_row
                  USING    p_tc_name           TYPE dynfnam
                           p_table_name
                           p_mark_name   .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA l_table_name       LIKE feld-name.
      FIELD-SYMBOLS <tc>         TYPE cxtab_control.
      FIELD-SYMBOLS <table>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <wa>.
      FIELD-SYMBOLS <mark_field>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (p_tc_name) TO <tc>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE p_table_name '[]' INTO l_table_name. "table body
      ASSIGN (l_table_name) TO <table>.                "not headerline
    *&SPWIZARD: delete marked lines                                        *
      DESCRIBE TABLE <table> LINES <tc>-lines.
      LOOP AT <table> ASSIGNING <wa>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
        IF <mark_field> = 'X'.
          DELETE <table> INDEX syst-tabix.
          IF sy-subrc = 0.
            <tc>-lines = <tc>-lines - 1.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.                              " FCODE_DELETE_ROW
    *&      Form  COMPUTE_SCROLLING_IN_TC
    *       text
    *      -->P_TC_NAME  name of tablecontrol
    *      -->P_OK       ok code
    FORM compute_scrolling_in_tc USING    p_tc_name
                                          p_ok.
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA l_tc_new_top_line     TYPE i.
      DATA l_tc_name             LIKE feld-name.
      DATA l_tc_lines_name       LIKE feld-name.
      DATA l_tc_field_name       LIKE feld-name.
      FIELD-SYMBOLS <tc>         TYPE cxtab_control.
      FIELD-SYMBOLS <lines>      TYPE i.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (p_tc_name) TO <tc>.
    *&SPWIZARD: get looplines of TableControl                              *
      CONCATENATE 'G_' p_tc_name '_LINES' INTO l_tc_lines_name.
      ASSIGN (l_tc_lines_name) TO <lines>.
    *&SPWIZARD: is no line filled?                                         *
      IF <tc>-lines = 0.
    *&SPWIZARD: yes, ...                                                   *
        l_tc_new_top_line = 1.
      ELSE.
    *&SPWIZARD: no, ...                                                    *
        CALL FUNCTION 'SCROLLING_IN_TABLE'
             EXPORTING
                  entry_act             = <tc>-top_line
                  entry_from            = 1
                  entry_to              = <tc>-lines
                  last_page_full        = 'X'
                  loops                 = <lines>
                  ok_code               = p_ok
                  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.
      ENDIF.
    *&SPWIZARD: get actual tc and column                                   *
      GET CURSOR FIELD l_tc_field_name
                 AREA  l_tc_name.
      IF syst-subrc = 0.
        IF l_tc_name = p_tc_name.
    *&SPWIZARD: et actual column                                           *
          SET CURSOR FIELD l_tc_field_name LINE 1.
        ENDIF.
      ENDIF.
    *&SPWIZARD: set the new top line                                       *
      <tc>-top_line = l_tc_new_top_line.
    ENDFORM.                              " COMPUTE_SCROLLING_IN_TC
    *&      Form  FCODE_TC_MARK_LINES
    *       marks all TableControl lines
    *      -->P_TC_NAME  name of tablecontrol
    FORM fcode_tc_mark_lines USING p_tc_name
                                   p_table_name
                                   p_mark_name.
    *&SPWIZARD: EGIN OF LOCAL DATA-----------------------------------------*
      DATA l_table_name       LIKE feld-name.
      FIELD-SYMBOLS <tc>         TYPE cxtab_control.
      FIELD-SYMBOLS <table>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <wa>.
      FIELD-SYMBOLS <mark_field>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (p_tc_name) TO <tc>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE p_table_name '[]' INTO l_table_name. "table body
      ASSIGN (l_table_name) TO <table>.                "not headerline
    *&SPWIZARD: mark all filled lines                                      *
      LOOP AT <table> ASSIGNING <wa>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
        <mark_field> = 'X'.
      ENDLOOP.
    ENDFORM.                                          "fcode_tc_mark_lines
    *&      Form  FCODE_TC_DEMARK_LINES
    *       demarks all TableControl lines
    *      -->P_TC_NAME  name of tablecontrol
    FORM fcode_tc_demark_lines USING p_tc_name
                                     p_table_name
                                     p_mark_name .
    *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------*
      DATA l_table_name       LIKE feld-name.
      FIELD-SYMBOLS <tc>         TYPE cxtab_control.
      FIELD-SYMBOLS <table>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <wa>.
      FIELD-SYMBOLS <mark_field>.
    *&SPWIZARD: END OF LOCAL DATA------------------------------------------*
      ASSIGN (p_tc_name) TO <tc>.
    *&SPWIZARD: get the table, which belongs to the tc                     *
      CONCATENATE p_table_name '[]' INTO l_table_name. "table body
      ASSIGN (l_table_name) TO <table>.                "not headerline
    *&SPWIZARD: demark all filled lines                                    *
      LOOP AT <table> ASSIGNING <wa>.
    *&SPWIZARD: access to the component 'FLAG' of the table header         *
        ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
        <mark_field> = space.
      ENDLOOP.
    ENDFORM.                                          "fcode_tc_mark_lines
    *&      Module  STATUS_9000  OUTPUT
    *       text
    MODULE status_9000 OUTPUT.
      SET PF-STATUS 'S9000'.
      SET TITLEBAR 'T9000'.
    ENDMODULE.                 " STATUS_9000  OUTPUT
    *&      Module  USER_COMMAND_9000  INPUT
    *       text
    MODULE user_command_9000 INPUT.
      CASE sy-ucomm.
        WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
          LEAVE TO SCREEN 0.
        WHEN 'DISP'.
          SELECT vbeln netwr kunnr INTO CORRESPONDING FIELDS OF TABLE lt_vbak
          FROM vbak
          WHERE kunnr = sfkunnr.
    *    LEAVE TO LIST-PROCESSING [AND RETURN TO SCREEN <nnnn>].
    *    By default, the dialog processor returns to the PBO processing of
    *    the screen from which the list processor was called. The optional
    *    addition AND RETURN TO SCREEN allows you to specify a different
    *    screen in the current screen sequence at whose PBO event you want
    *    to resume processing.
        when 'LIST'.
        LEAVE TO LIST-PROCESSING.
        WRITE:/ 'Time  :', SY-UZEIT.
        LOOP AT LT_VBAK.
        WRITE:/ LT_VBAK-VBELN,
                LT_VBAK-NETWR,
                LT_VBAK-KUNNR.
        ENDLOOP.
        WHEN 'SUBM'.
    *& You can call executable programs from other ABAP programs using the
    *& following statement:
    *& SUBMIT <rep>|(<field>) [AND RETURN] [<options>].
          SUBMIT z_submit_report VIA SELECTION-SCREEN AND RETURN.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_9000  INPUT
                                                     TABLE CONTROL WIZARD SE51 CODE
    PROCESS BEFORE OUTPUT.
    *&spwizard: pbo flow logic for tablecontrol 'TCONTROL'
      module TCONTROL_change_tc_attr.
    *&spwizard: module TCONTROL_change_col_attr.
      loop at   LT_VBAK
           with control TCONTROL
           cursor TCONTROL-current_line.
        module TCONTROL_get_lines.
    *&spwizard:   module TCONTROL_change_field_attr
      endloop.
    MODULE STATUS_9000.
    PROCESS AFTER INPUT.
    *&spwizard: pai flow logic for tablecontrol 'TCONTROL'
      loop at LT_VBAK.
        chain.
          field LT_VBAK-VBELN.
          field LT_VBAK-NETWR.
          field LT_VBAK-KUNNR.
          module TCONTROL_modify on chain-request.
        endchain.
        field LT_VBAK-FLAG
          module TCONTROL_mark on request.
      endloop.
      module TCONTROL_user_command.
    *&spwizard: module TCONTROL_change_tc_attr.
    *&spwizard: module TCONTROL_change_col_attr.
    MODULE USER_COMMAND_9000.
    regards
    padma

  • Cartesian join on 2 dimension tables, with count aggregation?

    Hi, I have 2 dimension tables, Students, and Subjects, and a fact table, Marks. (simplified)
    the Students and Subjects dimension tables both have a 1-N relationship with Marks, so reporting works fine.
    However, there are some students who does not have a score in a certain Subject, so when I generate the report of each Subject's scores by Student it'll be
    Subject Students Marks
    English A 89
    ......... C 70
    ......... D 60
    Maths B 30
    ......... C 80
    because Students and Subjects are joined by the Marks table
    What I'd like to see is
    Subject Students Marks
    English A 89
    ......... B 0
    ......... C 70
    ......... D 60
    Maths A 0
    ......... B 30
    ......... C 80
    ......... D 0
    The joins between the dimension and fact tables are all set to "Left-outer join" (where "left" is the dimension table)
    I thought I needed a cartesian/cross join on Subjects and Students, using the dummy table technique here: http://gerardnico.com/wiki/dat/obiee/densification_repository#the_cross_join_between_the_dimensions
    But it didn't work, not to mention that I have a feeling that this doesn't really apply to 10g or my problem.
    Can someone point me in the right direction on this? Thanks!
    Above problem solved, but I also need a column of "Count of students who scored 50 or less" which includes the students who did not have any scores. Adding the dummy column to my report breaks the aggregation in my report, while removing the column will take me back to square one.
    How do I generate a report that does aggregation that takes into account the students with no scores?
    Edited by: lum on 28-Mar-2012 20:13

    Here's what I did:
    I created the physical table with 1 column, and did a complex join with expression "1=1" on the 2 tables that my actual fact table was directly joined to (and none of the indirect joins). I'm using 11g, so to do complex joins I had to use Manage->Joins
    Then I added the dummy column to my Marks fact table in the BMM layer by just dragging it and set the aggregation rule. And then to the presentation layer too.
    After updating the repository onto the server, the table behaviour is still the same as before, and the dummy column didn't do anything and displayed a blank value.
    Could it be because of my other joins that make this dummy join not work? I don't even know if this 1=1 complex join work in 11g....!
    Has anyone tried this join technique in 11g? Thanks!
    PS: My dimension table and fact tables are actually logical tables that join several tables at the logical table source layer. My dummy fact table just joins the most detailed layer of the physical dimension tables.

  • Complete table view controller with XML

    Hello, I'm from Brazil and am new to ios.
    Today I am making an example where I use a table view controller and fill it witharray (NSMutableArray).
    However I would do the same using XML so that now, I'm having so many difficulties to the point of not knowing where to start.
    The code I use to populate this array was.
    It is possible to use something like XML?
    #pragma mark - View lifecycle
    - (void)viewDidLoad
        [super viewDidLoad];
        // Uncomment the following line to preserve selection between presentations.
        // self.clearsSelectionOnViewWillAppear = NO;
        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
        // self.navigationItem.rightBarButtonItem = self.editButtonItem;
        registros = [NSMutableArray arrayWithObjects:@"1", @"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10",@"11",@"12",@"13",@"14", nil];
    - (void)viewDidUnload
        [super viewDidUnload];
        // Release any retained subviews of the main view.
        // e.g. self.myOutlet = nil;
    - (void)viewWillAppear:(BOOL)animated
        [super viewWillAppear:animated];
    - (void)viewDidAppear:(BOOL)animated
        [super viewDidAppear:animated];
    - (void)viewWillDisappear:(BOOL)animated
        [super viewWillDisappear:animated];
    - (void)viewDidDisappear:(BOOL)animated
        [super viewDidDisappear:animated];
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        // Return YES for supported orientations
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    #pragma mark - Table view data source
    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
        // Return the number of sections.
        return 1;
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
        // Return the number of rows in the section.
        return [registros count];
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
        static NSString *CellIdentifier = @"listax";//este é o identificador da celula
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
        cell.textLabel.text = [registros objectAtIndex:indexPath.row];
        return cell;

    If you have a custom XML schema (not a plist), consider two approaches.
    1. Before showing your table view, use NSXMLParserto deserialize the XML document into an NSMutableArray that will be the table view data source.  Typically the array contains custom class instances; one or more class properties are used to set table cell properties in cellForRowAtIndexPath.  If you have never worked with NSXMLParser (or any other SAX parser) before, start by creating a sample app so you understand how that works.
    2. Use a 3rd-party DOM parser like GDataXML.  Load your XML document into a class property in your table view's viewDidLoad.  Then the XML document will be the table view data source since elements and attributes can be directly queried using XPath in cellForRowAtIndexPath.  If you have never worked with XML DOM and XPath before, start by creating a sample app so you understand how that works.
    If your have a lengthy complex XML document, option #1 might be more efficient because indexed array access is faster than XPath queries.  Theoretically that is why Apple's Cocoa provides DOM support on OS X but not iOS.  There are strategies to improve efficiency if necessary, including your own indexing scheme.  The best solution depends on many factors.  For example, if your XML document includes thousands of rows, but users rarely scroll past the first 10, option #1 would waste time parsing everything.
    Both of these approaches keep all data in memory, which is fast but not friendly.  Perfectly fine for reasonably sized data sets.

  • Regarding clearing of data in table control

    In the module pool program using table control i need to enter data and save it to a customized table. But when i input data and press enter, all data gets cleared from the screen. Also i tried the same by appending into internal table. At that time data is displayed on the screen but all other rows gets inactive. Please provide a solution for this issue.

    Still my problem is not solved. I am posting my PBO And PAI Modules. In the below example it_mat is the table control table and it_ormat is the internal table.
    PBO Modules.
    *&spwizard: pbo flow logic for tablecontrol 'TCMAT'
      module TCMAT_change_tc_attr.
    *&spwizard: module TCMAT_change_col_attr.
      loop at   IT_MAT
           with control TCMAT
           cursor TCMAT-current_line.
        module TCMAT_get_lines.
    *&spwizard:   module TCMAT_change_field_attr
      endloop.
    *&spwizard: output module for tc 'TCMAT'. do not change this line!
    *&spwizard: update lines for equivalent scrollbar
    module TCMAT_change_tc_attr output.
      describe table IT_MAT lines TCMAT-lines.
    endmodule.
    *&spwizard: output module for tc 'TCMAT'. do not change this line!
    *&spwizard: get lines of tablecontrol
    module TCMAT_get_lines output.
      g_TCMAT_lines = sy-loopc.
      READ TABLE IT_ORMAT INDEX SY-STEPL.
      MODIFY IT_MAT FROM IT_ORMAT INDEX SY-STEPL.
    endmodule.
    PAI modules.----
    *&spwizard: pai flow logic for tablecontrol 'TCMAT'
      loop at IT_MAT.
        chain.
          field IT_MAT-MATNR.
          field IT_MAT-MAKTX.
          field IT_MAT-GROES.
          field IT_MAT-ZEINR.
          field IT_MAT-TCQTY.
          field IT_MAT-IBRFLG.
          module TCMAT_modify on chain-request.
        endchain.
        field IT_MAT-CFLG
          module TCMAT_mark on request.
      endloop.
      module TCMAT_user_command.
    *&spwizard: module TCMAT_change_tc_attr.
    *&spwizard: module TCMAT_change_col_attr.
    module TCMAT_modify input.
      MODIFY IT_ORMAT FROM IT_MAT INDEX SY-STEPL.
    endmodule.
    *&spwizard: input modul for tc 'TCMAT'. do not change this line!
    *&spwizard: mark table
    module TCMAT_mark input.
      data: g_TCMAT_wa2 like line of IT_MAT.
        if TCMAT-line_sel_mode = 1
        and IT_MAT-CFLG = 'X'.
         loop at IT_MAT into g_TCMAT_wa2
           where CFLG = 'X'.
           g_TCMAT_wa2-CFLG = ''.
           modify IT_MAT
             from g_TCMAT_wa2
             transporting CFLG.
         endloop.
      endif.
      modify IT_MAT
        index TCMAT-current_line
        transporting CFLG.
    endmodule.
    *&spwizard: input module for tc 'TCMAT'. do not change this line!
    *&spwizard: process user command
    module TCMAT_user_command input.
      OKCODE = sy-ucomm.
      perform user_ok_tc using    'TCMAT'
                                  'IT_MAT'
                                  'CFLG'
                         changing OKCODE.
      sy-ucomm = OKCODE.
    endmodule.

  • Creation of table,views etc

    Hi All,
    I want step by step procedure to create table views etc etc.Can u please get back to me in detail procedure.
    Thanks and Regards,
    Jaya.

    <b>Procedure to create a table.</b>
    <b>The path</b>
    Tools ABAP Workbench Development Dictionary or Transaction SE11 takes you to
    the overview screen of the ABAP Dictionary.
    2-1-1 To create table ZEMPLOYxx:
    1) Mark Database table and enter table name ZEMPLOYxx in the corresponding
    input field.
    2) Choose Create.
    3) Enter a short text in the maintenance screen for the table.
    4) Choose delivery class A and mark Table maintenance allowed.
    5) Now click on tab page Fields to go to the maintenance screen for the field
    definitions. Enter the field names there (they need not lie in the customer
    namespace).
    6) Use the given data elements for fields Client, Carrier, First name, Last name
    and Currency by entering the names of the data elements in column Field
    type. Save your entries.
    7) Create your own data elements for fields Personnel number, Department code,
    Area and Salary. Enter a name (Z<object>xx) for the data element in column
    Field type. Double-click on the name of the data element. The data element
    definition appears.
    8) Enter a short text (component of the F1 help). Now click on tab page Field
    label and store the texts for the field labels there.
    9) You also have to assign the data element a technical description (domain).
    Click on tab page Definition and enter a name (Z<object>xx) for your domain
    there. If the domain is predefined, activate the data element and return to the
    maintenance screen for the table fields (F3 or ).. Otherwise double-click on
    the domain name. The domain definition appears.
    10) Define the short description, data type (for example NUMC) and number of
    characters (for example 10) there. Activate the domain.
    11) Navigate back one screen (F3 or ) to the data element definition and
    activate your data element.
    12) Navigate back one more screen to the field definition. Start again there with 7)
    until all the table fields are defined. Save your table.
    13) Define the reference table and reference field for the salary field. Double-click
    on the field name and enter the following in the next dialog box:
    Reference table:
    ZEMPLOYxx
    Reference field: Currency
    14) Define the key fields for table ZEMPLOYxx. Fields Client, Carrier and
    Personnel number uniquely identify an entry. They must therefore be marked
    as key fields. You can do this by marking the Key column following the field
    name. The key fields must be at the beginning of the field list in this order.
    15) Activate the table. The maintenance screen for the technical settings appears
    automatically:
    Since the contents of table ZEMPLOYxx do not change frequently, you must
    choose data class APPL0 (master data). The expected number of records in
    table ZEMPLOYxx is 60,000, so you must choose size category 2. The table should not be either buffered or logged.
    Save the technical settings. Go back to the maintenance screen of the table (F3 or ). The table is activated.
    <b>Hope this is helpful, Do reward.</b>

  • How to get itemChild Array from plist into table 2 ?????

    Hi there,
    I am creating a project for the IPhone, using UITableViews.
    I have been looking at James' code and trying to adapt it.
    My project has two tableviews, and two tableview controllers. THe plist is an Array of dictionaries and each dictionary houses a name string and an ItemChild Array.
    The dictionary names go into the first table no problem but I can get the ItemChild Arrays into the second table.
    here is the shape of the plist.
    <array>
    <dict>
    <key>name</key>
    <string>Category A</string>
    <key>ItemChild</key>
    <array>
    <string>aaaa</string>
    <string>bbbb</string>
    <string>cccc</string>
    <string>dddd</string>
    </array>
    </dict>
    <dict>
    <key>name</key>
    <string>Category B</string>
    <key>ItemChild</key>
    <array>
    <string>aaaa</string>
    <string>bbbb</string>
    <string>cccc</string>
    <string>dddd</string>
    </array>
    </dict>
    <dict>
    <key>name</key>
    <string>Category C</string>
    <key>ItemChild</key>
    <array>
    <string>aaaa</string>
    <string>bbbb</string>
    <string>cccc</string>
    <string>dddd</string>
    </array>
    </dict>
    </array>
    </plist>
    here are the implementation files for the first and second tableviewControllers
    @implementation TableTutViewController
    @synthesize dataList1;
    - (void)viewDidLoad {
    [super viewDidLoad];
    NSString *path = [[NSBundle mainBundle] pathForResource:@"newData" ofType:@"plist"];
    NSMutableArray* tmpArray = [[NSMutableArray alloc]
    initWithContentsOfFile:path];
    self.dataList1 = tmpArray;
    [tmpArray release];
    #pragma mark -
    #pragma mark Table view data source
    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return dataList1.count;
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
    reuseIdentifier:CellIdentifier] autorelease];
    cell.textLabel.text = [[self.dataList1 objectAtIndex:indexPath.row]
    objectForKey:@"name"]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
    #pragma mark -
    #pragma mark Table view delegate
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    SecondViewController *secondViewController = [[SecondViewController alloc]
    initWithNibName:@"SecondViewController" bundle:nil];
    secondViewController.dataList1 = [[self.dataList1 objectAtIndex:indexPath.row]objectForKey:@"ItemChild"];
    [self.navigationController pushViewController:secondViewController animated:YES];
    [secondViewController release];
    #pragma mark -
    #pragma mark Memory management
    - (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    - (void)viewDidUnload {
    - (void)dealloc {
    [super dealloc];
    @end
    And here is the code for the secondViewController
    #import "SecondViewController.h"
    #import "TableTutAppDelegate.h"
    #import "TableTutViewController.h"
    @implementation SecondViewController
    @synthesize dataList1;
    - (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    - (void)viewDidUnload {
    #pragma mark Table view methods
    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [self.dataList1 count];
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    cell.textLabel.text = [[self.dataList1 objectAtIndex:indexPath.row]
    objectForKey:@"ItemChild"];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
    - (void)dealloc {
    [dataList1 release];
    [super dealloc];
    @end
    Any idea's on what is missing would be great. Do I need to create a new array to put the itemChild array into before loading it into the cell.textLabel.text??
    Any help would be fantastic,
    thanks
    Alex
    Message was edited by: alex200

    Hey Alex, welcome to the Dev Forum!
    alex200 wrote:
    I have been looking at James' code and trying to adapt it.
    Have you been looking at James as well? I'm wondering if you two are at the same school.
    The dictionary names go into the first table no problem but I can get the ItemChild Arrays into the second table.
    Actually you passed the ItemChild arrays correctly (assuming dataList1 is declared as shown), but when you wanted the name for each element, you forgot that ItemChild was an array of strings, not an array of dictionaries:
    // SecondViewController.h
    @interface SecondViewController : UITableViewController {
    NSMutableArray *dataList1;
    @property (nonatomic, retain) NSMutableArray *dataList1;
    @end
    // SecondViewController.m
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    cell.textLabel.text = [self.dataList1 objectAtIndex:indexPath.row]; // <-- dataList1 is an array of strings
    // objectForKey:@"ItemChild"];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
    Other than the above, there wasn't much to correct. I just set the title of the first controller's nav item, since that's needed to display the default return button in the second controller's nav bar (but you probably had set that title in IB), and I also passed the name of the selected Category row to the second controller's nav item:
    // TableTutViewController.m
    - (void)viewDidLoad {
    [super viewDidLoad];
    self.navigationItem.title = @"Categories"; // <-- added in case title isn't in xib
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    SecondViewController *secondViewController = [[SecondViewController alloc]
    initWithNibName:@"SecondViewController" bundle:nil];
    secondViewController.dataList1 =
    [[self.dataList1 objectAtIndex:indexPath.row]objectForKey:@"ItemChild"];
    secondViewController.navigationItem.title =
    [[self.dataList1 objectAtIndex:indexPath.row]objectForKey:@"name"]; // <-- add title
    [self.navigationController pushViewController:secondViewController animated:YES];
    [secondViewController release];
    Overall it looks like you did a nice job. I think ItemChild was an array of dictionaries in James' plist, so that might be the reason your code matched his plist instead of yours.
    - Ray

  • SAP Personas - multiple selection of lines in table

    Hello,
    i am trying to figure out if it is possible to get/process all selected lines in SAP Personas for table with multiple line selection enabled. i found only posts where actual selected line can be identified in script - e.g. in this post: SAP Personas - dynamic selection of line from report .
    I am currently working with SAP Personas 2.0, but I am interested also in Personas 3.0 functionality.
    Thank you in advance,
    Jan Weissensteiner

    In Personas 2.0, it depends on how do you want to process the marked table entries.
    Since the Personas 2.0 scripting engine doesn't support looping, you can only read the entire content of the table into an array using a JavaScript step and then evaluate this and determine which lines have been selected. Then you could process the result, for instance you could add field values from the selected rows or something like this, since it is possible to perform looping in JavaScript. However you cannot do certain actions like pressing a script button for each selected row, for instance.
    In Personas 3.0, you can pretty much do anything you want since the scripting engine uses JavaScript and you can rely on JS functionality to have much more freedom, including pressing buttons.

  • SIGABRT error when choosing a row of a tableview

    Hello, I am creating an iPhone app and I keep getting a "SIGABRT" error. I have a tableview where I want a separate webpage pushed for each rows.
    Currently, what happens is that the table displays; however, when I pick a row it gives me a SIGABRT error. Please help.
    Here is my first view (table view) .h file:
    #import <UIKit/UIKit.h>
    @interface videoTableViewController : UITableViewController
        NSArray *videos;
    @property (strong, nonatomic) NSArray *videos;
    @end
    Here is my first view (table view) .m file:
    #import "videoTableViewController.h"
    #import "videoURLController.h"
    @interface videoTableViewController ()
    @end
    @implementation videoTableViewController
    @synthesize videos;
    - (id)initWithStyle:(UITableViewStyle)style
        self = [super initWithStyle:style];
        if (self) {
            // Custom initialization
        return self;
    - (void)viewDidLoad
        [super viewDidLoad];
        videos = [NSArray arrayWithObjects:@"Welcome", @"Hello", @"Goodbye", nil];
        // Uncomment the following line to preserve selection between presentations.
        // self.clearsSelectionOnViewWillAppear = NO;
        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
        // self.navigationItem.rightBarButtonItem = self.editButtonItem;
    - (void)viewDidUnload
        [super viewDidUnload];
        // Release any retained subviews of the main view.
        // e.g. self.myOutlet = nil;
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    #pragma mark - Table view data source
    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
        // Return the number of sections.
        return 1;
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
        // Return the number of rows in the section.
        return [self.videos count];
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
        static NSString *CellIdentifier = @"videoCell";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
        // Configure the cell...
        NSUInteger row = [indexPath row];
        cell.textLabel.text = [videos objectAtIndex:row];
        if (row == 0)
            cell.detailTextLabel.text = @"Welcome";
        if (row == 1)
            cell.detailTextLabel.text = @"What we value";
        if (row == 2)
            cell.detailTextLabel.text = @"What does Honor mean?";
        return cell;
    // Override to support conditional editing of the table view.
    - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
        // Return NO if you do not want the specified item to be editable.
        return YES;
    // Override to support editing the table view.
    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
        if (editingStyle == UITableViewCellEditingStyleDelete) {
            // Delete the row from the data source
            [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
        else if (editingStyle == UITableViewCellEditingStyleInsert) {
            // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
    // Override to support rearranging the table view.
    - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
    // Override to support conditional rearranging of the table view.
    - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
        // Return NO if you do not want the item to be re-orderable.
        return YES;
    #pragma mark - Table view delegate
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
         videoURLController *detailViewController = [[videoURLController alloc] initWithNibName:@"videoTableViewController" bundle:nil];
        UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
        if (indexPath.row == 0){
            [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]]];
         // Pass the selected object to the new view controller.
         [self.navigationController pushViewController:detailViewController animated:YES];
    @end
    Here is my videoURLController (second view/web view) .h file?
    #import <UIKit/UIKit.h>
    @interface videoURLController : UIViewController
    @property (strong, nonatomic) IBOutlet UIWebView *webView;
    @end
    Here is my videoURLController (second view/web view) .m file?
    #import "videoURLController.h"
    @interface videoURLController ()
    @end
    @implementation videoURLController
    @synthesize webView;
    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
        if (self) {
            // Custom initialization
        return self;
    - (void)viewDidLoad
        [super viewDidLoad];
      // Do any additional setup after loading the view.
    - (void)viewDidUnload
        [super viewDidUnload];
        // Release any retained subviews of the main view.
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    @end

    Hello, I am creating an iPhone app and I keep getting a "SIGABRT" error. I have a tableview where I want a separate webpage pushed for each rows.
    Currently, what happens is that the table displays; however, when I pick a row it gives me a SIGABRT error. Please help.
    Here is my first view (table view) .h file:
    #import <UIKit/UIKit.h>
    @interface videoTableViewController : UITableViewController
        NSArray *videos;
    @property (strong, nonatomic) NSArray *videos;
    @end
    Here is my first view (table view) .m file:
    #import "videoTableViewController.h"
    #import "videoURLController.h"
    @interface videoTableViewController ()
    @end
    @implementation videoTableViewController
    @synthesize videos;
    - (id)initWithStyle:(UITableViewStyle)style
        self = [super initWithStyle:style];
        if (self) {
            // Custom initialization
        return self;
    - (void)viewDidLoad
        [super viewDidLoad];
        videos = [NSArray arrayWithObjects:@"Welcome", @"Hello", @"Goodbye", nil];
        // Uncomment the following line to preserve selection between presentations.
        // self.clearsSelectionOnViewWillAppear = NO;
        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
        // self.navigationItem.rightBarButtonItem = self.editButtonItem;
    - (void)viewDidUnload
        [super viewDidUnload];
        // Release any retained subviews of the main view.
        // e.g. self.myOutlet = nil;
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    #pragma mark - Table view data source
    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
        // Return the number of sections.
        return 1;
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
        // Return the number of rows in the section.
        return [self.videos count];
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
        static NSString *CellIdentifier = @"videoCell";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
        // Configure the cell...
        NSUInteger row = [indexPath row];
        cell.textLabel.text = [videos objectAtIndex:row];
        if (row == 0)
            cell.detailTextLabel.text = @"Welcome";
        if (row == 1)
            cell.detailTextLabel.text = @"What we value";
        if (row == 2)
            cell.detailTextLabel.text = @"What does Honor mean?";
        return cell;
    // Override to support conditional editing of the table view.
    - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
        // Return NO if you do not want the specified item to be editable.
        return YES;
    // Override to support editing the table view.
    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
        if (editingStyle == UITableViewCellEditingStyleDelete) {
            // Delete the row from the data source
            [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
        else if (editingStyle == UITableViewCellEditingStyleInsert) {
            // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
    // Override to support rearranging the table view.
    - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
    // Override to support conditional rearranging of the table view.
    - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
        // Return NO if you do not want the item to be re-orderable.
        return YES;
    #pragma mark - Table view delegate
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
         videoURLController *detailViewController = [[videoURLController alloc] initWithNibName:@"videoTableViewController" bundle:nil];
        UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
        if (indexPath.row == 0){
            [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]]];
         // Pass the selected object to the new view controller.
         [self.navigationController pushViewController:detailViewController animated:YES];
    @end
    Here is my videoURLController (second view/web view) .h file?
    #import <UIKit/UIKit.h>
    @interface videoURLController : UIViewController
    @property (strong, nonatomic) IBOutlet UIWebView *webView;
    @end
    Here is my videoURLController (second view/web view) .m file?
    #import "videoURLController.h"
    @interface videoURLController ()
    @end
    @implementation videoURLController
    @synthesize webView;
    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
        if (self) {
            // Custom initialization
        return self;
    - (void)viewDidLoad
        [super viewDidLoad];
      // Do any additional setup after loading the view.
    - (void)viewDidUnload
        [super viewDidUnload];
        // Release any retained subviews of the main view.
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        return (interfaceOrientation == UIInterfaceOrientationPortrait);
    @end

Maybe you are looking for

  • CASH COLLECTION REPORT

    Dear Mates, Is there any standard report available to see the cash collected period wise from all the customers? If it is available please let me know . If not how to go about it ? should we create Z report or something like that.     Please give you

  • How to Control Cheque value not exceed the PO Value

    Dear All, My client requirement of the how to control cheque make above the PO Value. My client make the PO before MIRO puchase dept. make the Advance payment request and send to Accounts Dept., Accounts dept. make the payment against the Down paymen

  • Need help on framing a shot.

    Hi Once a week a record a sermon in a church, with one guy preaching. How would you frame the shot? Most of the time he will stand in the front like this: and sometimes a little higher on a pulpit. Up til now I have tried to center him, but there mig

  • Error while seeing preview

    I validated the template says no error but when i am trying to see pdf preview or any preview it shows errors mail the error below Caused by: oracle.xdo11g.xqxp.XQException: FORG0001 at oracle.xdo11g.xslt.XSLStylesheet.flushErrors(XSLStylesheet.java:

  • HT3702 I put my payment info in and it's said contact iTunes support to complete this transaction

    Setting up my phone I put my payment info in and at the end it said contact iTunes support to complete transaction