[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.3 2005/08/31 23:21:05 lson noship $ */
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 default null) 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)))) THEN
44 RETURN;
45 ELSE
46 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
47 APP_EXCEPTION.Raise_Exception;
48 END IF;
49 END Lock_Row;
50
51
52 PROCEDURE Update_Row( X_Rowid VARCHAR2,
53 X_Asset_policy_id NUMBER,
54 X_Policy_number VARCHAR2,
55 X_Vendor_site_id NUMBER,
56 X_Vendor_id NUMBER,
57 X_Calculation_method VARCHAR2,
58 X_Last_update_date DATE,
59 X_Last_updated_by VARCHAR2,
60 X_Last_update_login VARCHAR2,
61 X_Creation_date DATE,
62 X_Created_by VARCHAR2,
63 p_log_level_rec IN FA_API_TYPES.log_level_rec_type default null) IS
64
65 BEGIN
66
67 UPDATE fa_ins_mst_pols
68 SET
69 asset_policy_id = X_Asset_policy_id,
70 policy_number = X_Policy_number,
71 vendor_site_id = X_Vendor_site_id,
72 vendor_id = X_Vendor_id,
73 calculation_method = X_Calculation_method,
74 last_update_date = X_Last_update_date,
75 last_updated_by = X_Last_updated_by,
76 last_update_login = X_Last_update_login,
77 creation_date = X_Creation_date,
78 created_by = X_Created_by
79 WHERE rowid = X_Rowid;
80
81 IF (SQL%NOTFOUND) THEN
82 RAISE NO_DATA_FOUND;
83 END IF;
84
85 commit;
86
87 END Update_Row;
88
89
90 PROCEDURE Delete_Row( X_asset_policy_id NUMBER,
91 X_Asset_id VARCHAR2,
92 p_log_level_rec IN FA_API_TYPES.log_level_rec_type default null) 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 commit;
131
132 END Delete_Row;
133
134 END FA_INS_MST_POLS_PKG;