DBA Data[Home] [Help]

PACKAGE BODY: APPS.PN_NOTE_HEADERS_PKG

Source


1 PACKAGE BODY PN_NOTE_HEADERS_PKG AS
2   -- $Header: PNTNOTHB.pls 115.10 2004/05/26 07:03:43 abanerje ship $
3 
4 ------------------------------------------------------------------
5 -- PROCEDURE : INSERT_ROW
6 ------------------------------------------------------------------
7 procedure INSERT_ROW
8         (
9                 X_ROWID                         IN OUT NOCOPY VARCHAR2,
10                 X_NOTE_HEADER_ID                IN OUT NOCOPY NUMBER,
11                 X_LEASE_ID                      IN            NUMBER,
12                 X_NOTE_TYPE_LOOKUP_CODE         IN            VARCHAR2,
13                 X_NOTE_DATE                     IN            DATE,
14                 X_CREATION_DATE                 IN            DATE,
15                 X_CREATED_BY                    IN            NUMBER,
16                 X_LAST_UPDATE_DATE              IN            DATE,
17                 X_LAST_UPDATED_BY               IN            NUMBER,
18                 X_LAST_UPDATE_LOGIN             IN            NUMBER,
19 		X_ATTRIBUTE_CATEGORY            IN            VARCHAR2, --3626177
20                 X_ATTRIBUTE1          		IN 	      VARCHAR2,
21   		X_ATTRIBUTE2          		IN 	      VARCHAR2,
22   		X_ATTRIBUTE3          		IN 	      VARCHAR2,
23   		X_ATTRIBUTE4          		IN 	      VARCHAR2,
24   		X_ATTRIBUTE5          		IN 	      VARCHAR2,
25   		X_ATTRIBUTE6          		IN 	      VARCHAR2,
26   		X_ATTRIBUTE7          		IN 	      VARCHAR2,
27   		X_ATTRIBUTE8          		IN 	      VARCHAR2,
28   		X_ATTRIBUTE9          		IN 	      VARCHAR2,
29   		X_ATTRIBUTE10         		IN 	      VARCHAR2,
30   		X_ATTRIBUTE11         		IN 	      VARCHAR2,
31   		X_ATTRIBUTE12         		IN 	      VARCHAR2,
32   		X_ATTRIBUTE13         		IN 	      VARCHAR2,
33   		X_ATTRIBUTE14         		IN 	      VARCHAR2,
34   		X_ATTRIBUTE15         		IN 	      VARCHAR2
35         ) is
36    cursor C is
37       select ROWID
38       from   PN_NOTE_HEADERS
39       where  NOTE_HEADER_ID = X_NOTE_HEADER_ID;
40 BEGIN
41 
42    IF (X_NOTE_HEADER_ID IS NULL) THEN
43       select PN_NOTE_HEADERS_S.nextval
44       into   X_NOTE_HEADER_ID
45       from   dual;
46    END IF;
47 
48    insert into PN_NOTE_HEADERS
49    (
50                 NOTE_HEADER_ID,
51                 NOTE_DATE,
52                 LAST_UPDATED_BY,
53                 LAST_UPDATE_DATE,
54                 LAST_UPDATE_LOGIN,
55                 CREATED_BY,
56                 CREATION_DATE,
57                 NOTE_TYPE_LOOKUP_CODE,
58                 LEASE_ID,
59 		ATTRIBUTE_CATEGORY, --3626177
60 		ATTRIBUTE1,
61 		ATTRIBUTE2,
62 		ATTRIBUTE3,
63 		ATTRIBUTE4,
64 		ATTRIBUTE5,
65 		ATTRIBUTE6,
66 		ATTRIBUTE7,
67 		ATTRIBUTE8,
68 		ATTRIBUTE9,
69 		ATTRIBUTE10,
70 		ATTRIBUTE11,
71 		ATTRIBUTE12,
72 		ATTRIBUTE13,
73 		ATTRIBUTE14,
74 		ATTRIBUTE15
75    )
76    values
77    (
78                 X_NOTE_HEADER_ID,
79                 X_NOTE_DATE,
80                 X_LAST_UPDATED_BY,
81                 X_LAST_UPDATE_DATE,
82                 X_LAST_UPDATE_LOGIN,
83                 X_CREATED_BY,
84                 X_CREATION_DATE,
85                 X_NOTE_TYPE_LOOKUP_CODE,
86                 X_LEASE_ID,
87 		X_ATTRIBUTE_CATEGORY, --3626177
88                 X_ATTRIBUTE1,
89     		X_ATTRIBUTE2,
90     		X_ATTRIBUTE3,
91     		X_ATTRIBUTE4,
92     		X_ATTRIBUTE5,
93     		X_ATTRIBUTE6,
94     		X_ATTRIBUTE7,
95     		X_ATTRIBUTE8,
96     		X_ATTRIBUTE9,
97     		X_ATTRIBUTE10,
98     		X_ATTRIBUTE11,
99     		X_ATTRIBUTE12,
100     		X_ATTRIBUTE13,
101     		X_ATTRIBUTE14,
102     		X_ATTRIBUTE15
103 
104    );
105 
106    open c;
107    fetch c into X_ROWID;
108    if (c%notfound) then
109       close c;
110       raise no_data_found;
111    end if;
112    close c;
113 
114 END INSERT_ROW;
115 
116 ------------------------------------------------------------------
117 -- PROCEDURE : LOCK_ROW
118 ------------------------------------------------------------------
119 PROCEDURE LOCK_ROW
120         (
121                 X_NOTE_HEADER_ID                in NUMBER,
122                 X_LEASE_ID                      in NUMBER,
123                 X_NOTE_DATE                     in DATE,
124                 X_NOTE_TYPE_LOOKUP_CODE         in VARCHAR2,
125 		X_ATTRIBUTE_CATEGORY            in VARCHAR2, --3626177
126                 X_ATTRIBUTE1          		in VARCHAR2,
127   		X_ATTRIBUTE2          		in VARCHAR2,
128   		X_ATTRIBUTE3          		in VARCHAR2,
129   		X_ATTRIBUTE4          		in VARCHAR2,
130   		X_ATTRIBUTE5          		in VARCHAR2,
131   		X_ATTRIBUTE6          		in VARCHAR2,
132   		X_ATTRIBUTE7          		in VARCHAR2,
133   		X_ATTRIBUTE8          		in VARCHAR2,
134   		X_ATTRIBUTE9          		in VARCHAR2,
135   		X_ATTRIBUTE10         		in VARCHAR2,
136   		X_ATTRIBUTE11         		in VARCHAR2,
137   		X_ATTRIBUTE12         		in VARCHAR2,
138   		X_ATTRIBUTE13         		in VARCHAR2,
139   		X_ATTRIBUTE14         		in VARCHAR2,
140   		X_ATTRIBUTE15         		in VARCHAR2
141         )
142 is
143    cursor c1 is
144       select *
145       from   PN_NOTE_HEADERS
146       where  NOTE_HEADER_ID = X_NOTE_HEADER_ID
147       for update of NOTE_HEADER_ID nowait;
148 
149    tlinfo c1%rowtype;
150 
151 BEGIN
152    open c1;
153    fetch c1 into tlinfo;
154    if (c1%notfound) then
155       close c1;
156       return;
157    end if;
158    close c1;
159    --3626177
160 
161    IF NOT (tlinfo.NOTE_HEADER_ID = X_NOTE_HEADER_ID) THEN
162         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('NOTE_HEADER_ID',tlinfo.NOTE_HEADER_ID);
163    END IF;
164 
165    IF NOT ((tlinfo.NOTE_TYPE_LOOKUP_CODE = X_NOTE_TYPE_LOOKUP_CODE)
166           OR ((tlinfo.NOTE_TYPE_LOOKUP_CODE is null) AND (X_NOTE_TYPE_LOOKUP_CODE is null))) THEN
167           PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('NOTE_TYPE_LOOKUP_CODE',tlinfo.NOTE_TYPE_LOOKUP_CODE);
168    END IF;
169 
170    IF NOT ((tlinfo.NOTE_DATE = X_NOTE_DATE)
171         OR ((tlinfo.NOTE_DATE is null) AND (X_NOTE_DATE is null))) THEN
172         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('NOTE_DATE',tlinfo.NOTE_DATE);
173    END IF;
174 
175    IF NOT ((tlinfo.LEASE_ID = X_LEASE_ID)
176         OR ((tlinfo.LEASE_ID is null) AND (X_LEASE_ID is null))) THEN
177         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('LEASE_ID',tlinfo.LEASE_ID);
178    END IF;
179 
180 
181    IF NOT ((tlinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
182         OR ((tlinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null))) THEN
183         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE_CATEGORY',tlinfo.ATTRIBUTE_CATEGORY);
184    END IF;
185 
186    IF NOT ((tlinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
187         OR ((tlinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null))) THEN
188         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE1',tlinfo.ATTRIBUTE1);
189    END IF;
190 
191    IF NOT ((tlinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
192         OR ((tlinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null))) THEN
193         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE2',tlinfo.ATTRIBUTE2);
194    END IF;
195 
196    IF NOT ((tlinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
197         OR ((tlinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null))) THEN
198         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE3',tlinfo.ATTRIBUTE3);
199    END IF;
200 
201    IF NOT ((tlinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
202         OR ((tlinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null))) THEN
203         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE4',tlinfo.ATTRIBUTE4);
204    END IF;
205 
206    IF NOT ((tlinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
207         OR ((tlinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null))) THEN
208         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE5',tlinfo.ATTRIBUTE5);
209    END IF;
210 
211    IF NOT ((tlinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
212         OR ((tlinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null))) THEN
213         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE6',tlinfo.ATTRIBUTE6);
214    END IF;
215 
216    IF NOT ((tlinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
217         OR ((tlinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null))) THEN
218         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE7',tlinfo.ATTRIBUTE7);
219    END IF;
220 
221    IF NOT ((tlinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
222         OR ((tlinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null))) THEN
223         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE8',tlinfo.ATTRIBUTE8);
224    END IF;
225 
226    IF NOT ((tlinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
227         OR ((tlinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null))) THEN
228         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE9',tlinfo.ATTRIBUTE9);
229    END IF;
230 
231    IF NOT ((tlinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
232         OR ((tlinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null))) THEN
233         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE10',tlinfo.ATTRIBUTE10);
234    END IF;
235 
236    IF NOT ((tlinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
237         OR ((tlinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null))) THEN
238         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE11',tlinfo.ATTRIBUTE11);
239    END IF;
240 
241 
242    IF NOT ((tlinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
243         OR ((tlinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null))) THEN
244         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE12',tlinfo.ATTRIBUTE12);
245    END IF;
246 
247    IF NOT ((tlinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
248         OR ((tlinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null))) THEN
249         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE13',tlinfo.ATTRIBUTE13);
250    END IF;
251 
252    IF NOT ((tlinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
253         OR ((tlinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null))) THEN
254         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE14',tlinfo.ATTRIBUTE14);
255    END IF;
256 
257 
258    IF NOT ((tlinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
259         OR ((tlinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null))) THEN
260         PN_VAR_RENT_PKG.LOCK_ROW_EXCEPTION('ATTRIBUTE15',tlinfo.ATTRIBUTE15);
261    END IF;
262 
263    RETURN;
264 END LOCK_ROW;
265 
266 ------------------------------------------------------------------
267 -- PROCEDURE : UPDATE_ROW
268 ------------------------------------------------------------------
269 procedure UPDATE_ROW
270         (
271                 X_NOTE_HEADER_ID                in NUMBER,
272                 X_LEASE_ID                      in NUMBER,
273                 X_NOTE_TYPE_LOOKUP_CODE         in VARCHAR2,
274                 X_NOTE_DATE                     in        DATE,
275                 X_LAST_UPDATE_DATE              in DATE,
276                 X_LAST_UPDATED_BY               in NUMBER,
277                 X_LAST_UPDATE_LOGIN             in NUMBER,
278 		X_ATTRIBUTE_CATEGORY            in VARCHAR2, --3626177
279                 X_ATTRIBUTE1          		in VARCHAR2,
280   		X_ATTRIBUTE2          		in VARCHAR2,
281   		X_ATTRIBUTE3          		in VARCHAR2,
282   		X_ATTRIBUTE4          		in VARCHAR2,
283   		X_ATTRIBUTE5          		in VARCHAR2,
284   		X_ATTRIBUTE6          		in VARCHAR2,
285   		X_ATTRIBUTE7          		in VARCHAR2,
286   		X_ATTRIBUTE8          		in VARCHAR2,
287   		X_ATTRIBUTE9          		in VARCHAR2,
288   		X_ATTRIBUTE10         		in VARCHAR2,
289   		X_ATTRIBUTE11         		in VARCHAR2,
290   		X_ATTRIBUTE12         		in VARCHAR2,
291   		X_ATTRIBUTE13         		in VARCHAR2,
292   		X_ATTRIBUTE14         		in VARCHAR2,
293   		X_ATTRIBUTE15         		in VARCHAR2
294         )
295 IS
296 BEGIN
297    update PN_NOTE_HEADERS
298       set LEASE_ID                        = X_LEASE_ID,
299           NOTE_DATE                       = X_NOTE_DATE,
300           NOTE_TYPE_LOOKUP_CODE           = X_NOTE_TYPE_LOOKUP_CODE,
301           LAST_UPDATE_DATE                = X_LAST_UPDATE_DATE,
302           LAST_UPDATED_BY                 = X_LAST_UPDATED_BY,
303           LAST_UPDATE_LOGIN               = X_LAST_UPDATE_LOGIN,
304 	  ATTRIBUTE_CATEGORY              = X_ATTRIBUTE_CATEGORY, --3626177
305           ATTRIBUTE1          		  = X_ATTRIBUTE1,
306       	  ATTRIBUTE2          		  = X_ATTRIBUTE2,
307       	  ATTRIBUTE3          		  = X_ATTRIBUTE3,
308       	  ATTRIBUTE4          		  = X_ATTRIBUTE4,
309       	  ATTRIBUTE5          		  = X_ATTRIBUTE5,
310       	  ATTRIBUTE6          		  = X_ATTRIBUTE6,
311       	  ATTRIBUTE7          		  = X_ATTRIBUTE7,
312       	  ATTRIBUTE8          		  = X_ATTRIBUTE8,
313       	  ATTRIBUTE9          		  = X_ATTRIBUTE9,
314       	  ATTRIBUTE10         		  = X_ATTRIBUTE10,
315       	  ATTRIBUTE11         		  = X_ATTRIBUTE11,
316       	  ATTRIBUTE12         		  = X_ATTRIBUTE12,
317       	  ATTRIBUTE13         		  = X_ATTRIBUTE13,
318       	  ATTRIBUTE14         		  = X_ATTRIBUTE14,
319 	  ATTRIBUTE15         		  = X_ATTRIBUTE15
320     where NOTE_HEADER_ID = X_NOTE_HEADER_ID;
321 
322    IF (SQL%NOTFOUND) THEN
323       RAISE NO_DATA_FOUND;
324    END IF;
325 
326 END UPDATE_ROW;
327 
328 ------------------------------------------------------------------
329 -- PROCEDURE : DELETE_ROW
330 ------------------------------------------------------------------
331 PROCEDURE DELETE_ROW
332         (
333                 X_NOTE_HEADER_ID in NUMBER
334         )
335 is
336    cursor c is
337       select note_detail_id
338       from   pn_note_details
339       where  note_header_id = X_NOTE_HEADER_ID
340       for update of note_detail_id nowait;
341 BEGIN
342    -- first we need to delete the note detail rows.
343    FOR i IN C LOOP
344       PN_NOTE_DETAILS_PKG.DELETE_ROW (X_NOTE_DETAIL_ID =>i.note_detail_id);
345    END LOOP;
346 
347    delete from PN_NOTE_HEADERS where NOTE_HEADER_ID = X_NOTE_HEADER_ID;
348 
349    if (sql%notfound) then
350       raise no_data_found;
351    end if;
352 
353 END DELETE_ROW;
354 
355 END PN_NOTE_HEADERS_PKG;