LOCK_ROW

Hi to all
Could anyone please explain me abt the significance of this LOCK_ROW Procedure in Oracle Apps Custom Form.
Why do we need and when do we need this ?
Regards
Nakul Venkataraman

I'm not 100% sure about "LOCK_ROW" but let me try.
If you do not lock the row and after some time your procedure on the form try to update that record that was in the meantime changed ... your action will fail.
If you lock the row, that action and prevent any other update on that row from all session. This ensures that all long running tasks that as a result may have update on this row will be accepted.
Be aware that row locking must finish wit lock release (either with commit or rollback part, regardless). Otherwise if user close the form without that, row will remain locked to everyone until session that has lock the row finish.
For some other terms in this field read "Optimistic locking", what is totally opposite mentioned row locking....and used on WEB forms a lot
Hope this helps

Similar Messages

  • Error invoking Oracle Application Adapter part of SOA Suite 11g

    We are using Oracle application adapter from BPEL process manager ( SOA Suite 11g) to call PLSQL:OE_ORDER_PUB:PROCESS_ORDER (EBS R12).
    The call returns error : "<ns0:X_MSG_DATA
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="">FND
    FND_AS_UNEXPECTED_ERROR N PKG_NAME OE_Order_PVT N PROCEDURE_NAME Lines N
    ERROR_TEXT ORA-06502: PL/SQL: numeric or value error: NULL index table key
    value </ns0:X_MSG_DATA>"
    The same order gets created from PLSQL but fails while trying from BPEL through Oracle APPS adapter. The dbg file at the EBS end is given below:
    Session Id:5695950
    Entering OE_HEADER_UTIL.GET_IDS
    Exiting OE_HEADER_UTIL.GET_IDS
    Entering OE_HEADER_UTIL.GET_IDS
    Exiting OE_HEADER_UTIL.GET_IDS
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PUB.PROCESS_ORDER
    LEAVING OE_MSG_PUB.INITIALIZE
    ENTER PROCESS_ORDER_AG
    BEFORE HEADER PROCESSING
    HEADER_ID22020
    OPERATIONCREATE
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PVT.HEADER
    OE_ORDER_PVT.HEADER AFTER INIT CONTROL REC
    OPERATION = CREATE SO SET OLD TO NULL
    Entering OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    Exiting OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    ENTER OE_HEADER_SECURITY.ATTRIBUTES
    VALIDATE ATTRIBUTES
    Entering OE_VALIDATE_HEADER.ATTRIBUTES
    Entering OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Exiting OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Entering OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Exiting OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Entering OE_ORDER_CACHE.LOAD_Payment_Term
    Exiting OE_ORDER_CACHE.LOAD_Payment_Term
    Entering OE_ORDER_CACHE.LOAD_PRICE_LIST
    Exiting OE_ORDER_CACHE.LOAD_PRICE_LIST
    Entering OE_ORDER_CACHE.LOAD_Salesrep_rec
    Exiting OE_ORDER_CACHE.LOAD_Salesrep
    Exiting OE_VALIDATE_HEADER.ATTRIBUTES
    DEFAULT MISSING
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for INSTALLMENT_OPTIONS
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value fetched from table.
    PARAMETER VALUE:
    In OE_Contracts_util.check_license
    performing check first time, lx_status: I
    l_sales_contracts_enabled: N
    SET CODE
    AFTER SET CODE
    Enter get_freight_carrier()
    Entering OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for SET_OF_BOOKS_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    ENTERING OE_SYS_PARAMETERS_PVT.GET_AR_SYS_PARAMS ...
    Querying the table for the AR details ..
    Exiting OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    AFTER DEFAULT MISSING
    APPLY ATTRIBUTE CHANGES
    Entering OE_HEADER_UTIL.APPLY_ATTRIBUTE_CHANGES
    Raj1
    Raj2
    Raj3
    Raj4
    before getting payment count
    Exiting OE_HEADER_UTIL.APPLY_ATTRIBUTE_CHANGES
    ENTER OE_HEADER_SECURITY.ENTITY
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for AUDIT_TRAIL_ENABLE_FLAG
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    VALUE FROM DBE
    Parameter value fetched from table.
    PARAMETER VALUE: E
    ENTER OE_PC_CONSTRAINTS_ADMIN_PVT.IS_OP_CONSTRAINED , COLUMN:
    EXIT OE_PC_CONSTRAINTS_ADMIN_PVT.IS_OP_CONSTRAINED , RESULT:0
    EXIT OE_HEADER_SECURITY.ENTITY
    Entering OR_HEADER_UTIL.Pre_Write_Process
    No prepayments for the order
    Entering OE_HEADER_UTIL.Get_Order_Number
    Entering OE_HEADER_UTIL.Get_Order_Number
    Ordertype is :1087
    Entering OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for SET_OF_BOOKS_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    ENTERING OE_SYS_PARAMETERS_PVT.GET_AR_SYS_PARAMS ...
    Getting the AR details from the cache ..
    Exiting OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    Entering OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Exiting OE_ORDER_CACHE.LOAD_ORDER_TYPE
    before calling get_seq_info
    Category Code1087
    Set of Books2021
    after calling get_seq_info
    fndseqresult0
    fndseqtype1017
    p_old_header_rec.order_number:
    p_old_header_rec.transaction_phase_code:
    Exiting OR_HEADER_UTIL.Get_Order_Number
    Exiting OR_HEADER_UTIL.Pre_Write_Process
    WRITE TO DB
    Entering OE_HEADER_UTIL.INSERT_ROW
    ENTERING OE_ORDER_UTIL.UPDATE_GLOBAL_PICTURE
    UI FLAG IS FALSE
    CODE_RELEASE_LEVEL=120004
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    P_HEADER_ID=22020
    P_HEADER_REC.HEADER_ID=22020
    OD GLOBAL HEADER_ID= 22020
    NEW GLOBAL HEADER_ID= 22020
    EXITING OE_ORDER_UTIL.UPDATE_GLOBAL_PICTURE
    returned index is: 1
    Exiting OE_HEADER_UTIL.INSERT_ROW
    Entering OE_HEADER_UTIL.Post_Write_Process
    ENTER SET RECURSION MODE
    ENTITY CODE-11
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Entering Procedure Process_Request_Pvt
    Request type DFLT_HSCREDIT_FOR_SREP
    Entering OE_DELAYED_REQUESTS_UTIL.DFLT_HSCREDIT_PRIMARY_SREP
    ENTERING OE_HEADER_SCREDIT_UTIL.DFLT_HSCREDIT_PRIMARY_SREP
    ENTER SET RECURSION MODE
    ENTITY CODE-4
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PVT.HEADER_SCREDITS
    ENTER OE_HEADER_SCREDIT_SECURITY.ATTRIBUTES
    Entering OE_VALIDATE_Header_Scredits.Attributes
    Entering OE_ORDER_CACHE.LOAD_Salesrep_rec
    Exiting OE_ORDER_CACHE.LOAD_Salesrep
    Exiting OE_VALIDATE_Header_Scredits.Attributes
    Entering OE_VALIDATE_Header_Scredits.Entity
    Entering OE_VALIDATE_Header_Scredits.Duplicate_salescredit
    Exiting OE_VALIDATE_Header_Scredits.Duplicate_salescredit
    Exiting OE_VALIDATE_Header_Scredits.Entity
    ENTER OE_HEADER_SCREDIT_SECURITY.ENTITY
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for AUDIT_TRAIL_ENABLE_FLAG
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: E
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    ENTER OE_PC_CONSTRAINTS_ADMIN_PVT.IS_OP_CONSTRAINED , COLUMN:
    EXIT OE_PC_CONSTRAINTS_ADMIN_PVT.IS_OP_CONSTRAINED , RESULT:0
    EXIT OE_HEADER_SCREDIT_SECURITY.ENTITY
    ENTERING OE_HEADER_SCREDIT_UTIL.INSERT_ROW
    ENTERING OE_ORDER_UTIL.UPDATE_GLOBAL_PICTURE
    UI FLAG IS FALSE
    CODE_RELEASE_LEVEL=120004
    P_HDR_SCR_ID=64168
    ENTERING OE_ORDER_UTIL.RETURN_GLB_ENT_INDEX
    EXITING OE_ORDER_UTIL.RETURN_GLB_ENT_INDEX
    INDEX=641680001
    L_RETURN_STATUS =S
    L_RESULT =F
    OLD SCR_ID 64168
    NEW SCR_ID64168
    EXITING OE_ORDER_UTIL.UPDATE_GLOBAL_PICTURE
    RETURNED INDEX IS: 641680001
    EXITING OE_HEADER_SCREDIT_UTIL.INSERT_ROW
    EXITING OE_ORDER_PVT.HEADER_SCREDITS
    ENTER SET RECURSION MODE
    ENTITY CODE-4
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    EXITING OE_HEADER_SCREDIT_UTIL.DFLT_HSCREDIT_PRIMARY_SREP
    Exiting OE_DELAYED_REQUESTS_UTIL.DFLT_HSCREDIT_PRIMARY_SREP
    leaving Process_Request_Pvt
    ENTER SET RECURSION MODE
    ENTITY CODE-11
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    leaving process_requenst_for_reqtype
    Before calling eval_post_write_header in HEADER Post Write
    ENTERING EVAL_POST_WRITE_HEADER
    M_HOLD_ENTITY_CODE/M_HOLD_ENTITY_ID:C/13489
    RETRIEVING NEW HOLD SOURCE RECORD
    HOLD SOURCE RECORD NOT FOUND , EXITING
    EXITING EVAL_POST_WRITE_HEADER
    After calling eval_post_write_header in HEADER Post Write
    Before calling OE_SCHEDULE_UTIL
    ENTERING INSERT_INTO_MTL_SALES_ORDERS
    CALLING INVS CREATE_SALESORDER
    ORDER TYPE: Cochin Order
    SOURCE CODE: ORDER ENTRY
    ORDER NUMBER : 1017
    L_MSG_COUNT
    RETURN STATUS S
    EXITING INSERT_INTO_MTL_SALES_ORDERS
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_HEADER_UTIL.Post_Write_Process
    EXITING OE_ORDER_PVT.HEADER
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    AFTER HEADER PROCESSING HEADER_ID = 22020
    AFTER HEADER_ADJS PROCESSING
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Enter OE_Delayed_Requests_Pvt.Process_Request_for_Entity
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    AFTER HEADER_PRICE_ATTS PROCESSING
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Enter OE_Delayed_Requests_Pvt.Process_Request_for_Entity
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Enter OE_Delayed_Requests_Pvt.Process_Request_for_Entity
    Entering Procedure Process_Request_Pvt
    Request type CHECK_HSC_QUOTA_TOTAL
    Entering OE_DELAYED_REQUESTS_UTIL.VALIDATE_HSC_QUOTA_TOTAL
    Entering OE_VALIDATE_Header_Scredits.Validate_HSC_QUOTA_TOTAL
    Exiting OE_VALIDATE_Header_Scredits.Validate_HSC_QUOTA_TOTAL
    Exiting OE_DELAYED_REQUESTS_UTIL.VALIDATE_HSC_QUOTA_TOTAL
    leaving Process_Request_Pvt
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Enter OE_Delayed_Requests_Pvt.Process_Request_for_Entity
    ENTER SET RECURSION MODE
    ENTITY CODE-9
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    BEFORE LINES PROCESSING
    ENTER SET RECURSION MODE
    ENTITY CODE-5
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    Entering OE_ORDER_PVT.LINES 1: 15-OCT-09 18:31:47
    ---------LOOPING FOR NTH TIME N= 1
    OPERATION = CREATE SO SETTING OLD TO NULL
    Entering OE_LINE_UTIL.CONVERT_MISS_TO_NULL
    outside margin convert miss to null
    inside margin convert miss to null
    Exiting OE_LINE_UTIL.CONVERT_MISS_TO_NULL
    AT LINE LEVEL HEADER_ID22020
    Entering OE_HEADER_UTIL.LOCK_ROW
    Entering OE_HEADER_UTIL.QUERY_ROW
    Before caching OE_HEADER_UTIL.QUERY_ROW
    Exiting OE_HEADER_UTIL.QUERY_ROW
    selected for update, now compare
    STANDARD LINE
    L_MODE IS MODELS_AND_STANDARD
    0
    STARTING LINE LOOP. HEADER_ID = 22020
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    VALUE FROM DB83
    Parameter value fetched from table.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 9.990000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E+125
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    querying item from mtl_system_items
    querying based on ship_from_org
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    Dual_uom_control is FALSE
    CHECK ATTRIBUTES SECURITY
    Enter OE_LINE_Security.Attributes
    ATTRIBUTE VALIDATION
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    Enter procedure OE_validate_line.Attributes
    Header has got created in the same call
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Entering OE_ORDER_CACHE.LOAD_LINE_TYPE
    p_key is not null
    before selecting line_type info : G_MISS_CHAR
    after selecting line_type info : G_MISS_CHAR
    tax_flag :
    Exiting OE_ORDER_CACHE.LOAD_LINE_TYPE
    Checking for Ship Dates....
    Checking for Arival Dates....
    item_relationship_type :
    preferred_grade:
    Exiting procedure OE_validate_line.Attributes
    AFTER ATTRIBUTE VALIDATION
    DEFAULT MISSING
    ENTER OE_DEFAULT_LINE.ATTRIBUTES
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    IN DEFAULTING: FUNCTION GET_ITEM_TYPE
    THE INV ITEM IS5429
    line_category_code = ORDER
    retrobill_request_id =
    item_type_code =
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    CALLING GET_SMC
    DEFAULTING SMC FLAG
    GET SMC: TOP MODEL LINE ID :
    CALLING GET_ATO
    IN GET_ATO_LINE , ITEM_TYPE_CODE :STANDARD
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    GET_ATO_LINE: NY
    RETURN ATO_LINE_ID AS NULL
    ENTERING MODEL_OPTION_DEFAULTING
    LINE_ID TO DEFAULT:
    IB Owner:
    IB Install:
    IB Current:
    Entering OE_CONFIG_TSO_PVT.Is_Part_of_Container_Model..: 15-OCT-09 18:31:47
    Line Id :
    Top Model Line id:
    ATO Line id:
    operation :
    inv item : 5429
    Inventory Item id:5429
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    BOM Item Type:4
    Replenish to Order:N
    Config Model Type:
    Top Container Model?:N
    Part of Container Model?:N
    Exiting OE_CONFIG_TSO_PVT.Is_Part_Of_Container_Model..: 15-OCT-09 18:31:47
    RETURNING FOR ITEM TYPE MODEL AND STANDARD
    TOLERANCE BELOW :
    TOLERANCE BELOW :
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for INSTALLMENT_OPTIONS
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE:
    Before Defaulting P_Qty and P_Qty_Uom Values:
    Pricing Qty: 20
    Pricing UOM:
    Ordered Qty: 20
    Ordered UOM: EA
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    Dual_uom_control is FALSE
    SHIP FROM OR SHIP METHOD IS NULL/MISSING
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    CALLING GET SHIPPABLE_FLAG
    1 , ATO_LINE_ID:
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    SHIPPABLE FLAG: Y
    SETTING RE_SOURCE_FLAG TO N
    EXIT OE_DEFAULT_LINE.ATTRIBUTES
    APPLY ATTRIBUTE CHANGES
    Entering OE_LINE_UTIL.APPLY_ATTRIBUTE_CHANGES
    Entering OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Exiting OE_ORDER_CACHE.LOAD_ORDER_HEADER
    Entering OE_ORDER_CACHE.GET_TAX_CALCULATION_FLAG
    Entering OE_ORDER_CACHE.LOAD_LINE_TYPE
    p_key is not null
    Exiting OE_ORDER_CACHE.LOAD_LINE_TYPE
    ENTER RETURN_LINE
    EXIT , THIS IS A REGULAR LINE
    Entering OE_ORDER_CACHE.LOAD_CUST_TRX_TYPE
    Exiting OE_ORDER_CACHE.LOAD_CUST_TRX_TYPE
    Exiting OE_ORDER_CACHE.GET_TAX_CALCULATION_FLAG
    Entering OE_ORDER_CACHE.Enforce_List_price
    Exiting OE_ORDER_CACHE.Enforce_List_price
    old calculate price flag G_MISS_CHAR
    new calculate price flagY
    Freeze method is :BOOKING
    FTE IS NOT INSTALLED!
    OE_GLOBALS.G_PRICING_RECURSION:N
    Entering OE_LINE_UTIL.UPDATE_ADJUSTMENT_FLAGS
    New Item, dont have to do anything
    Exiting OE_LINE_UTIL.UPDATE_ADJUSTMENT_FLAGS
    Freeze method is :BOOKING
    FTE IS NOT INSTALLED!
    FTE IS NOT INSTALLED!
    Ordered Qty has changed
    New Ordered Qty : 20
    Old Ordered Qty :
    Freeze method is :BOOKING
    B2315926_2:
    FTE IS NOT INSTALLED!
    FTE IS NOT INSTALLED!
    Entering OE_ORDER_CACHE.Load_Item
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    p_key1 is5429
    prev item: 5429
    l_key2 (Master organizion_id) is83
    p_key2 (ship_from_org_id) is88
    Exiting OE_ORDER_CACHE.LOAD_ITEM
    Dual_uom_control is FALSE
    FTE IS NOT INSTALLED!
    FTE IS NOT INSTALLED!
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for ENABLE_FULFILLMENT_ACCEPTANCE
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value fetched from table.
    PARAMETER VALUE:
    CSH --OUT of l_copy_service_field condition
    LEAVING OE_MSG_PUB.ADD
    ENTER SET RECURSION MODE
    ENTITY CODE-5
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    PO: EXITING PROCESS ORDER WITH UNEXPECTED ERROR
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    DELETE REQUEST12
    ENTERING DELETE_ATTRIBUTE_CHANGES -1
    LEAVING OE_MSG_PUB.COUNT_AND_GET 1
    Entering OE_HEADER_UTIL.GET_VALUES
    In OE_Contracts_util.check_license
    cache already has value, OE_CONTRACTS_UTIL.G_BSA_CNTR_LICENSE: N
    Exiting OE_HEADER_UTIL.GET_VALUES
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    Entering OE_HEADER_UTIL.GET_IDS
    Exiting OE_HEADER_UTIL.GET_IDS
    Entering OE_HEADER_UTIL.GET_IDS
    Exiting OE_HEADER_UTIL.GET_IDS
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PUB.PROCESS_ORDER
    LEAVING OE_MSG_PUB.INITIALIZE
    ENTER PROCESS_ORDER_AG
    BEFORE HEADER PROCESSING
    HEADER_ID
    OPERATIONCREATE
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PVT.HEADER
    OE_ORDER_PVT.HEADER AFTER INIT CONTROL REC
    OPERATION = CREATE SO SET OLD TO NULL
    Entering OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    Exiting OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    ENTER OE_HEADER_SECURITY.ATTRIBUTES
    VALIDATE ATTRIBUTES
    Entering OE_VALIDATE_HEADER.ATTRIBUTES
    Entering OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Exiting OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Entering OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Exiting OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Entering OE_ORDER_CACHE.LOAD_Payment_Term
    Exiting OE_ORDER_CACHE.LOAD_Payment_Term
    Entering OE_ORDER_CACHE.LOAD_Salesrep_rec
    Exiting OE_ORDER_CACHE.LOAD_Salesrep
    Exiting OE_VALIDATE_HEADER.ATTRIBUTES
    DEFAULT MISSING
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for INSTALLMENT_OPTIONS
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE:
    In OE_Contracts_util.check_license
    cache already has value, OE_CONTRACTS_UTIL.G_BSA_CNTR_LICENSE: N
    SET CODE
    AFTER SET CODE
    Enter get_freight_carrier()
    Entering OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for SET_OF_BOOKS_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    ENTERING OE_SYS_PARAMETERS_PVT.GET_AR_SYS_PARAMS ...
    Getting the AR details from the cache ..
    Exiting OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    AFTER DEFAULT MISSING
    APPLY ATTRIBUTE CHANGES
    Entering OE_HEADER_UTIL.APPLY_ATTRIBUTE_CHANGES
    Raj1
    Raj2
    LEAVING OE_MSG_PUB.ADD
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    DELETE REQUEST2
    ENTERING DELETE_ATTRIBUTE_CHANGES -1
    PO: EXITING PROCESS ORDER WITH UNEXPECTED ERROR
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    DELETE REQUEST12
    ENTERING DELETE_ATTRIBUTE_CHANGES -1
    LEAVING OE_MSG_PUB.COUNT_AND_GET 1
    Entering OE_HEADER_UTIL.GET_VALUES
    In OE_Contracts_util.check_license
    cache already has value, OE_CONTRACTS_UTIL.G_BSA_CNTR_LICENSE: N
    Exiting OE_HEADER_UTIL.GET_VALUES
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    Entering OE_HEADER_UTIL.GET_IDS
    LEAVING OE_MSG_PUB.ADD
    Exiting OE_HEADER_UTIL.GET_IDS
    Entering OE_HEADER_UTIL.GET_IDS
    Exiting OE_HEADER_UTIL.GET_IDS
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PUB.PROCESS_ORDER
    LEAVING OE_MSG_PUB.INITIALIZE
    ENTER PROCESS_ORDER_AG
    BEFORE HEADER PROCESSING
    HEADER_ID
    OPERATIONCREATE
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -1
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    ENTERING OE_ORDER_PVT.HEADER
    OE_ORDER_PVT.HEADER AFTER INIT CONTROL REC
    OPERATION = CREATE SO SET OLD TO NULL
    Entering OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    Exiting OE_HEADER_UTIL.CONVERT_MISS_TO_NULL
    ENTER OE_HEADER_SECURITY.ATTRIBUTES
    VALIDATE ATTRIBUTES
    Entering OE_VALIDATE_HEADER.ATTRIBUTES
    Entering OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Exiting OE_ORDER_CACHE.LOAD_INVOICE_TO_ORG
    Entering OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Exiting OE_ORDER_CACHE.LOAD_ORDER_TYPE
    Entering OE_ORDER_CACHE.LOAD_Payment_Term
    Exiting OE_ORDER_CACHE.LOAD_Payment_Term
    Entering OE_ORDER_CACHE.LOAD_PRICE_LIST
    Exiting OE_ORDER_CACHE.LOAD_PRICE_LIST
    Entering OE_ORDER_CACHE.LOAD_Salesrep_rec
    Exiting OE_ORDER_CACHE.LOAD_Salesrep
    Exiting OE_VALIDATE_HEADER.ATTRIBUTES
    DEFAULT MISSING
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for INSTALLMENT_OPTIONS
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE:
    In OE_Contracts_util.check_license
    cache already has value, OE_CONTRACTS_UTIL.G_BSA_CNTR_LICENSE: N
    SET CODE
    AFTER SET CODE
    Enter get_freight_carrier()
    Entering OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for SET_OF_BOOKS_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    ENTERING OE_SYS_PARAMETERS_PVT.GET_AR_SYS_PARAMS ...
    Getting the AR details from the cache ..
    Exiting OE_ORDER_CACHE.LOAD_SET_OF_BOOKS
    AFTER DEFAULT MISSING
    APPLY ATTRIBUTE CHANGES
    Entering OE_HEADER_UTIL.APPLY_ATTRIBUTE_CHANGES
    Raj1
    Raj2
    LEAVING OE_MSG_PUB.ADD
    ENTER SET RECURSION MODE
    ENTITY CODE-2
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    DELETE REQUEST2
    ENTERING DELETE_ATTRIBUTE_CHANGES -1
    PO: EXITING PROCESS ORDER WITH UNEXPECTED ERROR
    ENTER SET RECURSION MODE
    ENTITY CODE-1
    ENTRY-EXIT MODE -0
    RECURSION MODE AT ENTRY -N
    RECURSION MODE WITHOUT EXP AT ENTRY -N
    RECURSION MODE AT EXIT -N
    RECURSION MODE WITHOUT EXP AT EXIT -N
    DELETE REQUEST12
    ENTERING DELETE_ATTRIBUTE_CHANGES -1
    LEAVING OE_MSG_PUB.COUNT_AND_GET 1
    Entering OE_HEADER_UTIL.GET_VALUES
    In OE_Contracts_util.check_license
    cache already has value, OE_CONTRACTS_UTIL.G_BSA_CNTR_LICENSE: N
    Exiting OE_HEADER_UTIL.GET_VALUES
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    ENTERING OE_SYS_PARAMETERS.VALUE
    Going to get the value for MASTER_ORGANIZATION_ID
    ENTERING OE_SYS_PARAMETERS_PVT.VALUE
    Parameter value exists.
    PARAMETER VALUE: 83
    Request help.
    Thank you
    Vijosh
    Edited by: user8690315 on Oct 20, 2009 12:19 AM

    Hi,
    I am also same problem while creating the Sales Order.
    Did you find any solution for this problem??
    Thanks,
    -- Eric.

  • How to update base view Block

    Hi,
    I have a View ( is based on more than one table) and created base table block based on that view.
    Question is, how can I update and save the data from Oracle forms ?
    I'm using Oracle forms 4.5 and Oracle8.0.6 database.
    Thanks in advance.

    Hi James
    Form based on Complex views:
    Records can be updated by writing the code in ON-UPDATE Trigger,
    Code for Inserting a record can be written in ON-INSERT trigger
    For delete u can write the code in ON-DELETE or KEY-DELREC (this worked for my form)
    Locking the rows can be done by ON-LOCK trigger.
    Here is the sample code....
    try to write a package and in that package write procedure for, insert, update, delete, lock, Call those procedures in your trigger which should be on your block level. Block's property that you have to set is: go to the property pallette:
    LOCKING MODE: IMMIDIATE
    KEY MODE: UPDATEABLE
    CODE FOR INSERT:
    --change field names according to your field names
    Package Spec:
    PACKAGE XXCPCRQM_PKG IS
    PROCEDURE insert_row;
    PROCEDURE update_row;
    PROCEDURE delete_row;
    PROCEDURE lock_row;
    END;
    Package Body:
    PACKAGE BODY XXCPCRQM_PKG IS
    --Procedure to Update Row into cpt_ar_charge_to_master table
    PROCEDURE update_row IS
    BEGIN
    UPDATE cpt.cpt_ar_charge_to_master
    SET
    ACCOUNT = :XXCPCRQM_BLK.ACCOUNT,
    SUFFIX = :XXCPCRQM_BLK.SUFFIX,
    REPORT_CODE = :XXCPCRQM_BLK.REPORT_CODE,
    CHARGE_TO_ACCOUNT = :XXCPCRQM_BLK.CHARGE_TO_ACCOUNT,
    CHARGE_TO_SUFFIX = :XXCPCRQM_BLK.CHARGE_TO_SUFFIX,
    CREATION_DATE = :XXCPCRQM_BLK.CREATION_DATE,
    CREATED_BY = :XXCPCRQM_BLK.CREATED_BY,
    LAST_UPDATE_DATE = :XXCPCRQM_BLK.LAST_UPDATE_DATE,
    LAST_UPDATED_BY = :XXCPCRQM_BLK.LAST_UPDATED_BY
    --WHERE ROWID = :XXCPCRQM_BLK.ROW_ID;
    WHERE CHARGE_TO_ID = :XXCPCRQM_BLK.CHARGE_TO_ID;
    EXCEPTION
    when NO_DATA_FOUND
    then
              fnd_message.debug('CAN NOT UPDATE RECORD');
    raise form_trigger_failure;
    commit;
    END;
    --Procedure to Insert Row into cpt_ar_charge_to_master table
    PROCEDURE insert_row IS
    BEGIN
    INSERT INTO cpt.cpt_ar_charge_to_master
    (CHARGE_TO_ID,
    ACCOUNT,
    SUFFIX,
    REPORT_CODE,
    CHARGE_TO_ACCOUNT,
    CHARGE_TO_SUFFIX,
    CREATION_DATE,
    CREATED_BY,
    LAST_UPDATE_DATE,
    LAST_UPDATED_BY)
    VALUES
    (cpt_chrg_to_id_s.nextval, -- Sequence
    :XXCPCRQM_BLK.ACCOUNT,
    :XXCPCRQM_BLK.SUFFIX,
    :XXCPCRQM_BLK.REPORT_CODE,
    :XXCPCRQM_BLK.CHARGE_TO_ACCOUNT,
    :XXCPCRQM_BLK.CHARGE_TO_SUFFIX,
    :XXCPCRQM_BLK.CREATION_DATE,
    :XXCPCRQM_BLK.CREATED_BY,
    :XXCPCRQM_BLK.LAST_UPDATE_DATE,
    :XXCPCRQM_BLK.LAST_UPDATED_BY);
    EXCEPTION
    when NO_DATA_FOUND
    then
              fnd_message.debug('CAN NOT INSERT RECORD');
    raise form_trigger_failure;
    commit;
    END;
    --Procedure to Delete rows from cpt_ar_charge_to_master
    PROCEDURE delete_row IS
    BEGIN
    DELETE FROM cpt.cpt_ar_charge_to_master
    WHERE charge_to_id = :XXCPCRQM_BLK.charge_to_id;
    EXCEPTION
    when NO_DATA_FOUND
    then
              fnd_message.debug('CAN NOT DELETE RECORD');
              raise form_trigger_failure;
    commit;
    END;
    PROCEDURE lock_row IS
    Counter NUMBER;
    CURSOR C IS
    SELECT
    CHARGE_TO_ID,
    ACCOUNT,
    SUFFIX,
    REPORT_CODE,
    CHARGE_TO_ACCOUNT,
    CHARGE_TO_SUFFIX
    FROM cpt_ar_charge_to_master
    WHERE charge_to_id = :XXCPCRQM_BLK.CHARGE_TO_ID
    FOR UPDATE of CHARGE_TO_ID NOWAIT;
    Recinfo C%ROWTYPE;
    BEGIN
    Counter := 0;
    LOOP
    BEGIN
    Counter := Counter + 1;
    OPEN C;
    FETCH C INTO Recinfo;
    if (C%NOTFOUND) then
    CLOSE C;
    FND_MESSAGE.Set_Name('FND','FORM_RECORD_DELETED');
    FND_MESSAGE.Error;
    Raise FORM_TRIGGER_FAILURE;
    end if;
    CLOSE C;
    if (
    (Recinfo. CHARGE_TO_ID = :XXCPCRQM_BLK.CHARGE_TO_ID)
    AND ( (Recinfo. ACCOUNT = :XXCPCRQM_BLK.ACCOUNT)
    OR ( (Recinfo. ACCOUNT IS NULL)
    AND (:XXCPCRQM_BLK.ACCOUNT IS NULL)))
    AND ( (Recinfo.SUFFIX= :XXCPCRQM_BLK.SUFFIX)
    OR ( (Recinfo.SUFFIX IS NULL)
    AND (:XXCPCRQM_BLK.SUFFIX IS NULL)))
    AND ( (Recinfo.REPORT_CODE = :XXCPCRQM_BLK.REPORT_CODE)
    OR ( (Recinfo.REPORT_CODE IS NULL)
    AND (:XXCPCRQM_BLK.REPORT_CODE IS NULL)))
    AND ( (Recinfo.CHARGE_TO_ACCOUNT = :XXCPCRQM_BLK.CHARGE_TO_ACCOUNT)
    OR ( (Recinfo.CHARGE_TO_ACCOUNT IS NULL)
    AND (:XXCPCRQM_BLK.CHARGE_TO_ACCOUNT IS NULL)))
    AND ( (Recinfo.CHARGE_TO_SUFFIX = :XXCPCRQM_BLK.CHARGE_TO_SUFFIX)
    OR ( (Recinfo.CHARGE_TO_SUFFIX IS NULL)
    AND (:XXCPCRQM_BLK.CHARGE_TO_SUFFIX IS NULL)))
    ) then
    return;
    else
    FND_MESSAGE.Set_Name('FND','FORM_RECORD_CHANGED');
    FND_MESSAGE.Error;
    Raise FORM_TRIGGER_FAILURE;
    end if;
    EXCEPTION
    When APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION then
    IF (C% ISOPEN) THEN
    close C;
    END IF;
    APP_EXCEPTION.Record_Lock_Error(Counter);
    END;
    end LOOP;
    END lock_row;
    END XXCPCRQM_PKG;
    CALLING FROM TRIGGER:
    ON-INSERT: XXCPCRQM_PKG.insert_row;
    I am sure this will help you.
    Thanks
    Madhu

  • Error while Compiling Form using f60gen

    Hello All,
    I am trying to compile a customized form in apps middle tier using f60gen command.
    Actually the form is a customized version of FNDCPMCP.fmb(new form is in another name).
    f60gen throws the following error,
    Compiling package body CONC_PROG_PKG...
    Compilation error on package body CONC_PROG_PKG:
    PL/SQL ERROR 306 at line 4, column 3
    wrong number or types of arguments in call to 'INSERT_ROW'
    PL/SQL ERROR 0 at line 4, column 3
    Statement ignored
    PL/SQL ERROR 306 at line 59, column 7
    wrong number or types of arguments in call to 'LOCK_ROW'
    PL/SQL ERROR 0 at line 59, column 7
    Statement ignored
    PL/SQL ERROR 306 at line 109, column 3
    wrong number or types of arguments in call to 'UPDATE_ROW'
    PL/SQL ERROR 0 at line 109, column 3
    Statement ignored
    The form calls FND_CONCURRENT_PROGRAMS_PKG.
    What may be the issue.
    Thanks&Regards
    Kannan Balasubramanian

    Hello,
    It seems that you are trying to call Functions or Procedures with an incorrect argument list.
    Check the Function/Procedeure declaration.
    Francois

  • Custom Form - Locking Issue

    Hi All,
    I have developed a New Custom form from scratch using TEMPLATE.fmb . I have generated it and it allows me to save OK. I have based the Block on a view(with Row_id as a column) . Also, the primary Key for my Table is vend_cat_id.
    But, when I Query it and press the down arrow key to navigate to records (Its a single record block) or even try to change some field in the block , I get the error "FRM-40657 : record changed or deleted by another user".
    My ON-lock trigger calls my custom package : and my code in my Custom pkg is as below, as per the Forms Dev Guide :
    Any ideas what I may be doing wrong or can check ?
    Many Thanks
    Shankar
    PROCEDURE Lock_Row IS
    counter NUMBER;
    cursor c1 IS
    select *
    from XX1
    where rowid = :blk.row_id
    for update nowait;
    recinfo c1%rowtype;
    begin
    counter := 0;
    loop
    begin
    counter := counter + 1;
    open c1;
    fetch c1 into recinfo;
    if (c1%notfound) then
    close c1;
    fnd_message.Set_Name('FND','FORM_RECORD_DELETED');
    fnd_message.Error;
    Raise form_trigger_failure;
    end if;
    close c1;
    if ( (Recinfo.vend_cat_id = :blk.vend_cat_id)
    AND ( (Recinfo.vendor_id = :blk.vendor_id)
    OR( (Recinfo.vendor_id IS NULL) AND (:blk.vendor_id IS NULL))
    AND ( (Recinfo.vendor_site_id = :blk.vendor_site_id)
    OR( (Recinfo.vendor_site_id IS NULL) AND (:blk.vendor_site_id IS NULL))
    AND ( (Recinfo.start_date_active = :blk.start_date_active)
    OR( (Recinfo.start_date_active IS NULL) AND (:blk.start_date_active IS NULL))
    ) -- end if
    then
    return;
    else
    fnd_message.Set_Name('FND','FORM_RECORD_CHANGED');
    fnd_message.Error;
    raise form_trigger_failure;
    end if;
    exception
    when APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION then
    if (c1%isopen) then
    close c1;
    end if;
    APP_EXCEPTION.Record_Lock_Error(Counter);
    end;
    end loop;
    end lock_row;

    You can create a Forms Runtime Diagnostics (FRD) trace to see if you can try and pinpoint the cause. Pl follow instructions in MOS Doc 150168.1 (Obtaining Forms Runtime Diagnostics (FRD) In Oracle Applications 11i)
    HTH
    Srini

  • Custom Form Question

    Hi All,
    I have developed a New Custom form from scratch using TEMPLATE.fmb . I have generated it and it allows me to save OK. I have based the Block on a view . The primary Key for my Table is vend_cat_id.
    But, when I Query it and press the down arrow key to navigate to records (Its a single record block) or even change some field in the block , I get the error "FRM-40657 : record changed or deleted by another user".
    My ON-lock trigger calls my custom package : and my code in my Custom pkg is as below, as per the Forms Dev Guide :
    Any ideas what I may be doing wrong or can check ?
    Many Thanks
    Shankar
    PROCEDURE Lock_Row IS
              counter      NUMBER;
              cursor c1 IS
              select      *
              from XX1
              where rowid = :blk.row_id
              for update nowait;
              recinfo      c1%rowtype;
    begin
    counter := 0;
    loop
         begin
              counter := counter + 1;
              open c1;
              fetch c1 into recinfo;
              if (c1%notfound) then
                   close c1;
              fnd_message.Set_Name('FND','FORM_RECORD_DELETED');
                   fnd_message.Error;
                   Raise form_trigger_failure;
              end if;
                   close c1;
    if (      (Recinfo.vend_cat_id = :blk.vend_cat_id)
    AND (      (Recinfo.vendor_id = :blk.vendor_id)
         OR( (Recinfo.vendor_id IS NULL) AND (:blk.vendor_id IS NULL))
    AND (      (Recinfo.vendor_site_id = :blk.vendor_site_id)
         OR( (Recinfo.vendor_site_id IS NULL) AND (:blk.vendor_site_id IS NULL))
    AND (      (Recinfo.start_date_active = :blk.start_date_active)
         OR( (Recinfo.start_date_active IS NULL) AND (:blk.start_date_active IS NULL))
    ) -- end if
    then
         return;
    else
    fnd_message.Set_Name('FND','FORM_RECORD_CHANGED');
         fnd_message.Error;
         raise form_trigger_failure;
    end if;
    exception
    when APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION then
         if (c1%isopen) then
         close c1;
         end if;
                                                      APP_EXCEPTION.Record_Lock_Error(Counter);
    end;
    end loop;
    end lock_row;

    Hi again,
    Yes, I think that's the problem. It doesn't make sense to get a 'Do you want to save your changes?' message if you don't have anything to save (and if you have a non-database block, Oracle assumes you don't have anything to save).
    Anyway, you can include a warning message in one of the form triggers that execute when someone tries to close the form (KEY-EXIT would be a possibility).
    I hope it helps.

Maybe you are looking for