DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_EXPENDITURE_CATEGORIES_PKG

Source


1 PACKAGE BODY PA_EXPENDITURE_CATEGORIES_PKG as
2 /* $Header: PAXTECSB.pls 120.1 2005/08/09 04:32:19 avajain noship $ */
3 
4  PROCEDURE Insert_Row ( X_Expenditure_category      VARCHAR2,
5 		       X_Last_update_date 	    DATE,
6 		       X_Last_updated_by 	    NUMBER,
7 		       X_Creation_date	 	    DATE,
8 		       X_Created_by 		    NUMBER,
9 		       X_Last_update_login 	    NUMBER,
10 		       X_Start_date_active 	    DATE,
11           	       X_Description 		    VARCHAR2,
12 	               X_End_date_active 	    DATE,
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 		       X_Return_Status	OUT	 NOCOPY   VARCHAR2,
30 		       X_Msg_Count	OUT	  NOCOPY  NUMBER,
31 		       X_Msg_Data       OUT   NOCOPY      VARCHAR2
32                       )
33      IS
34      BEGIN
35          INSERT INTO Pa_Expenditure_Categories
36 			(	Expenditure_category,
37 				Last_update_date,
38 				Last_updated_by,
39              			Creation_date,
40              			Created_by,
41              			Last_update_login,
42              			Start_date_active,
43              			Description,
44              			End_date_active,
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 			)
62            VALUES
63              (     X_Expenditure_category,
64                    X_Last_update_date,
65                    X_Last_updated_by,
66                    X_Creation_date,
67                    X_Created_by,
68                    X_Last_update_login,
69                    X_Start_date_active,
70                    X_Description,
71                    X_End_date_active,
72                    X_Attribute_category,
73                    X_Attribute1,
74                    X_Attribute2,
75                    X_Attribute3,
76                    X_Attribute4,
77                    X_Attribute5,
78                    X_Attribute6,
79                    X_Attribute7,
80                    X_Attribute8,
81                    X_Attribute9,
82                    X_Attribute10,
83                    X_Attribute11,
84                    X_Attribute12,
85                    X_Attribute13,
86                    X_Attribute14,
87                    X_Attribute15
88 		   );
89 
90 	    X_return_status := FND_API.G_RET_STS_SUCCESS;
91             X_msg_count     := 0;
92             X_msg_data      := NULL;
93 
94      EXCEPTION
95         WHEN OTHERS THEN
96             X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
97             X_msg_count     := 1;
98             X_msg_data      := SQLERRM;
99 
100             FND_MSG_PUB.add_exc_msg
101             ( p_pkg_name       => 'PA_AGREEMENT_TYPES_PKG' ,
102               p_procedure_name => 'Insert_Row');
103      END;
104 
105   PROCEDURE Lock_Row(  X_Expenditure_category       VARCHAR2,
106                        X_Last_update_date 	    DATE,
107                        X_Last_updated_by 	    NUMBER,
108                        X_Creation_date	 	    DATE,
109                        X_Created_by 		    NUMBER,
110                        X_Last_update_login 	    NUMBER,
111                        X_Start_date_active 	    DATE,
112                        X_Description 		    VARCHAR2,
113                        X_End_date_active 	    DATE,
114                        X_Attribute_category 	    VARCHAR2,
115                        X_Attribute1 		    VARCHAR2,
116                        X_Attribute2 		    VARCHAR2,
117                        X_Attribute3 		    VARCHAR2,
118                        X_Attribute4 		    VARCHAR2,
119                        X_Attribute5 		    VARCHAR2,
120                        X_Attribute6 		    VARCHAR2,
121                        X_Attribute7 		    VARCHAR2,
122                        X_Attribute8 		    VARCHAR2,
123                        X_Attribute9 		    VARCHAR2,
124                        X_Attribute10 		    VARCHAR2,
125                        X_Attribute11 		    VARCHAR2,
126                        X_Attribute12 		    VARCHAR2,
127                        X_Attribute13 		    VARCHAR2,
128                        X_Attribute14 		    VARCHAR2,
129                        X_Attribute15		    VARCHAR2,
130 		       X_Return_Status	OUT	  NOCOPY  VARCHAR2,
131 		       X_Msg_Count	OUT	 NOCOPY   NUMBER,
132 		       X_Msg_Data       OUT   NOCOPY      VARCHAR2
133                      )
134      IS
135 
136         CURSOR C IS
137         SELECT *
138         FROM  Pa_Expenditure_Categories
139         WHERE Expenditure_Category = X_Expenditure_Category
140         FOR UPDATE of Expenditure_Category NOWAIT;
141 
142        Recinfo C%ROWTYPE;
143 
144 
145   BEGIN
146       OPEN C;
147       FETCH C INTO Recinfo;
148 
149      IF (C%NOTFOUND) THEN
150          CLOSE C;
151          fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
152          RAISE FND_API.G_EXC_ERROR;
153       END IF;
154 
155       CLOSE C;
156       if (
157               (  Recinfo.Expenditure_Category   = X_Expenditure_Category)
158 	 AND  ( (Recinfo.Start_Date_Active      = X_Start_Date_Active)
159                OR (    (Recinfo.start_date_active IS NULL)
160                    AND (X_Start_Date_Active IS NULL)))
161          AND  (   (Recinfo.description          = X_Description)
162                OR (    (Recinfo.description IS NULL)
163                    AND (X_Description IS NULL)))
164          AND  (   (Recinfo.end_date_active      = X_End_Date_Active)
165                OR (    (Recinfo.end_date_active IS NULL)
166                    AND (X_End_Date_Active IS NULL)))
167          AND  (   (Recinfo.attribute_category   = X_Attribute_Category)
168                OR (    (Recinfo.attribute_category IS NULL)
169                    AND (X_Attribute_Category IS NULL)))
170          AND  (   (Recinfo.attribute1           = X_Attribute1)
171                OR (    (Recinfo.attribute1 IS NULL)
172                    AND (X_Attribute1 IS NULL)))
173          AND  (   (Recinfo.attribute2           = X_Attribute2)
174                OR (    (Recinfo.attribute2 IS NULL)
175                    AND (X_Attribute2 IS NULL)))
176          AND  (   (Recinfo.attribute3           = X_Attribute3)
177                OR (    (Recinfo.attribute3 IS NULL)
178                    AND (X_Attribute3 IS NULL)))
179          AND  (   (Recinfo.attribute4           = X_Attribute4)
180                OR (    (Recinfo.attribute4 IS NULL)
181                    AND (X_Attribute4 IS NULL)))
182          AND  (   (Recinfo.attribute5           = X_Attribute5)
183                OR (    (Recinfo.attribute5 IS NULL)
184                    AND (X_Attribute5 IS NULL)))
185          AND  (   (Recinfo.attribute6           = X_Attribute6)
186                OR (    (Recinfo.attribute6 IS NULL)
187                    AND (X_Attribute6 IS NULL)))
188          AND  (   (Recinfo.attribute7           = X_Attribute7)
189                OR (    (Recinfo.attribute7 IS NULL)
190                    AND (X_Attribute7 IS NULL)))
191          AND  (   (Recinfo.attribute8           = X_Attribute8)
192                OR (    (Recinfo.attribute8 IS NULL)
193                    AND (X_Attribute8 IS NULL)))
194          AND  (   (Recinfo.attribute9           = X_Attribute9)
195                OR (    (Recinfo.attribute9 IS NULL)
196                    AND (X_Attribute9 IS NULL)))
197          AND  (   (Recinfo.attribute10          = X_Attribute10)
198                OR (    (Recinfo.attribute10 IS NULL)
199                    AND (X_Attribute10 IS NULL)))
200          AND  (   (Recinfo.attribute11          = X_Attribute11)
201                OR (    (Recinfo.attribute11 IS NULL)
202                    AND (X_Attribute11 IS NULL)))
203          AND  (   (Recinfo.attribute12          = X_Attribute12)
204                OR (    (Recinfo.attribute12 IS NULL)
205                    AND (X_Attribute12 IS NULL)))
206          AND  (   (Recinfo.attribute13          = X_Attribute13)
207                OR (    (Recinfo.attribute13 IS NULL)
208                    AND (X_Attribute13 IS NULL)))
209          AND  (   (Recinfo.attribute14          = X_Attribute14)
210                OR (    (Recinfo.attribute14 IS NULL)
211                    AND (X_Attribute14 IS NULL)))
212          AND  (   (Recinfo.attribute15          = X_Attribute15)
213                OR (    (Recinfo.attribute15 IS NULL)
214                    AND (X_Attribute15 IS NULL)))
215       )
216       then
217             X_return_status := FND_API.G_RET_STS_SUCCESS;
218             X_msg_count     := 0;
219             X_msg_data      := NULL;
220       return;
221     else
222       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
223       RAISE FND_API.G_EXC_ERROR;
224     end if;
225 
226      EXCEPTION
227          WHEN FND_API.G_EXC_ERROR  THEN
228            X_return_status := FND_API.G_RET_STS_ERROR;
229            X_msg_count := FND_MSG_PUB.count_msg;
230             FND_MSG_PUB.add_exc_msg
231             ( p_pkg_name       => 'PA_EXPENDITURE_CATEGORIES_PKG' ,
232               p_procedure_name => 'Lock_Row');
233 
234         WHEN OTHERS THEN
235             X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
236             X_msg_count     := 1;
237             X_msg_data      := SQLERRM;
238 
239             FND_MSG_PUB.add_exc_msg
240             ( p_pkg_name       => 'PA_EXPENDITURE_CATEGORIES_PKG' ,
241               p_procedure_name => 'Lock_Row');
242      END;
243 
244 
245 PROCEDURE Update_Row(  X_Expenditure_category       VARCHAR2,
246                        X_Last_update_date 	    DATE,
247                        X_Last_updated_by 	    NUMBER,
248                        X_Creation_date	 	    DATE,
249                        X_Created_by 		    NUMBER,
250                        X_Last_update_login 	    NUMBER,
251                        X_Start_date_active 	    DATE,
252                        X_Description 		    VARCHAR2,
253                        X_End_date_active 	    DATE,
254                        X_Attribute_category 	    VARCHAR2,
255                        X_Attribute1 		    VARCHAR2,
256                        X_Attribute2 		    VARCHAR2,
257                        X_Attribute3 		    VARCHAR2,
258                        X_Attribute4 		    VARCHAR2,
259                        X_Attribute5 		    VARCHAR2,
260                        X_Attribute6 		    VARCHAR2,
261                        X_Attribute7 		    VARCHAR2,
262                        X_Attribute8 		    VARCHAR2,
263                        X_Attribute9 		    VARCHAR2,
264                        X_Attribute10 		    VARCHAR2,
265                        X_Attribute11 		    VARCHAR2,
266                        X_Attribute12 		    VARCHAR2,
267                        X_Attribute13 		    VARCHAR2,
268                        X_Attribute14 		    VARCHAR2,
269                        X_Attribute15		    VARCHAR2,
270 		       X_Return_Status	OUT	 NOCOPY   VARCHAR2,
271 		       X_Msg_Count	OUT	 NOCOPY   NUMBER,
272 		       X_Msg_Data       OUT     NOCOPY    VARCHAR2
273                      )
274      IS
275      CURSOR C IS
276      SELECT EXPENDITURE_CATEGORY FROM PA_EXPENDITURE_CATEGORIES
277      WHERE
278         Expenditure_Category = X_Expenditure_Category;
279      BEGIN
280      OPEN C;
281      IF (C%NOTFOUND) then
282      RAISE No_Data_Found;
283      ELSE
284          UPDATE Pa_Expenditure_Categories SET
285                        Expenditure_category	 = X_Expenditure_category	,
286 		       Last_update_date		 = X_Last_update_date 		,
287 		       Last_updated_by 		 = X_Last_updated_by 		,
288 		       Creation_date		 = X_Creation_date	 	,
289 		       Created_by		 = X_Created_by 		,
290 		       Last_update_login 	 = X_Last_update_login 		,
291 		       Start_date_active 	 = X_Start_date_active 		,
292 		       Description 		 = X_Description 		,
293 		       End_date_active 		 = X_End_date_active 		,
294                        Attribute_Category        = X_Attribute_Category         ,
295                        Attribute1                = X_Attribute1                 ,
296                        Attribute2                = X_Attribute2                 ,
297                        Attribute3                = X_Attribute3                 ,
298                        Attribute4                = X_Attribute4                 ,
299                        Attribute5                = X_Attribute5                 ,
300                        Attribute6                = X_Attribute6                 ,
301                        Attribute7                = X_Attribute7                 ,
302                        Attribute8                = X_Attribute8                 ,
303                        Attribute9                = X_Attribute9                 ,
304                        Attribute10               = X_Attribute10                ,
305                        Attribute11               = X_Attribute11                ,
306                        Attribute12               = X_Attribute12                ,
307                        Attribute13               = X_Attribute13                ,
308                        Attribute14               = X_Attribute14                ,
309                        Attribute15               = X_Attribute15
310 
311 WHERE       expenditure_category= X_expenditure_category;
312 
313 	    X_return_status := FND_API.G_RET_STS_SUCCESS;
314             X_msg_count     := 0;
315             X_msg_data      := NULL;
316 	end if;
317 
318      EXCEPTION
319         WHEN OTHERS THEN
320             X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
321             X_msg_count     := 1;
322             X_msg_data      := SQLERRM;
323 
324             FND_MSG_PUB.add_exc_msg
325             ( p_pkg_name       => 'PA_EXPENDITURE_CATEGORIES_PKG' ,
326               p_procedure_name => 'Update_Row');
327 
328      END;
329 
330 END PA_EXPENDITURE_CATEGORIES_PKG;