[Home] [Help]
PACKAGE BODY: APPS.FA_INS_MST_POLS_PKG
Source
1 PACKAGE BODY FA_INS_MST_POLS_PKG AS
2 /* $Header: faxinsmb.pls 120.4 2009/03/27 03:19:41 bridgway ship $ */
3
4
5 PROCEDURE Lock_Row( X_Rowid VARCHAR2,
6 X_Asset_policy_id NUMBER,
7 X_Policy_number VARCHAR2,
8 X_Vendor_site_id NUMBER,
9 X_Vendor_id NUMBER,
10 X_Calculation_method VARCHAR2
11 , p_log_level_rec IN FA_API_TYPES.log_level_rec_type) IS
12
13 CURSOR C IS
14 SELECT *
15 FROM fa_ins_mst_pols
16 WHERE rowid = X_Rowid
17 FOR UPDATE OF policy_number NOWAIT;
18
19 recinfo C%ROWTYPE;
20
21 BEGIN
22 OPEN C;
23 FETCH C INTO recinfo;
24 IF C%NOTFOUND THEN
25 CLOSE C;
26 FND_MESSAGE.Set_Name('FND','FORM_RECORD_DELETED');
27 APP_EXCEPTION.Raise_Exception;
28 END IF;
29 CLOSE C;
30 IF (
31 (recinfo.asset_policy_id = X_Asset_policy_id)
32 AND ( (recinfo.policy_number = X_Policy_number)
33 OR ( (recinfo.policy_number IS NULL)
34 AND (X_Policy_number IS NULL)))
35 AND ( (recinfo.vendor_site_id = X_Vendor_site_id)
36 OR ( (recinfo.vendor_site_id IS NULL)
37 AND (X_Vendor_site_id IS NULL)))
38 AND ( (recinfo.vendor_id = X_Vendor_id)
39 OR ( (recinfo.vendor_site_id IS NULL)
40 AND (X_Vendor_site_id IS NULL)))
41 AND ( (recinfo.calculation_method = X_Calculation_method)
42 OR ( (recinfo.calculation_method IS NULL)
43 AND (X_Calculation_method IS NULL)))
44 ) THEN
45 RETURN;
46 ELSE
47 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
48 APP_EXCEPTION.Raise_Exception;
49 END IF;
50 END Lock_Row;
51
52
53 PROCEDURE Update_Row( X_Rowid VARCHAR2,
54 X_Asset_policy_id NUMBER,
55 X_Policy_number VARCHAR2,
56 X_Vendor_site_id NUMBER,
57 X_Vendor_id NUMBER,
58 X_Calculation_method VARCHAR2,
59 X_Last_update_date DATE,
60 X_Last_updated_by VARCHAR2,
61 X_Last_update_login VARCHAR2,
62 X_Creation_date DATE,
63 X_Created_by VARCHAR2
64 , p_log_level_rec IN FA_API_TYPES.log_level_rec_type) IS
65
66 BEGIN
67
68 UPDATE fa_ins_mst_pols
69 SET
70 asset_policy_id = X_Asset_policy_id,
71 policy_number = X_Policy_number,
72 vendor_site_id = X_Vendor_site_id,
73 vendor_id = X_Vendor_id,
74 calculation_method = X_Calculation_method,
75 last_update_date = X_Last_update_date,
76 last_updated_by = X_Last_updated_by,
77 last_update_login = X_Last_update_login,
78 creation_date = X_Creation_date,
79 created_by = X_Created_by
80 WHERE rowid = X_Rowid;
81
82 IF (SQL%NOTFOUND) THEN
83 RAISE NO_DATA_FOUND;
84 END IF;
85
86 commit;
87
88 END Update_Row;
89
90
91 PROCEDURE Delete_Row( X_asset_policy_id NUMBER,
92 X_Asset_id VARCHAR2, p_log_level_rec IN FA_API_TYPES.log_level_rec_type) IS
93
94 CURSOR C IS
95 SELECT 1
96 FROM fa_ins_policies
97 WHERE asset_policy_id = X_asset_policy_id
98 AND asset_id <> X_Asset_id;
99
100 dummy varchar2(1);
101
102 BEGIN
103
104 OPEN C;
105 FETCH C INTO dummy;
106 IF C%NOTFOUND THEN
107 DELETE FROM fa_ins_mst_pols
108 WHERE asset_policy_id = X_asset_policy_id;
109
110 IF (SQL%NOTFOUND) THEN
111 RAISE NO_DATA_FOUND;
112 END IF;
113 END IF;
114
115 DELETE FROM fa_ins_lines
116 WHERE asset_policy_id = X_asset_policy_id
117 AND asset_id = X_Asset_id;
118
119 -- commit;
120
121
122 DELETE FROM fa_ins_policies
123 WHERE asset_policy_id = X_asset_policy_id
124 AND asset_id = X_Asset_id;
125
126 DELETE FROM fa_ins_values
127 WHERE asset_policy_id = X_asset_policy_id
128 AND asset_id = X_Asset_id;
129
130
131 commit;
132
133 END Delete_Row;
134
135 END FA_INS_MST_POLS_PKG;