Enhancement in FI module.

Hi,
is there any special enhancement technic for FI module like user exit.
Thanks,
jigar

Hi,
In FI you can use BTEs (Business transaction evernts). You can use transaction FIBF to implement BTEs. Following are the steps on how you can implement BTE once you are in transaction FIBF.
<b>[1].</b> first of all you need to find out the suitable BTE for your requirement. There are two kind of interfaces available in SAP for BTEs <b>a).</b> Publish & Subscribe interfaces  and <b>b).</b> Process interfaces .
To do this, choose Environment -> Info system (P/S) or Environment -> Info system (Processes). Execute the program. You should enter "A" as the attribute type. You see the respective interfaces with which the R/3 System provides you. Note the key of the interface which you require. ( key is nothing but the '8' digit / character number ).  All the iterface comes with sample function module. Once you identify the interface which meet your requirement, double-click it and <b>it will show you the sameple function module.</b>
<b>For example</b>, you want the BTE which triggers when the accounting document is being create or changed. You will find this interfaces are under <b>Environment -> Info system (Processes)</b>. The BTEs are,
Key           Description
<b>00001120</b>: DOCUMENT POSTING:  Field substitution header/items
<b>00001430</b>: CHANGE DOCUMENT: Field substitution header/line
If you double click any of this, it will show you the sample function moule name. In this case the sample FM are SAMPLE_PROCESS_00001120 & SAMPLE_PROCESS_00001430 respectively.
<b>Note down the key and sample FM name.</b>
<b>[2].</b> Enter a product using "Settings -> products -> of a Customer. Here you enter the product name in customer name space and give meaningful description. ( do not check "active" check box this time - see step-5 for this ).
<b>[3].</b>  Go to Settings -> P/S function modules or Process function modules -> of a customer. Here you go to either P/S function module or process function module depending of what BTE you are implementing from step-1. If the BTE is from P/S info system you go to P/S function module else the Process function module.
Here you make following entries.
> a) Process ( this key for the interface you selected in step-1 )
> b) Function module ( Enter a custom function module name, here you just give the meaningful name. The function module can be designed once you finish the required settings in transaction FIBF )
> c) The product that you want to use ( this is the product you entered in step-2)
<b>[4].</b>   Now you go to transaction SE37 to design your custom FM. For this you Copy the sample module you note down in step-1 and call it the same as the function module entered in step 3. Fill the source text of the empty function module. Activate the function module.
<b>[5].</b> Now go to transaction FIBF again and go to the menu path as described in Step-2. Now you active the product you entered earlier by checking "active" checkbox.
<b>[6].</b> Run the R/3 transaction / program affected and test whether calling your function module works.
Let me know if you need further information.
Regards,
RS

