User exit to prevent delivery while creating (VL01N).

Hi Experts,
Is there any User Exit, While creating Outbound Delivery with reference to Sales order using VL01N,subitem cannot be created without the related H.Level item. 
So my requirement is:
Check Higher Level Item (VBAP-UEPOS), If Higher Level Item value is set for an item, ensure that the related item that the Higher Level Item value refers to is also on the same delivery.  If not, then issue an error that sub item cannot be created without the related HLI item.
How to achieve this, Any user exit ?  Help will be appreciated.
Thanks,
Ranjith.

Hi
I think that creating your own VOFM copying requirement from SO to delivery and setting it in copy rules (tcode VTLA) you can achieve. Take an standard as a template and develop the algorithm.
I hope this helps you
Regards
Eduardo

Similar Messages

  • User-exit for Stock Creation while creating PR

    hi guru
    In case of materials like tools & equipments for which stock does not exist, the user creates a requisition when the material needs to be sent out for repair (subcontracting). The stock for this will be created automatically when such PR will be saved. The data for this like material code, quantity, GL account, etc will come from the PR.
    relavent tcodes
    me51n----pR CREATION
    MB1A(MOVMENT TYPE)---GOODSISSUE
    ME_REQ_POSTED(EXIT NAME)----- PURCHASE REQUSTION POSTED
         Program Logic/Pseudo Code
    While creating a PR, the values will be entered for KNTTP, WERKS, MATNR, MENGE, SAKTO,KOSTL. These values will be used for the transaction MB1A with movement type 202 to create the stock.  
    The development is applicable for the PRs with document type ZRP only.(BSART=ZRET) and  material type UNBW.
    PLZ GIVE ANSWER AND CODE FOR THIS PROGRAM...PLZ URGENT

    hi guru
    In case of materials like tools & equipments for which stock does not exist, the user creates a requisition when the material needs to be sent out for repair (subcontracting). The stock for this will be created automatically when such PR will be saved. The data for this like material code, quantity, GL account, etc will come from the PR.
    relavent tcodes
    me51n----pR CREATION
    MB1A(MOVMENT TYPE)---GOODSISSUE
    ME_REQ_POSTED(EXIT NAME)----- PURCHASE REQUSTION POSTED
         Program Logic/Pseudo Code
    While creating a PR, the values will be entered for KNTTP, WERKS, MATNR, MENGE, SAKTO,KOSTL. These values will be used for the transaction MB1A with movement type 202 to create the stock.  
    The development is applicable for the PRs with document type ZRP only.(BSART=ZRET) and  material type UNBW.
    PLZ GIVE ANSWER AND CODE FOR THIS PROGRAM...PLZ URGENT

  • User exit not getting triggered while creating the vendor

    Hi all,
    I wanted to extend the idoc(crermas01) according to my reqiurement.
    But when I am trying to create a vendor using the IDOC cremas01 the user exit EXIT_SAPLKD01_001 is not getting triggered.
    Can anybody tell me the reason why it is happening so...........
    Thanks and regards,
    Vinil.

    Is your Idoc generated after the execution?
    Where is you break-point, it is inside EXIT_SAPLKD01_001. Please note FM EXIT_SAPLKD01_001 will not be called unless it is implemented using project (CMOD) and project is active.

  • User exit to change incoterms while creating PO

    Hi,
    I am trying to create a PO via ME21N transaction.When I populate the vendor and the purchasing organization details in the header, the incoterm gets populated from the vendor master. Is there any exit to populate my own set of values while creating the PO.
    Thanks.
    Alagu Rajavel S.

    i think it is better to write @ time of save exit.
    Regards,
    Sudheer.

  • Exit to Post GR while creating Inbound Delivery

    hi Experts
    I need an user exit to Post GR against Inbound delivery , while creating Inbound Delivery in VL31N.

    Hi,
    Please check SAP note 1050944
    Regarding this issue

  • User exit for updating delivery block of Sales order before Delivery

    Hi  Folks,
    Need to have an user exit for updating Delivery Block indicator for a Sales order Before creating its delivery
    I have got an exit in Program SAPMV45A
    MV50AFZ1
    FORM USEREXIT_REFRESH_DOCUMENT.
    that hits before processing the delivery block fro delivery (Correct me if i m wrong with this )
    Now i want now how to change the Delivery Block indicator of Sales order in that exit
    any FM available ?
    Thanks n regards
    Sonal...

    Hi  ,
    How did you solved this issue?
    I am having similar scenario in which while pressing the save button  delivery block should update if multiple schedule line exist.
    Tried by two different approaches in various user exit without any success.
    AFAIK we have two ways to achieve this functionality.
    1) Count the no of rows in vbep. If greater than 1 then multiple schedule line exist and we can assign the value to VBAK-LIFSK(delivery block) as per our requirement.
    This is not correct. If there are two line items both with single schedule line . This case total no lines in vbep will 2 and above condition will true which is incorrect.
    2) There is a indicator for multiple schedule line (VBAPD-EPMEH , xvbap-epmeh ) if it is check then multiple schedule line exist and we can assign the value to VBAK-LIFSK(delivery block) as per our requirement.
    If I write code in USEREXIT_SAVE_DOCUMENT_PREPARE.
    Multiple schedule line indicator is not populate so can not use 2nd approach.
    If I write code in  USEREXIT_SAVE_DOCUMENT it of no use as vbak is updated before reaching this user exit.
    If I write code in USEREXIT_MOVE_FIELD_TO_VBAK as this user exit is also called while pressing the enter key for this I have use
    the condition of fcode but it also fails in some condition.
    If fcode eq 'SICH'.
    Read table xvbap with key epmeh = 'X'.
    IF SY-SUBRC = 0.
    VBAK-LIFSK = '03'.
    Else.
    VBAK-LIFSK = ' '.
    Endif.
    Endif.
    Please help me to get the desired functionality working for all cases.
    1) One line item with multiple schedule line                                              
    2) Two line item with multiple schedule line                                             
    3) One line item having one schedule line and second one having multiple
    4)Two line item both with single schedule line.

  • User exit to prevent setting status , if there is no budget allocated to WBS

    Hi PS Experts,
    Is it normal to experience unlimited purchases if you have forgotten to add budget $$ against WBS?
    Customer has following steps
    1) User create Project & user status is CREA which prevents most traxn
    2) User will allocate budget to WBS & set user status to OPEN which will allow Release of project.
    3) Release project & create PR/PO
    under step 2, if they forget to add budget any amount of procurement can be done against that WBS.
    We are looking at any user exit to prevent release of WBS which doesn't have budget $$ assigned to it.
    Are there any?
    Thank you so much for help,
    Jatin

    Hi Shishir,
    I am experiencing unlimited PR/PO  allowed for WBS without budget/forget to add budget(Blank entry).
    Is there a configuration which treats 'Blank' as 0. We are experiencing 'Blank' treated as unlimited( 999999999)
    In MM-Physical inventory, there is 'Radio' button to mark 'Zero Count' to make sure user whats to decelare 'Zero' instead of 'Forgot to enter'.Much in similar way , something like this is happening here.
    This is probably system reading 'Blank' field as non-zero. is there a way to alter this behavior?
    Best Regards,
    Jatin

  • Find out user exits which should trigger while saving billing doc.(VA01)

    Hi All,
    please can u help me to find out user exits which should trigger while saving billing documents for VA01 transaction...I have already z report to find the user-exit for any transaction.I have tried in that also.
    Reply
    Ulhas

    Hi
    Try these
    USEREXIT_NUMBER_RANGE (Module pool SAPLV60A, program RV60AFZZ)                    
    The internal number range used in the standard system is specified                
    in the billing type table and can be changed in this user exit. This              
    user exit is only called when the billing documents is created.                                                                               
    USEREXIT_ACCOUNT_PREP_KOMKCV (Module pool SAPLV60A, program                       
    RV60AFZZ)                                                                         
    In this user exit additional fields for account determination that                
    are not provided in the standard system are copied into                           
    communication structure KOMKCV (header fields).                                                                               
    USEREXIT_ACCOUNT_PREP_KOMPCV (Module pool SAPLV60A)                               
    In this user exit additional fields for account determination that                
    are not provided in the standard system are copied into                           
    communication structure KOMPCV (item fields).                                                                               
    USEREXIT_NUMBER_RANGE_INV_DATE (Module pool SAPLV60A, program                     
    RV60AFZC)                                                                         
    Depending on the number range, table TVFKD is used to set the                     
    billing date (country-specific requirments in Italy).                             
    USEREXIT_NUMBER_RANGE is automatically deactivated when this user                 
    exit is being applied.                                                                               
    USEREXIT_FILL_VBRK_VBRP (Module pool SAPLV60A, program RV60AFZC)                  
    This user exit is only called when the billing document is created.               
    It is used to provide the header and the item of the new billing                  
    document with deviating or additional data.                                       
      USEREXIT_PRINT_ITEM (Module pool SAPLV61A, program RV61AFZB)                    
      Printing the item line of a billing document can be supplemented or             
      changed.                                                                               
    USEREXIT_PRINT_HEAD (Modulpool SAPLV61A, Programm RV61AFZB)                     
      Printing the header line of a billing document can be supplemented              
      or changed.                                                                               
    User exits in program RV60AFZD                                                  
      Short descriptions of the user exits are contained in the program:                                                                               
    -   USEREXIT_RELI_XVBPAK_AVBPAK                                                                               
    -   USEREXIT_NEWROLE_XVBPAK_AVBPAK                                                                               
    -   USEREXIT_NEWROLE_XVBPAP_AVBPAK                                                                               
    e following user exits are available in report SAPLV60B for transfer              
    accounting (function group V60B):                                                                               
    EXIT_SAPLV60B_001: Change the header data in the structure acchd                
      You can use this exit to influence the header information of the                
      accounting document. For example, you can change the business                   
      transaction, "created on" date and time, the name of the person who             
      created it or the transaction with which the document was created.                                                                               
    EXIT_SAPLV60B_002: Change the customer line ACCIT                               
      You can use this exit to change the customer line in the accounting             
      document. This exit is processed once the ACCIT structure is filled             
      in with data from document header VBRK.                                                                               
    EXIT_SAPLV60B_003: Change the customer line in costing                          
      The customer line is filled in differently for costing. You can use             
      exit 003 to influence the ACCIT structure.                                                                               
    EXIT_SAPLV60B_004: Change a GL account item ACCIT You can add          
    information to a GL account item (such as quantity specifications)     
    with this exit.                                                                               
    EXIT_SAPLV60B_005: User exit for accruals                              
    Once all relevant data for accruals was entered in the GL account      
    item, you can add to this data with this exit.                                                                               
    EXIT_SAPLV60B_006: Change the control line ACCIT                       
    You can use exit 006 to add information to the control line.                                                                               
    EXIT_SAPLV60B_007: Change the installment plan                         
    You can use exit 007 to add information to the installment plan        
    parameters in the GL account item.                                                                               
    EXIT_SAPLV60B_008: Change the transfer structure ACCCR, ACCIT and      
    ACCHD                                                                  
    After the accounting document is filled in with data, you can use      
    exit 008 to change the document once again.                                                                               
    EXIT_SAPLV60B_010: Item table for customer lines                       
    You can use exit 10 to influence the contents of customer lines        
    before they are created.                                                                               
    EXIT_SAPLV60B_0011: Change the parameter for cash account              
    determination or reconciliation account determination                  
    You can use this exit to change inbound parameters in order to         
    influence account determination.                                       
    >                                                                      
    Thanks
    Shiva

  • User cannot see tax amount while creating PO

    Hi All
    My user cannot see tax amount while creating PO but on displaying the PO after saving he can see the tax amount in the PO.
    Is there any authorisation issue or what is the proble

    Please check the autorixation. Take the screen shot of /nsu53 and contact with BASIS person
    regards

  • Can i know the user exits which should trigger while saving billing docu

    hi,
    please can u help me to find out user exits which should trigger while saving billing documents.

    A couple years ago I downloaded this program, I think from SAPFANS.  I don't take any credit for it...Not sure who originally wrote it.  Just type in the t-code and hit execute. 
    *& Report name          : Identify and Drill-Down to SAP User Exits.   *
    *& Program name         : ZZ_FIND_USER_EXITS                           *
    REPORT  ZZ_FIND_USER_EXITS
      NO STANDARD PAGE HEADING
      LINE-SIZE 132
      LINE-COUNT 65
      MESSAGE-ID MM.
    D A T A   D E F I N I T I O N                                        *
    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
    S E L E C T I O N   S C R E E N                                      *
    PARAMETERS : P_TCODE LIKE TSTC-TCODE OBLIGATORY.
    I N T E R N A L   S T R U C T U R E S   &   T A B L E S              *
    DATA : GT_TADIR LIKE TADIR OCCURS 0 WITH HEADER LINE.
    V A R I A B L E S                                                    *
    DATA :
           GV_FIELD1(30)  TYPE C,
           GV_DEVCLASS    LIKE TADIR-DEVCLASS.
    C O N S T A N T S                                                    *
    CONSTANTS:
               GC_F     LIKE TRDIR-SUBC   VALUE 'F',
               GC_R3TR  LIKE TADIR-PGMID  VALUE 'R3TR',
               GC_FUGR  LIKE TADIR-OBJECT VALUE 'FUGR',
               GC_SMOD  LIKE TADIR-OBJECT VALUE 'SMOD',
               GC_PROG  LIKE TADIR-OBJECT VALUE 'PROG'.
    R A N G E S                                                          *
    RANGES:
      GR_VKORK      FOR  WKBP-VKORG.
    E V E N T   P R O C E S S I N G                                      *
    INITIALIZATION.
    AT SELECTION-SCREEN.
      SELECT SINGLE PGMNA
        INTO TSTC-PGMNA
        FROM TSTC
        WHERE TCODE = P_TCODE.
      IF SY-SUBRC <> 0.
        MESSAGE E899(MM)
          WITH TEXT-E01    " Input Transaction Code is Invalid.
               TEXT-E02.   " Please Correct !!
      ENDIF.
      SELECT SINGLE TTEXT
        INTO TSTCT-TTEXT
        FROM TSTCT
        WHERE SPRSL = SY-LANGU
          AND TCODE = P_TCODE.
    START-OF-SELECTION.
      CLEAR GV_DEVCLASS.
      SELECT SINGLE DEVCLASS
        INTO GV_DEVCLASS
        FROM TADIR
        WHERE PGMID  = GC_R3TR
          AND OBJECT = GC_PROG
          AND OBJ_NAME = TSTC-PGMNA.
      IF SY-SUBRC <> 0.
        SELECT SINGLE SUBC
          INTO TRDIR-SUBC
          FROM TRDIR
          WHERE NAME = TSTC-PGMNA.
        IF TRDIR-SUBC = GC_F.         " Function Group
          SELECT SINGLE FUNCNAME
            INTO TFDIR-FUNCNAME
            FROM TFDIR
            WHERE PNAME = TSTC-PGMNA.
          SELECT SINGLE AREA
            INTO ENLFDIR-AREA
            FROM ENLFDIR
            WHERE FUNCNAME = TFDIR-FUNCNAME.
          CLEAR GV_DEVCLASS.
          SELECT SINGLE DEVCLASS
            INTO GV_DEVCLASS
            FROM TADIR
            WHERE PGMID    = GC_R3TR
              AND OBJECT   = GC_FUGR
              AND OBJ_NAME = ENLFDIR-AREA.
        ENDIF.
      ENDIF.
      SELECT *
        FROM TADIR
        INTO TABLE GT_TADIR
        WHERE PGMID  = GC_R3TR
          AND OBJECT = GC_SMOD
          AND DEVCLASS = GV_DEVCLASS.
      FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
      WRITE:/(19) 'Transaction Code - ',
              20(20) P_TCODE,
              45(36) TSTCT-TTEXT.
      SKIP.
      IF NOT GT_TADIR[] IS INITIAL.
        WRITE:/(95) SY-ULINE.
        FORMAT COLOR COL_HEADING INTENSIFIED ON.
        WRITE:/1 SY-VLINE,
               2 'Exit Name',
              21 SY-VLINE ,
              24 'Description',
              95 SY-VLINE.
        WRITE:/(95) SY-ULINE.
        SORT GT_TADIR BY OBJ_NAME.
        LOOP AT GT_TADIR.
          SELECT SINGLE MODTEXT
            INTO MODSAPT-MODTEXT
            FROM MODSAPT
            WHERE SPRSL = SY-LANGU
              AND NAME = GT_TADIR-OBJ_NAME.
          FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
          WRITE:/01 SY-VLINE,
                 02 GT_TADIR-OBJ_NAME HOTSPOT ON,
                 21 SY-VLINE,
                 22 MODSAPT-MODTEXT,
                 95 SY-VLINE.
        ENDLOOP.
        WRITE:/(95) SY-ULINE.
        DESCRIBE TABLE GT_TADIR.
        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.
    AT LINE-SELECTION.
      GET CURSOR FIELD GV_FIELD1.
      IF GV_FIELD1(8) = 'GT_TADIR'.
        SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
        CALL TRANSACTION 'SMOD' AND SKIP FIRST   SCREEN.
      ELSE.
        MESSAGE I899(MM)
          WITH TEXT-I01    " Click on the Exit Name to Drill-Down
               TEXT-I02.   " to SAP Enhancement Information.
      ENDIF.
    END-OF-SELECTION.
    TOP-OF-PAGE.
    S U B R O U T I N E S                                                *
    E N D   O F   R E P O R T  ****************************************

  • User Exit to Prevent Currency Confusion

    Hi; I need a user exit to prevent currency confusion, can someone direct me.
    Thanks

    Hi
    If you could specify more details like where do you want to avoid currency confusion. we might help you...
    Thanks & Regards
    Kishore

  • User Exit / BADi for TCode -  IMA11 (Create Appropriation Request )

    Hi friends ,
                Can anyone help me in finding the User Exit / BADI for Transaction IMA11 (Create Appropriation Request , Module - FI ).I want to create search help for field "Partner" in table control "Person Involved" present in this transaction.
    Thanks in advance.
    Regards
    Nand Kishor

    Hi,
      The following user exits are available :
    Exit Name           Description
    AAIR0001            IM-IS: User value fields in app.req. reporting
    AAIR0002            IM-FA: User fields for app. requests
    AAIR0003            IM: Workplace assignmt when creating PM order from app.req.
    AAIR0004            IM Drilldown: Definition of User-Defined Characteristics
    AAIR0006            IM-FA-IA: Data Transfer from App. Req. to WBS Element
    regards
    Aveek

  • USER EXIT REQUIRED DURING DELIVERY OF SALES ORDER VL01N

    hi
    i want to block all the delivers ( by default ) i.e after creating sales order when user go for delivery ( or runs transaction VL01N ) it should block all the deliveries
    plz suggest user exit as i dont find any
    thanks
    taran

    Hi taran,
    Check, it may help you.
    Exits for VL01N ::::::
    V02V0001 Sales area determination for stock transport order
    V02V0002 User exit for storage location determination
    V02V0003 User exit for gate + matl staging area determination (headr)
    V02V0004 User Exit for Staging Area Determination (Item)
    V50PSTAT Delivery: Item Status Calculation
    V50Q0001 Delivery Monitor: User Exits for Filling Display Fields
    V50R0001 Collective processing for delivery creation
    V50R0002 Collective processing for delivery creation
    V50R0004 Calculation of Stock for POs for Shipping Due Date List
    V50S0001 User Exits for Delivery Processing
    V53C0001 Rough workload calculation in time per item
    V53C0002 W&S: RWE enhancement - shipping material type/time slot
    V53W0001 User exits for creating picking waves
    VMDE0001 Shipping Interface: Error Handling - Inbound IDoc
    VMDE0002 Shipping Interface: Message PICKSD (Picking, Outbound)
    VMDE0003 Shipping Interface: Message SDPICK (Picking, Inbound)
    VMDE0004 Shipping Interface: Message SDPACK (Packing, Inbound)
    LE_SHP_GOODSMOVEMENT BADI.
    Regards,
    Ramesh.

  • User exit  or Badi for VL31N (create inbound delivery)

    Dear friends.
              I wish to add a check before saving in the transaction VL31N for that  i need to know user exit or BADI..can you help me to know what possible user exit or badi available for this task.. your suggestion and article will be greate help of mine,
    thanking you
    regards,
    Naim

    Exit Name           Description
    V02V0001            Sales area determination for stock transport order
    V02V0002            User exit for storage location determination
    V02V0003            User exit for gate + matl staging area determination (headr)
    V02V0004            User Exit for Staging Area Determination (Item)
    V50PSTAT            Delivery: Item Status Calculation
    V50Q0001            Delivery Monitor: User Exits for Filling Display Fields
    V50R0001            Collective processing for delivery creation
    V50R0002            Collective processing for delivery creation
    V50R0004            Calculation of stock for POs for shipping due date list
    V50S0001            User Exits for Delivery Processing
    V53C0001            Rough workload calculation in time per item
    V53C0002            W&S: RWE enhancement - shipping material type/time slot
    V53W0001            User exits for creating picking waves
    VMDE0001            Shipping Interface: Error Handling - Inbound IDoc
    VMDE0002            Shipping Interface: Message PICKSD (Picking, Outbound)
    VMDE0003            Shipping Interface: Message SDPICK (Picking, Inbound)
    VMDE0004            Shipping Interface: Message SDPACK (Packing, Inbound)
    BADI
    <b>DELIVERY_PUBLISH</b>regards
    vinod

  • User Exit For Tagging Delivery To A Manual Shipment

    Hi All,
    We have a process in which we are creating a shipment manually and then we are trying to tag a delivery manually to that shipment. The requirement is that it should give an error for a particular type of delivery.
    Please let me know if there are any exits for that.
    Thanks,
    Sharadendu

    You should try to control it while transaction VA02 then. I think the user exit should be MV45AFZZ, u plz check in the list of user exits - SPRO-IMG- Sales and Distribution- System Modifications- User Exits and you will have all specific user exits used during various SD processes there.
    And then u might want to issue a hard error when some one changes or tries to change the Delivery date- can use a message number according to the application(for ex if its sales then Message class is V1). And then get that message number and code included in the particular user exit.
    Else u can have a screen variant defined for a specific users profile which will not allow any changes to the particular field. creta evariant using SHDO- select ur specific needs- assign this screen variant to the tarnsaction code may be VA02.
    Regards
    Sai

Maybe you are looking for