Need user exit to add body text in mail while saving the transaction VF02

Hi All,
   Output type has been configured as external send(5) to trigger billing document as PDF. There is a requirment to add body text in the  mail along with pdf attachement. Funtional consultant has tried using NACE "Mail title and Text" but that doesn't worked out. As a abaper, we are trying to identfy the user exit where I can code the body of mail text.
Can any body please let us know the user exit to add the body text only?
Regards,
Suresh Kumar.

Hi,
In your driver program you will have one standard include RVADOPFO.
Copy all the code available in that include and make it to Z include.
In this include function module ADDR_GET_NEXT_COMM_TYPE, will have the email address, subject etc.. details.
So You can modify the contents of the imported parameters here.
The above code will trigger only when update debugging is switched on!!!!!
Regards,
Santhosh.

Similar Messages

  • Unable to add body text for Purchase Order

    Hi,
    If this question has been posted before request send me the link .
    We are sending PO as a PDF attachment to email.
    To add body text to this I copied the print program SAPFM06P and modified the fm06pe04 program.
    DATA : l_mail_text TYPE bcsy_text,
                     l_mail_text_row TYPE soli.
              CONCATENATE 'Please check the' ' Attached file' INTO l_mail_text_row.
              APPEND l_mail_text_row TO l_mail_text.
                document = cl_document_bcs=>create_document(
                    i_type    = 'PDF' " cf. RAW, DOC
                    i_hex     = pdf_content
                    i_text    = l_mail_text               "added by me
                    i_length  = lp_pdf_size
                    i_subject = lv_subject ).                   "#EC NOTEXT
    But it does not show in the body text.
    But if I use the add_attachment method the text comes as an attachment.
    I am not sure what is the error here.
    Regards,
    Narayani

    DATA: send_request       TYPE REF TO cl_bcs.
      DATA: text               TYPE bcsy_text.
      DATA: binary_content     TYPE solix_tab.
      DATA: document           TYPE REF TO cl_document_bcs.
      DATA: sender             TYPE REF TO cl_sapuser_bcs.
      DATA: recipient          TYPE REF TO if_recipient_bcs.
      DATA: bcs_exception      TYPE REF TO cx_bcs.
      DATA: sent_to_all        TYPE os_boolean.
             Convert the OTF file format ino the PDF format.
              CALL FUNCTION 'CONVERT_OTF_2_PDF'
                IMPORTING
                  bin_filesize           = lwa_bin_filesize
                TABLES
                  otf                    = lt_otf
                  doctab_archive         = lt_doctab_archive
                  lines                  = lt_pdf_lines
                EXCEPTIONS
                  err_conv_not_possible  = 1
                  err_otf_mc_noendmarker = 2
                  OTHERS                 = 3.
              REFRESH lt_objbin.
             get the pdf data into the attachment table .
              CALL FUNCTION 'SX_TABLE_LINE_WIDTH_CHANGE'
                EXPORTING
                  line_width_dst              = 255
                TABLES
                  content_in                  = lt_pdf_lines
                  content_out                 = lt_objbin
                EXCEPTIONS
                  err_line_width_src_too_long = 1
                  err_line_width_dst_too_long = 2
                  err_conv_failed             = 3
                  OTHERS                      = 4.
             Refresh the local tables and workareas.
              REFRESH: lt_reclist,
                       lt_objtxt,
                       lt_objpack.
              TRY.
                  CLEAR send_request.
        -------- create persistent send request ------------------------
                  send_request = cl_bcs=>create_persistent( ).
        -------- create and set document with attachment ---------------
        create document from internal table with text
                  REFRESH text.
                  APPEND 'Body1.' TO text.
                  APPEND 'Body2.'TO text.
                  APPEND 'Body3.'TO text.
                  CLEAR document.
                  document = cl_document_bcs=>create_document(
                                  i_type    = 'RAW'
                                  i_text    = text
                                  i_length  = '12'
                                  i_subject = 'Electronic Payment Notification' ).
                  FIELD-SYMBOLS <fs_x> TYPE x.
                  DATA lv_content  TYPE xstring.
                  CLEAR lv_content.
                  LOOP AT lt_objbin INTO lwa_objbin.
                    ASSIGN lwa_objbin TO <fs_x> CASTING.
                    CONCATENATE lv_content <fs_x> INTO lv_content IN BYTE MODE.
                  ENDLOOP.
                  CLEAR pdf_content.
                  pdf_content = cl_document_bcs=>xstring_to_solix(
                          ip_xstring = lv_content ).
        add attachment to document
        BCS expects document content here e.g. from document upload
        binary_content = ...
                  CONCATENATE 'Remittance_' sy-datum sy-uzeit '.pdf' INTO lv_filename_cl.
                  CALL METHOD document->add_attachment
                    EXPORTING
                      i_attachment_type    = 'PDF'
                      i_attachment_subject = lv_filename_cl
                      i_att_content_hex    = pdf_content.
        add document to send request
                  CALL METHOD send_request->set_document( document ).
        --------- set sender -------------------------------------------
        note: this is necessary only if you want to set the sender
              different from actual user (SY-UNAME). Otherwise sender is
              set automatically with actual user.
                  CLEAR sender.
                  sender = cl_sapuser_bcs=>create( sy-uname ).
                  CALL METHOD send_request->set_sender
                    EXPORTING
                      i_sender = sender.
                  CALL METHOD send_request->set_status_attributes(
                    EXPORTING
                    i_requested_status = 'N'
                    i_status_mail = 'N' ).
             Fill the receiver for the email with PDF attachemnt.
                  CLEAR : lwa_reclist,
                          lwa_lfa1,
                          lwa_adr6.
                  CLEAR lwa_lfa1.
                  READ TABLE lt_lfa1
                        INTO lwa_lfa1
                        WITH KEY lifnr = lwa_reguh-lifnr.
                  IF sy-subrc EQ 0.
                    CLEAR lwa_adr6.
                    READ TABLE lt_adr6
                          INTO lwa_adr6
                          WITH KEY addrnumber = lwa_lfa1-adrnr.
                    IF ( sy-subrc EQ 0 )
                      AND ( lwa_adr6-smtp_addr IS NOT INITIAL ).
        --------- add recipient (e-mail address) -----------------------
        create recipient - please replace e-mail address !!!
                      CLEAR recipient.
                      recipient = cl_cam_address_bcs=>create_internet_address(
                                                       lwa_adr6-smtp_addr ).
                    ELSE.
                      CLEAR lv_fax.
                      lv_fax = lwa_lfa1-telfx.
                      recipient = cl_cam_address_bcs=>create_fax_address(
                      i_country = lwa_lfa1-land1
                       i_number = lv_fax ).
                    ENDIF.
                  ENDIF.
        add recipient with its respective attributes to send request
                  CALL METHOD send_request->add_recipient
                    EXPORTING
                      i_recipient = recipient
                      i_express   = 'X'.
        ---------- send document ---------------------------------------
                  CALL METHOD send_request->send(
                    EXPORTING
                      i_with_error_screen = 'X'
                    RECEIVING
                      result              = sent_to_all ).
                  IF sent_to_all = 'X'.
                    WRITE text-003.
                  ENDIF.
                  COMMIT WORK.
                CATCH cx_bcs INTO bcs_exception.
                  WRITE: 'Error Occured'.
                  WRITE: 'Error', bcs_exception->error_type.
                  EXIT.
              ENDTRY.

  • Need a user exit to add custom partner function in sales order @ item level

    Hi,
    Need a user exit to add custom partner function in sales order at item level. Goto --> Item --> Partner.
    Thanks,
    Thiyagi

    HI Leo
      To add a condition price for a condition type, this has to be assigned in the <b>pricing procedure</b>. For each condition type in a pricing procedure, we will have <b>access sequences</b>. If we follow this approch, the price is automatically extracted basing on the access sequences when condition records are maintained. For this, no coding is required and everything can be done by configuration by Functional consultant.
       Naren is right to point out on the same.
      If you need to change the price for a particular condition which already exists, you can go by <b>pricing routines</b>. Go through transaction <b>VOFM</b> for the same. 
       I advice you to discuss with your functional consultant and understand the requirement and then go for modifying accordingly.
    Kind Regards
    Eswar

  • Need User exit/BADI or BTE for FF_5

    Hi,
    My requirement is to enhance the automatic clearing rules for tcode ff_5.
    Program RFEBKA00 will upload bank statement items based on the external transaction codes provided by the banks .
    The standard posting rules will clear a GL bank account using a set of algorithms for further interpretation
    set of standard algorithms do not meet the clearing criteria .hence i need user exit / badi/bte to enhance the automatic clearing rules.
    EXIT ZXF01U01& or FEB_BADI are triggering before posting the document.hence i think we can not use these.
    Please suggest me the alternate solution.

    Hi,
    We are facing a similar requirement. We are trying to enhance the interpretation logarithm using search string. The requirement is to update the text field with a Constant Prefix + a number from the Notes to Payee field. For e.g.:
    The BAI file transaction data is like:
    16,169,94906,V,120108,0000,6008ABS43400024460,783517/
    88,TBS EUROPE LTD   203647 10293164
    88,/ENTRY-06 FEB
    88,TRF/REF  6008ABS43400024475
    88,783517 BANK GIRO CREDIT
    We defined a search string to find the text 'TBS EUROPE LTD' and if it is found, the search string fetches the number '783517' from the Notes to Payee field and thereafter, at the time of posting, the text field has to be updated with '120108 TBS EUROPE LTD 783517', where 120108 is the validity date of the incoming money through this transaction and which does not form part of the Notes to Payee field.
    Also, if just the number '783517' has to be updated in the text field.
    Please suggest how to achieve this functionality.
    Thanks in advance.
    Regards
    Sourabh

  • Need User exit or BAdi for VF01

    Hi.
    I need User exit or Badi for VF01.
    Condtion: After Successful Save of document number in database.
    Please help me.
    To be reward all helpfull answers.
    Regards.
    Jay

    Hi
    The follwing user exits and badis available:
                                                                                    Enhancement                                                                               
    V05N0001                              
    User Exits for Printing Billing Docs. using POR Procedure       
    V05I0001                              
    User exits for billing index                                    
    SDVFX011                              
    Userexit for the komkcv- and kompcv-structures                  
    SDVFX010                             
      User exit item table for the customer lines                     
    SDVFX009                               
    Billing doc. processing KIDONO (payment reference number)       
    SDVFX008                              
    User exit: Processing of transfer structures SD-FI              
    SDVFX007                               
    User exit: Billing plan during transfer to Accounting           
    V61A0001                               
    Customer enhancement: Pricing                                   
    V60P0001                               
    Data provision for additional fields for display in lists       
    V60A0001                               
    Customer functions in the billing document                                                                               
    Business Add-in                                                                                SD_CIN_LV60AU02                       
    BADI for billing                                                
    VOR_WA_FAKTURA                        
    Billing before Goods Issue                                                                               
    If it is helpful rewards points.
                         Regards
                          Pratap.M

  • Need user exit or BADI for NMM1

    Hi,
    I need user exit/BADI  for transaction NMM1.
    We need to know the material status of material to determine whether to send a Reservation or PR.
    Presently it is determining depending on material type .
    Regards,
    Sekhar Raju.

    It's a really big list -:)
    <b>Enhancement</b>
    NLEI0003
    NLEI0004
    NLEI0005
    NLEI0006
    NMAT0001
    NMAT0003
    NMAT0004
    NPDIST00
    NPDIST01
    NPDIST02
    NPRI0001
    NPRV0001
    NQSFP001
    NTPK0001
    NZUZ0001
    NLEI0002
    N1200001
    N1400001
    NBDT0001
    NBILL000
    NBILL001
    NBILL003
    NBTYPE00
    NC160001
    NC160002
    NC160003
    NCPR0001
    NHCO0001
    NKOS0001
    NKOS0002
    NLEI0001
    <b>Business Add-in</b>
    ISH_PROCEDURE_CHECK
    ISH_PROCEDURE_ADJUST
    ISH_PRINT_INVOICE
    ISH_PRICING_FIELDS
    ISH_PICKLIST_000002
    ISH_PICKLIST_000001
    ISH_PAYDIST_INSREL
    ISH_P21_TRANSFER
    ISH_PROCEDURE_PROPOS
    ISH_PROCEDURE_SORT
    ISH_REV_ASSIGNMENT
    ISH_RNZUZBI1_SORT
    ISH_SERVICEFORM
    ISH_SERVICE_DPD
    ISH_SERVICE_ENTRY
    ISH_SERVICE_MOVEMENT
    ISH_TREATMENT_DETERM
    ISH_CONTRACT_MAXIMUM
    ISH_COPAY_REPAY
    ISH_COPAY_TRANSFER
    ISH_DE_DRG_SC_FOREIG
    ISH_DIAGNOSIS_CUST
    ISH_DOP_DEDUCTION
    ISH_DRGCASE_CHECK
    ISH_INSREL_CASE_SAVE
    ISH_INVOICE_CHECK
    ISH_INV_CANCEL_CHK_1
    ISH_IR_DEFAULT_UNTGR
    ISH_MM_CONS_CO_PREP
    ISH_MM_DOCTYPE
    ISH_MM_EXT_INQUIRY
    ISH_MM_MAT_PRICE
    ISH_MM_STORL2MMDOC
    ISH_NPDRG2_FINAL_CHK
    Greetings,
    Blag.

  • Why do we need  user exit number

    Hi,
    why do we need  user exit number?/
    what is the purpose of this user exit number??
    example (U22....)
    thanks
    Rama

    Hi Rama,
    Under a user exit number you can have multiple Exits/FMs. If you add this single number in CMOD for any project then you can make use of all the exits under this User Exit number.
    Hope i have answered your question.
    THnaks,
    Anil.

  • Need user exits material

    hi.,
    This is satish we requesting to all. I need user exits materials. It is very important me so please any one send the link or pdf file.
    thanking you all

    Please see the following program. This helps you to find user_exits...
    Start -
    REPORT ZFIND_USEREXITS .
    TABLES : tstc,     "SAP Transaction Codes
             tadir,    "Directory of Repository Objects
             modsapt,  "SAP Enhancements - Short Texts
             modact,   "Modifications
             trdir,    "System table TRDIR
             tfdir,    "Function Module
             enlfdir,  "Additional Attributes for Function Modules
             tstct.    "Transaction Code Texts
    *& Variables
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    *& Selection Screen Parameters
    SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN END OF BLOCK a01.
    *& Start of main program
    START-OF-SELECTION.
    Validate Transaction Code
      SELECT SINGLE * FROM tstc
        WHERE tcode EQ p_tcode.
    Find Repository Objects for transaction code
      IF sy-subrc EQ 0.
        SELECT SINGLE * FROM tadir
           WHERE pgmid    = 'R3TR'
             AND object   = 'PROG'
             AND obj_name = tstc-pgmna.
        MOVE : tadir-devclass TO v_devclass.
        IF sy-subrc NE 0.
          SELECT SINGLE * FROM trdir
             WHERE name = tstc-pgmna.
          IF trdir-subc EQ 'F'.
            SELECT SINGLE * FROM tfdir
              WHERE pname = tstc-pgmna.
            SELECT SINGLE * FROM enlfdir
              WHERE funcname = tfdir-funcname.
            SELECT SINGLE * FROM tadir
              WHERE pgmid    = 'R3TR'
                AND object   = 'FUGR'
                AND obj_name = enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
    Find SAP Modifactions
        SELECT * FROM tadir
          INTO TABLE jtab
          WHERE pgmid    = 'R3TR'
            AND object   = 'SMOD'
            AND devclass = v_devclass.
        SELECT SINGLE * FROM tstct
          WHERE sprsl EQ sy-langu
            AND tcode EQ p_tcode.
        FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
        WRITE:/(19) 'Transaction Code - ',
        20(20) p_tcode,
        45(50) tstct-ttext.
        SKIP.
        IF NOT jtab[] IS INITIAL.
          WRITE:/(95) sy-uline.
          FORMAT COLOR COL_HEADING INTENSIFIED ON.
          WRITE:/1 sy-vline,
          2 'Exit Name',
          21 sy-vline ,
          22 'Description',
          95 sy-vline.
          WRITE:/(95) sy-uline.
          LOOP AT jtab.
            SELECT SINGLE * FROM modsapt
            WHERE sprsl = sy-langu AND
            name = jtab-obj_name.
            FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
            WRITE:/1 sy-vline,
            2 jtab-obj_name HOTSPOT ON,
            21 sy-vline ,
            22 modsapt-modtext,
            95 sy-vline.
          ENDLOOP.
          WRITE:/(95) sy-uline.
          DESCRIBE TABLE jtab.
          SKIP.
          FORMAT COLOR COL_TOTAL INTENSIFIED ON.
          WRITE:/ 'No of Exits:' , sy-tfill.
        ELSE.
          FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
          WRITE:/(95) 'No User Exit exists'.
        ENDIF.
      ELSE.
        FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
        WRITE:/(95) 'Transaction Code Does Not Exist'.
      ENDIF.
    Take the user to SMOD for the Exit that was selected.
    AT LINE-SELECTION.
      GET CURSOR FIELD field1.
      CHECK field1(4) EQ 'JTAB'.
      SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
      CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
    *--End--
    Hope this`ll work .
    Thanks

  • User exit to add header pricing condition in sales order

    Hi experts,
    I have an urgent requirement in VA01/VA02 to automatically add a header pricing condition and rate (Kanban charges) for a certain type of Sales order (Kanban Sales order). Does anyone know what user exit I can use for this requirement? Also, the additional header pricing condition should be included in the net value for the item.
    Thanks!

    HI Leo
      To add a condition price for a condition type, this has to be assigned in the <b>pricing procedure</b>. For each condition type in a pricing procedure, we will have <b>access sequences</b>. If we follow this approch, the price is automatically extracted basing on the access sequences when condition records are maintained. For this, no coding is required and everything can be done by configuration by Functional consultant.
       Naren is right to point out on the same.
      If you need to change the price for a particular condition which already exists, you can go by <b>pricing routines</b>. Go through transaction <b>VOFM</b> for the same. 
       I advice you to discuss with your functional consultant and understand the requirement and then go for modifying accordingly.
    Kind Regards
    Eswar

  • I need to know how to edit a drawing - basically remove the arrows and text but at the same time match the background of the existing pic. then re add new text. how do i erase the arrows and text and arrows but match current background of pic. step by ste

    i need to know how to edit a drawing - basically remove the arrows and text but at the same time match the background of the existing pic. then re add new text. how do i erase the arrows and text and arrows but match current background of pic. step by step explanation please beginner

    Please post (a relevant section of) it right on this Forum.

  • Need User Exits for Creation of Delivery and for Posting Goods Issue

    Hi,
    I need User Exits for
    Creation of Delivery
    Posting Goods Issue
    I need to make some checks regarding customer license expiration and if checks fail, I need to stop Creation of Delivery and Posting Goods Issue.
    Thanks in advance,
    Will reward,
    Mindaugas

    In the delivery you can use userexit USEREXIT_SAVE_DOCUMENT_PREPARE to make your checks and send an error message to the user in case they fail.
    You can find this user exit (form routine) in include MV50AFZ1.
    Hope that helps,
    Michael

  • Need user exit to put filter on field ( customer item due by ) in F110

    i'm having the requirement to put filter on the transation f110 on the paramater tab  of customer item due date that shoud consider  only 10 days back date form the sy-datum .  so i need user exit to pace the logic in automatic payment transaction.
    Thanks
    sarfraz

    Hi used the BET for process 1820 copied the function module and configure it and i have put the break point but when i have process the transaction f110 its not triggering.
    i have done as the below config
    In FIBF Tcode, Products -> of Customer for BTE 1820 : created a ZZ<Product> and made Active
    In Process Modules-> of Customer for BTE 00001820 : added ZZ<Function Module> and ZZ<Product>

  • Need user exit / screen exit for SE38 program variant save

    Hi ABAPers,
    Need user exit / screen exit for SE38 program variant save action to log addition details of variant changes done and relavent ticket details in z table.
    Currently table VARID table stores only latest change and not history.
    We need to avoid logging enabling for table VARID  and custom field addition in it.
    Please advice.
    -Nilesh

    HI Nilesh,
    I don't think any Exits available for this.
    Better u go for Implicit Enhancement.
    regards
    Sreekanth

  • Need user exit name

    need user exit name
    which allow me to process my logic
    when exactly the sales order is generated for VA01.
    I want to process my logic at that time only.
    points will be awarded for good answers.
    Thanks
    Raj

    hI,
         Check out this documentation.....
    http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm
    Under user exits>user exits in sales>user exits in sales document processing
    Have a look at the following exits
    For Header fields: Modify user exit in include MV45AFZZ(USEREXIT_MOVE_FIELD_TO_VBAK) to populate the new fields.
    For Item level fields: Modify user exit in include MV45AFZZ(USEREXIT_MOVE_FIELD_TO_VBAP) to populate the new fields.
    USEREXIT_SAVE_DOCUMENT_PREPARE
    <b>Reward points</b>
    Regards

  • Need user exit/BADi

    Hi All,
    I have following requirement for USER EXIT/BADI:-
    Requirement  :  If some material number is entered in Transaction  ME11 /ME12  , I have to find a user exit/BADI where I will find material group from mara based on EINA-MATNR = MARA-MATNR  if that group is within some specific group  like  CHEM ,POLY,OIL etc.  , user will not be allowed to go to next screen  and it will show message to user on the first screen itself..
    If any one has come across such requirement please help me on this asap.
    Thanks.
    Lokesh

    Hi Lokesh,
    i am sending one program using which you can check for the user exits and Badi's used in the respective transaction.
    It will surely resolve your issue.
    Use the following prog. it will fetch the Exits as well as BADI's for that T Code.
    *& Report Z_USEREXIT_DISPLAY
    REPORT Z_USEREXIT_DISPLAY
    NO STANDARD PAGE HEADING
    LINE-SIZE 200 MESSAGE-ID ZZ.
    T A B L E D E C L A R A T I O N S *
    TABLES: TFTIT,
    E071,
    E070.
    S T R U C T U R E D E C L A R A T I O N S *
    TYPES: BEGIN OF X_TSTC,
    TCODE TYPE TCODE,
    PGMNA TYPE PROGRAM_ID,
    END OF X_TSTC.
    TYPES: BEGIN OF X_TADIR,
    OBJ_NAME TYPE SOBJ_NAME,
    DEVCLASS TYPE DEVCLASS,
    END OF X_TADIR.
    TYPES: BEGIN OF X_SLOG,
    OBJ_NAME TYPE SOBJ_NAME,
    END OF X_SLOG.
    TYPES: BEGIN OF X_FINAL,
    NAME TYPE SMODNAME,
    MEMBER TYPE MODMEMBER,
    INCLUDE(15), "Include name
    END OF X_FINAL.
    I N T E R N A L T A B L E D E C L A R A T I O N S *
    DATA: IT_TSTC TYPE STANDARD TABLE OF X_TSTC WITH HEADER LINE.
    DATA: IT_TADIR TYPE STANDARD TABLE OF X_TADIR WITH HEADER LINE.
    DATA: IT_JTAB TYPE STANDARD TABLE OF X_SLOG WITH HEADER LINE.
    DATA: IT_FINAL TYPE STANDARD TABLE OF X_FINAL WITH HEADER LINE.
    V A R I A B L E S D E C L A R A T I O N S *
    U S E R I N P U T S S C R E E N *
    S E L E C T I O N S C R E E N *
    SELECTION-SCREEN: BEGIN OF BLOCK BLK01 WITH FRAME TITLE TEXT-T01.
    PARAMETERS: P_TCODE LIKE TSTC-TCODE OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK BLK01.
    S t a r t o f S e l e c t i o n *
    START-OF-SELECTION.
    PERFORM GET_TCODES. "Get Tcodes
    PERFORM GET_OBJECTS. "Get Objects
    E n d o f S e l e c t i o n *
    END-OF-SELECTION.
    PERFORM DISPLAY_RESULTS. "Display Results
    *& Form get_tcodes
    Get Tcodes
    FORM GET_TCODES.
    SELECT TCODE
    PGMNA
    INTO TABLE IT_TSTC
    FROM TSTC
    WHERE TCODE = P_TCODE.
    IF SY-SUBRC = 0.
    SORT IT_TSTC BY TCODE.
    ENDIF.
    ENDFORM. " get_tcodes
    *& Form get_objects
    Get Objects
    FORM GET_OBJECTS.
    DATA: L_FNAME LIKE RS38L-NAME,
    L_GROUP LIKE RS38L-AREA,
    L_INCLUDE LIKE RS38L-INCLUDE,
    L_NAMESPACE LIKE RS38L-NAMESPACE,
    L_STR_AREA LIKE RS38L-STR_AREA.
    DATA: V_INCLUDE LIKE RODIOBJ-IOBJNM.
    DATA: E_T_INCLUDE TYPE STANDARD TABLE OF ABAPSOURCE WITH HEADER
    LINE.
    DATA: L_LINE TYPE STRING,
    L_TABIX LIKE SY-TABIX.
    IF NOT IT_TSTC[] IS INITIAL.
    SELECT OBJ_NAME
    DEVCLASS
    INTO TABLE IT_TADIR
    FROM TADIR FOR ALL ENTRIES IN IT_TSTC
    WHERE PGMID = 'R3TR' AND
    OBJECT = 'PROG' AND
    OBJ_NAME = IT_TSTC-PGMNA.
    IF SY-SUBRC = 0.
    SORT IT_TADIR BY OBJ_NAME DEVCLASS.
    SELECT OBJ_NAME
    INTO TABLE IT_JTAB
    FROM TADIR FOR ALL ENTRIES IN IT_TADIR
    WHERE PGMID = 'R3TR' AND
    OBJECT = 'SMOD' AND
    DEVCLASS = IT_TADIR-DEVCLASS.
    IF SY-SUBRC = 0.
    SORT IT_JTAB BY OBJ_NAME.
    ENDIF.
    ENDIF.
    ENDIF.
    *- Get UserExit names
    LOOP AT IT_JTAB.
    SELECT NAME
    MEMBER
    INTO (IT_FINAL-NAME, IT_FINAL-MEMBER)
    FROM MODSAP
    WHERE NAME = IT_JTAB-OBJ_NAME AND
    TYP = 'E'.
    APPEND IT_FINAL.
    CLEAR IT_FINAL.
    ENDSELECT.
    ENDLOOP.
    *- Process it_final contents.
    LOOP AT IT_FINAL.
    L_TABIX = SY-TABIX.
    CLEAR: L_FNAME,
    L_GROUP,
    L_INCLUDE,
    L_NAMESPACE,
    L_STR_AREA.
    L_FNAME = IT_FINAL-MEMBER.
    CALL FUNCTION 'FUNCTION_EXISTS'
    EXPORTING
    FUNCNAME = L_FNAME
    IMPORTING
    GROUP = L_GROUP
    INCLUDE = L_INCLUDE
    NAMESPACE = L_NAMESPACE
    STR_AREA = L_STR_AREA
    EXCEPTIONS
    FUNCTION_NOT_EXIST = 1
    OTHERS = 2.
    IF SY-SUBRC = 0.
    IF NOT L_INCLUDE IS INITIAL.
    *- Get Source code of include.
    CLEAR: V_INCLUDE, E_T_INCLUDE, E_T_INCLUDE[].
    V_INCLUDE = L_INCLUDE.
    CALL FUNCTION 'MU_INCLUDE_GET'
    EXPORTING
    I_INCLUDE = V_INCLUDE
    TABLES
    E_T_INCLUDE = E_T_INCLUDE.
    IF SY-SUBRC = 0.
    LOOP AT E_T_INCLUDE.
    IF E_T_INCLUDE-LINE CS 'INCLUDE'.
    CLEAR L_LINE.
    L_LINE = E_T_INCLUDE-LINE.
    CONDENSE L_LINE NO-GAPS.
    TRANSLATE L_LINE USING '. '.
    L_LINE = L_LINE+7(9).
    IT_FINAL-INCLUDE = L_LINE.
    MODIFY IT_FINAL INDEX L_TABIX TRANSPORTING INCLUDE.
    ENDIF.
    ENDLOOP.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDLOOP.
    ENDFORM. " get_objects
    *& Form display_results
    Display Results
    FORM DISPLAY_RESULTS.
    FORMAT COLOR COL_HEADING.
    WRITE:/1(150) SY-ULINE.
    WRITE:/ SY-VLINE,
    2(23) 'Extension Name',
    24 SY-VLINE,
    25(39) 'Exit Name',
    64 SY-VLINE,
    65(74) 'Description',
    140 SY-VLINE,
    141(9) 'Include',
    150 SY-VLINE.
    WRITE:/1(150) SY-ULINE.
    FORMAT RESET.
    SORT IT_FINAL BY NAME MEMBER.
    LOOP AT IT_FINAL.
    CLEAR TFTIT.
    SELECT SINGLE STEXT
    INTO TFTIT-STEXT
    FROM TFTIT
    WHERE SPRAS = 'EN' AND
    FUNCNAME = IT_FINAL-MEMBER.
    WRITE:/ SY-VLINE,
    IT_FINAL-NAME COLOR COL_KEY, 24 SY-VLINE,
    25 IT_FINAL-MEMBER, 64 SY-VLINE,
    65 TFTIT-STEXT, 140 SY-VLINE,
    141 IT_FINAL-INCLUDE, 150 SY-VLINE.
    WRITE:/1(150) SY-ULINE.
    ENDLOOP.
    ENDFORM. " display_results
    Hope this resolves your query.
    Reward all the helpful answers.
    Regards

Maybe you are looking for

  • Receiving Open Interface

    Hi. I am looking for helps on Receiving transaction Interface which is R11 Features. I have load the receipt information for item which is serial control that means I have populate the RCV_Serial_Number table. Please provide ur valuable inputs for th

  • Adobe AIR Application won't install

    Also, tried reinistalling latest version of Adobe AIR but a message appears saying that the latest version of Adobe AIR is already installed, even though I thought I had unistalled it with the help of Microsoft Fix it (i.e. it no longer appeared in t

  • Is it possible in SAP that I can restrict a specific delivery can be attach

    Hi All, Is it possible in SAP that I can restrict a specific delivery can only be attached with specific shipment? Example, I have a delivery type "A", which can only be attached with Shipment type "Z". Thanks in advance.

  • #554 5.4.4 SMTPSEND.DNS.MxLoopback; DNS records for this domain are configured in a loop ##

    Hi, This is my first post here.  My exchange server of late is facing a peculiar problem. I get the error message that I have posted below when sending mails to any outside domain. However when I restart the server the mails can be resend to the addr

  • Kidno Transfer to Dmee Files for Norway

    Hi all, We're on ECC6 and want to generate DME output in XML format payment files. There is a DMEE template available - CGI_XML_CT Despite my best efforts I cannot seem to figure out how to get the KIDNO into the DMEE file - or the Notes to Payee. DM