Similar Messages

  • Enhance standard function module in ECC 5.0 System

    Hi All,
    My requirement is to add the custome fields in the standard screen.there is no screen exit for this screen.
    The screen is calling by using the standard function module CALL_SCREEN_HU_DISPLAY
    Iam working on ECC 5.0 System, Is it possisble to enhance the standard function module and add custome fields.
    Please let me know if any suggestions.
    Thanks & Regards,
    Nagendra

    Hi Reddy,
    Thanks for the reply..
    Can u please give the steps how to create implicit enhancement in function modules.
    Thanks & Regards,
    Nagendra

  • Data source enhancement thru function module

    Folks,
    I am trying to figure relation between data source enhancement, package, function module etc?
    I see a function module where enhancement is done. when I go and try to see master data exit EXIT_SAPLRSAP_0002 ... I see include but I do not see reference of function module in this include?
    All these codes are so simple... but I am struggling to figure out all these relation RSAP0001, exit_saplrsap* - include inside and function module attached?
    Can somebody give very simple connection for all these components?
    Thanks,
    -SM

    Hi,
    All these codes are so simple... but I am struggling to figure out all these relation RSAP0001, exit_saplrsap - include inside and* function module attached?
    Please note that for enhancing certain standard objects for meet customer needs, SAP provides different customer exits where we can code as per our requirements.
    These customer exits starting with EXIT********* will be grouped by Enhancements e.g. RSAP0001
    Thanks for your response. In RS02 it is clear that we can mention function module name for data source - that is good for generic extraction. But what do we do when we are enhancing SAP extractor?
    When you want to enhance SAP extractors, you go for customer exits.
    EXIT_SAPLRSAP_001              for Transactional datasources
    EXIT_SAPLRSAP_002              for Master datasources
    EXIT_SAPLRSAP_003              for Text datasources
    EXIT_SAPLRSAP_004              for Hierarchy datasources
    in se37 screen in table tab - sometime we see extract structure - that will establish which functional being called for which data source, but in my case - I do not see anything in table tab?
    If your datasource is function module based, then the function module which is mentioned in RSO2 for your datasource would surely have e_t_data in tables tab with its associated type.
    Only if the datasource is standard one and is processed by function module e.g. 2lis_18_i0notif which is processed by MCEX_BW_LO_API function module, these would not have associated type mentioned for them. To get their structure, you can go to RSA5/ RSA6

  • Enhancement spot - Function module not getting triggered in background

    Hello Experts,
    I have implemented an explicit enhancement spot. In the code implementation, I am calling a Function Module.
    When I call that FM in background, things are not working as expected. But if I am calling that FM in normal mode, things are working fine.
    I am passing parameter to FM by 'Value'.
    Can anybody please let me know what I am doing wrong?
    Regards,
    Ashish

    Hi,
    Enhancement not getting triggered in BDC
    Regarding on your query, You would go through below link.
    Screen Enhancement of Transaction CO11N
    I hope, it helps to you.
    Regards,
    Sekhar

  • How to enhance/modify standard module in PBO

    hi
    In Program SAPLBARM
    screen no. 0800
    i want to add my code in PBO MODULE set_dynpro.
    can you post your valuable replies with the procedure how to add my code.?
    shall i go for access key, or with enhancement.
    note: when i tried to add code with new enhancement it is giving syntax error.( because we have to add code in module ... end module)
    standard code is:
    IF rm61b-budat IS INITIAL.
        MOVE sy-datlo TO rm61b-budat.
      ENDIF.
      IF rm61b-bldat IS INITIAL.
        MOVE sy-datlo TO rm61b-bldat.
      ENDIF.
    Mycode will be
    IF rm61b-budat IS INITIAL.
        MOVE space TO rm61b-budat.
      ENDIF.
      IF rm61b-bldat IS INITIAL.
        MOVE space TO rm61b-bldat.
      ENDIF.
    waiting for replies
    Thanks
    surya

    Many thanks for your help.
    I managed to set a new standard web template based on 0ADHOC but now I've found a new issue: in the WAD, I have created a new web template also copied from 0ADHOC. This web template will embed a query and the web report will be executed from WAD, not from BEx. The problem is that the different buttons (Save View, Bookmark, Variable Screen, Export Excel, Export to CSV, etc)don't seem to work when I click on them once the report is showing the results.
    Can you please give me any idea on what's happening and if there's anything else I should do?
    Many thanks in advance.
    Inma

  • Data source Enhancement with Function Module

    Hi all!
    I have a requirement like I have to enhance my Generic Data source.
    Let me make it clear!
    I have 10 field in R/3 which I am able to get into extract structure using Generic Data Source on the corresponding Table.
    I have another field on my extract structure, say ZEXMFLD1 which is updated by a function module ZZ_FUNC_MODULE_SAMPLE.
    I came to know that Data source Enhancement can be done, but don't know how.
    Request your guidance in this. Can u please let me know how I can achieve this?
    Thanks,
    Sri

    Hi Sri,
    You can enhance generic datasources also.
    For that you have to use below function modules based on your datasource type.
    EXIT_SAPLRSAP_001  - Transactiona data
    EXIT_SAPLRSAP_002  - Master
    EXIT_SAPLRSAP_003  - text
    EXIT_SAPLRSAP_004  - Hier
    First check in CMOD(TCODE) whether component RSAP0001 is assigned to any project. If it is not assigned to any project(fresh system), assign it to a project by creating it.
    Ex. ZBW. If it is already assigned, go SE37.
    For transaction data go to function module EXIT_SAPLRSAP_001(Trans data) and start your logic.
    CASE i_datasource.
    WHEN 'your data source name'.
    call you Function module  -  CALL  'ZZ_FUNC_MODULE_SAMPLE'.
    pass the imported value from above FM to c_t_data.
    close case with ENDCASE.
    Let me know if you need more info.
    - Kalyan.

  • Enhancing Standard Function Module.

    We have added some custom fields in table HRP5102 which is getting updated from this function module HRRCF_MDL_REG_NAMED_USR_CREATE.
    I have created the enhancement implementation for this but that is not working .
    if ( lv_is_consistent eq 'X' ).
            move record-lastname to ls_centraldataperson-lastname.
            move record-firstname to ls_centraldataperson-firstname.
            move record-middlename to ls_centraldataperson-middlename.
        Setting the default correspondance language
            move sy-langu to ls_centraldataperson-correspondlanguage.
    I have to add my codes under this IF condition .
    so can any body sugget me how i can do this.

    Hi,
    The only implicit enhancement options for this function module are (as usual) at the very top and the very bottom.
    I don't think you will be able to use these, if your goal is to update custom fields in ls_centraldataperson before the 'register' method is called.
    The 'top' enhancement is too early (because ls_centraldataperson is not yet declared), and the 'bottom' enhancement is too late (because 'register' has already been called).
    So, as far as I can tell, it seems you will need a repair!
    regards
    Paul

  • Batch Reports and Enhancements in PD Module

    Hello Experts,
                        Can anyone please forward me useful links or any kind of code samples for the batch reports and Enhancements in the PD submodule.
    Thanks,
    Naveen Sharma

    Hi,
    As we already have std BAPIs for creating contract like, BAPI_CONTRACT_CREATE and BAPI_CONTRACT_CREATEFROMDATA, what is the need for going to a ZBAPI?
    Remember that ZBAPIs will not be supported by SAP and if any screen seq changes with custom fileds etc, BDC will not work. Try to use std BAPI if possible.
    Regads,
    Ganga

  • Cisco 3925 Enhanced EtherSwitch Service Module

    Hello all,
    I have a Cisco 3925 router with a SM-ES3G-16-P Etherswitch module. In order for me to access it, I need to put an IP address on the phyiscal interface its attached to. Then I can access it via the service-module command.
    My question is -- does it matter what address I give it? Does it need to be a legitimate management address on my network so that I can access it directly from another switch? Or do I always need to go through the router and issue the service-module command? If I do need to always go through the router, I should just be able to give it a 10.10.10.1 address and that should be enough, right?
    Thanks for your help in advance,
    Bobby Grewal

    Thanks Reza...one more question. how does the switch module actually talk to the 3925 router? Through port 17 or 18? If so, do I need to configure those interfaces as routed ports within the same subnet? Or are they just trunks? All connections within the switching module would need to talk to outside devices.

  • Very Urgent Please function module FAGL_GET_TT_DATA_LEAD  Enhancement

    Hi Guys,
    I want to enhance the function module FAGL_GET_TT_DATA_LEAD (that gets the data from FAGLFLEXT) to read the FAGLFLEXA table.Can any one get me an idea on how to enhance it ....
    If possible please send me brief code steps aswell ...
    Thanks in adnvace

    hi Harish,
      One thing you can do is copy the function module into Z-function module and try to incorporate the custom code and replace the standard function module with custom function module in your program.
    Hope it helps...

  • Can we enhance 0HE_SLC_MBK_1 - BW datasource to have module as selection

    Hello All,
    Is there any way you can
    have the selection screen enhanced for the Module Booking extractor (0HE_SLC_MBK_1). Currently it has Student number and Busines Partner as options which are not suficient, there are time when we want to do a full load for just particular academic period or particular module so it would be great to have atleast these two options.
    Having Module, Event Package and Academic Period as selection option would work great.
    I tried modifying the extractor in our sandbox by going to RSA6 in change mode and selecting these boxes in the screen but that does not work and I get short dump. Do you have any ideas about this?
    Thanks in advance,
    Kiran.

    Hi Kiran,
    You can enhance it, but you need to modify the coding of the extractor as well. Currently the Extractor is designed in such a way that it reads all the modules for all or a set of students.
    It does this via an OPEN CURSOR statement on the table cmacbpst. You would have to build in the new selection criteria via the RSA6 and then enhance the coding.
    It is a bit odd that you get a short dump when trying to change the extractor. What exactly are you running into? Maybe you should try to activate the extractor again in the RSA6 (mark it and use the pull down menu DataSource --> Activate).
    By the way...you probably cannot have this functionality via the usual customer exit but you would have to make a modification for this to work properly. The customer exit is only accessed AFTER reading all the data specified in the selection criteria.
    Jeroen

  • How to find out custom enhancements module wise

    Hi ,  
    How to find out custom enhancements module wise (sd, mm,hr,fico).

    Hi
    Enter Tcode SMOD.
    In the next screen click on F4 help for enhancements:
    A Pop-up will come .
    Click on SAP Application.
    You will get list of application .
    Just click on any of the nodes and you can see the enhancements for that module.
    Regards
    Neha

  • Enhance master data

    Hi
    Enhance the master data extractor 0APPLIC_ATTR extract structure RCF_S_BW_0APPLIC_ATTR with APPL_SOURCE_INFO field.
    APPL_SOURCE_INFO  for this field how can i get information for source table . ple let me know abap code also.
    regards
    suneel.

    Hi Suneel,
    These are the steps that you need to do:
    1. You need to find in which table that APPL_SOURCE_INFO data is being stored. Usually I use SE11, and check in which table that this field is being used. It will list down the list of table name.
    2. You go to RSA6, find and higlight 0APPLIC_ATTR, click on 'Enhance Extraction Structure' button to add APPL_SOURCE_INFO field into the extract structure.
    3. Once you add the new field, you enhance the function module by clicking 'Function Enhancement' button. Then you add ABAP code to get APPL_SOURCE_INFO data into your extract structure.
    Hope this will give you some ideas, if you want, I can give you a sample ABAP code.
    Cheers,
    Mona

  • GETTING DATA FROM ODS BY USING A FUNCTION MODULE..

    Hi Frnzs,
    Here is my issue..Plz go thru it..
    I  have a function module (YFSF_ICR_GET_EXCHG_RATE_ODS).
    the function performs the current logic without any changes,
    that is reading SPOT rates for actuals (the planning cycle is empty) or S rates
    for forecasts based on the planning cycle. Nothing needs to be changed here
    concultion : Based on flag I_ICR ni , we have to read new exchange rates ( From ODS)
    the fucntion module code is here
    FUNCTION yfsf_icr_get_exchg_rate_ods.
    ""Local interface:
    *"  IMPORTING
    *"     REFERENCE(I_PLANCYC) TYPE  /BIC/OIYPLANCYC OPTIONAL
    *"     REFERENCE(I_SALESORG) TYPE  /BI0/OISALESORG OPTIONAL
    *"     REFERENCE(I_IC) TYPE  /BIC/OIYINVCURR
    *"     REFERENCE(I_RC) TYPE  /BIC/OIYREPCURR
    *"     REFERENCE(I_FISCPER) TYPE  /BI0/OIFISCPER
    *"  EXPORTING
    *"     REFERENCE(E_EXG) TYPE  /BI0/OIEXCHG_RATE
    *"  EXCEPTIONS
    *"      NO_RATE_FOUND
      DATA: l_s_exg TYPE /bic/ayfsfexg00,
            l_t_exg TYPE /bic/ayfsfexg00 OCCURS 0,
            l_year TYPE /bi0/oifiscyear.
      IF i_plancyc IS INITIAL.
    Actuals
        FREE l_t_exg.
        SELECT *
          INTO CORRESPONDING FIELDS OF TABLE l_t_exg
          FROM /bic/ayfsfexg00
          WHERE fiscper <= i_fiscper
            AND fiscvarnt = 'JJ'
            AND /bic/yrepcurr = i_rc
            AND /bic/yinvcurr = i_ic
            AND /bic/yplancyc = ''
            AND /bic/yexchtype = 'SPOT'
         ORDER BY fiscper DESCENDING.
        IF sy-subrc <> 0.
          RAISE no_rate_found.
        ELSE.
          READ TABLE l_t_exg INTO l_s_exg INDEX 1.
          e_exg = l_s_exg-exchg_rate.
        ENDIF.
      ELSE.
    Forecasts
        l_year = i_fiscper+0(4).
        SELECT SINGLE *
          INTO l_s_exg
          FROM /bic/ayfsfexg00
          WHERE fiscvarnt = 'JJ'
            AND fiscyear = l_year
            AND salesorg = i_salesorg
            AND /bic/yrepcurr = i_rc
            AND /bic/yinvcurr = i_ic
           AND /bic/yplancyc = i_plancyc
            AND /bic/yplancyc = ''
            AND /bic/yexchtype = 'S'
            AND exchg_rate GE '0.0000001'.
        IF sy-subrc <> 0.
          RAISE no_rate_found.
        ELSE.
          e_exg = l_s_exg-exchg_rate.
        ENDIF.
      ENDIF.
    ENDFUNCTION.
    ok
    now my requirement is that I need to enhance the Function module for reading exchange rates.
    for this i got the following information:
    - It requires an additional flag I_ICR for instance that can be empty or 'X'
    for instance
       - If the flag is empty, the function performs the current logic without any changes,
    that is reading SPOT rates for actuals (the planning cycle is empty) or S rates
    for forecasts based on the planning cycle. Nothing needs to be changed here
       - If the flag is 'X', the function reads a new exchange rate type, let's call
    it "ICR". As stated in the requirements and functional specs, these exchange rates
    are the Reuter rates valid for a complete year. These are fixed rates so no planning
    cycle. The users will enter records in the format (year, reporting currency, invoicing
    currency, exchange rate). If the input flag I_ICR is X, the function determines
    the year based on the input period, then, based on the year it selects on the same
    table as for the other exchange rates with a restriction on exchange rate type "ICR",
    year, from and to currency and return the exchange rate
    Update rules. There are two:
       - To the consolidation ODS. No changes are required there; the function has to
    read either S or SPOT rates (I_ICR flag is empty)
       - From the consolidation ODS to the cube. As stated in my previous email, the
    from currency is the one available in the data package. The to currency is determined by reading the sales organization master data (reporting currency attribute) based on the inter-company sales organization (also available in the incoming record). It then calls the function module above with the parameter I_ICR set to 'X' so it reads the Reuter rates.
    I guess i need to create another function module and can be used.
    Observation
    ODS table fields.
    - FISCPER
    - FISCVARNT JJ
    - FISCYEAR 2006
    - /BIC/YREPCURR EUR
    - /BIC/YINVCURR JPY
    - SALESORG 0010
    - /BIC/YMRC 3090
    - /BIC/YPLANCYC
    - /BIC/YEXCHTYPE S
    - - RECORDMODE
    Thanx in advance..

    Haii
    I have given below the basic functionality..u can go throught the api and start working..
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import java.io.File;
    import org.w3c.dom.Document;
    public class OrderProcessor {
       public static void main (String args[]) {
          File docFile = new File("orders.xml");
          Document doc = null;     
          try {
             DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
             DocumentBuilder db = dbf.newDocumentBuilder();
             doc = db.parse(docFile);
           Element root = doc.getDocumentElement();
          System.out.println("The root element is " + root.getNodeName());
         NodeList children = root.getChildNodes();
       System.out.println("There are "+children.getLength()
                                      +" nodes in this document.");
          } catch (Exception e) {
             System.out.print("Problem parsing the file.");
    }regards
    Shanu

  • How to access Payload in XI Adapter Module

    Hello,
    I have to enhance a adapter module in xi very urgently. Target is to access a node of the XML payload and retrieve the corresponding value.
    This is how my document looks like:
    <mt_test>
         <element1>
              <…> </…>
         </element1>
         <element2>
              <LOG_NO>4711 </LOG_NO>
         <element2>
    </mt_test>
    I need now access the element <LOG_NO>. This can only appear one time in the whole xml document. My code that I did so far (inside the process method) to retrieve this element is like this:
    XMLPayload xmlpayload = msg.getDocument();
         DocumentBuilderFactory factory = null;     
         factory = DocumentBuilderFactory.newInstance();
         DocumentBuilder builder = factory.newDocumentBuilder();
         Document document = builder.parse ((InputStream)xmlpayload.getInputStream());
         Element rootNode = document.getDocumentElement();
    <…and now I have no clue anymore…:-/…>
    May you give me an example how to access the node <LOG_NO> and save the corresponding value in a String variable?
    I would be really thankful.
    Greetings and thanks in advance,
    Tobias

    Hi,
    >>>found no solution with PI Standard Import to support FTP inside the Adapter Module
    why would you? file adapter supports FTP - so you don't need it
    >>>In order to use FTP library, is there any standard library available or supported by SUN.
    you can use any java ftp client available on google
    Regards,
    Michal Krawczyk

Maybe you are looking for

  • No more access to my iMac

    Hi there, a few days before everything worked fine, but since then there's no more possibility to get an access to my iMac from the Wi-Fi Network. The applications in use are EyeTV and AppleTV. It is not possible to get access from the iPhone to EyeT

  • Lightroom 4.2 raw to jpeg very noisy vs camera jpeg

    Hi, I shoot my pictures in RAW+JPEG on my canon EOS 60D. When I open the jpeg produced by the camera, there is no (or very few) noise. But the same file (raw imported in Lightroom) without any modification (no change in color balance, exposure,...) j

  • Contribute CS5 - Getting Locked Out by WebDAV on Review

    OK, we're using Contribute CS5 here, and we have writers who are sending drafts to publishers here, and we're using WebDAV.  Contribute is using WebDAV locking, so as a result it's not creating any .lck file, the locks are being kept track by a WebDA

  • Parameter of timeout of BPM

    Hi. We have problems of timeout when a message enters in our BPM. Someone knows what parameters control the timeout of the BPM Thanks Best Regards

  • E71x copy/paste

    Has anyone figured out a way to copy and paste text on an E71x? For example, is there a way to copy text from an email and paste it into a form on a web page?