Format question for a ABAP report

Hi experts,
      Exist a way to create or use a format to print an output of an ABAP report that adjust to the screen? I have a Abap report that in the output have some subtrees for the information displayed.... but if the user expand a lot the subtrees when he or she print the document they see the leters and numbers very small or whitout some columms.... How can I create a format to fix this or what is the way ?
Thanks for the help!

Please.... I need help in this topic.... any suggestions?
Thanks!

Similar Messages

  • Bex query for BW abap report/ transaction

    Hi Experts, Here is a scenario: I developed ABAP program in BW using multiple DSOs for complex logic. Since I cannot use abap program directly in BO reports, I need to develop a query in BW for my abap program. Is it possible to develop a bex query for BW abap report / transaction in BW? I have limited knowledge on BW and BO. Please help me. Thanks in advance Raghu

    First of all thanks for your suggestion Matthew..!
    As you said, I created virtual info cube based on function module.
    In the info cube, I defined (4)dimensions and (1)key figure.
    In the fucntion module, appropriate below parameters defined and code written for the data table (e_t_data)
    CALL ZFM_XXXXXXX 
    EXPORTING   
    i_infoprov =                " Name of InfoProvider   
    i_th_sfc =                  " rsdri_th_sfc: List of Characteristics    
    i_th_sfk =                  " rsdri_th_sfk: List of Key Figures
    *   i_t_range =                 " rsdri_t_range: Range List
    *   i_tx_rangetab =             " rsdri_tx_rangetab: Table from Range List
    *   i_first_call =              " rs_bool       First Call
    *   i_packagesize = 100000      " i             Package Size 
    IMPORTING   
    e_t_data =                  " standard table:  Data Table   
    e_end_of_data =             " rs_bool       :End of Data Reached   
    e_t_msg =                   " rs_t_msg      : BW: Table with Messages
    Test:
    Right click the info cube and choose "displayed data", immediately it triggered above function module.
    when I see the import parameters data,
    no characteristcs data in i_th_sfc. But, key figures has data (1 record) in i_th_sfk.
    Not sure, Did I missed anything? Please help me.
    Thanks in advance

  • Product for presenting ABAP report output in Dashboard Presentation

    <u>Background</u>
    Monash University environment is SAP ERP  ECC6 - no BW. The University has undertaken considerable analysis of spend as part of developing a strategic approach to procurement.  The data used to undertake this analysis was extracted from SAP MM and FI using a developed ABAP report which collates, categorizes and consolidates all spend information from MM (for our Purchase Order based commitment and expenditure) and FI (for direct invoices and  Corporate Credit Card expenditure).  This information  is then currently exported to MS-Excel to produce a report containing graphs, pie charts etc.
    <u>Requirement</u>
    To present output from our Spend Analysis Report  in a more readable dashboard type presentation. This facility should allow easy manipulation (slice and dice) and drill down of the data..  Our requirement is to have something operating within a very short time-frame, say within a month or two. Although you might suggest Web Dynpro Business Graphic or SEM /BW (as the optimal solution) we understand the  set up time for either of these solutions is prohibitive.  Visual Composer has been suggested as another option but we have no in-house expertise to determine if this is a viable solution.   
    Some colleagues visited a  conference a couple of weeks ago and saw a demonstration of a product call XenoCube  http://www.inlogik.com/downloads/XenoCube_Brochure.pdf
    which was proposed as a quick way to present SAP 'raw' report output in a more readable form.  Other solutions in this space that have been suggested include:-
    Zycus - Actionable Spend Analysis – Zycus.com
    Emptoris Spend Analysis  - emptoris.com
    ONIQUA Enterprise Analytics– oniqua.com.au
    Ariba Buyer – ariba.com
    SAS Spend Analysis – sas.com
    Etesius – SpendGuardian  etesius.com
    Can anyone provide advice as to their experience of SAP solution, integrated partner products or any of the about products to satisfy a similar requirement to that which I have outlined?  The main selection criteria will include a product which is:
    a) quick & easy to implement,
    b)  presentation and manipulation of ABAP extracted data
    c) is scalable and
    d)  is reasonably priced.
    Grateful for any advice regarding a solution .
    Thank-you

    Hi,
      This development writes to mapped network drive in Unix. The concept will be similar.
    [http://wiki.sdn.sap.com/wiki/display/SCM/APOtoMappedNetworkDrive]
    cheers
    Aveek

  • Dynamic selection screen for custom ABAP report

    Hi,
    His it possible to create a custom ABAP report with a dynamic selection screen. The report doesnot use a logical database. If possible sample code will be appreciated.
    Regards,
    Chandra Kumar

    hi
    use this link
    Dynamic selection screen
    Cheers
    Snehi

  • Code for hr-abap report in alv display

    Hi Gurus,
    I am new to hr-abap and I want some sample code to display a hr report in an alv.
    Thanks,
    Raj.

    This is one such...
    REPORT yh_rep_hr_certified_instructor MESSAGE-ID yh_messages NO STANDARD
    PAGE
    HEADING .
    Program      : YH_REP_HR_CERTIFIED_INSTRUCTOR                        *
    Description  : Certified Instructor Eligibility Criteria             *
                       TABLES                                       *
    TABLES :hrp1000 ,hrp1001, pa0000.
                          TYPE-POOLS                                 *
    *Type Pool for ALV display
    TYPE-POOLS :slis.  " Global types for generic cunning components
                    INTERNAL TABLES                                 *
    *Internal Table to keep Selection Screen field values
    DATA : BEGIN OF t_validation OCCURS 0.
            INCLUDE STRUCTURE dynpread.
    DATA END OF t_validation.
    *Internal Table for Business Event Groups
    DATA : BEGIN OF t_bgrp OCCURS 0,
            objid TYPE hrobjid,
            blank(1),
            stext TYPE stext,
           END OF t_bgrp.
    *Internal Table for Business Event Type IDs with text for selected Event
    *GROUPS
    DATA : BEGIN OF t_btyp OCCURS 0,
            objid TYPE hrobjid,
            blank(1),
            stext TYPE stext,
           END OF t_btyp.
    *Internal Table for Business Event Type IDs for selected Event Groups
    DATA : BEGIN OF t_eventtypelist OCCURS 0,
            objid TYPE hrobjid,
           END OF t_eventtypelist.
    *Internal table to store the business Groups
    DATA : BEGIN OF t_group OCCURS 0,
            objid LIKE hrp1001-objid,
            sobid LIKE hrp1001-sobid,
            sclas LIKE hrp1001-sclas,
           END OF t_group.
    *Internal table to hold the business event group and/or bus. event types
    DATA : BEGIN OF t_eventgroup OCCURS 0,
            objid LIKE hrp1001-objid,
           END OF t_eventgroup.
    *Internal Table for FieldCatalog used for ALV Display
    DATA: t_fieldcatalog TYPE slis_t_fieldcat_alv WITH HEADER LINE.
    *Work Area for Checking Business Event Group Validity
    DATA: BEGIN OF wa_bgrp,
           objid TYPE hrobjid,
           stext TYPE stext,
          END OF wa_bgrp.
    *Internal table to fetch object id for Qualification
    DATA: BEGIN OF t_objid OCCURS 0,
           objid TYPE hrp1000-objid,
           sobid TYPE hrp1001-sobid,
           sobid_copy TYPE hrp1001-objid,
          END OF t_objid.
    *Internal table to fetch Id of related object
    *Fetches Pernr of Certified Instructors
    DATA: BEGIN OF t_sobid OCCURS 0,
           objid TYPE hrp1000-objid,
           sobid TYPE hrp1001-sobid,
           adatanr TYPE hrpad31-adatanr,
           sobid_copy TYPE hrp1001-objid,
         END OF t_sobid.
    *Internal table to fetch skill rating
    *of the Instructor
    DATA: BEGIN OF t_prof OCCURS 0,
            adatanr TYPE hrpad31-adatanr,
            chara TYPE hrpad31-chara,
          END OF t_prof.
    *Internal table to fetch grade
    *of the Insturctor
    DATA: BEGIN OF t_grade OCCURS 0,
           pernr TYPE pa0008-pernr,
           yysalgr TYPE pa0008-yysalgr,
          END OF t_grade.
    *Internal table which contains all information about the Person like
    *Name Project Project Manager Name Account and Vertical Name
    DATA: t_projdetails TYPE zbapi_projdetails OCCURS 0 WITH HEADER LINE.
    *Final Internal table which contains all information
    *about the Instructors
    DATA: BEGIN OF t_final OCCURS 0,
             empid TYPE pa0000-pernr,
             empname(84) TYPE c,
             grade TYPE pa0008-yysalgr,
             atndttt(3) TYPE c,
             sklrate TYPE hrpad31-chara,
             pgmng TYPE pa0001-ename,
             accname TYPE hrp1000-stext,
             vertname TYPE hrp1000-stext,
           END OF t_final.
                         VARIABLES                                  *
    *ALV layout
    DATA: gs_layout TYPE slis_layout_alv, "alvtot test
          gt_events TYPE slis_t_event,
          gt_list_top_of_page TYPE slis_t_listheader,
          gs_variant LIKE disvariant,     "For Layout
          g_save.                         "For Layout Save
    DATA: w_pos TYPE i VALUE 1,            " Position of Fields in ALV
          w_sort TYPE slis_t_sortinfo_alv, "ITab for Sorting Options
          w_flag TYPE i,
          w_repid TYPE sy-repid,
          w_lineno TYPE sy-tabix.
    DATA: l_short TYPE hrp1000-short. "variable to check the heirarchy
                     SELECTION-SCREEN DESIGN                            *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001. "NO INTERVALS .
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(20) text-009 MODIF ID xyz.
    PARAMETERS : p_bgrp TYPE hrobjid OBLIGATORY,
                 p_bgrp1 TYPE stext .
    SELECTION-SCREEN END OF LINE.
    SELECT-OPTIONS :s_btyp FOR hrp1000-objid OBLIGATORY NO INTERVALS.
    SELECTION-SCREEN END OF BLOCK b1.
                            INITIALIZATION                               *
    INITIALIZATION.
    *Assign Program Name into a variable
      w_repid = sy-repid.
    *Build layout for list display
      gs_layout-detail_popup      = 'X'.
    *To get All Events in TOP-OF-PAGE
    perform eventtab_build using gt_events[].
      gs_variant-report = w_repid.
      g_save           = 'A'.
                         AT SELECTION SELECTION                          *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_bgrp.
      PERFORM get_bgrp.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_btyp-low.
      IF NOT p_bgrp IS INITIAL .
        PERFORM get_btyp USING 'l'.
      ELSE .
        MESSAGE s999 WITH text-e09.
      ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_btyp-high.
      IF NOT p_bgrp IS INITIAL .
        PERFORM get_btyp USING 'h'.
      ELSE .
        MESSAGE s999 WITH text-e09.
      ENDIF.
    AT SELECTION-SCREEN ON p_bgrp.
      SELECT SINGLE objid stext
             FROM hrp1000
             INTO wa_bgrp
             WHERE objid = p_bgrp AND
             otype = 'L' AND
             plvar = '01' AND
             ( short = 'ROLE' OR
             short = 'TECH_PROGRAM' ).
      IF sy-subrc EQ 0.
        p_bgrp1 = wa_bgrp-stext.
      ELSE.
        MESSAGE e999 WITH text-e09.
      ENDIF.
    AT SELECTION-SCREEN ON s_btyp.
      CLEAR : t_eventtypelist, t_group, t_eventgroup.
      REFRESH : t_eventtypelist, t_group, t_eventgroup.
      CLEAR : w_flag.
    *Fetch all the subordinates under given Event Group - L/D
      SELECT objid
             sobid
             sclas
                 FROM hrp1001
                 INTO TABLE t_group
                 WHERE objid = p_bgrp
                 AND plvar = '01'
                 AND rsign = 'B'
                 AND relat = '003'
                 AND ( sclas = 'L' OR sclas = 'D' ).
      WHILE w_flag <> 1.
        PERFORM get_objids.
      ENDWHILE.
      IF NOT t_eventtypelist[] IS INITIAL.
    *Get only valid Event Types from input Event Types, for given Event
    *Group - by deleting others..
        LOOP AT t_eventtypelist.
          IF t_eventtypelist-objid IN s_btyp.
            EXIT.
          ELSE.
            DELETE t_eventtypelist.
          ENDIF.
          AT LAST.
    *since we r checking Event Types, All other fields will be locked
    *but we need Event Group field to be unlocked to edit again,
    *if theres no theres no valid Event Types in given input
            LOOP AT SCREEN.
              CHECK screen-name = 'P_bgrp'.
              screen-input = '1'.
              MODIFY SCREEN.
            ENDLOOP.
            MESSAGE e999 WITH text-e04.
            EXIT.
          ENDAT.
        ENDLOOP.
      ELSE.
        LOOP AT SCREEN.
          CHECK screen-name = 'P_bgrp'.
          screen-input = '1'.
          MODIFY SCREEN.
        ENDLOOP.
        MESSAGE e999 WITH text-e03.
      ENDIF.
          FORM get_bgrp                                                 *
    FORM get_bgrp .
      SELECT objid stext
             FROM hrp1000
             INTO CORRESPONDING FIELDS OF TABLE t_bgrp
             WHERE plvar = '01' AND
                   otype = 'L' AND
                   short = 'ROLE' OR
                   short = 'TECH_PROGRAM' .
      CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
        EXPORTING
          endpos_col   = 75
          endpos_row   = 20
          startpos_col = 30
          startpos_row = 05
          titletext    = 'Select Business Event Group'
        IMPORTING
          choise       = w_lineno
        TABLES
          valuetab     = t_bgrp
        EXCEPTIONS
          break_off    = 1
          OTHERS       = 2.
      IF sy-subrc EQ 0 .
        READ TABLE t_bgrp INDEX w_lineno.
        IF sy-subrc EQ 0.
          p_bgrp = t_bgrp-objid.
          p_bgrp1 = t_bgrp-stext.
        ENDIF .
        CLEAR t_bgrp .
        REFRESH  t_bgrp .
      ENDIF .
    ENDFORM .                    "get_bgrp
    ****subroutine for business eventtype input criteria
    FORM get_btyp USING f_range.
      CLEAR :   t_validation,
                t_btyp,
                t_eventtypelist,
                t_group,
                t_eventgroup,
                w_flag.
      REFRESH : t_validation,
                t_btyp,
                t_eventtypelist,
                t_group,
                t_eventgroup.
      t_validation-fieldname = 'P_BGRP'.
      APPEND t_validation.
      CLEAR t_validation.
    *Getting Screen Values
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = w_repid
          dynumb               = '1000'
        TABLES
          dynpfields           = t_validation
        EXCEPTIONS
          invalid_abapworkarea = 1
          invalid_dynprofield  = 2
          invalid_dynproname   = 3
          invalid_dynpronummer = 4
          invalid_request      = 5
          no_fielddescription  = 6
          invalid_parameter    = 7
          undefind_error       = 8
          double_conversion    = 9
          stepl_not_found      = 10
          OTHERS               = 11.
      IF sy-subrc NE 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
      READ TABLE t_validation WITH KEY fieldname = 'P_BGRP'.
      IF NOT t_validation-fieldname IS INITIAL.
    *Getting Event Group ID that entered
        LOOP AT t_validation.
          IF t_validation-fieldname = 'P_BGRP'.
            p_bgrp = t_validation-fieldvalue.
          ENDIF.
        ENDLOOP.
        CLEAR t_validation.
        REFRESH t_validation.
    *To fetch the business event groups and business event types that belong
    to the input business event group.Since a business group can have a
    *business groups as well as business event types we have pick all of
    *them
    *Getting all subordinates - Event Group/Type under given Event Group
        SELECT objid
               sobid
               sclas
                   FROM hrp1001
                   INTO TABLE t_group
                   WHERE objid = p_bgrp
                   AND plvar = '01'
                   AND rsign = 'B'
                   AND relat = '003'
                   AND endda = '99991231'
                   AND ( sclas = 'L' OR sclas = 'D' ).
    *Getting all Event Types
        WHILE w_flag <> 1.
          PERFORM get_objids.
        ENDWHILE.
        IF NOT t_eventtypelist[] IS INITIAL.
          SORT t_eventtypelist BY objid.
    *Getting Names of Event Types
          SELECT objid
                 stext
                      FROM hrp1000
                      INTO CORRESPONDING FIELDS OF TABLE t_btyp
                      FOR ALL ENTRIES IN t_eventtypelist
                      WHERE objid = t_eventtypelist-objid
                      AND otype = 'D' AND plvar = '01'
                      AND endda = '99991231'.
          IF sy-subrc = 0.
    *PopUp Display for Event Types
            CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
              EXPORTING
                endpos_col   = 75
                endpos_row   = 20
                startpos_col = 30
                startpos_row = 05
                titletext    = 'Select Business Event Type ID'
              IMPORTING
                choise       = w_lineno
              TABLES
                valuetab     = t_btyp
              EXCEPTIONS
                break_off    = 1
                OTHERS       = 2.
            IF sy-subrc <> 0.
              MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            ELSE.
    *Since the Table returned by function module will have data in Header,
    *clear the Header
    *Retreive Selected Event Type into Select Option
              READ TABLE t_btyp INDEX w_lineno.
              IF sy-subrc EQ 0.
                IF f_range = 'l'.
                  s_btyp-low = t_btyp-objid.
                ELSE.
                  s_btyp-high = t_btyp-objid.
                ENDIF.
              ENDIF.
            ENDIF.
          ELSE.
            MESSAGE s999 WITH text-e03.
          ENDIF.
        ELSE.
          MESSAGE s999 WITH text-e01.
        ENDIF.
      ENDIF.
    ENDFORM.                    " EVNTTY
          FORM get_objids                                               *
    FORM get_objids.
    *To delete the business event types that are found and push it in
    *another table
      IF NOT t_group[] IS INITIAL.
        LOOP AT t_group.
    *If event type
          IF t_group-sclas = 'D'.
            t_eventtypelist-objid = t_group-sobid.
            APPEND t_eventtypelist.
            CLEAR t_eventtypelist.
            DELETE t_group.
    *If event group
          ELSEIF t_group-sclas = 'L'.
            t_eventgroup-objid = t_group-sobid.
            APPEND t_eventgroup.
            CLEAR t_eventgroup.
            DELETE t_group.
            CLEAR t_group.
          ENDIF.
        ENDLOOP.
      ELSE.
        w_flag = 1.
      ENDIF.
      IF NOT t_eventgroup[] IS INITIAL.
    *To get the second level of business groups and business event type
        SELECT objid sobid sclas
               FROM hrp1001
               INTO TABLE t_group
               FOR ALL ENTRIES IN t_eventgroup
               WHERE objid = t_eventgroup-objid
               AND plvar = '01'
               AND rsign = 'B'
               AND relat = '003'
               AND endda = '99991231'
               AND ( sclas = 'L' OR sclas = 'D' ).
        CLEAR t_eventgroup.
        REFRESH t_eventgroup.
      ENDIF.
    ENDFORM.                    " GET_OBJIDS
                           Start of Selection                            *
    START-OF-SELECTION.
    *Pass the Event Type and fetch the Related Id
    *for the Qualification imparted by the Event
      SELECT objid sobid
             FROM hrp1001
             INTO TABLE t_objid
             WHERE objid IN s_btyp AND
                   otype = 'D' AND
                   plvar = '01' AND
                   relat = '028' AND
                   rsign = 'A' AND
                   sclas = 'Q'.
      IF sy-subrc EQ 0.
    *Pass the Qualification Id and fetch Object Id of the
    *person who fulfills this Qualification
        SELECT objid sobid adatanr
           FROM hrp1001
           INTO TABLE t_sobid FOR ALL ENTRIES IN t_objid
           WHERE sobid = t_objid-sobid AND
                 otype = 'P' AND
                 plvar = '01' AND
                 relat = '032' AND
                 rsign = 'A' AND
                 sclas = 'Q' .
        IF sy-subrc = 0.
    *Fetch only the Person along with the skillrating
    *who has skill rating as '0001' or '0003'
          SELECT adatanr chara
                 FROM hrpad31
                 INTO TABLE t_prof
                 FOR ALL ENTRIES IN t_sobid
                 WHERE adatanr = t_sobid-adatanr AND
                ( chara = '0001' OR chara = '0003' ).
          IF sy-subrc NE 0.
            MESSAGE s999 WITH text-s01.
            EXIT .
          ELSE .
    *Fetch only Employee Id's who meets the required skill rating
    *which inturn has the EMPID who are all are Certified Instructors
            LOOP AT t_sobid.
              READ TABLE t_prof WITH KEY adatanr = t_sobid-adatanr.
              IF sy-subrc NE 0.
                DELETE t_sobid .
              ENDIF.
            ENDLOOP.
            SORT t_sobid BY objid.
            DELETE ADJACENT DUPLICATES FROM t_sobid.
          ENDIF.
        ENDIF.
      ENDIF.
      IF NOT t_sobid[] IS INITIAL.
    data: begin of it_trgpernr occurs 0,
             objid type hrp1000-objid,
             sobid type hrp1001-sobid,
           end of it_trgpernr.
    select objid sobid
            from hrp1001
            into table it_trgpernr for all entries in t_sobid
            where  otype ='P' and
                  objid = t_sobid-objid and
                  sclas = 'D' and
                  sobid = '50008220'.
    *Fetch Grade of the Certified Instructors by passing their EmpId's
        SELECT pernr yysalgr
                     FROM pa0008
                     INTO TABLE t_grade
                     FOR ALL ENTRIES IN t_sobid
                     WHERE pernr = t_sobid-objid AND endda = '99991231'.
      ENDIF.
    For Heading in the Output Display Layout
      PERFORM heading USING gt_list_top_of_page[].
                           End of Selection                              *
    END-OF-SELECTION.
    Populating data into Final Table which contains all information aboutthe Certified Instructors
    *Retrieve Employee Id for the Certified Instructors  only if he is active
      LOOP AT t_sobid.
        SELECT SINGLE *
               FROM pa0000
               WHERE pernr = t_sobid-objid  AND
                     begda <= sy-datum AND
                     endda >= sy-datum AND
                     stat2 ='3'.
        IF sy-subrc = 0.
          t_final-empid = t_sobid-objid.
          SELECT  SINGLE *
                FROM hrp1001
                WHERE otype = 'P' AND
                      objid = t_sobid-objid AND
                      rsign = 'B' AND
                      relat = '25' AND
                      sclas = 'D' AND
                      sobid = '50008220'.
    *DATA:W_SOBID TYPE HRP1001-SOBID.
    *W_SOBID = t_sobid-objid.                 .
         SELECT  SINGLE *
               FROM hrp1001
               WHERE otype = 'D' AND
                     objid = '50008220' AND
                     rsign = 'B' AND
                     relat = '25' AND
                     sclas = 'P' AND
                     sobid = W_SOBID.
          IF sy-subrc EQ 0.
            t_final-atndttt = 'YES'.
          ELSE.
            t_final-atndttt = 'NO'.
          ENDIF.
    *Retrieve Employee SkillRating for the Certified Instructors
    *by passing the adatanr value which inturn is fetched based on the empid
          READ TABLE t_prof WITH KEY adatanr = t_sobid-adatanr.
          IF sy-subrc EQ 0.
            t_final-sklrate = t_prof-chara.
          ENDIF.
    *Retrieve Employee Grade for the given id
          READ TABLE t_grade WITH KEY pernr = t_sobid-objid.
          IF sy-subrc EQ 0.
            t_final-grade = t_grade-yysalgr.
          ENDIF.
          REFRESH t_projdetails.
          CLEAR t_projdetails.
    *function which fetches the name project name account and
    *vertical name of the person for the given empid
          CALL FUNCTION 'ZBAPI_PROJDETAILS'
            EXPORTING
              pernr       = t_sobid-objid
            TABLES
              it_finaltab = t_projdetails.
          IF NOT t_projdetails[] IS INITIAL.
            SHIFT t_sobid-objid LEFT DELETING LEADING '0'.
            READ TABLE t_projdetails WITH KEY pernr = t_sobid-objid.
            IF sy-subrc EQ 0.
              t_final-empname = t_projdetails-ename.
              IF NOT t_projdetails-proj IS INITIAL.
                t_final-pgmng = t_projdetails-pmname.
              ELSE.
                t_final-pgmng = t_projdetails-gmname.
              ENDIF.
              t_final-accname = t_projdetails-accname.
              t_final-vertname = t_projdetails-vertname.
            ENDIF.
          ENDIF.
          APPEND t_final.
        ENDIF.
        CLEAR t_final.
      ENDLOOP.
      SORT t_final BY empid.
      DELETE ADJACENT DUPLICATES FROM t_final.
    *Enabling Sort by PERNR & Global ID in ALV display
      PERFORM sub_sort_info.
    *Form to Populate Field Catalog
      PERFORM populate_fieldcatalog.
    For the ALV ROW Optimize Width
      gs_layout-colwidth_optimize = 'X' .
    *perform alv_display tables final fieldcatalog.
      IF NOT t_final[] IS INITIAL.
        CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
          EXPORTING
            i_callback_program = w_repid
            is_layout          = gs_layout
            it_fieldcat        = t_fieldcatalog[]
            it_sort            = w_sort
            i_save             = 'A'
            it_events          = gt_events[]
          TABLES
            t_outtab           = t_final
          EXCEPTIONS
            program_error      = 1
            OTHERS             = 2.
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
      ELSE.
        MESSAGE s000(vz) WITH 'No Records found for Given Input Criteria'.
      ENDIF.
                             TOP OF PAGE                                 *
    *Outputs formatted simple header information at TOP-OF-PAGE.
    TOP-OF-PAGE.
      PERFORM top_of_page.
                             Subroutines                                 *
    *&      Form  eventtab_build
          text`
         -->P_GT_EVENTS[]  text
    FORM eventtab_build USING  rt_events  TYPE slis_t_event.
      DATA: ls_event TYPE slis_alv_event.
      DATA: g_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type = 0
        IMPORTING
          et_events   = rt_events.
      READ TABLE rt_events WITH KEY name = slis_ev_top_of_page
                               INTO ls_event.
      IF sy-subrc = 0.
        MOVE g_top_of_page TO ls_event-form.
        APPEND ls_event TO rt_events.
      ENDIF.
    ENDFORM.                    " eventtab_build
    *&      Form  HEADING
          text
    FORM heading USING lt_top_of_page TYPE slis_t_listheader.
      DATA: ls_line TYPE slis_listheader.
    *Layout Display Text - "Caritor ( India ) Pvt.Ltd "
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = text-h01.
      APPEND ls_line TO lt_top_of_page.
    *Layout Display Text - "Certified Instructor Eligibility List     "
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = text-h02.
      APPEND ls_line TO lt_top_of_page.
    ENDFORM.                    " HEADING
    *&      Form  top_of_page
          text
    -->  p1        text
    <--  p2        text
    FORM top_of_page.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = gt_list_top_of_page.
    ENDFORM.                    " top_of_page
    *&      Form  sub_sort_info
          text
    -->  p1        text
    <--  p2        text
    FORM sub_sort_info.
      DATA : l_sort TYPE slis_sortinfo_alv .
      CLEAR l_sort.
    Employee ID
      l_sort-fieldname = 'EMPID'.
      l_sort-up        = 'X'.
      APPEND l_sort TO w_sort.
    ENDFORM.                    " sub_sort_info
    *&      Form  populate_fieldcatalog
          text
    -->  p1        text
    <--  p2        text
    FORM populate_fieldcatalog.
      PERFORM fill_fields_of_fieldcatalog
               TABLES t_fieldcatalog
               USING 'T_FINAL' 'EMPID' ' ' text-011 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
               TABLES t_fieldcatalog
               USING 'T_FINAL' 'EMPNAME' ' ' text-002 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'GRADE' ' ' text-003 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'ATNDTTT' ' ' text-004 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'PGMNG' ' ' text-006 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'ACCNAME' ' ' text-007 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'VERTNAME' ' ' text-008 20 w_pos.
      PERFORM fill_fields_of_fieldcatalog
              TABLES t_fieldcatalog
              USING 'T_FINAL' 'SKLRATE' ' ' text-005 20 w_pos.
    ENDFORM.                    " populate_fieldcatalog
    *&      Form  FILL_FIELDS_OF_FIELDCATALOG
          text
         -->P_T_FIELDCATALOG  text
         -->P_0870   text
         -->P_0871   text
         -->P_0872   text
         -->P_TEXT_001  text
         -->P_20     text
         -->P_W_POS  text
    FORM fill_fields_of_fieldcatalog TABLES fp_t_fieldcatalog STRUCTURE
                                                         t_fieldcatalog
                                     USING    fp_table
                                              fp_field
                                              fp_key
                                              fp_text
                                              fp_out_len
                                              fp_pos.
      fp_t_fieldcatalog-tabname    = fp_table.
      fp_t_fieldcatalog-fieldname  = fp_field.
      fp_t_fieldcatalog-seltext_l  = fp_text.
      fp_t_fieldcatalog-key        = fp_key.
      fp_t_fieldcatalog-outputlen  = fp_out_len.
      fp_t_fieldcatalog-col_pos    = fp_pos.
      APPEND fp_t_fieldcatalog.
      CLEAR:  fp_t_fieldcatalog.
      fp_pos = fp_pos + 1.
    ENDFORM.                    " FILL_FIELDS_OF_FIELDCATALOG
    10.249.11.136\SAP-StudyMaterial

  • RTF Formatting Issue for a Conventional Report

    Hi,
    I have started using XML Publisher. I am unable to do one of my requirement to design the RTF template because of following issues. My report should look like this.
    |....|........................|.....................|
    |....|....Name...........|.......Value......|
    |.1..|......AAA..........|........100........|
    |.2..|......BBB..........|........200........|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |....|.......................|......................|
    |..........Total..........|....Cont./Sum...|
    |..................................................|
    |.............................Page.X.of.Y....|
    I have a requirement to design a template in RTF like the one shown above. Here I wanted to place a page break as soon as the group member records are printed. And I need to print the sum (this is already stored in a tag in the XML) against Total. But, if the number of records are more than what can be accomodated in a page, I need to print "Continued.." and till it come to the last page where i can print the sum. Also, I need to display the page number right below the Total.
    I have created the basic design, but I have the following issues:
    I have placed the Total section in the footer and then, Page break (both with Ctrl-Enter and <?split-by-page-break:?>) doesn't seem to be working.
    If i place the Total in the body section, i need to print remaining part of the body with dummy lines, otherwise, the Total will come right below the last record. I want the Total to be in the bottom of the page.
    Any help in resolving this is very much appreciated.
    Thanks,
    Joby

    This problem has been solved in 5.6.1 - you can now have a different page format
    for the last page, so you could put the summary table into the footer of the last page.
    Please check "Last page only content" in the 5.6.1 user guide (page 2-46)
    Hope that helps,
    Klaus

  • Very Urgent - DELIMITEDDATA question for MS Excel reports

    Hi,
    I have several queries, formula , place holder, summary columns in my data model view. Is there any way I can control the order in which they appear on the delimiteddata file. A lot of the reports I have a pretty complex with summaries at multiple hierarchical levels. The users are adamant that they want these reports for MS Excel. Is there anything I can do to control the order and placement of the data in my data model view ?
    I am using Oracle Reports 6i (6.0.8.22.0) or patch 13, I believe.
    Thanks in advance.

    Hello,
    The DELIMITEDDATA desformat is a primarily data-driven format, and thus allows only limited control over the layout of the data in the output.
    Another option you can try is to generate to Excel directly using web reporting and Excel templates in Reports 9i, as explained in the 'Output to Excel with Oracle9i Reports' on OTN at http://otn.oracle.com/products/reports/htdocs/getstart/demonstrations/index.html. Using this technique, you can use the Reports JSP tags and HTML to customize your report's Excel output.
    Thanks,
    The Oracle Reports Team.

  • Returnable Gate Pass Flow For The Abap Report

    Hi,
    I am ABAPER and i had been assigned to devleop a report which shows the Cycle Time for the materials which are send through Gate Pass outside the plant to a vendor and then coming back to plant.
    I want to know which Tcodes,Tables are used in it so that flow can be understood...

    Hi,
    I want to know is there any tcode and table other than MB51 and MSEG where the values are stored.  I am not able to make link between them i.e. the if purticular item is sent wr.t. 5A1 has come backi.e. 5A2 . i want to give a example i.e.. Tcode QA03 which is display inspection lot in which there is a tab named 'Inspection Lot Quantites'  there are the material documents which are stored in it and gives the data that these are the mat. docs w.r.t. movt types.
    I want to know is there any tcode like this which use to store the details like it.
    Please guide me for it  .....
    Edited by: nav009 on Jan 20, 2010 7:31 AM
    Edited by: nav009 on Jan 20, 2010 11:30 AM

  • Value questions for SAP HR Reporting

    I am working as a "SAP HR Functional consultant".
    I am preparing Value Questions that can benefit End users with respect to SAP HR Reporting.
    Could you kindly help me by sending some questions [If you have any ] & Also tell me how to prepare them?
    <b>For Exp</b>: This below example is for sales, need the same for HR scenarios ( Time management,Org Management, Budget monitoring, Leave management)
    <b>Q</b>
    1. Actor - Sales Rep                                  
    2. Question - Are there new Leads/Opportunities that need my attention?
    3.Action to take - follow-up with Oppty's contact & update Oppty Record with actions taken
    <b>Q</b>
    1. Actor - Sales Rep                                  
    2. Question - What are my territory’s/geography's monthly Sales trends?
    3.Action to take - contact customers whose sales are below expectations
    Waiting for your early reply.
    Thanks.
    Nimisha

    Hi Nisha
    We generally categorise the reports in a matrix structure based on the following criteria -
    1. Usage of the report, eg. monthly, weekly and so on
    2. Data to be processed per usage, eg. no of records
    3. Criticality of the report, eg, must have, useful, important, nice to have and so on
    4. Intended users of the report, eg, management, top management, support satff and so on
    Based on the matrix and the estimated effort required for each report, we make a decision of which reports to be created and the ranking of the reports, that is, which reports to be created on an urgent basis and which ones can be taken up later.
    Also, the same matrix can be used for determining the authorizations for the reports.
    Pls feel free to contact me in case of any further queries/clarifications.
    Regards
    Lincoln

  • Expression Question for SQL Server Reporting Services 2008 R2

    I am trying to form an expression that will give me the est. hours for a specific project type.  Project Type is a field in the data set as well as est.hrs.  There are no calculations needed.  The hours is listed under the field name"Est.Hours".
     So I've been trying to us an IIF expression.  IIF(Fields!ProjectType.Value=Landscaping, "", Fields!Est.Hours.Value).  It is not working.  It renders "0" and it should render "10".  What am I doing wrong?  

    Hi Data Specialist,
    Per my understanding that you want to use the expression to display the Est.Hours for the ProjectType which value are not  "Landscaping" and if the value is "Landscaping" it will display null value, right?
    I have tested on my SSRS 2008 R2 environment and find the issue can be caused by the expression you are using, I would like to confirm with you if the expression "IIF(Fields!ProjectType.Value=Landscaping, "", Fields!Est.Hours.Value)"
    is what you are currently using.
    As Patrick Hurst mentioned that we need do modify the wrap Landscaping in double quotes: "Landscaping" and also the fields name "Est.Hours" also can cause the problem, please try to remove the ".", rename the
    field like"EstHours", So finally the expression is as below:
    =IIF(Fields!ProjectType.Value="Landscaping", "", Fields!EstHours.Value)
    If your problem still exists, please try to provide details information below to help us more effective to provide an solution:
    If you got some error message, please provide them to us.
    Please try to provide the snapshot of the report structure and the sample data of the table
    Any problem, please feel free to ask.
    Regards
    Vicky Liu

  • Why's the SQL format different for the same report on different PCs?

    I have 2 PCs running the same version of Crystal Reports (11.0.0.1994) using an identically configured system DSN with the exact same driver. When I view the SQL that CR is using on PC 1, part of it looks like this:
    " FROM   {oj (("PUB"."LOQEstimate" "LOQEstimate1" LEFT OUTER JOIN "PUB"."LOQComponent" "LOQComponent1" ON ("LOQEstimate1"."Estimate-ID"="LOQComponent1"."Estimate-ID") AND"
    On PC 2 it looks like this:
    "FROM   "PUB"."LOQEstimate" "LOQEstimate1", "PUB"."LOQComponent" "LOQComponent1", "PUB"."CustContact" "CustContact1", "PUB"."LOQSegment" "LOQSegment1"
    WHERE"
    It's the exact same report. Can someone tell me why the SQL is different?
    TIA for the help.

    Thanks for the reply, Patrick. Here are the answers you requested:
    1. Verify you are indeed using the same driver, and they are of the same version
    The driver on both PCs is the Progress OpenEdge 10.1A driver. The file is pgoe1021.dll, version 05.10.0037.
    2. Verify if you have the same database client install on both computer.
    Both use prowin32.exe, v10.1.1.1326
    If everything is the same, then it might be a registry key, and in this case, can you provide the following information:
    1. What database are you connecting to? ( Oracle, DB2, ... )
    Progress OpenEdge 10 RDMS (/community [original link is broken])
    2. What is the version of the database?
    10.1A
    3. What is the version of the database client?
    v10.1.1.1326
    4. How are you connecting to your database? ( Native, ODBC, OLEDB,... )
    ODBC
    5. If you are connecting via ODBC, what is the name of the driver used and it's version?
    The driver is the Progress OpenEdge 10.1A driver. The file is pgoe1021.dll, version 05.10.0037.
    6. What is the SQL query syntax do you prefer? ( PC 1, or the one generated on PC 2 )
    The SQL generated on PC1 doesn't return any records. The SQL generated on PC2 does. Records are preferable ;o)

  • A Newbie question for forms and report...

    hi,
    I want to run a report(3.0.8) from forms(5.0.6), when user clicks a button.
    I'm using Run_Product. But am not sure how to pass parameter list. any help is appreciated.
    thank
    ---himanshu

    In this example V_SYSTEM_ID is the parameter created in Reports and Node_value is the value I am passing. Hope this helps
    DECLARE
    pl_id ParamList;
    node number;
    node_value number;
    al_button number;
    v_system_id number;
    BEGIN
    ** Check to see if the 'tmpdata' parameter list exists.
    pl_id := Get_Parameter_List('tmpdata');
    ** If it does, then delete it before we create it again in
    ** case it contains parameters that are not useful for our
    ** purposes here.
    IF NOT Id_Null(pl_id) THEN
    Destroy_Parameter_List( pl_id );
    END IF;
    ** Create the 'tmpdata' parameter list afresh.
    pl_id := Create_Parameter_List('tmpdata');
    ** Add 3 data parameters to this parameter list
    Add_Parameter(pl_id,'V_SYSTEM_ID',TEXT_PARAMETER, node_value);
    **Pass a Parameter into PARAMFORM so that a parameter dialog will not appear
    **for the parameters being passing in.
    Add_Parameter(pl_id, 'PARAMFORM', TEXT_PARAMETER, 'NO');
    ** Run the report synchronously, passing the parameter list
    Run_Product(REPORTS, 'WRKPKG_HIER',
    SYNCHRONOUS, RUNTIME,FILESYSTEM, pl_id,
    NULL);
    END;
    null

  • One logical question related to ABAP report.

    Hi,
    I have one basic list report XYZ having some field like employee number. my requirement was is that to get the detail information on the same basic list XYZ.
    when using submit and return statement in basic list to call other report what will happen ?
    Not sure whether it will go into loop. If it will go to infinite loop then what is the way to come out from the loop.
    May be i am not explain the requirement correctly . Plz let me know the solutions?
    Thanks in Advance !!!!

    Yes - it'll loop. you can set up a hidden parameter on the selection screen called say, x_sub. It's normally blank, but when you submit it through the program, set it to 'X'. Then when you go to submit the program if x_sub = 'X', don't do the submit.
    Rob

  • Simple formatting question for mail-script

    I would like to edit the script below, so that theSubject ends up on a line of it's own,
    and messageURL indented on a new line below. It's important that it's indented.
    As it is now, the sixth line from the bottom counted; "make new entry with properties
    {name:theSubject & messageURL}" puts everything on the same line.
    tell application "Mail"
    try
    set theSelection to the selection
    repeat with theMessage in theSelection
    my importMessage(theMessage)
    end repeat
    end try
    end tell
    on importMessage(theMessage)
    tell application "Mail"
    try
    set theSubject to subject of theMessage
    set messageURL to "message://%3C" & (message id of theMessage) & "%3E"
    tell application "TaskPaper"
    tell front document
    make new entry with properties {name:theSubject & messageURL}
    end tell
    end tell
    end try
    end tell
    end importMessage
    Thanks in advance,
    Hakan
    Message was edited by: swedishstargazer

    How do I create a new entry with messageURL indented?
    Here's an approximate example of what I get with TaskPaper when I run your script as modified in my previous post:
    Cyberlettre du 19-01-2011 - Pétition - Tunisie
         message://%3C20110120170231.7BEB23D619@pmta4-1-fe10%3E
    Haïti : un an après le séisme
         message://%3C5464456.3052551294847006313.JavaMail.root@server8565%3E
    Surely I don't understand what you mean by “indented", since I would have considered lines 2 and 4 above as “indented”.

  • Create ABAP Report  for  Infoprovider

    Could anyone tell me Function module to fetch Infoprovider(s) for creating ABAP report on.
    The report should provide:
    Input:
    - Infoprovider(s)
    - Date-range: default: last 6 months
    Output:
    - data which is shown in the requests tab as described before, preceeded with the name of the infoprovider and having the possibility to download to Excel.
    Thanks

    Hi,
    you can easily use it as a template to create your own program. The program just shows what to do and how you need to populate the tables in order to pass selection parameters to the fm to get the required data back.
    Here a little demo I created to do it a bit flexible from different cubes:
    DATA: ref_data_tab TYPE REF TO data,
          ref_data_line TYPE REF TO data,
          it_sfc TYPE rsdri_th_sfc,
          l_sfc TYPE rsdri_s_sfc,
          it_sfc2 TYPE rsdd_th_sfc,
          l_sfc2 TYPE rrsfc01,
          it_sfk TYPE rsdri_th_sfk,
          l_sfk TYPE rsdri_s_sfk,
          it_sfk2 TYPE rsdd_th_sfk,
          l_sfk2 TYPE rrsfk01,
          l_first_call TYPE rs_bool,
          l_end_of_data TYPE rs_bool,
          l_tabname(30) TYPE c,
          l_cube(30) TYPE c,
          it_cobpro TYPE rsd_t_cob_pro,
          l_cobpro TYPE rsd_s_cob_pro.
    FIELD-SYMBOLS: <e_t_data> TYPE table,
                   <l_data> TYPE ANY,
                   <fs_field>.
    PARAMETERS: pa_cube TYPE rsinfoprov OBLIGATORY DEFAULT '/NBAG/CML_C05',
                pa_debug AS CHECKBOX.
    IF pa_cube(1) = '0'.
      CONCATENATE '/BI0/V' pa_cube '2' INTO l_tabname.
    ELSE.
      CONCATENATE '/BIC/V' pa_cube '2' INTO l_tabname.
    ENDIF.
    CREATE DATA ref_data_tab TYPE TABLE OF (l_tabname).
    CREATE DATA ref_data_line TYPE (l_tabname).
    ASSIGN ref_data_tab->* TO <e_t_data>.
    ASSIGN ref_data_line->* TO <l_data>.
    IF pa_debug = 'X'.
      BREAK-POINT.
    ENDIF.
    CALL FUNCTION 'RSD_COB_PRO_ALL_GET'
      EXPORTING
        i_infocube                      = pa_cube
      I_WITH_ATR_NAV                  = RS_C_FALSE
      I_WITH_META_IOBJ                = RS_C_FALSE
      I_OBJVERS                       = RS_C_OBJVERS-ACTIVE
      I_BYPASS_BUFFER                 = RS_C_FALSE
    IMPORTING
       e_t_cob_pro                     = it_cobpro
      E_T_IOBJ_CMP                    =
      E_T_ATR                         =
      E_TLOGO                         =
    EXCEPTIONS
       infocube_not_found              = 1
       error_reading_infocatalog       = 2
       illegal_input                   = 3
       OTHERS                          = 4.
    IF sy-subrc <> 0.
      WRITE: / sy-subrc, sy-msgno, sy-msgid, sy-msgv1, sy-msgv2, sy-msgv3.
    ENDIF.
    CLEAR: it_sfk[], it_sfc[].
    LOOP AT it_cobpro INTO l_cobpro.
      IF l_cobpro-iobjtp = 'KYF'.
        IF l_cobpro-ncumfl IS INITIAL.
          l_sfk-kyfnm = l_cobpro-iobjnm.
          l_sfk-kyfalias = l_cobpro-iobjnm.
          l_sfk-aggr = l_cobpro-aggrgen.
          INSERT l_sfk INTO TABLE it_sfk.
          MOVE-CORRESPONDING l_cobpro TO l_sfk2.
          INSERT l_sfk2 INTO TABLE it_sfk2.
        ENDIF.
      ELSE.
        IF l_cobpro-dimension NP '*P'.
          l_sfc-chanm = l_cobpro-iobjnm.
          l_sfc-chaalias = l_cobpro-iobjnm.
          l_sfc-orderby = 0.
          INSERT l_sfc INTO TABLE it_sfc.
          MOVE-CORRESPONDING l_cobpro TO l_sfc2.
          INSERT l_sfc2 INTO TABLE it_sfc2.
        ENDIF.
      ENDIF.
    ENDLOOP.
    CLEAR l_end_of_data.
    l_first_call = 'X'.
    WHILE l_end_of_data = space.
      CALL FUNCTION 'RSDRI_INFOPROV_READ'
        EXPORTING
          i_infoprov                   = pa_cube
          i_th_sfc                     = it_sfc
          i_th_sfk                     = it_sfk
      I_T_RANGE                    =
      I_TH_TABLESEL                =
      I_T_RTIME                    =
       i_reference_date             = sy-datum
      I_T_REQUID                   =
      I_SAVE_IN_TABLE              = ' '
      I_TABLENAME                  =
      i_save_in_file               = 'X'
      i_filename           = 'C:\test.csv'
       i_packagesize                = 1000
      I_MAXROWS                    = 0
         i_authority_check            = ' '
      I_CURRENCY_CONVERSION        = RS_C_TRUE
       i_use_db_aggregation         = ' '
       i_use_aggregates             = ' '
       i_rollup_only                = ' '
      I_READ_ODS_DELTA             = RS_C_FALSE
      I_CALLER                     = RSDRS_C_CALLER-RSDRI
      I_DEBUG                      = RS_C_FALSE
       IMPORTING
         e_t_data                     = <e_t_data>
         e_end_of_data                = l_end_of_data
      E_AGGREGATE                  =
      E_SPLIT_OCCURRED             =
        CHANGING
          c_first_call                 = l_first_call
       EXCEPTIONS
         illegal_input                = 1
         illegal_input_sfc            = 2
         illegal_input_sfk            = 3
         illegal_input_range          = 4
         illegal_input_tablesel       = 5
         no_authorization             = 6
         ncum_not_supported           = 7
         illegal_download             = 8
         illegal_tablename            = 9
         trans_no_write_mode          = 10
         inherited_error              = 11
         x_message                    = 12
         OTHERS                       = 13.
      IF sy-subrc <> 0.
        WRITE: / sy-subrc, sy-msgno, sy-msgid, sy-msgv1, sy-msgv2, sy-msgv3.
        EXIT.
      ELSE.
        LOOP AT <e_t_data> INTO <l_data>.
          WRITE: / sy-tabix, ':'.
          LOOP AT it_cobpro INTO l_cobpro.
            IF l_cobpro-ncumfl IS INITIAL.
              ASSIGN COMPONENT l_cobpro-iobjnm OF STRUCTURE <l_data>
                  TO <fs_field>.
              IF sy-subrc = 0.
                WRITE: <fs_field>.
              ENDIF.
            ENDIF.
          ENDLOOP.
        ENDLOOP.
      ENDIF.
      CLEAR: l_first_call, <e_t_data>[].
      IF l_end_of_data <> space.
        EXIT.
      ENDIF.
    ENDWHILE
    Hope this helps a bit
    regards
    Siggi

Maybe you are looking for

  • Playbook won't boot - Completely unique problem

    Ok before anyone blasts me for posting before researching I would like to say that I have done my research and this post is my last hope. I recently bought a second hand Playbook that was advertised as not working for $20. Me being a BB freak and my

  • How to get digital certificate informaiton of the email in mail adapter

    Hi, expert: I have a requirement to verify the validation of coming email with digital certification. The mail is with digital certification. If the coming email is valid, I 'll get the attachemt of the mail for further processing. I have a sender ma

  • Some code error, don't know how to fix...

    my xml is here: http://homework.cbsd.googlepages.com/podcast.xml and i need help with these errors: Sorry This feed does not validate. guid values must not be duplicated within a feed: E3E98228-E7F2-99DF-392B5305E37F61F1 [help] <guid isPermaLink="fal

  • A relatively simple question ( I think)

    I'm pretty new to java. I've read a few books and been practicing the basics, and now I'm attempting to learn a bit more through the creation of a simple game. I've been able to get a lot of the groundwork down, however, I'm having trouble figuring o

  • Changes in detail-disclosure aren't kept over show/hide

    Dear forum, In a table with detail-disclosure is the filled-in data in hidden fields not kept when using the show/hide function. Is this is a bug in build 10.1.2 build 19? Is this solved in the new build? Or is this expected behavior? Is there anyone