DBA Data[Home] [Help]

PACKAGE BODY: APPS.AK_UNIQUE_KEYS_PKG

Source


1 PACKAGE BODY AK_UNIQUE_KEYS_PKG as
2 /* $Header: AKDOBPKB.pls 120.2 2005/09/29 13:59:56 tshort ship $ */
3 
4   PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY VARCHAR2,
5                        X_Unique_Key_Name               VARCHAR2,
6                        X_Database_Object_Name           VARCHAR2,
7                        X_Application_Id                 NUMBER,
8                        X_Last_Update_Date               DATE,
9                        X_Last_Updated_By                NUMBER,
10                        X_Creation_Date                  DATE,
11                        X_Created_By                     NUMBER,
12                        X_Last_Update_Login              NUMBER,
13                        X_Attribute_Category		VARCHAR2,
14 		       X_Attribute1			VARCHAR2,
15 		       X_Attribute2			VARCHAR2,
16 		       X_Attribute3			VARCHAR2,
17 		       X_Attribute4			VARCHAR2,
18 		       X_Attribute5			VARCHAR2,
19 		       X_Attribute6			VARCHAR2,
20 		       X_Attribute7			VARCHAR2,
21 		       X_Attribute8			VARCHAR2,
22 		       X_Attribute9			VARCHAR2,
23 		       X_Attribute10			VARCHAR2,
24 		       X_Attribute11			VARCHAR2,
25 		       X_Attribute12			VARCHAR2,
26 		       X_Attribute13			VARCHAR2,
27 		       X_Attribute14			VARCHAR2,
28 		       X_Attribute15			VARCHAR2
29   ) IS
30     CURSOR C IS SELECT rowid FROM AK_UNIQUE_KEYS
31                  WHERE unique_key_name = X_Unique_Key_Name;
32 
33    BEGIN
34 
35 
36        INSERT INTO AK_UNIQUE_KEYS(
37               unique_key_name,
38               database_object_name,
39               application_id,
40               last_update_date,
41               last_updated_by,
42               creation_date,
43               created_by,
44               last_update_login,
45 	      attribute_category,
46 	      attribute1,
47 	      attribute2,
48 	      attribute3,
49 	      attribute4,
50 	      attribute5,
51 	      attribute6,
52 	      attribute7,
53 	      attribute8,
54 	      attribute9,
55 	      attribute10,
56 	      attribute11,
57 	      attribute12,
58 	      attribute13,
59 	      attribute14,
60 	      attribute15
61              ) VALUES (
62               X_Unique_Key_Name,
63               X_Database_Object_Name,
64               X_Application_Id,
65               X_Last_Update_Date,
66               X_Last_Updated_By,
67               X_Creation_Date,
68               X_Created_By,
69               X_Last_Update_Login,
70               X_Attribute_Category,
71 	      X_Attribute1,
72 	      X_Attribute2,
73 	      X_Attribute3,
74 	      X_Attribute4,
75 	      X_Attribute5,
76 	      X_Attribute6,
77 	      X_Attribute7,
78 	      X_Attribute8,
79 	      X_Attribute9,
80 	      X_Attribute10,
81 	      X_Attribute11,
82 	      X_Attribute12,
83 	      X_Attribute13,
84 	      X_Attribute14,
85 	      X_Attribute15
86              );
87 
88     OPEN C;
89     FETCH C INTO X_Rowid;
90     if (C%NOTFOUND) then
91       CLOSE C;
92       Raise NO_DATA_FOUND;
93     end if;
94     CLOSE C;
95   END Insert_Row;
96 
97 
98   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
99                      X_Unique_Key_Name                 VARCHAR2,
100                      X_Database_Object_Name                        VARCHAR2,
101                      X_Application_Id                   NUMBER
102   ) IS
103     CURSOR C IS
104         SELECT *
105         FROM   AK_UNIQUE_KEYS
106         WHERE  rowid = X_Rowid
107         FOR UPDATE of Unique_Key_Name NOWAIT;
108     Recinfo C%ROWTYPE;
109 
110 
111   BEGIN
112     OPEN C;
113     FETCH C INTO Recinfo;
114     if (C%NOTFOUND) then
115       CLOSE C;
116       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
117       APP_EXCEPTION.Raise_Exception;
118     end if;
119     CLOSE C;
120     if (
121                (Recinfo.unique_key_name =  X_Unique_Key_Name)
122            AND (Recinfo.database_object_name =  X_Database_Object_Name)
123            AND (Recinfo.application_id =  X_Application_Id)
124       ) then
125       return;
126     else
127       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
128       APP_EXCEPTION.Raise_Exception;
129     end if;
130   END Lock_Row;
131 
132 
133 
134   PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
135                        X_Unique_Key_Name               VARCHAR2,
136                        X_Database_Object_Name                      VARCHAR2,
137                        X_Application_Id                 NUMBER,
138                        X_Last_Update_Date               DATE,
139                        X_Last_Updated_By                NUMBER,
140                        X_Last_Update_Login              NUMBER,
141                        X_Attribute_Category		VARCHAR2,
142 		       X_Attribute1			VARCHAR2,
143 		       X_Attribute2			VARCHAR2,
144 		       X_Attribute3			VARCHAR2,
145 		       X_Attribute4			VARCHAR2,
146 		       X_Attribute5			VARCHAR2,
147 		       X_Attribute6			VARCHAR2,
148 		       X_Attribute7			VARCHAR2,
149 		       X_Attribute8			VARCHAR2,
150 		       X_Attribute9			VARCHAR2,
151 		       X_Attribute10			VARCHAR2,
152 		       X_Attribute11			VARCHAR2,
153 		       X_Attribute12			VARCHAR2,
154 		       X_Attribute13			VARCHAR2,
155 		       X_Attribute14			VARCHAR2,
156 		       X_Attribute15			VARCHAR2
157   ) IS
158   BEGIN
159     UPDATE AK_UNIQUE_KEYS
160     SET
161        unique_key_name                =     X_Unique_Key_Name,
162        database_object_name                       =     X_Database_Object_Name,
163        application_id                  =     X_Application_Id,
164        last_update_date                =     X_Last_Update_Date,
165        last_updated_by                 =     X_Last_Updated_By,
166        last_update_login               =     X_Last_Update_Login,
167        attribute_category	       =     X_Attribute_Category,
168        attribute1		       =     X_Attribute1,
169        attribute2		       =     X_Attribute2,
170        attribute3		       =     X_Attribute3,
171        attribute4		       =     X_Attribute4,
172        attribute5		       =     X_Attribute5,
173        attribute6		       =     X_Attribute6,
174        attribute7		       =     X_Attribute7,
175        attribute8		       =     X_Attribute8,
176        attribute9		       =     X_Attribute9,
177        attribute10		       =     X_Attribute10,
178        attribute11		       =     X_Attribute11,
179        attribute12		       =     X_Attribute12,
180        attribute13		       =     X_Attribute13,
181        attribute14		       =     X_Attribute14,
182        attribute15		       =     X_Attribute15
183     WHERE rowid = X_Rowid;
184 
185     if (SQL%NOTFOUND) then
186       Raise NO_DATA_FOUND;
187     end if;
188   END Update_Row;
189   PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
190   BEGIN
191     DELETE FROM AK_UNIQUE_KEYS
192     WHERE rowid = X_Rowid;
193 
194     if (SQL%NOTFOUND) then
195       Raise NO_DATA_FOUND;
196     end if;
197   END Delete_Row;
198 
199 
200 END AK_UNIQUE_KEYS_PKG;