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 AMHi,
I am also same problem while creating the Sales Order.
Did you find any solution for this problem??
Thanks,
-- Eric. -
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 BalasubramanianHello,
It seems that you are trying to call Functions or Procedures with an incorrect argument list.
Check the Function/Procedeure declaration.
Francois -
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 -
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
-
IPhoto was open, but "unexpectedly quit". When I opened it again a couple days later, my most recent photo uploads (for the past month or so) were missing, with dated Events folders saying "no photos". This had happened another time about a year ago
-
Hi, I'm looking for some asset tracking software to monitor and manage around 1,000 Windows machines (various OS) and 500 thin clients. Being able to report on hardware/software config and metering the devices to prevent unauthorised/unlicensed soft
-
Retreiving a date from database and converting it into a string in a format
hi all, iam having a date field which stores values ,for eg:2002-04-26 00:00:00.i want to retreive the date and i want to convert in a String in dd/mm/yyyy format.how can i do so.plz explain me..........thanks in advance
-
Photoshop auto saving images from internet?
I've just received an image through an email which when I opened it automatically opened in my Photoshop album (only starter edition 3.0), however when I clicked to view the next image I saw an image I had randomly viewed on the bbc site half an hour
-
MAC OS 10.5.8 upgrade
Here is the problem, I have MAC OS 10.5.8 and I am trying to upgrade to 10.6.8 and when I boot off the disc, the system reads the disc and then after a few minutes it ejects the disc. Does that mean the disc is not bootable, or is there something el