API Error to Create/Update Lease Contracts and Equipments
(Doc ID 2724366.1)
Last updated on OCTOBER 21, 2022
Applies to:
Oracle Property Manager - Version 12.2.7 and laterInformation in this document applies to any platform.
Goal
A. Procedure PN_LEASE_PVT.Create_Lease
While creating a lease contract the procedure Create_Lease ended with a conversion error:
ORA-01454: Cannot convert column into numeric datatype
It was because of declaration:
initialization of p_Api_Version VARCHAR2(10) := '1.0';
This parameter is declared everywhere as NUMBER. In this procedure it is declared as VARCHAR2. Calling this procedure cause a conversion error.
B. Package PN_EQUIP_LEASE_PVT.Validate_Equip_Lease
Tried to create a new asset for an Equipment Contract (in Final status) and added it to a new payment. Could create the asset but not the payment. The payment creation ended with bellow error:
'Asset xxxx should be associated with at least one payment term'.
That it is because of the following check in the procedure PN_EQUIP_LEASE_PVT.Validate_Equip_Lease:
-- for amend, no need to check asset, payment match
IF p_Equip_Lease_Context <> 'AMEND' THEN
OPEN pmt_ast_exists;
FETCH pmt_ast_exists INTO l_asset_num;
IF pmt_ast_exists%FOUND THEN
fnd_message.set_name ('PN', 'PN_AST_PMT');
fnd_message.set_token ('ASSET_NUM', l_asset_num);
fnd_msg_pub.ADD;
x_Msg_Count:=x_Msg_Count+1;
x_Msg_Data:=FND_MSG_PUB.GET(1);
RAISE fnd_api.g_exc_error;
END IF;
CLOSE pmt_ast_exists;
END IF;
The problem is that context of that procedure while calling from API is 'AMENDAPI'. After changing the condition to
IF p_Equip_Lease_Context not in ('AMEND','AMENDAPI') the API works properly.
Is there any patch that correct it?
Solution
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Goal |
Solution |
References |