DBA Data[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;