FI Validation at Call up point 3 with User Exit ZRGGBR000

Hi SAP Guru's,
We have a requirement where we want to restrict Manual bill booking (through FB60) only for specific GL Codes.
Due to limitation in OB28 validation (without exit), we have decided to use User Exit (ZRGGBR000) where we will be doing sum of all the Line items which are on restrict GL code (we maintained the same in Account group by KDH1 and getting stored in table SETLEAF).
We are using the exit at call up point 3 i.e. at Document completion level.
While writing desired code we are getting only Last line item which is getting stored in BSEG table, please us know the coding part of the same i.e. how we have to write a code so that exit can collect inputs of all line items for the document.
Thanks in Advance.
Regards,
Uday Suryawanshi
+91 9890223683

Hi,
Well, I'm not a developer, but it should look somethink like this:
LOOP AT bool_data-bseg INTO bseg
                 WHERE hkont  IN use the function to check the account set .
    b_sum = b_sum + bseg-wrbtr.
    EXIT.
  ENDLOOP.
if b_sum > amount then
b_result=false.
end if.
Something like this, is not it? (do not catch me on syntax)
Regards,
Eli

Similar Messages

  • Example with user exit

    hallow
    did some one have a exaple (document) how to do user exit?
    Regards

    Hi
    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a function module. The code for the function module is written by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.
    The naming standard of function modules for functionmodule exits is:
    EXIT_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as:
    CALL CUSTOMER.-FUNCTION <3 digit suffix>
    To find a Exit.
    Goto Transaction -- Find The Package
    SMOD >f4>Use the Package here to Find the Exits In the Package.
    Else if you Want to search by Application Area wise ,
    There is one more tab to find the Exits in the Respective Application Area.
    Implementing the Exit-- CMOD Create ProjectsAssgn your Component .
    Now Run ur Transaction to Check if it Triggers.
    Thats it..
    Suppose you need to find out all the user exits related to a tcode.
    1. Execute the Tcode.
    2. Open the SAP program.
    3. Get the Development Class.
    4. Execute Tcode SE84.
    5. Open the Node 'Envir. -> Exit Techniques -> 'Customer Exits -> Enhancements'
    6. Enter the Development class and execute.
    Check out this thread..
    The specified item was not found.
    1. Type the transaction : system->status-> <PROG. NAME>
    2 open SE37 , type EXIT<PROG NAME> and press F4 to get the list of function exits available.
    3. Open CMOD utilities->SAP enhancements
    EDIT->All selections
    4.type the function module name obtained in step 2, in fields 'component name' in 'additional selections' block. and execute.
    5. The displayed list contains the enhancements names for the transaction You were looking for.
    6. Create a project in CMOD and the code in default include->activate.
    http://www.erpgenie.com/sap/abap/code/abap26.htm
    which gives the list of exits for a tcode
    http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec079f5db911d295ae0000e82de14a/frameset.htm
    For information on Exits, check these links
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sapgenie.com/abap/code/abap26.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    http://www.easymarketplace.de/userexit.php
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sappoint.com/abap/userexit.pdfUser-Exit
    http://www.planetsap.com/userexit_main_page.htm
    User-Exits
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sap-img.com/ab038.htm
    http://www.planetsap.com/userexit_main_page.htm
    http://www.sap-basis-abap.com/sapab013.htm
    http://sap.ittoolbox.com/documents/popular-q-and-a/user-exits-for-the-transaction-code-migo-3283
    These links will help you to learn more on user exits.
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm
    http://www.planetsap.com/userexit_main_page.htm
    http://www.allsaplinks.com/user_exit.html
    www.sap-img.com/abap/what-is-user-exits.htm
    Also please check these threads for more details about user exits.
    Re: Screen exit
    user exit and customer exit
    user exit
    1. Document on UserExits in FI/CO
    http://www.ficoexpertonline.com/downloads/User%20ExitsWPedit.doc
    2. Finding User Exits...
    http://sap.ionelburlacu.ro/abap/sap2/Other_Useful_Tips.html#Finding_User_Exits
    3. List of all User Exits...
    http://www.planetsap.com/userexit_main_page.htm
    1. Customer exits: Implemented as Function Modules within z includes. Anybody can change it and no access key is required.
    2. User Exit: Implemented as subroutines within includes (any include except y or z includes). You need access for the specific include and then you can any subroutine (user exit) within that Include.
    BADIs are the enhanced version of user exits where the same logic is implemented via classes and object (OOP)
    Enchancement point is the latest once introduces with ECC6.0 . Not very sure about that but you can change it without any access key.
    Please go through the following link which will help you understand the exits in a much better way:
    http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec07a25db911d295ae0000e82de14a/content.htm
    http://www.sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm
    http://sap.niraj.tripod.com/id21.html
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm
    http://www.sap-img.com/ab038.htm
    User Exits.
    http://www.erpgenie.com/sap/abap/code/abap26.htm
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sapgenie.com/abap/code/abap26.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    http://www.easymarketplace.de/userexit.php
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sappoint.com/abap/userexit.pdfUser-Exit
    customer exits
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f1a7e790-0201-0010-0a8d-f08a4662562d
    Menu Exit.
    http://www.sappoint.com/abap/spmp.pdf
    http://www.sappoint.com/abap/userexit.pdf
    http://www.sapdevelopment.co.uk/enhance/mod_sapmenu.htm
    http://www.sapdevelopment.co.uk/enhance/enhancehome.htm
    1. Previously there were only user-exits.
    2. Then came the concept of customer-exits.
    3. user exits were nothing but subroutines
       FORM/PERFORM
       called from standard programs.
    4. The FORM defintion was placed inside
    an empty include file.
    5. So It was called EVERYTIME.
    and we need to MODIFY/REPAIR the
    standard include .
    6. Then it came with concept of customer-exit
    7. It consists of calling a FUNCTION MODULE,
    which is called only if
    the user-exit is ACTIVATED (other wise not called)
    In this case, the code in put inside
    a pre-defined Z include.
    8. Functionality of both is same, howerver
    we can note the following important differences
    a) Customer exit is called only if activated.
    (hence, it does not waste resources)
    b) in customer exit, REPAIR does not happen
    to the standard include.
    Exits are basically the hooks whcih SAP has provided to add your own code. There are two types of Exits:
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • Issue with user exit ZXPADU01 and ZXPADU02

    Hi,
    I am trying to change the existing record for the info type 0015 for an employee in Pa30 transaction.
    my requirement is i need old value and new value when i am changing the existing record in info type 0015.
    When i kept break point in user exit ZXPADU01 it is not triggering it is triggering only when we creating the record.
    i tried with user exit ZXPADU02 it is not working as per my requirement.
    My requirement is :whenever i am changing the existing record(modifying record) i need old value and new value.
    Anybody can suggest me how to fix this issue.
    Thanks,
    Maheedhar

    Dear Maheedhar,
    The best way to achieve this requirement is to use the PAI user exit ZXPADU02 import parameter PSAVE. The PSAVE parameter contains the PBO original / initial record, before any changes take place.
    The INNNN parameter contains the current PAI record as usual, in order to be used for customer check and new values. Thus, you've got both the old and the new record in place, and you can make your comparison according to the business requirements:

  • Problem with User exits when using custom fm

    Hi everybody,
    I am processing an IDoc using fm IDOC_INPUT_INVOIC_MRM. Nos I had to copy this to Z_...
    And this fm has a sun-routine that calls User-exits. When I am using the standard fm, the UEs are being checked for active and executing the logic in the UE. But when I am processing IDoc using Z_...fm, the system is checking if the UEs are active. Its also active and now the cursor is coming to CALL CUSTOMER-FUNCTION '014'. But here when I press F5 in Debug, the cursor moves to the next statement after this function call without executing the user- exits. I dont know why its not executing the UE.
    Is there any setting that I need to make?
    thanks in advance
    kris

    Hi Vamsi,
    User exits are specific to the object they are included in. So when you have a "CALL CUSTOMER-FUNCTION '011'" in IDOC_INPUT_INVOIC_MRM and when you have "CALL CUSTOMER-FUNCTION '011'" in your Z function module, they are two different things.
    The purpose of a user exit is that you can include your logic in there within the limits defined by the object and without repairing the system. If you copied it, then you don't need the user exit anymore, as that copied object is your custom object and you can incorporate anything you want within main source code itself. If you really thing you should have that user exit, then double click on the call function statement, the system will ask if you want to create the function module, say yes and proceed with the creation.
    But I don't see any reason why you will copy a standard IDOC function module(while you could have used a user exit in there) and still want to use the user exit functionality. Once you copied, it is your object and you don't need a user exit to insert code into your own object.
    Hope this is clear.
    Srinivas

  • MRP Run with User Exit key for Follow up material

    Dear Gurus,
    I want to run MRP only for followup materials by using User exit key. For example i have a material X(with discontinued Indicator as 1) and it's follow material is Y.
    So we have a user exit key as ZFL, with coding as shown below. Now when i run MD01 with user exit key ZFL and parametre as 1, it only runs MRP for material X and not for material Y. What else we need to do so that when i run MD01 with user exit key ZFL, it shoudl consider both X and Y. 
    WHEN 'ZFL'.
    DATA : BEGIN OF ITAB5 OCCURS 0,
    KZAUS LIKE MT61D-KZAUS,
    END OF ITAB5.
    TRANSLATE USER_PAR TO UPPER CASE.
    SPLIT USER_PAR AT ',' INTO TABLE ITAB5.
    IF ITAB5[] IS INITIAL.
    EXIT.
    ENDIF.
    CLEAR: NO_PLANNING, STOP_PLANNING.
    READ TABLE ITAB5 WITH KEY KZAUS = MT61D-KZAUS.
    IF SY-SUBRC <> 0.
    NO_PLANNING = 'X'.
    ENDIF. 

    Hi Kumar,
         You can use either MRP Type, MRP Controller, MRP Group in this user exit to control the MRP run. For these set of Materials you have to assign any of same value or at least differentiate these material from other material. Then only you can control the MRP by using this user exit even though if you use different MRP Group and MRP Controller. In User Exit, you may have to add your dependent material's MRP Group/MRP Controller. Make sure that these set of materials are different than all other materials.
    If you don't have any plan to run MRP for other materials then as per Ajit suggestion you make that material's MRP type as "ND". But, in your business case they may want to activate the MRP for all the material not now but may be latter.
    Thanks

  • Valuation price with user exit/BADI/Enhancement Spot (In valuation variant)

    Hi all,
    i am facing problem finding enhancement when creation of sales order of Valuation price with user exit/BADI/Enhancement Spot  (In valuation variant)
    For refferenece:
    When going to t.code VA03, select one item and go to extras in the menu bar and select costing then you find some amounts calculation i.e valuation price automatically.
    So when creation of sales order i am giving material and that material price automatically takes from material master and creating sales order.
    My customer requirement is to get the valuation price of the input material from Z-table during the sales order cost estimate.
    This Z-table contains the material code, plant , grade  of the material.
    Ex:
    Material         Plant   Grade Price
    A                1000    XYZ     25000
    A                1000    PQR     35000
    A                1000    BCD     45000
    Suppose it depends on sales document type and which grade price i have to take.
    So first of all i am unable to find enhancement where to change this code to get change the valuation price.
    Does anybody have any idea , is there any user exit/BADI/enhancement for this.
    So please help me in this issue.
    Thanks & Regards,
    lokeshgoud

    pls allow me to post the questions

  • Please help me with user-exits or baids for TCode : FOE2 & FOE1

    Hi  Experts
    Please help me with user-exits or baids for TCode : FOE2 & FOE1.
    I found these but not picking values from VIMI01,VIOB03 and VIOB41.
    User-exits
    FVCH0001                                CH-specific enhancements: Esp. POR
    ISRE0001                                Determine bank procedure account no.
    ISRE0002                                IPD reporting data retrieval
    Business Add-in
    FVD_HANDLE_FORMULA                      Processing of Condition Formulas

    Hi,
    ASk your basis regarding the CI_CSKB table active issue, and first of all i dont see any table with the name CI_CSKB.
    And check this exit-COOMKS03 whether it works for your screen exits.
    Cheers!!
    VEnk@
    Edited by: Venkat Reddy on Nov 4, 2008 5:59 PM

  • Valuation price with user Exit on activity types

    Hi All,
    Our customer could have different activity cost for different products even if they are processed on the same cost center, same activity type and same activity time. So I wonder whether SAP has valuation price with user Exit on activity types as what on material valuation, when we select "U" in the relevant valuation variant. Could anyone knows advise please?
    Regards
    Walter

    Hi Walter,
    an idea might be to include an ABC template into the costing. ABC tempaltes allow a big degree of freedom in determinin which processes to use and in which quantities. To use the product as a cost driver is certainly not an issue. I doubt that you can directly influence the process 'price' to be applied, but to change the quantity could bring the same result.
    See the docu for more info:
    [http://help.sap.com/saphelp_erp60_sp/helpdata/en/7e/cb7d1443a311d189ee0000e81ddfac/frameset.htm]
    best regards,
                        Udo

  • Formula variable with User Exit

    Hi,
    Can we create a Formula Variable of processing type USER EXIT...which will display a constant Value Y
    Any syntax would be helpful
    Thanks

    Hi,
    check this for formula variables with user exits;
    http://wiki.sdn.sap.com/wiki/display/profile/Surendra+Reddy
    http://sap.ittoolbox.com/groups/technical-functional/sap-bw/customer-exit-to-derive-formula-variable-to-text-variable-sap-bw-35-3030684
    Also Check the issues and solution :
    Formula Variable with User Exit....Problem
    Thanks
    Hemav

  • Difference between the different structures while dealing with User-Exits

    While dealing with User-Exits, we come across the different structures/Tables like XVBAP,YVBAP,TVBAP,IVBAP,*VBAP....
    What is the difference between them ?

    Usually X<tablename> and Y<tablename> are used in change document management to determine records updated (Y is old values and X new ones).  (Look at transaction SCDO)
    T<tablename is an internal table read from database and I<tablename> is an import table parameter of the same structure. <tablename> is an equivalent of <tablename> declared with statement TABLES and contains usually the "old" value.
    Look at exit documentation. start at [User Exits In Sales Document Processing|http://help.sap.com/saphelp_46c/helpdata/en/1c/f62c7dd435d1118b3f0060b03ca329/content.htm]
    Regards

  • Programmatic call to ATP in user-exit

    Hi All,
    Is there any function module/BAPI for ATP(Available-to-Promise check) to be called programmatically from a user-exit for an input date value when changing schedule line date in sales order user-exit programmatically
    thanks

    Hello,
    I did try hereafter statement :
                  Perform FCODE_BVFP. " ATP global
    And it seems to work fine.
    You can use MV45AFZZ / userexit_save_document_prepare.
    Rgds
    Gilles
    Edited by: Gilles JUNG on Mar 1, 2012 10:51 AM

  • Create new form in user exit ZRGGBR000

    Hi everybody
    I wanted to know if we can add a new form in the user exit ZRGGBR000 or we have to use the existing ones?
    Its the first time im using that user exit and I dont quite know how to proceed
    Thanks

    sorry, may be i wrongly posted this question
    theres a form called get_exit_titles in which all the exits are listed
    I wanted to know if we can add new exits or we have to use the existing ones
    Sorry for the inconvenience

  • Unable to create the validation at Call up point 3

    Dear Friends,
    I am trying to create the validation rule for call up point 3..
    while doing the prerequisite is system is not througing any error message, But while doing Check step I am getting the message like " Formula composed upto first systax error"
    This is the full length message i am getting the error..
    The formula was composed up to the first syntax error.
    Message no. GB 506
    Diagnosis
    You tried to exit insert mode, which is only possible if the formula has no syntax errors from beginning to end. If it is not, a new insertion session is opened ahead of the first syntax error. You can then correct the syntax error at the new position through making new entries or by deleting the formula symbols that follow.
    You can then try exiting the insertion session again.
    Validation is
    BKPF-TCODE = 'MIRO' and BKPF-BUKRS = '2005'
    check
    BSEG-BVTYP not equal to null
    in this point i am getting the above mentioned message
    Please let me know in this regard.
    Regards,
    Anand

    Dear,
    Callup point 3 will not be allowed in this validation because in CHECK you are just calling the BSEG (line item) so just select callup point 2 will be accurate one and it will be successful....
    Callup point 3 is used when you want system to perform check for both BSEG and BKPF table fields....
    To conclude use callup point 2 in this validation .
    REgards,
    Chintan Joshi

  • Any luck with user exit BCS2S?

    I am trying to enhance the partner master data on a CRM 4.0 system and replicate these data to the R/3 backend. This seems to work up to a point. My goal is to implement the R/3 field KNVV-PERFK in CRM, allowing users to maintain customer data in CRM, rather than R/3.
    I have implemented note 454565 but at the time where the inbound data from CRM is triggering a call to PI_BP_CALL_EXIT_BCS2S_RD, my problem is that nothing happens if I try to manipulate the values of IT_XKNVV in the debugger. Another problem is that  CT_BAPIMTCS is not filled even though this internal table supposedly should contain the enhanced business document from CRM.
    Could some BTE-customizing be missing? Or is something else wrong? I have not been able to find any SAP notes that could help me further and so far SAP support has not responde to our customer message.
    Thanks in advance and best regards,
    Anders

    Hi Christene,
    I am not sure how this is possible with processeing of a TO with multiple lines.I tried testing this and has stopped when it comes to process a TO with multiple lines.I had to come out of interleaving function and process the TOs with system guided process.
    I appreciate if you could explain me more in details.Are you saying without using the user exit , we can execute multiple lines of a TO with interleaving function ?
    Thanks for your time in advance

  • RBDMIDOC Program with User Exit?

    Hi....
    I am a bit puzzle and hope someone could assist me with this please.
    I am trying to work on a functional specification to layout an interface between SAP and our outsourced provider. Given that, I've created a reduced message type off HRMD_A06, calling it ZHRMDA06_ORG and change pointers being active.
    From my understanding, if I run RBDMIDOC it will extract what is in the change pointers and create an IDOC structure with the data. I need to somehow after that structure is created to go back and add segments or sub-segments to it.
    For example:
    IF E1PLOGI.OTYPE='S'
    IF E1PITYP.INFTY='1001' AND E1PITYP.SUBTY='A003'
    If it detect this in the IDOC segment, I will need to find the chief of the org unit this position belongs to and create the E1PITYP.INFTY='1001' and E1PITYP.SUBTY='A002' to that chief position.
    Using that as one of the data maniplulation example, I do have other data needing to be added to the segment / sub-segments as well. Like creating a whole new E1PLOGI, etc.
    How do I go about doing so?
    DO I...
    A) Do it as part of the RBDMIDOC extraction run (i.e. modify a function module associated with it)
    - OR -
    B) Do it as a program that runs after the RBDMIDOC extract run and automatically go in to that IDOC to modify it.
    One thing to note is that I will be creating multiple reduced message types against HRMD_A06, one per interface i am dealing with for outbound transfer to XI.
    So I could have a ZHRMDA06_ORG and ZHRMDA06_ORG2 and both could share the same infotype tracking from change pointers.
    So which ever method used, I would need the ability from the user exit or function module to signify that piece of code is for a particular message type extraction.
    Thank you much in advance. Much Appreciated....

    I was looking at the RH_MASTER_IDOC_DISTRIBUTE_HRMD originally, but it only seems to be triggered via the PFAL. I need something to trigger via RBDMIDOC.
    From what I gathered yesterday...
    P633 from the book "ALE, EDI, and IDOC Technologies for SAP", I could use MASTERIDOC_CREATE_SMD_<Message_Type> and that is used during the RBDMIDOC.
    I am not sure if that is still valid on the ECC 5.0 system or not. I look at the RBDMIDOC code and I don't see where it specify it will use these function modules.

Maybe you are looking for