Commenting multiple lines in formcalc/javascript

Hi,
  we use '//' for commenting a single line. How can we comment multiple lines at  a time? It will be a big pain to comment 15 lines in scripting code each line with a //. Can you tell me any short cut for this.
Also, do we have any keyboard shortcuts for commenting a script line?
Solution for this will save a lot of time for me.
Thanks,
kc

Hi..
   I think that works only for javascript. how abt doing it for formcalc scripts.
Also, I tried with keyboard CTRL + '/'. But it didnt work for me.
Do we have any other options to do this when we are using livecycle designer for scripting?
Thanks,
k.c

Similar Messages

  • Find and Replace multiple line PHP comment

    Greeting everyone!
    Hopefully this question is asked in the right place.
    I have about 300 php files that have multiple line PHP
    comment that start with /* and end with this */. I want to remove
    all the comments since I am trying to reduce the file size as much
    as possible. The comments are no longer needed and I have tried
    many different configureation in the dreamweaver find and replace,
    but for the life of me I cannot seem to get it to work. I even
    tried useing regular expressions, but the astrick * is a wild card
    the the code tags contain an astrick.
    Is it possible to do this in dreamweaver, or will I need to
    hand edit every page?
    Thank for help
    example

    I am not sure of the exact syntax but open the find replace
    function on a page and play with find syntax search feature from
    the drop down menu . If I am not mistaken you should be able to to
    search from the beginning of a comment tag to the end of one and
    grab whats in between. From the help file
    Use the Find And Replace dialog box to search for text or
    tags in a document, and to replace the found material with other
    text or tags.
    Select Edit > Find And Replace.
    In the Search pop‑up menu, select Specific Tag.
    Select a specific tag or [any tag] from the pop‑up menu
    next to the Search pop‑up menu, or type a tag name in the
    text box.
    (Optional.) Limit the search with one of the following tag
    modifiers:
    With Attribute Specifies an attribute that must be in the tag
    for it to match. You can specify a particular value for the
    attribute or select [any value].
    Without Attribute Selects an attribute that must not be in
    the tag for it to match. For example, select this option to search
    for all img tags with no alt attribute.
    Containing Specifies text or a tag that must be contained
    within the original tag for it to match. For example, in the code
    <b><font size="4">heading 1</font></b>, the
    font tag is contained within the b tag.
    Not Containing Specifies text or a tag that must not be
    contained within the original tag for it to match.
    Inside Tag Specifies a tag that the target tag must be
    contained in for it to match.
    Not Inside Tag Specifies a tag that the target tag must not
    be contained in for it to match.
    (Optional.) To limit the search further, click the Plus (+)
    button and repeat step 3.
    If you didn’t apply any tag modifiers in steps 3 and 4,
    then click the Minus (-) button to remove the tag modifiers
    pop‑up menu.
    If you want to perform an action when the tag is found (such
    as removing or replacing the tag), select the action from the
    Action pop‑up menu and, if applicable, specify any additional
    information necessary to perform the action.

  • Multiple lines in a cell in excel download

    Hi,
    I have used insert_full of i_oi_spreadsheet interface for downloading internal table.. i have a text field which i need to display in multiple lines in one cell.
    Is that possible? Please help,
    Regards,
    Rohit.

    Rohit,
    Clipboard this code into your editor and see if it helps you out.  Please reward points.
    *& Report  ZR_SANDBOX_PROG
    REPORT Zsandbox_prog .
    INCLUDE OLE2INCL.
    DATA: hExcel TYPE OLE2_OBJECT,      " Excel object
          hWorkBooks TYPE OLE2_OBJECT,  " list of workbooks
          hWorkbook TYPE OLE2_OBJECT,   " workbook
          hSheet TYPE OLE2_OBJECT,      " worksheet object
          hRange TYPE OLE2_OBJECT,      " range object
          hRange2 TYPE OLE2_OBJECT,      " range object
          hBorders TYPE OLE2_OBJECT,    " Border object
          hInterior TYPE OLE2_OBJECT,   " interior object - for coloring
          hColumn TYPE OLE2_OBJECT,     "column
          hCell TYPE OLE2_OBJECT,       " cell
          hFont TYPE OLE2_OBJECT,       " font
          hSelected TYPE OLE2_OBJECT,   " range object
          hPicture TYPE OLE2_OBJECT,    "picture object
          hLogo TYPE OLE2_OBJECT.       "Logo object
    types:  begin of t_Excel,
              Period_Literal(20),
              Pd_Wk_Literal(20),
              Coop_Literal(40),
              Sugg_Price(20),
              Cost(20),
              Margin(20),
              Comments(100),
            end of t_Excel.
    data: r_Excel type t_Excel.
    data: i_Excel type table of t_Excel with header line.
    field-symbols: <Val> type any.
    data: col_Cnt type i.
    data: row_Cnt type i.
    data: l_range(30).
      parameters: wraptext as checkbox.
      CREATE OBJECT hExcel 'EXCEL.APPLICATION'.
      PERFORM ERR_HDL.
    get list of workbooks, initially empty
      CALL METHOD OF hExcel 'Workbooks' = hWorkbooks.
      PERFORM ERR_HDL.
    add a new workbook
      CALL METHOD OF hWorkbooks 'Add' = hWorkbook.
      PERFORM ERR_HDL.
    Get Worksheet object.
      get property of hWorkbook 'ActiveSheet' = hSheet.
      SET PROPERTY OF hExcel  'Visible' = 1.
      row_cnt = 1.  col_cnt = 1.
      do 5 times.
        Perform Load_Dummy_Values.
      enddo.
    *Pass the internal table values to the spreadsheet.
      loop at i_Excel into r_Excel.
        do 7 times.
          assign component sy-index of STRUCTURE r_excel TO <Val>.
          PERFORM Fill_The_Cell USING row_cnt col_cnt 0 <Val>.
          col_cnt = col_cnt + 1.      "increment column
        enddo.
        row_cnt =   row_cnt + 1.    "increment row
        col_cnt = 1.                  "reset column to A (ie. col 1)
      endloop.
      if not WrapText is initial.
        move 'G:G' to l_range.
        CALL METHOD OF hExcel 'RANGE' = hRange EXPORTING #1 = l_range.
        set property of hRange 'WrapText' = 1.
      endif.
    Release excel.
      FREE OBJECT hExcel.
      PERFORM ERR_HDL.
    FORM Fill_The_Cell USING I J BOLD TheValue.
      CALL METHOD OF hExcel 'Cells' = hCell EXPORTING #1 = I #2 = J.
      PERFORM ERR_HDL.
      SET PROPERTY OF hCell 'Value' = TheValue.
      PERFORM ERR_HDL.
      GET PROPERTY OF hCell 'Font' = hFont.
      PERFORM ERR_HDL.
      SET PROPERTY OF hFont 'Bold' = BOLD.
      PERFORM ERR_HDL.
    ENDFORM.
    *&      Form  ERR_HDL
          outputs OLE error if any
    -->  p1        text
    <--  p2        text
    FORM ERR_HDL.
      IF SY-SUBRC <> 0.
        message i000(zz) with 'OLE Automation error: ' SY-SUBRC.
        exit.
      ENDIF.
    ENDFORM.                    " ERR_HDL
    Form Load_Dummy_Values.
      r_excel-Period_Literal = 'Period 1'.
      r_excel-Pd_Wk_Literal = 'P1 / Wk1'.
      r_excel-Coop_Literal = 'Promo Event'.
      r_excel-Sugg_Price = '$ 1.25'.
      r_excel-Cost  = '$ 0.50'.
      r_excel-Comments =
       'This is a really long field with one hundred bytes to it.'.
      append r_excel to i_Excel.
    EndForm.

  • Multiple lines of event title and location failed to show for All Day event in SharePoint 2010 Calendar

    I have a calendar with SPD workflow to display multiple lines for Title, Attendees, Location.
    1. Created a custom columne "Breaklines" and set to "Multiple lines of text"
    2. Set Monthly View to display the "Breaklines"
    3. in SPD I created a workflow like this:
    4. On the Calendar page, I used a javascript to remove the <br/>
    <script src="http://code.jquery.com/jquery-1.10.2.min.js"
    type="text/javascript"></script><script
    type="text/javascript">
    function updateCalendarWeekday()
       $('.ms-acal-title').each(function(){
        var str = $(this).html();
        str = str.replace(/&lt;/g,
    "<");
        str = str.replace(/&gt;/g,
    ">");
        $(this).html(str);
    _spBodyOnLoadFunctionNames.push('calendarEventLinkIntercept');
    // hook into the existing SharePoint calendar load function
    function calendarEventLinkIntercept()
       var OldCalendarNotify4a
    = SP.UI.ApplicationPages.CalendarNotify.$4a;
       SP.UI.ApplicationPages.CalendarNotify.$4a
    = function ()
          OldCalendarNotify4a();
          updateCalendarWeekday();
    }</script><style>
    .ms-acal-item
                    HEIGHT:
    60px !important
    .ms-acal-summary-itemrow
                    HEIGHT:
    85px !important
    }</style>
    Everything works fine, except that when the All Day event is checked, the display screwed like this:
    I guess that when the event is All Day Event, the Start Time and End Time is not filled by the user (although they show in the form as 12:00 am -11:59PM), so the top line space is now used to display Title and Location. Since the Top Space for
    Start and End Time is a single line, it displays everything on one line. Plus the script does not act on this space.
    Does anyone know a fix for this problem?
    Thanks for any tips!

    Is there a way to modify the javescript so that it also works in the "start-end time" space?

  • Maintianing multiple line items in main window  in scripts

    Hi folks,
      i want to print multiple line items in main window of script for eg 50 line items then my main window should continue in second page also. how to maintain this.
    can u provide me sample code for this..
    Thx in advance,
    Neelima.N

    You have an internal table with 50 lines, is it correct?
    Let's say, there's a MATNR field in your internal table.
    First do, what I wrote in my previous comment.
    The create an element in yout main window, like this:
    /E LINE_ITEMS
    /  &GS_MAIN-MATNR&
    In your printer program you have to code the following:
    LOOP AT gt_main INTO gs_main.
    CALL FUNCTION 'WRITE_FORM'
    EXPORTING
    WINDOW = 'MAIN'
    ELEMENT = 'LINE_ITEMS'.
    ENDLOOP.
    This code will loop all 50 of your table entries.
    In the MAIN window will fit 30 entries.
    When the LOOP is reaching the 30th entry, SAP will automatically create a new page (because of the NEXT PAGE statement you set in the page settings in the SAPScript) and will continue the printing.
    Regards
    Tamá

  • Multiple lines in text field will not print

    I have created several text fields in a form that was created to be filled in and then printed. The text fields allow for multiple lines but when they are printed they only print the text that has been displayed. Is there any way to get Adobe to print all of the text in the field? Thanks! Teri

    I am also having trouble with this. I am using LiveCycle Designer that came packaged with Adobe Pro. I have a form that has several one-line text fileds and checkboxes at the top and then the last field is a text field for comments. I need this text box to expand to a second page, if necessary. I am VERY new at this and I find the help features with the applicaiton hard to understand. I have the field set to "expand to fit" and I have checked the "allow multiple lines" and saved as dynamic form. It allows me to type as much as I want but it doesn't print. Just displays a + sign at the bottom. I looked at the sample purchase order form and that didn't help me. Can someone give me simple clear instruction on what to do?
    Nay hekp would be ver much appreciated.
    Thanks
    Kathy

  • SSRS (Report Builder 3.0) Showing all values for Multiple Line field with Append Changes

    I have a simple SharePoint list with a multiple line column that has append changes enabled. I am doing a report with Report Builder 3.0 and I want to show all values of the field the same way you achieve it through a DVWP using:<SharePoint:AppendOnlyHistory
    FieldName="Comments" runat="server"
    ControlMode="Display" ItemId="{@ID}"/>
    Any suggestions to show all the appended values?

    Hi,
    I am trying to involve someone familiar with this topic to further look at this issue.
    Regards,
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Rebecca Tu
    TechNet Community Support

  • Showing all values for Multiple Line field with Append Changes

    I have a simple SharePoint list with a multiple line column that has append changes enabled. I am doing a report with Report Builder 3.0 and I want to show all values of the field the same way you achieve it through a DVWP using:<SharePoint:AppendOnlyHistory
    FieldName="Comments" runat="server"
    ControlMode="Display" ItemId="{@ID}"/>
    For reference, I'm trying to replicate this function, but on a report:
    http://sympmarc.com/2011/02/07/showing-all-versions-of-append-changes-to-existing-text-in-a-data-view-web-part-dvwp/ 
    Any suggestions to show all the appended values in a report?

    Hi Lewis75581,
    According to your description, you want to show the append changes history of a column in Reporting Services. Right?
    In Reporting Services, we don't have a feature to show the change history of a column. However, we can have workaround on SQL level. In SQL Server, we have tables: inserted table and deleted table which contains the recently inserted and deleted records.
    In this scenario, we can create a trigger in your database. Once you insert rows into the table, it will be triggered and get those inserted rows. Then insert those rows into another table. Now we can create one more dataset based on this table and display
    these inserted rows in our report. This might be the most effective workaround for your requirement. Please refer to a similar thread below:
    http://social.technet.microsoft.com/Forums/en-US/dacfb141-a976-489a-acca-789ba90e15de/ssrs-multiple-reports-with-different-parameteres-in-single-window?forum=sqlreportingservices
    Reference:
    Use the inserted and deleted Tables
    If you have any question, please feel free to ask.
    Best Regards,
    Simon Hou

  • Eliminate multiple line items

    Hi , I have a scenerio to extarct the billing plan items in my report. When I run the report it gives me the required output but with multiple line items . I am not sure if my sleection is bring in data from both billing plan header as well as billing plan item data . I just need to bring in the data from the item level which will resolve the issue of multiple line items showing up in the report, my selection is as follows , please comment if I am selecting form both the header as well as item level,
      IF  p_rental = 'X' .
        SELECT a~vbeln a~ktext a~erdat a~ernam a~audat a~vbtyp a~auart a~vkorg
         a~vtweg a~spart a~vkbur a~guebg a~gueen a~kunnr a~kvgr4
         b~posnr b~matnr b~charg b~matkl b~arktx b~pstyv b~zmeng
         b~zieme b~kdmat b~werks b~lgort b~vstel b~netpr b~kpein
         b~vkaus b~aufnr b~kmein b~shkzg b~oid_extbol b~oid_miscdl b~netwr
         b~oidrc b~oid_ship AS kunwe b~zzwprofid c~datbi c~datab b~route
         e~fkdat e~nfdat e~fakwr e~fksaf e~afdat
         f~fpart f~bedat f~endat f~horiz g~bezei
           INTO CORRESPONDING FIELDS OF TABLE gt_sel
           FROM vbak AS a
               INNER JOIN vbap AS b ON a~vbeln = b~vbeln
               INNER JOIN vbkd AS d ON a~vbeln = d~vbeln
               INNER JOIN fplt AS e ON d~fplnr = e~fplnr
               INNER JOIN fpla AS f ON e~fplnr = f~fplnr
               LEFT OUTER JOIN tvlvt AS g ON b~vkaus = g~abrvw
                                            AND g~spras = 'E'
               LEFT OUTER JOIN zsdsched AS c ON b~vbeln = c~vbeln
                                            AND b~posnr = c~posnr
             WHERE a~vbeln IN s_vbeln
             AND a~ktext IN s_ktext
             AND a~erdat IN s_erdat
             AND a~vbtyp = gc_g
             AND a~ernam IN s_ernam
             AND a~vkorg IN s_vkorg
             AND a~vtweg IN s_vtweg
             AND a~spart IN s_spart
             AND a~vkbur IN s_vkbur
             AND a~guebg IN s_guebg
             AND a~gueen IN s_gueen
             AND a~auart IN s_auart
             AND a~kunnr IN s_kunnr
             AND b~oid_ship IN s_kunwe
             AND b~werks IN s_werks
             AND b~lgort IN s_lgort
             AND b~vstel IN s_vstel
             AND b~route in s_route
             AND b~matnr IN s_matnr
             AND e~afdat IN s_afdat
             AND e~fksaf IN s_fksaf
             AND b~pstyv in s_pstyv.
        SORT gt_sel.
        IF NOT gt_sel[] IS INITIAL.
    **   Get Bill-to Party's for Item Lines
          SELECT vbeln posnr parvw kunnr INTO CORRESPONDING FIELDS OF TABLE gt_vbpa
              FROM vbpa
              FOR ALL ENTRIES IN gt_sel
              WHERE vbeln = gt_sel-vbeln
                AND parvw = gc_re.
        ENDIF.
    *   Loop through captured data for additional information
        LOOP AT gt_sel INTO gs_report.
    *   Find the bill-to party
          READ TABLE gt_vbpa INTO gs_vbpa WITH KEY vbeln = gs_report-vbeln
                                                   posnr = gs_report-posnr
                                                   parvw = gc_re.
          IF sy-subrc <> 0.
            READ TABLE gt_vbpa INTO gs_vbpa WITH KEY vbeln = gs_report-vbeln
                                                     parvw = gc_re.
            CHECK sy-subrc = 0 AND gs_vbpa-kunnr IN s_kunre.
          ELSE.
            CHECK gs_vbpa-kunnr IN s_kunre.
          ENDIF.
          if sy-subrc = 0.
            gs_report-kunre = gs_vbpa-kunnr.
          endif.
    *  Get the Customer's Name
          gs_report-kunnrt = zcl_kna1=>get_name1( itp_kunnr = gs_report-kunnr ).
          gs_report-kunwet = zcl_kna1=>get_name1( itp_kunnr = gs_report-kunwe ).
          gs_report-kunret = zcl_kna1=>get_name1( itp_kunnr = gs_report-kunre ).
          APPEND gs_report TO gt_report.
          ENDLOOP.
         DELETE ADJACENT DUPLICATES FROM  gt_report .
    Thanks

    Hi,
    Try debugging the code and after the select query and sort just check the gt_sel table if it contains any duplicate entries, if it is so, then there is some problem in inner join and left outer join and left outer join takes all the entries from left hand tables and only selected entries from right hand table so if the right hand table contains 3 to 4 entries then the same records from the left hand table is repeated for 3 to 4 times due to which you feel that the records are repeated.
    just check with the query and instead of using joins which is very costly statement try separating the query for each table and then using different internal tables you can collaborate the data into one single and avoid repetation.
    Regards,
    Ravi

  • How to comment several lines in single go in LSMW?

    Hi,
    How to comment several lines in single go in LSMW? in SE38 we can select the code and CTRL+< . But in LSMW this will not work out. So how to comment several lines in single go?
    Regards
    Sreekanth

    Sreekanth,
    I've worked with LSMW for awhile but never found an easier way.  The editor is old so you won't even see multiple comment command.  I figure that you can select a block and cut it and put on se38 and do the comment from there then paste it back into lsmw.
    Good luck.
    Tai

  • Multiple line selection and then capturing the selected values

    Dear all
      in my alv program ,i need to capture multiple line selections  using checkboxes.
    I have appended check boxes by adding it in the internal table  & filling in field catalog.
    but problem is i'm not able to capture multiple selected check boxes dynamically,
    i could capture only the last selected check box,
    option i found was to use class method get-selected-rows,but i'm unable to use it properly, could anyone explain in detail
    i have already gone through the various examples in sdn but i am not able to work out.
    like using parameters etc....
    CAN ANY ONE HELP ME WITH THE CODE
    help reqired  immediately,
    Thanks in advance.

    Hi Ankur,
    In the PAI, just after the selection of your user event, button or menu,
    add this code before getting the selected records.
    <b>CALL METHOD grid1->check_changed_data
                 IMPORTING
                   e_valid = ws_x.</b>
    where    grid1  TYPE REF TO cl_gui_alv_grid,
    Now fetch the selected records.
    Check this code for reference
                C O M P A N Y   C O N F I D E N T I A L                **
           Care should be taken to prevent its unauthorized use.       **
    REPORT zfipost MESSAGE-ID f4 NO STANDARD PAGE HEADING .
    AUTHOR   : Susmitha Susan Thomas
    DATE     : August 18, 2005
    *Abridged Version : This report generates a list in Abap List Viewer of
                      all the selected records in VBKPF/VBSEG. * *
                      (TRANSACTION ZPPD:Modified from transaction FBV0)
    -- Class definition--
    CLASS lcl_event_receiver DEFINITION DEFERRED.
    --Tables--
    TABLES:  vbkpf. " Belegkopf
    TABLES: tsp1d, pri_params, spopli.
    TYPE-POOLS slis.
    ---- Global Variables -
    DATA:    anzkr(6)     TYPE n,
             lsind        LIKE sy-lsind,
             no_output(1) TYPE c,
             records(1) TYPE c,
             xpick(1)     TYPE c,
             xpickc(1)    TYPE c,
             xbinp(1)     TYPE c,
             rc           LIKE syst-subrc,
             ok_code LIKE sy-ucomm,
             index TYPE i,
             char_x(1)    TYPE c VALUE 'X',
             post         TYPE c,
             ans          TYPE n,
             user(40) TYPE c.
    DATA :BEGIN OF i_doctype OCCURS 0,
             blart LIKE vbkpf-blart,
          END OF i_doctype.
    --AlV Initialization--
    DATA:  gs_layout TYPE lvc_s_layo,
           gt_fieldcat TYPE lvc_t_fcat,
           gs_fieldcat TYPE lvc_s_fcat,
           gs_index_rows TYPE lvc_t_row,
           l_layout TYPE disvariant,
           g_repid LIKE sy-repid,
           g_max TYPE i VALUE 100,
           ws_row_idx TYPE lvc_t_row ,
           ws_row_no TYPE lvc_t_roid,
           i_excl_func TYPE ui_functions,
           ls_prnt TYPE lvc_s_prnt,
           refresh TYPE c,
           i_fieldcat  TYPE lvc_t_fcat,
          post(1) TYPE c,
           accr_def(1) TYPE c,
           rev_cd(3) TYPE c,
           ch(1) TYPE c.
    DATA: list_index LIKE sy-lsind,
          flag TYPE n VALUE 0,
          fl TYPE n VALUE 0,
          g_container TYPE scrfname VALUE 'GRID_CONTAINER',
          grid_container TYPE REF TO cl_gui_docking_container,
          grid1  TYPE REF TO cl_gui_alv_grid,
          custom_container1 TYPE REF TO cl_gui_custom_container,
          event_receiver TYPE REF TO lcl_event_receiver,
          gt_vbkpf1 TYPE STANDARD TABLE OF vbkpf WITH HEADER LINE,
          i_vbkpf TYPE  TABLE OF vbkpf WITH HEADER LINE,
          i_ws_row_idx LIKE ws_row_idx WITH HEADER LINE.
    ---Internal table containing details of selected documents--
    DATA : BEGIN OF gt_vbkpf OCCURS 0,
             xpick(1) TYPE c,
             belnr LIKE vbkpf-belnr,
             gjahr LIKE vbkpf-gjahr,
             bukrs LIKE vbkpf-bukrs,
             blart LIKE vbkpf-blart,
             budat LIKE vbkpf-budat,
             bldat LIKE vbkpf-bldat,
             bktxt LIKE vbkpf-bktxt,
             waers LIKE vbkpf-waers,
             usnam LIKE vbkpf-usnam,
             xblnr LIKE vbkpf-xblnr,
             rev_code(3) TYPE c,
             rev_rsn(15) TYPE c,
             rev_date(10) TYPE c,
             linecolor(4) TYPE c,
           END OF gt_vbkpf.
    --Table to store long text--
    DATA : BEGIN OF inline OCCURS 0,
    tdformat TYPE tdformat,
    tdline TYPE tdline,
    END OF inline.
    DATA: thead LIKE thead OCCURS 0 WITH HEADER LINE.
    -- Records to be posted--
    DATA:   BEGIN OF tbkpf OCCURS 5.
            INCLUDE STRUCTURE vbkpf.
    DATA:   END   OF tbkpf.
    ---- Constants -
    CONSTANTS: awtyp_bkpf TYPE awtyp VALUE 'BKPF '.
    CONSTANTS: awtyp_space TYPE awtyp VALUE '     '.
    Selection Screen
    PARAMETER: funcl   LIKE t020-funcl NO-DISPLAY.   "P(ost),D(isplay),U(pd)
    SELECTION-SCREEN SKIP 2.
    SELECT-OPTIONS:
             p_bukrs     FOR  vbkpf-bukrs,
             p_belnr     FOR  vbkpf-belnr,
             p_gjahr     FOR  vbkpf-gjahr,
             p_budat     FOR  vbkpf-budat,
             p_bldat     FOR  vbkpf-bldat,
             p_blart     FOR  vbkpf-blart,
             p_xblnr     FOR  vbkpf-xblnr,
             p_bktxt     FOR  vbkpf-bktxt,
             p_usnam     FOR  vbkpf-usnam.
    SELECTION-SCREEN SKIP 1.
    SELECTION-SCREEN BEGIN OF BLOCK blk
                WITH FRAME TITLE text-010 NO INTERVALS.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(35) text-002.
    PARAMETER norm_doc    TYPE c
              RADIOBUTTON GROUP doc DEFAULT 'X' .
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(35) text-001.
    PARAMETER ad_doc       TYPE c
               RADIOBUTTON GROUP doc .
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(35) text-003.
    PARAMETER all_doc       TYPE c
                RADIOBUTTON GROUP doc .
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK blk.
          CLASS lcl_event_receiver DEFINITION
          For capturing events on the ALV                               *
    CLASS lcl_event_receiver DEFINITION.
      PUBLIC SECTION.
        METHODS:
    to capture all recently changed data.
          handle_data_changed      FOR EVENT data_changed OF
                                           cl_gui_alv_grid
                                           IMPORTING er_data_changed,
    for hot spot
          handle_hotspot           FOR EVENT hotspot_click OF
                                           cl_gui_alv_grid
                                           IMPORTING e_column_id e_row_id.
    ENDCLASS.   " lcl_event_receiver (Definition)
          CLASS lcl_event_receiver (Implementation)
          For capturing events on the ALV                               *
    CLASS lcl_event_receiver IMPLEMENTATION.
      METHOD handle_data_changed.
        PERFORM f2200_handle_data_changed USING er_data_changed.
      ENDMETHOD.
      METHOD handle_hotspot.
        PERFORM f2201_handle_hotspot USING e_column_id e_row_id .
      ENDMETHOD.
    ENDCLASS.  " lcl_event_receiver (Implementation)
    AT SELECTION-SCREEN
    AT SELECTION-SCREEN.
    START-OF-SELECTION
    START-OF-SELECTION.
    ---- Colors -
      FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    -------------------- Status und Title Bar----------------------------*
      SET PF-STATUS funcl.
      SET TITLEBAR  funcl.
    -- Read Records--
      SELECT * FROM vbkpf INTO TABLE gt_vbkpf1
          WHERE bukrs IN p_bukrs
            AND ausbk IN p_bukrs
            AND belnr IN p_belnr
            AND gjahr IN p_gjahr
            AND budat IN p_budat
            AND bldat IN p_bldat
            AND blart IN p_blart
            AND bktxt IN p_bktxt
            AND xblnr IN p_xblnr
            AND usnam IN p_usnam
            AND bstat EQ 'V'
          AND ( awtyp IN (awtyp_bkpf, awtyp_space) OR
                awtyp IS null )
          ORDER BY PRIMARY KEY.
    ----Call the ALV Screen -
      PERFORM alv_display.
    END-OF-SELECTION.
                         FORM BELEG_PICKUP                              *
          Indicate changing of the selected external record             *
    FORM beleg_pickup.
      SET PARAMETER ID 'BUK' FIELD vbkpf-bukrs.
      SET PARAMETER ID 'GJR' FIELD vbkpf-gjahr.
      SET PARAMETER ID 'BLP' FIELD vbkpf-belnr.
      CASE funcl.
         WHEN 'P'.
          IF anzkr IS INITIAL.
            CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_D'
                 EXPORTING
                      bukrs = vbkpf-bukrs
                      belnr = vbkpf-belnr
                      gjahr = vbkpf-gjahr.
          ELSE.
            IF sy-ucomm EQ 'BUCH'.
              CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_ALL'
                   EXPORTING
                        synch   = char_x
                        bupbi   = xbinp
                   TABLES
                        t_vbkpf = tbkpf.
            ELSE.
              CALL FUNCTION 'ZPRELIMINARY_POSTING_POST_ALL'
                   EXPORTING
                        bupbi   = xbinp
                   TABLES
                        t_vbkpf = tbkpf.
             wait up to 3 seconds.
             commit work.
            ENDIF.
          ENDIF.
        WHEN OTHERS.
          IF sy-tcode = 'ZPPD'.
            funcl = 'P'.
          ENDIF.
          CALL FUNCTION 'ZPRELIMINARY_POSTING_DISPLAY'
               EXPORTING
                    bukrs = vbkpf-bukrs
                    belnr = vbkpf-belnr
                    gjahr = vbkpf-gjahr.
      ENDCASE.
    ENDFORM.
                        FORM TBKPF_FUELLEN                              *
                Include  records for posting in TBKPF                   *
    FORM tbkpf_fuellen.
      records = 'X'.
      LOOP AT gt_vbkpf.
        IF gt_vbkpf-xpick = 'X'.
          CLEAR anzkr.
          CLEAR records.
          IF sy-subrc = 0.
            anzkr = anzkr + 1.
            MOVE-CORRESPONDING gt_vbkpf TO tbkpf.
            APPEND tbkpf.
          ELSE.
            EXIT.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFORM.
                              FORM MALL                                 *
                         Select All documents                           *
    FORM mall.
      LOOP AT gt_vbkpf.
        gt_vbkpf-xpick = 'X'.
        MODIFY gt_vbkpf.
      ENDLOOP.
      refresh = 'X'.
      CALL METHOD grid1->refresh_table_display.
    ENDFORM.
                             FORM EMAL                                  *
                       Unselect all documents                           *
    FORM emal.
      LOOP AT gt_vbkpf.
        gt_vbkpf-xpick = ' '.
        MODIFY gt_vbkpf.
      ENDLOOP.
      refresh = 'X'.
      CALL METHOD grid1->refresh_table_display.
    ENDFORM.
                         Form  alv_display                               *
                  To display the details on an ALV.                      *
    FORM alv_display.
      CALL SCREEN 100.
    ENDFORM.                    " alv_display
    *&      Module  PB0_100  OUTPUT
    MODULE pb0_100 OUTPUT.
      SET PF-STATUS 'MAIN100'.
      SET TITLEBAR 'POSTDOC'.
    --To verify that posting is complete.--
    ---- Setting the layout -
      IF grid1 IS INITIAL.
        PERFORM fill_table.
    -- Initializing the field catalog--
        PERFORM fieldcat_init CHANGING i_fieldcat.
    -- Initializing the ALV GRID and CONTAINER--
        CLEAR gs_layout.
        gs_layout-info_fname = 'linecolor'.
        gs_layout-grid_title = 'Parked Documents'(100).
        gs_layout-zebra               = 'X'.
        gs_layout-cwidth_opt   = 'X'.
        gs_layout-sel_mode = 'A'.
        gs_layout-edit                = 'X'.
        l_layout-report = sy-repid.
    ------ Create a custom container control for ALV Control----
        IF cl_gui_alv_grid=>offline( ) IS INITIAL.
          CREATE OBJECT grid_container
             EXPORTING
               dynnr                     = '100'
               ratio                     = '100'
            EXCEPTIONS
             cntl_error                  = 1
             cntl_system_error           = 2
             create_error                = 3
             lifetime_error              = 4
             lifetime_dynpro_dynpro_link = 5
             others                      = 6.
          IF sy-subrc NE 0.
         MESSAGE i000 WITH text-007.  " Error in object creation
            LEAVE LIST-PROCESSING.
          ENDIF.
    -- Create an instance of alv control--
          CREATE OBJECT grid1
                 EXPORTING
                    i_lifetime = 1
                    i_parent = grid_container.
    ---- Disable all unwanted button in the ALV grid -
          PERFORM disable_functions TABLES i_excl_func.
    ---- Call the display function of ALV grid -
          CALL METHOD grid1->set_table_for_first_display
               EXPORTING
                         is_variant       = l_layout
                         i_save           = 'A'
                         is_layout        = gs_layout
                         is_print         = ls_prnt
                         it_toolbar_excluding          = i_excl_func
               CHANGING  it_outtab        = gt_vbkpf[]
                         it_fieldcatalog  = i_fieldcat.
        ENDIF.                  "  IF cl_gui_alv_grid=>offline IS INITIAL
        CALL METHOD grid1->register_edit_event
            EXPORTING
             i_event_id = cl_gui_alv_grid=>mc_evt_enter.
        CALL METHOD grid1->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>mc_evt_modified.
    ---- Create a reciever object to handle events -
        CREATE OBJECT event_receiver.
        SET HANDLER event_receiver->handle_data_changed FOR grid1.
        SET HANDLER event_receiver->handle_hotspot FOR grid1.
        CALL METHOD cl_gui_control=>set_focus EXPORTING control = grid1.
      ENDIF.                   " IF grid1 IS INITIAL.
    ENDMODULE.                 " PB0_100  OUTPUT
    *&      Form  fill_table
         Fills the data table to be passed to the ALV grid.
    FORM fill_table.
      LOOP AT gt_vbkpf1.
        MOVE-CORRESPONDING gt_vbkpf1 TO gt_vbkpf.
        IF ad_doc = 'X' OR all_doc = 'X'.
          thead-tdobject = 'BELEG'.
          CONCATENATE gt_vbkpf1-bukrs
                      gt_vbkpf1-belnr
                      gt_vbkpf1-gjahr INTO thead-tdname.
          thead-tdspras = sy-langu.
          thead-tdid = '0004'.
          PERFORM read_text.
          READ TABLE inline INDEX 1.
          gt_vbkpf-rev_code =  inline-tdline.
          REFRESH inline.
          CLEAR inline.
          thead-tdid = '0005'.
          PERFORM read_text.
          READ TABLE inline INDEX 1.
          gt_vbkpf-rev_rsn =  inline-tdline.
          REFRESH inline.
          CLEAR inline.
          thead-tdid = '0006'.
          PERFORM read_text.
          READ TABLE inline INDEX 1.
          gt_vbkpf-rev_date =  inline-tdline.
          REFRESH inline.
          CLEAR inline.
          REFRESH inline.
          CLEAR inline.
        ENDIF.
        APPEND gt_vbkpf.
        CLEAR gt_vbkpf.
    ENDLOOP.
      ENDLOOP.
    ENDFORM.
    *&      Form  fieldcat_init
         Initialize the field catalog
    FORM fieldcat_init CHANGING i_fieldcat TYPE lvc_t_fcat.
      DATA: i_fldcat TYPE lvc_t_fcat WITH HEADER LINE.
    CHECKBOX
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'XPICK'.
      i_fldcat-checkbox  = 'X'.
    i_fldcat-key       = 'X'.
      i_fldcat-tabname   = 'GT_VBKPF'.
      i_fldcat-outputlen   =  '4'.
      i_fldcat-scrtext_l =  'ChkB'.
       APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BELNR'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-hotspot   = 'X'.
      i_fldcat-outputlen   =  '15'.
      i_fldcat-scrtext_l =  'Document Number'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'GJAHR'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-scrtext_l = 'FYear'.
      i_fldcat-outputlen   = '5'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BUKRS'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-scrtext_l = 'CCode'.
      i_fldcat-outputlen   =  '5'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BLART'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-scrtext_l = 'Type'.
      i_fldcat-outputlen   =  '6'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BLDAT'.
      i_fldcat-tabname  = 'GT_VBKPF'.
    i_fldcat-key      = 'X'.
      i_fldcat-scrtext_l = 'Doc Date'.
      i_fldcat-outputlen   =  '12'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BUDAT'.
      i_fldcat-tabname  = 'GT_VBKPF'.
    i_fldcat-key      = 'X'.
      i_fldcat-scrtext_l = 'Park Date'.
      i_fldcat-outputlen   =  '12'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'BKTXT'.
      i_fldcat-tabname  = 'GT_VBKPF'.
    i_fldcat-key      = 'X'.
      i_fldcat-scrtext_l = 'Document Header Text'.
      i_fldcat-outputlen   =  '25'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'WAERS'.
      i_fldcat-tabname  = 'GT_VBKPF'.
    i_fldcat-key      = 'X'.
      i_fldcat-scrtext_l = 'Curr'.
      i_fldcat-outputlen   =  '7'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'USNAM'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-scrtext_l = 'Parked By'.
      i_fldcat-outputlen   =  '13'.
      APPEND i_fldcat TO i_fieldcat.
      CLEAR i_fldcat.
      i_fldcat-fieldname = 'XBLNR'.
      i_fldcat-tabname   = 'GT_VBKPF'.
    i_fldcat-key       = 'X'.
      i_fldcat-scrtext_l = 'Reference Text'.
      i_fldcat-outputlen   =  '19'.
      APPEND i_fldcat TO i_fieldcat.
      IF ad_doc = 'X' OR all_doc = 'X'.
        CLEAR i_fldcat.
        i_fldcat-fieldname = 'REV_CODE'.
        i_fldcat-tabname   = 'GT_VBKPF'.
       i_fldcat-key       = 'X'.
        i_fldcat-scrtext_l = 'RC'.
        i_fldcat-outputlen   =  '2'.
        APPEND i_fldcat TO i_fieldcat.
        CLEAR i_fldcat.
        i_fldcat-fieldname = 'REV_RSN'.
        i_fldcat-tabname   = 'GT_VBKPF'.
       i_fldcat-key       = 'X'.
        i_fldcat-scrtext_l = 'Rev Reason'.
        i_fldcat-outputlen   =  '15'.
        APPEND i_fldcat TO i_fieldcat.
        CLEAR i_fldcat.
        i_fldcat-fieldname = 'REV_DATE'.
        i_fldcat-tabname   = 'GT_VBKPF'.
       i_fldcat-key       = 'X'.
        i_fldcat-scrtext_l = 'Rev Date'.
        i_fldcat-outputlen   =  '10'.
        APPEND i_fldcat TO i_fieldcat.
      ENDIF.
    ENDFORM.                    " fieldcat_init
    *&      Module  PAI_100  INPUT
    MODULE pai_100 INPUT.
      CASE ok_code.
        WHEN 'BACK'.
          IF sy-dynnr = '1000'.
            PERFORM exit_program.
          ELSEIF sy-dynnr = '0100'.
            LEAVE TO TRANSACTION 'ZPPD'.
          ENDIF.
        WHEN 'EXIT'.
          IF sy-dynnr = '1000'.
            PERFORM exit_program.
          ELSEIF sy-dynnr = '0100'.
            LEAVE TO TRANSACTION 'ZPPD'.
          ENDIF.
        WHEN '%EX'.
          IF sy-dynnr = '1000'.
            PERFORM exit_program.
          ELSEIF sy-dynnr = '0100'.
            LEAVE TO TRANSACTION 'ZPPD'.
          ENDIF.
        WHEN 'BINP'.
          DATA : ws_x TYPE c VALUE 'X'.
          CALL FUNCTION 'POPUP_TO_CONFIRM'
              EXPORTING
                   titlebar      = 'Posting Documents Via Batch Input'
                   text_question =
               'Are you sure you want to post all the selected documents?'
                   text_button_1 = 'Yes'
                   text_button_2 = 'No'
                   start_column  = 25
                   start_row     = 6
              IMPORTING
                   answer        = ans.
          IF ans = '1'.
            CALL METHOD grid1->check_changed_data
                 IMPORTING
                   e_valid = ws_x.
            xbinp = 'X'.
            PERFORM tbkpf_fuellen.
            IF records = 'X'.
              MESSAGE s999(zv) WITH text-007.
            ELSE.
              PERFORM beleg_pickup.
            ENDIF.
          ENDIF.
        WHEN 'MALL'.
          PERFORM mall.
        WHEN 'EMAL'.
          PERFORM emal.
        WHEN 'RW'.
          IF sy-dynnr = '1000'.
            PERFORM exit_program.
          ELSEIF sy-dynnr = '0100'.
            LEAVE TO TRANSACTION 'ZPPD'.
          ENDIF.
        WHEN 'BUCH'.
          CALL FUNCTION 'POPUP_TO_CONFIRM'
               EXPORTING
                    titlebar      = 'Posting Document'
                    text_question =
                'Are you sure you want to post all documents selected?'
                    text_button_1 = 'Yes'
                    text_button_2 = 'No'
                    start_column  = 25
                    start_row     = 6
               IMPORTING
                    answer        = ans.
          IF ans = '1'.
            CALL METHOD grid1->check_changed_data
              IMPORTING
                e_valid = ws_x.
                perform tbkpf_fuellen.
            IF records = 'X'.
              MESSAGE s999(zv) WITH text-007.
            ELSE.
              PERFORM beleg_pickup.
            ENDIF.
          ENDIF.
        WHEN 'PICK'.
          DATA : check TYPE n,
                 no_rec TYPE c.
          check = 0.
          no_rec = 'X'.
          CALL METHOD grid1->check_changed_data
            IMPORTING
              e_valid = ws_x.
          index = 0.
          LOOP AT gt_vbkpf.
            funcl = 'D'.
            index = index + 1.
            IF gt_vbkpf-xpick = 'X'.
              check = 1.
              CLEAR no_rec.
              READ TABLE gt_vbkpf1 INDEX index INTO vbkpf.
              PERFORM beleg_pickup.
            ENDIF.
          ENDLOOP.
          IF check = 0.
            CALL METHOD grid1->get_selected_rows
              IMPORTING
                et_index_rows = ws_row_idx.
            IF NOT ws_row_idx IS INITIAL.
              CLEAR no_rec.
            ENDIF.
            LOOP AT ws_row_idx INTO i_ws_row_idx.
              READ TABLE gt_vbkpf1 INDEX i_ws_row_idx-index INTO vbkpf.
              PERFORM beleg_pickup.
            ENDLOOP.
            IF no_rec = 'X'.
              MESSAGE s999(zv) WITH text-007.
            ENDIF.
          ENDIF.
        WHEN '&RNT_PREV'.
          CALL METHOD grid1->set_function_code
          CHANGING c_ucomm = ok_code.
        WHEN '&RNT'.
          CALL METHOD grid1->set_function_code
          CHANGING c_ucomm = ok_code.
        WHEN '%SC'.
          CALL METHOD grid1->set_function_code
          CHANGING c_ucomm = ok_code.
        WHEN '&OL0'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN '&OAD'.
          CALL METHOD grid1->set_function_code
          CHANGING c_ucomm = ok_code.
        WHEN '&AVE'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN '&AQW'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN '&XXL'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN '%PC'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN '&CRTEMPL'.
          CALL METHOD grid1->set_function_code
         CHANGING c_ucomm = ok_code.
        WHEN OTHERS.
         do nothing.
      ENDCASE.
      CLEAR ok_code.
    ENDMODULE.                 " PAI_100  INPUT
    *&      Form  exit_program
         Exits from the program after freeing the grid and container     *
    FORM exit_program.
      IF NOT grid_container IS INITIAL.
        CALL METHOD grid_container->free.
      ENDIF.
      IF NOT grid1 IS INITIAL.
        CALL METHOD grid1->free
           EXCEPTIONS
             cntl_error        = 1
             cntl_system_error = 2
             OTHERS            = 3.
      ENDIF.
      LEAVE PROGRAM.
    ENDFORM.                    " exit_program
    *&      Form  f2200_handle_data_changed
          To handle event of change in data in ALV.
         -->P_ER_DATA_CHANGED  text
    FORM f2200_handle_data_changed USING    ir_data_changed
                                             TYPE REF TO
                                             cl_alv_changed_data_protocol.
      DATA : ls_mod_cell TYPE lvc_s_modi ,
             lv_value TYPE lvc_value,
             lflg_check TYPE i.
      DATA : wa_vbkpf LIKE LINE OF gt_vbkpf.
      SORT ir_data_changed->mt_mod_cells BY row_id .
      LOOP AT ir_data_changed->mt_mod_cells
                         INTO ls_mod_cell
                         WHERE fieldname = 'I_PICK'.
        IF NOT ls_mod_cell-value IS INITIAL .
          CALL METHOD ir_data_changed->modify_cell
            EXPORTING
              i_row_id    = ls_mod_cell-row_id
              i_fieldname = ls_mod_cell-fieldname
              i_value     = ls_mod_cell-value.
          READ TABLE gt_vbkpf INTO wa_vbkpf
                     INDEX ls_mod_cell-row_id.
          IF ls_mod_cell-fieldname = 'I_PICK'.
            wa_vbkpf-xpick = ls_mod_cell-value.
          ENDIF.
          MODIFY gt_vbkpf  FROM wa_vbkpf
                              INDEX ls_mod_cell-row_id.
        ENDIF .
      ENDLOOP .
    ENDFORM.                    " f2200_handle_data_changed
    *&      Form  f2201_handle_hotspot
                To handle event of clicking on hyperlink
         -->P_E_COLUMN_ID  text
    FORM f2201_handle_hotspot USING    p_e_column_id  p_e_row_id.
      READ TABLE gt_vbkpf1 INDEX p_e_row_id INTO vbkpf.
      funcl = 'D'.
      PERFORM beleg_pickup.
      PERFORM exit_program.
    ENDFORM.                    " f2201_handle_hotspot
    Regards,
    Susmitha
    Dont forget to reward points for useful answers

  • Read Key (Multiple Lines) Help

    Hello! Is it possible to read multiple lines using read key VI? I'm only reading the first line right now but it would be nice if I can view the first line's explanations too.
    Please see attach. Thanks in advance.  
    KowdTek
    LabVIEW 2009
    One Step At A Time, Maybe Two...
    Attachments:
    IDE_Read_Key.vi ‏20 KB
    ICD3_Error_Codes.ini ‏9 KB

    Get inside the Read Key.vi. There you will find Get Key.vi. Get inside this vi. It has two outputs (excluding some others) - value and comment. But the vi itself returns only the value and the comment is left unused. Please check if that "comment" output is the "explanations" you need. If so, you could manually wire that output for your benefit. 
    Remember to save the vi with a different name if you will edit it.
    Message Edited by Giedrius.S on 02-11-2010 10:02 PM
    While evaluating my code please have in mind that I am a LV novice. Therefore sometimes my code might violate some coding rules that I have to learn about myself. But how else could I do that...
    Chart zoom with "Mouse Over" effect

  • How do i add multiple lines in a cell (like a list) in Excel for MAC?

    I'm trying to add multiple lines (in the form of a list) in a individual cell in Excel for MAC.  I used ALT Enter on my PC but that doesn't work on the iMac.  Does anyone know how to do this?
    Thanks!

    It's been a while but I think you hold SHIFT while typing a page break (RETURN) to make a new line without shifting to another cell.
    However, as Excel isn't an Apple product, I am sure you will get a faster and more current answer by using Microsoft's Office:Mac forums here:
    Office for Mac forums
    They are very good.

  • Setting the value of a single attribute for multiple line items

    Hi all,
    I am working on a Web Dynpro application, I have created this applicaion for an accounting document so it has header data and multiple line item data. As per the requirement I have to put the following logic:
    1. When a user enters a value in the field KBLNR on the line item, all the other fields like cost centerm fund, functional area should populate from a database table based on the value of the KBLNR. to get this I have put the following code:
    TYPES: BEGIN OF t_kblp,
              fipos     TYPE kblp-fipos,
              kostl     TYPE kostl,
                      END OF t_kblp.
      DATA lv_kblnr TYPE wd_this->element_t_bseg-kblnr.
      DATA: lt_kblp TYPE STANDARD TABLE OF t_kblp,
            wa_kblp LIKE LINE OF lt_kblp,
            lt_bseg              TYPE STANDARD TABLE OF bseg,
            wa_bseg              TYPE bseg.
      DATA lo_nd_t_bseg TYPE REF TO if_wd_context_node.
      DATA lo_el_t_bseg TYPE REF TO if_wd_context_element.
      DATA: ls_t_bseg TYPE wd_this->element_t_bseg,
            lo_api_controller    TYPE REF TO if_wd_controller,
            lo_message_manager   TYPE REF TO if_wd_message_manager,
            lo_nd_tbseg          TYPE REF TO if_wd_context_node,
             lo_el_tbseg          TYPE REF TO if_wd_context_element,
             lt_el_tbseg          TYPE wdr_context_element_set,
             lv_bseg              TYPE bseg.
      lo_nd_t_bseg = wd_context->path_get_node( path = `ZDATA.CHANGING.T_BSEG` ).
      lo_api_controller ?= wd_this->wd_get_api( ).
      CALL METHOD lo_api_controller->get_message_manager
        RECEIVING
          message_manager = lo_message_manager.
      lo_nd_tbseg = wd_context->path_get_node( path = `ZDATA.CHANGING.T_BSEG` ).
      lt_el_tbseg = lo_nd_tbseg->get_elements( ).
      LOOP AT lt_el_tbseg INTO lo_el_tbseg.
        lo_el_tbseg->get_static_attributes(
                               IMPORTING static_attributes = lv_bseg ).
      IF lv_bseg-kblnr NE ' '.
          SELECT belnr
                 fipos
                 kostl
                 PSPNR
                 geber
                 saknr
                 fkber
                 grant_nbr
                 gsber
                 FROM kblp
                 inTO corresponding fields of wa_kblp
                 WHERE belnr = lv_bseg-kblnr and
                      saknr = lv_bseg-saknr.
            ENDSELECT.
    lo_nd_t_bseg = wd_context->path_get_node( path = `ZPRELIMINARY_POSTING.CHANGING.T_BSEG` ).
    * get element via lead selection
            lo_el_t_bseg = lo_nd_t_bseg->get_element( ).
    lo_el_tbseg->set_static_attributes(
                               EXPORTING static_attributes = wa_kblp ).
       CLEAR: lv_bseg, wa_kblp.
      ENDLOOP.
    everything is working fine but now the problem is couple of fields that I have in wa_kblp are with different names in bseg table and hence they are not updating... I tried putting the following logic within the loop :
    lo_el_t_bseg->set_attribute(
        name =  `PROJK`
    value = wa_kblp-pspnr ).
    but it's only setting the value of the first line item and not working for the multiple line items, can you please tell me how can do this?
    Thanks,
    Rajat Garg
    Edited by: rajatg on Jun 24, 2011 5:09 PM

    Hi Chris,
    I tried your code and it worked fine but after I put this code I am getting another issue. within the loop I had a code to make the fields non modifiable on the screen and was working fine but now what's happening is it's making the all the lines uneditable except the one with data on it (which is completely opposite), this is what I have coded:
    LOOP AT lt_el_tbseg INTO lo_el_tbseg.
        lo_el_tbseg->get_static_attributes(
                               IMPORTING static_attributes = lv_bseg ).
    IF lv_bseg-kblnr NE ' '.
      SELECT belnr
                 fipos
                 kostl
                 PSPNR
                 geber
                 saknr
                 fkber
                 grant_nbr
                 gsber
                 FROM kblp
                 inTO corresponding fields of wa_kblp
                 WHERE belnr = lv_bseg-kblnr and
                      saknr = lv_bseg-saknr.
            ENDSELECT.
    move: wa_kblp-belnr to wa_bseg-kblnr,
    wa_kblp-fipos to wa_bseg-fipos,
    wa_kblp-kostl to wa_bseg-kostl,
    wa_kblp-pspnr to wa_bseg-projk,
    wa_kblp-geber to wa_bseg-geber,
    wa_kblp-saknr to wa_bseg-saknr,
    wa_kblp-fkber to wa_bseg-fkber,
    wa_kblp-grant_nbr to wa_bseg-grant_nbr,
    wa_kblp-gsber to wa_bseg-gsber,
    lv_bseg-dmbtr to wa_bseg-dmbtr.
    append wa_bseg to lt_bseg.
    lo_nd_edit_property = wd_context->path_get_node( path = `ZPRELIMINARY_POSTING.CHANGING.T_BSEG.EDIT_PROPERTY` ).
          get element via lead selection
          lo_el_edit_property = lo_nd_edit_property->get_element( ).
          lo_el_edit_property->set_attribute(
            name =  `EDIT_FIELD`
            value = 'ABAP_TRUE' ).
          lo_el_edit_property->set_attribute(
            name =  `EDIT_WBS`
            value = 'ABAP_TRUE' ).
    endif.
    endloop.
    o_nd_t_bseg = wd_context->path_get_node( path = `ZPRELIMINARY_POSTING.CHANGING.T_BSEG` ).
    get element via lead selection
            lo_el_t_bseg = lo_nd_t_bseg->get_element( ).
      CALL METHOD lo_nd_t_bseg->bind_table
        EXPORTING
          new_items            = lt_bseg.
    Can you please see what I am doing it wrong here....

  • Not able to generate multiple lines for headers in report

    Hi,
    I am new to BI publisher and not able to generate multiple lines for headers. Please help me to resolve.
    I am using RTF template, data source as PS Query and XML file (system generated from the data source)
    When I am using system generated 'First XML' file, I am getting output in the follwoing format.
    TEAM_MEMBER, PROJECT_ID, NAME, START_DT
    e.g.
    EMP1 , 71000, Sample, 01-Jan-2010
    EMP1 , 72000, Sample, 01-Feb-2010
    EMP1 , 73000, Sample, 01-March-2010
    But I want the report to be generate with multiple projects for one employee like below format , for that I used 'Second XML' file but I am getting blank report.
    In short if there is one to many case, how to show in reports??? Please correct if I am going wrong.
    TEAM_MEMBER
    PROJECT_ID, NAME, START_DT
    PROJECT_ID, NAME, START_DT
    PROJECT_ID, NAME, START_DT
    e.g.
    EMP1
    71000, Sample, 01-Jan-2010
    72000, Sample, 01-Feb-2010
    73000, Sample, 01-March-2010
    **********First XML**************System generated XML ****************************
    <?xml version="1.0"?>
    <query numrows="2" queryname="SY_EMP_PROJECT" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="">
    <row rownumber="1">
    <TEAM_MEMBER>TEAM_MEMBER </TEAM_MEMBER>
    <PROJECT_ID>PROJECT_ID samp</PROJECT_ID>
    <NAME>NAME sample data</NAME>
    <START_DT>2010-08-25</START_DT>
    </row>
    <row rownumber="2">
    <TEAM_MEMBER>TEAM_MEMBER</TEAM_MEMBER>
    <PROJECT_ID>PROJECT_ID samp</PROJECT_ID>
    <NAME>NAME sample data</NAME>
    <START_DT>2010-08-25</START_DT>
    </row>
    </query>
    **********Second XML**************Manually created XML and using to show multiple projects for one employee****************
    <?xml version="1.0"?>
    <TEST numrows="2" queryname="SY_EMP_PROJECT" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="">
    <TEAM_MEMBER rownumber="1">
    <TEAM_MEMBER>1</TEAM_MEMBER>
    <EMPLOYEE_NAME>SAMPLE</EMPLOYEE_NAME>
    <PROJECT>
    <PROJECT_ID>1111</PROJECT_ID>
         <PROJECT_DESCR>SAMPLE</PROJECT_DESCR>
    <START_DATE>01012010</START_DATE>
    </PROJECT>
    <PROJECT>
    <PROJECT_ID>1112</PROJECT_ID>
         <PROJECT_DESCR>SAMPLE</PROJECT_DESCR>
    <START_DATE>01022010</START_DATE>
    </PROJECT>
    </TEAM_MEMBER>
    <TEAM_MEMBER rownumber="2">
    <TEAM_MEMBER>2</TEAM_MEMBER>
    <EMPLOYEE_NAME>SAMPLEC</EMPLOYEE_NAME>
    <PROJECT>
    <PROJECT_ID>1111</PROJECT_ID>
         <PROJECT_DESCR>SAMPLE</PROJECT_DESCR>
    <START_DATE>01012010</START_DATE>
    </PROJECT>
    <PROJECT>
    <PROJECT_ID>1112</PROJECT_ID>
         <PROJECT_DESCR>SAMPLE</PROJECT_DESCR>
    <START_DATE>01022010</START_DATE>
    </PROJECT>
    </TEAM_MEMBER>
    </TEST>
    Edited by: ganeshtw on Aug 25, 2010 12:14 AM

    Hi,
    With your first xml you can print like
    EMP1
    71000, Sample, 01-Jan-2010
    72000, Sample, 01-Feb-2010
    73000, Sample, 01-March-2010While creating the RTF template you can use the Group by option.
    <?for-each-group:ROW;./columnname> then print the column name
    <?columnname?>
    --Then your table format
    71000, Sample, 01-Jan-2010
    72000, Sample, 01-Feb-2010
    73000, Sample, 01-March-2010
    <?end for-each-group?>
    Thanks.

Maybe you are looking for