DBA Data[Home] [Help]

PACKAGE BODY: APPS.PN_LANDLORD_SERVICES_PKG

Source


1 PACKAGE BODY pn_landlord_services_pkg AS
2   -- $Header: PNTLNSRB.pls 120.2 2005/12/01 07:41:40 appldev ship $
3 -------------------------------------------------------------------------------
4 -- PROCDURE     : INSERT_ROW
5 -- INVOKED FROM : insert_row procedure
6 -- PURPOSE      : inserts the row
7 -- HISTORY      :
8 -- 05-JUL-05  sdmahesh o Bug 4284035 - Replaced pn_landlord_services with
9 --                       _ALL table.
10 -- 01-DEC-05  pikhar   o fetched org_id using cursor
11 -------------------------------------------------------------------------------
12 PROCEDURE Insert_Row (
13    X_ROWID                         IN OUT NOCOPY VARCHAR2,
14    X_LANDLORD_SERVICE_ID           IN OUT NOCOPY NUMBER,
15    X_LEASE_ID                      IN     NUMBER,
16    X_LEASE_CHANGE_ID               IN     NUMBER,
17    X_SERVICE_TYPE_LOOKUP_CODE      IN     VARCHAR2,
18    X_START_DATE                    IN     DATE,
19    X_END_DATE                      IN     DATE,
20    X_STATUS                        IN     VARCHAR2,
21    X_ATTRIBUTE_CATEGORY            IN     VARCHAR2,
22    X_ATTRIBUTE1                    IN     VARCHAR2,
23    X_ATTRIBUTE2                    IN     VARCHAR2,
24    X_ATTRIBUTE3                    IN     VARCHAR2,
25    X_ATTRIBUTE4                    IN     VARCHAR2,
26    X_ATTRIBUTE5                    IN     VARCHAR2,
27    X_ATTRIBUTE6                    IN     VARCHAR2,
28    X_ATTRIBUTE7                    IN     VARCHAR2,
29    X_ATTRIBUTE8                    IN     VARCHAR2,
30    X_ATTRIBUTE9                    IN     VARCHAR2,
31    X_ATTRIBUTE10                   IN     VARCHAR2,
32    X_ATTRIBUTE11                   IN     VARCHAR2,
33    X_ATTRIBUTE12                   IN     VARCHAR2,
34    X_ATTRIBUTE13                   IN     VARCHAR2,
35    X_ATTRIBUTE14                   IN     VARCHAR2,
36    X_ATTRIBUTE15                   IN     VARCHAR2,
37    X_CREATION_DATE                 IN     DATE,
38    X_CREATED_BY                    IN     NUMBER,
39    X_LAST_UPDATE_DATE              IN     DATE,
40    X_LAST_UPDATED_BY               IN     NUMBER,
41    X_LAST_UPDATE_LOGIN             IN     NUMBER,
42    X_OBLIGATION_NUM                IN OUT NOCOPY VARCHAR2,
43    X_RESPONSIBILITY_CODE           IN     VARCHAR2,
44    X_COMMON_AREA_RESP              IN     VARCHAR2,
45    X_FINANCIAL_RESP_PARTY_CODE     IN     VARCHAR2,
46    X_FINANCIAL_PCT_RESP            IN     VARCHAR2,
47    X_RESPONSIBILITY_MAINT          IN     VARCHAR2,
48    X_COMPANY_ID                    IN     NUMBER,
49    X_OBLIGATION_REFERENCE          IN     VARCHAR2,
50    X_OBLIGATION_COMMENTS           IN     VARCHAR2,
51    x_org_id                        IN     NUMBER
52 )
53 IS
54 
55    CURSOR c IS
56       SELECT ROWID
57       FROM   pn_landlord_services_all
58       WHERE  landlord_service_id = x_landlord_service_id;
59 
60    CURSOR org_cur IS
61      SELECT org_id
62      FROM pn_leases_all
63      WHERE lease_id = x_lease_id;
64 
65    l_org_id NUMBER;
66 
67 
68 BEGIN
69 
70    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Insert_Row (+)');
71 
72    IF x_org_id IS NULL THEN
73      FOR rec IN org_cur LOOP
74        l_org_id := rec.org_id;
75      END LOOP;
76    ELSE
77      l_org_id := x_org_id;
78    END IF;
79 
80 
81    /*-------------------------------------------------------
82    -- We need to generate the obligation number
83    -------------------------------------------------------*/
84    SELECT NVL(MAX(TO_NUMBER(pls.obligation_num)), 0)+1
85    INTO   x_obligation_num
86    FROM   pn_landlord_services_all  pls
87    WHERE  pls.lease_id = x_lease_id;
88 
89    /*-------------------------------------------------------
90    -- SELECT the nextval for landlord service id
91    -------------------------------------------------------*/
92    IF ( x_landlord_service_id IS NULL) THEN
93       SELECT pn_landlord_services_s.NEXTVAL
94       INTO   x_landlord_service_id
95       FROM   DUAL;
96    END IF;
97 
98    INSERT INTO pn_landlord_services_all
99    (
100       LANDLORD_SERVICE_ID,
101       LAST_UPDATE_DATE,
102       LAST_UPDATED_BY,
103       CREATION_DATE,
104       CREATED_BY,
105       LAST_UPDATE_LOGIN,
106       LEASE_ID,
107       LEASE_CHANGE_ID,
108       SERVICE_TYPE_LOOKUP_CODE,
109       START_DATE,
110       END_DATE,
111       STATUS,
112       ATTRIBUTE_CATEGORY,
113       ATTRIBUTE1,
114       ATTRIBUTE2,
115       ATTRIBUTE3,
116       ATTRIBUTE4,
117       ATTRIBUTE5,
118       ATTRIBUTE6,
119       ATTRIBUTE7,
120       ATTRIBUTE8,
121       ATTRIBUTE9,
122       ATTRIBUTE10,
123       ATTRIBUTE11,
124       ATTRIBUTE12,
125       ATTRIBUTE13,
126       ATTRIBUTE14,
127       ATTRIBUTE15,
128       OBLIGATION_NUM,
129       RESPONSIBILITY_CODE,
130       COMMON_AREA_RESP,
131       FINANCIAL_RESP_PARTY_CODE,
132       FINANCIAL_PCT_RESP,
133       RESPONSIBILITY_MAINT,
134       COMPANY_ID,
135       OBLIGATION_REFERENCE,
136       OBLIGATION_COMMENTS,
137       org_id
138    )
139    VALUES
140    (
141       X_LANDLORD_SERVICE_ID,
142       X_LAST_UPDATE_DATE,
143       X_LAST_UPDATED_BY,
144       X_CREATION_DATE,
145       X_CREATED_BY,
146       X_LAST_UPDATE_LOGIN,
147       X_LEASE_ID,
148       X_LEASE_CHANGE_ID,
149       X_SERVICE_TYPE_LOOKUP_CODE,
150       X_START_DATE,
151       X_END_DATE,
152       X_STATUS,
153       X_ATTRIBUTE_CATEGORY,
154       X_ATTRIBUTE1,
155       X_ATTRIBUTE2,
156       X_ATTRIBUTE3,
157       X_ATTRIBUTE4,
158       X_ATTRIBUTE5,
159       X_ATTRIBUTE6,
160       X_ATTRIBUTE7,
161       X_ATTRIBUTE8,
162       X_ATTRIBUTE9,
163       X_ATTRIBUTE10,
164       X_ATTRIBUTE11,
165       X_ATTRIBUTE12,
166       X_ATTRIBUTE13,
167       X_ATTRIBUTE14,
168       X_ATTRIBUTE15,
169       X_OBLIGATION_NUM,
170       X_RESPONSIBILITY_CODE,
171       X_COMMON_AREA_RESP,
172       X_FINANCIAL_RESP_PARTY_CODE,
173       X_FINANCIAL_PCT_RESP,
174       X_RESPONSIBILITY_MAINT,
175       X_COMPANY_ID,
176       X_OBLIGATION_REFERENCE,
177       X_OBLIGATION_COMMENTS,
178       l_org_id
179    );
180 
181    OPEN c;
182       FETCH c INTO X_ROWID;
183       IF (c%NOTFOUND) THEN
184          CLOSE c;
185          RAISE NO_DATA_FOUND;
186       END IF;
187    CLOSE c;
188 
189    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Insert_Row (-)');
190 
191 END Insert_Row;
192 
193 -------------------------------------------------------------------------------
194 -- PROCDURE     : Lock_Row
195 -- INVOKED FROM : Lock_Row procedure
196 -- PURPOSE      : locks the row
197 -- HISTORY      :
198 -- 05-JUL-05  sdmahesh o Bug 4284035 - Replaced pn_landlord_services with
199 --                       _ALL table.
200 -------------------------------------------------------------------------------
201 PROCEDURE Lock_Row
202 (
203    X_LANDLORD_SERVICE_ID           IN     NUMBER,
204    X_LEASE_ID                      IN     NUMBER,
205    X_LEASE_CHANGE_ID               IN     NUMBER,
206    X_SERVICE_TYPE_LOOKUP_CODE      IN     VARCHAR2,
207    X_START_DATE                    IN     DATE,
208    X_END_DATE                      IN     DATE,
209    X_STATUS                        IN     VARCHAR2,
210    X_ATTRIBUTE_CATEGORY            IN     VARCHAR2,
211    X_ATTRIBUTE1                    IN     VARCHAR2,
212    X_ATTRIBUTE2                    IN     VARCHAR2,
213    X_ATTRIBUTE3                    IN     VARCHAR2,
214    X_ATTRIBUTE4                    IN     VARCHAR2,
215    X_ATTRIBUTE5                    IN     VARCHAR2,
216    X_ATTRIBUTE6                    IN     VARCHAR2,
217    X_ATTRIBUTE7                    IN     VARCHAR2,
218    X_ATTRIBUTE8                    IN     VARCHAR2,
219    X_ATTRIBUTE9                    IN     VARCHAR2,
220    X_ATTRIBUTE10                   IN     VARCHAR2,
221    X_ATTRIBUTE11                   IN     VARCHAR2,
222    X_ATTRIBUTE12                   IN     VARCHAR2,
223    X_ATTRIBUTE13                   IN     VARCHAR2,
224    X_ATTRIBUTE14                   IN     VARCHAR2,
225    X_ATTRIBUTE15                   IN     VARCHAR2,
226    X_OBLIGATION_NUM                IN     VARCHAR2,
227    X_RESPONSIBILITY_CODE           IN     VARCHAR2,
228    X_COMMON_AREA_RESP              IN     VARCHAR2,
229    X_FINANCIAL_RESP_PARTY_CODE     IN     VARCHAR2,
230    X_FINANCIAL_PCT_RESP            IN     VARCHAR2,
231    X_RESPONSIBILITY_MAINT          IN     VARCHAR2,
232    X_COMPANY_ID                    IN     NUMBER,
233    X_OBLIGATION_REFERENCE          IN     VARCHAR2,
234    X_OBLIGATION_COMMENTS           IN     VARCHAR2
235 )
236 IS
237    CURSOR c1 IS
238       SELECT *
239       FROM   pn_landlord_services_all
240       WHERE  landlord_service_id = x_landlord_service_id
241       FOR UPDATE OF landlord_service_id NOWAIT;
242 
243    tlinfo c1%ROWTYPE;
244 
245 BEGIN
246 
247    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Lock_Row (+)');
248 
249    OPEN c1;
250       FETCH c1 INTO tlinfo;
251       IF (c1%NOTFOUND) THEN
252          CLOSE c1;
253          RETURN;
254       END IF;
255    CLOSE c1;
256 
257    IF NOT (tlinfo.LANDLORD_SERVICE_ID = X_LANDLORD_SERVICE_ID) THEN
258       pn_var_rent_pkg.lock_row_exception('LANDLORD_SERVICE_ID',tlinfo.LANDLORD_SERVICE_ID);
259    END IF;
260 
261    IF NOT (tlinfo.LEASE_ID = X_LEASE_ID) THEN
262       pn_var_rent_pkg.lock_row_exception('LEASE_ID',tlinfo.LEASE_ID);
263    END IF;
264 
265    IF NOT (tlinfo.LEASE_CHANGE_ID = X_LEASE_CHANGE_ID) THEN
266       pn_var_rent_pkg.lock_row_exception('LEASE_CHANGE_ID',tlinfo.LEASE_CHANGE_ID);
267    END IF;
268 
269    IF NOT (tlinfo.SERVICE_TYPE_LOOKUP_CODE = X_SERVICE_TYPE_LOOKUP_CODE) THEN
270       pn_var_rent_pkg.lock_row_exception('SERVICE_TYPE_LOOKUP_CODE',tlinfo.SERVICE_TYPE_LOOKUP_CODE);
271    END IF;
272 
273    IF NOT ((tlinfo.START_DATE = X_START_DATE)
274        OR ((tlinfo.START_DATE IS NULL) AND (X_START_DATE IS NULL))) THEN
275       pn_var_rent_pkg.lock_row_exception('START_DATE',tlinfo.START_DATE);
276    END IF;
277 
278    IF NOT ((tlinfo.END_DATE = X_END_DATE)
279        OR ((tlinfo.END_DATE IS NULL) AND (X_END_DATE IS NULL))) THEN
280       pn_var_rent_pkg.lock_row_exception('END_DATE',tlinfo.END_DATE);
281    END IF;
282 
283    IF NOT (tlinfo.STATUS = X_STATUS) THEN
284       pn_var_rent_pkg.lock_row_exception('STATUS',tlinfo.STATUS);
285    END IF;
286 
287    IF NOT ((tlinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
288        OR ((tlinfo.ATTRIBUTE_CATEGORY IS NULL) AND (X_ATTRIBUTE_CATEGORY IS NULL))) THEN
289       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE_CATEGORY',tlinfo.ATTRIBUTE_CATEGORY);
290    END IF;
291 
292    IF NOT ((tlinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
293        OR ((tlinfo.ATTRIBUTE1 IS NULL) AND (X_ATTRIBUTE1 IS NULL))) THEN
294       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE1',tlinfo.ATTRIBUTE1);
295    END IF;
296 
297    IF NOT ((tlinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
298        OR ((tlinfo.ATTRIBUTE2 IS NULL) AND (X_ATTRIBUTE2 IS NULL))) THEN
299       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE2',tlinfo.ATTRIBUTE2);
300    END IF;
301 
302    IF NOT ((tlinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
303        OR ((tlinfo.ATTRIBUTE3 IS NULL) AND (X_ATTRIBUTE3 IS NULL))) THEN
304       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE3',tlinfo.ATTRIBUTE3);
305    END IF;
306 
307    IF NOT ((tlinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
308        OR ((tlinfo.ATTRIBUTE4 IS NULL) AND (X_ATTRIBUTE4 IS NULL))) THEN
309       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE4',tlinfo.ATTRIBUTE4);
310    END IF;
311 
312    IF NOT ((tlinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
313        OR ((tlinfo.ATTRIBUTE5 IS NULL) AND (X_ATTRIBUTE5 IS NULL))) THEN
314       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE5',tlinfo.ATTRIBUTE5);
315    END IF;
316 
317    IF NOT ((tlinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
318        OR ((tlinfo.ATTRIBUTE6 IS NULL) AND (X_ATTRIBUTE6 IS NULL))) THEN
319       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE6',tlinfo.ATTRIBUTE6);
320    END IF;
321 
322    IF NOT ((tlinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
323        OR ((tlinfo.ATTRIBUTE7 IS NULL) AND (X_ATTRIBUTE7 IS NULL))) THEN
324       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE7',tlinfo.ATTRIBUTE7);
325    END IF;
326 
327    IF NOT ((tlinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
328        OR ((tlinfo.ATTRIBUTE8 IS NULL) AND (X_ATTRIBUTE8 IS NULL))) THEN
329       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE8',tlinfo.ATTRIBUTE8);
330    END IF;
331 
332    IF NOT ((tlinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
333        OR ((tlinfo.ATTRIBUTE9 IS NULL) AND (X_ATTRIBUTE9 IS NULL))) THEN
334       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE9',tlinfo.ATTRIBUTE9);
335    END IF;
336 
337    IF NOT ((tlinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
338        OR ((tlinfo.ATTRIBUTE10 IS NULL) AND (X_ATTRIBUTE10 IS NULL))) THEN
339       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE10',tlinfo.ATTRIBUTE10);
340    END IF;
341 
342    IF NOT ((tlinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
343        OR ((tlinfo.ATTRIBUTE11 IS NULL) AND (X_ATTRIBUTE11 IS NULL))) THEN
344       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE11',tlinfo.ATTRIBUTE11);
345    END IF;
346 
347    IF NOT ((tlinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
348        OR ((tlinfo.ATTRIBUTE12 IS NULL) AND (X_ATTRIBUTE12 IS NULL))) THEN
349       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE12',tlinfo.ATTRIBUTE12);
350    END IF;
351 
352    IF NOT ((tlinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
353        OR ((tlinfo.ATTRIBUTE13 IS NULL) AND (X_ATTRIBUTE13 IS NULL))) THEN
354       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE13',tlinfo.ATTRIBUTE13);
355    END IF;
356 
357    IF NOT ((tlinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
358        OR ((tlinfo.ATTRIBUTE14 IS NULL) AND (X_ATTRIBUTE14 IS NULL))) THEN
359       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE14',tlinfo.ATTRIBUTE14);
360    END IF;
361 
362    IF NOT ((tlinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
363        OR ((tlinfo.ATTRIBUTE15 IS NULL) AND (X_ATTRIBUTE15 IS NULL))) THEN
364       pn_var_rent_pkg.lock_row_exception('ATTRIBUTE15',tlinfo.ATTRIBUTE15);
365    END IF;
366 
367    IF NOT ((tlinfo.OBLIGATION_NUM = X_OBLIGATION_NUM)
368        OR ((tlinfo.OBLIGATION_NUM IS NULL) AND (X_OBLIGATION_NUM IS NULL))) THEN
369       pn_var_rent_pkg.lock_row_exception('OBLIGATION_NUM',tlinfo.OBLIGATION_NUM);
370    END IF;
371 
372    IF NOT ((tlinfo.RESPONSIBILITY_CODE = X_RESPONSIBILITY_CODE)
373        OR ((tlinfo.RESPONSIBILITY_CODE IS NULL) AND (X_RESPONSIBILITY_CODE IS NULL))) THEN
374       pn_var_rent_pkg.lock_row_exception('RESPONSIBILITY_CODE',tlinfo.RESPONSIBILITY_CODE);
375    END IF;
376 
377    IF NOT ((tlinfo.COMMON_AREA_RESP = X_COMMON_AREA_RESP)
378        OR ((tlinfo.COMMON_AREA_RESP IS NULL) AND (X_COMMON_AREA_RESP IS NULL))) THEN
379       pn_var_rent_pkg.lock_row_exception('COMMON_AREA_RESP',tlinfo.COMMON_AREA_RESP);
380    END IF;
381 
382    IF NOT ((tlinfo.FINANCIAL_RESP_PARTY_CODE = X_FINANCIAL_RESP_PARTY_CODE)
383        OR ((tlinfo.FINANCIAL_RESP_PARTY_CODE IS NULL) AND (X_FINANCIAL_RESP_PARTY_CODE IS NULL))) THEN
384       pn_var_rent_pkg.lock_row_exception('FINANCIAL_RESP_PARTY_CODE',tlinfo.FINANCIAL_RESP_PARTY_CODE);
385    END IF;
386 
387    IF NOT ((tlinfo.FINANCIAL_PCT_RESP = X_FINANCIAL_PCT_RESP)
388        OR ((tlinfo.FINANCIAL_PCT_RESP IS NULL) AND (X_FINANCIAL_PCT_RESP IS NULL))) THEN
389       pn_var_rent_pkg.lock_row_exception('FINANCIAL_PCT_RESP',tlinfo.FINANCIAL_PCT_RESP);
390    END IF;
391 
392    IF NOT ((tlinfo.RESPONSIBILITY_MAINT = X_RESPONSIBILITY_MAINT)
393        OR ((tlinfo.RESPONSIBILITY_MAINT IS NULL) AND (X_RESPONSIBILITY_MAINT IS NULL))) THEN
394       pn_var_rent_pkg.lock_row_exception('RESPONSIBILITY_MAINT',tlinfo.RESPONSIBILITY_MAINT);
395    END IF;
396 
397    IF NOT ((tlinfo.COMPANY_ID = X_COMPANY_ID)
398        OR ((tlinfo.COMPANY_ID IS NULL) AND (X_COMPANY_ID IS NULL))) THEN
402    IF NOT ((tlinfo.OBLIGATION_REFERENCE = X_OBLIGATION_REFERENCE)
399       pn_var_rent_pkg.lock_row_exception('COMPANY_ID',tlinfo.COMPANY_ID);
400    END IF;
401 
403        OR ((tlinfo.OBLIGATION_REFERENCE IS NULL) AND (X_OBLIGATION_REFERENCE IS NULL))) THEN
404       pn_var_rent_pkg.lock_row_exception('OBLIGATION_REFERENCE',tlinfo.OBLIGATION_REFERENCE);
405    END IF;
406 
407    IF NOT ((tlinfo.OBLIGATION_COMMENTS = X_OBLIGATION_COMMENTS)
408        OR ((tlinfo.OBLIGATION_COMMENTS IS NULL) AND (X_OBLIGATION_COMMENTS IS NULL))) THEN
409       pn_var_rent_pkg.lock_row_exception('OBLIGATION_COMMENTS',tlinfo.OBLIGATION_COMMENTS);
410    END IF;
411 
412    RETURN;
413 
414    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Lock_Row (-)');
415 
416 END Lock_Row;
417 
418 -------------------------------------------------------------------------------
419 -- PROCDURE     : Update_Row
420 -- INVOKED FROM : Update_Row procedure
421 -- PURPOSE      : updates the row
422 -- HISTORY      :
423 -- 05-JUL-05  sdmahesh o Bug 4284035 - Replaced pn_landlord_services with
424 --                       _ALL table.
425 -------------------------------------------------------------------------------
426 PROCEDURE Update_Row
427 (
428    X_LANDLORD_SERVICE_ID           IN     NUMBER,
429    X_LEASE_ID                      IN     NUMBER,
430    X_LEASE_CHANGE_ID               IN     NUMBER,
431    X_SERVICE_TYPE_LOOKUP_CODE      IN     VARCHAR2,
432    X_START_DATE                    IN     DATE,
433    X_END_DATE                      IN     DATE,
434    X_STATUS                        IN     VARCHAR2,
435    X_ATTRIBUTE_CATEGORY            IN     VARCHAR2,
436    X_ATTRIBUTE1                    IN     VARCHAR2,
437    X_ATTRIBUTE2                    IN     VARCHAR2,
438    X_ATTRIBUTE3                    IN     VARCHAR2,
439    X_ATTRIBUTE4                    IN     VARCHAR2,
440    X_ATTRIBUTE5                    IN     VARCHAR2,
441    X_ATTRIBUTE6                    IN     VARCHAR2,
442    X_ATTRIBUTE7                    IN     VARCHAR2,
443    X_ATTRIBUTE8                    IN     VARCHAR2,
444    X_ATTRIBUTE9                    IN     VARCHAR2,
445    X_ATTRIBUTE10                   IN     VARCHAR2,
446    X_ATTRIBUTE11                   IN     VARCHAR2,
447    X_ATTRIBUTE12                   IN     VARCHAR2,
448    X_ATTRIBUTE13                   IN     VARCHAR2,
449    X_ATTRIBUTE14                   IN     VARCHAR2,
450    X_ATTRIBUTE15                   IN     VARCHAR2,
451    X_LAST_UPDATE_DATE              IN     DATE,
452    X_LAST_UPDATED_BY               IN     NUMBER,
453    X_LAST_UPDATE_LOGIN             IN     NUMBER,
454    X_OBLIGATION_NUM                IN     VARCHAR2,
455    X_RESPONSIBILITY_CODE           IN     VARCHAR2,
456    X_COMMON_AREA_RESP              IN     VARCHAR2,
457    X_FINANCIAL_RESP_PARTY_CODE     IN     VARCHAR2,
458    X_FINANCIAL_PCT_RESP            IN     VARCHAR2,
459    X_RESPONSIBILITY_MAINT          IN     VARCHAR2,
460    X_COMPANY_ID                    IN     NUMBER,
461    X_OBLIGATION_REFERENCE          IN     VARCHAR2,
462    X_OBLIGATION_COMMENTS           IN     VARCHAR2
463 )
464 IS
465    CURSOR c2 IS
466       SELECT  *
467       FROM    pn_landlord_services_all
468       WHERE   landlord_service_id = x_landlord_service_id;
469 
470    recInfoForHist c2%ROWTYPE;
471 
472    l_llserviceHistoryId    NUMBER          := NULL;
473    l_leaseStatus           VARCHAR2(30)    := NULL;
474 
475 BEGIN
476 
477    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Update_Row (+)');
478    /*---------------------------------------------------------------
479    -- get the lease status
480    ---------------------------------------------------------------*/
481    l_leaseStatus := PNP_UTIL_FUNC.GET_LEASE_STATUS (X_LEASE_ID);
482 
483    /*---------------------------------------------------------------
484    -- We need to INSERT the history row IF the lease IS finalised
485    ---------------------------------------------------------------*/
486    IF (l_leaseStatus = 'F')  THEN
487 
488       OPEN c2;
489          FETCH c2 INTO recInfoForHist;
490          IF (c2%NOTFOUND) THEN
491             CLOSE c2;
492             RAISE NO_DATA_FOUND;
493          END IF;
494       CLOSE c2;
495 
496       IF (recInfoForHist.LEASE_CHANGE_ID <> X_LEASE_CHANGE_ID) THEN
497 
498          SELECT  PN_LANDLORD_SERVICE_HISTORY_S.NEXTVAL
499          INTO    l_llserviceHistoryId
500          FROM    DUAL;
501 
502          INSERT INTO PN_LANDLORD_SERVICE_HISTORY
503          (
504             LANDLORD_SERVICE_HISTORY_ID,
505             LANDLORD_SERVICE_ID,
506             LAST_UPDATE_DATE,
507             LAST_UPDATED_BY,
508             CREATION_DATE,
509             CREATED_BY,
510             LAST_UPDATE_LOGIN,
511             LEASE_ID,
512             LEASE_CHANGE_ID,
513             NEW_LEASE_CHANGE_ID,
514             SERVICE_TYPE_LOOKUP_CODE,
515             START_DATE,
516             END_DATE,
517             STATUS,
518             ATTRIBUTE_CATEGORY,
519             ATTRIBUTE1,
520             ATTRIBUTE2,
521             ATTRIBUTE3,
522             ATTRIBUTE4,
523             ATTRIBUTE5,
524             ATTRIBUTE6,
525             ATTRIBUTE7,
526             ATTRIBUTE8,
527             ATTRIBUTE9,
528             ATTRIBUTE10,
529             ATTRIBUTE11,
530             ATTRIBUTE12,
534             OBLIGATION_NUM,
531             ATTRIBUTE13,
532             ATTRIBUTE14,
533             ATTRIBUTE15,
535             RESPONSIBILITY_CODE,
536             COMMON_AREA_RESP,
537             FINANCIAL_RESP_PARTY_CODE,
538             FINANCIAL_PCT_RESP,
539             RESPONSIBILITY_MAINT,
540             COMPANY_ID,
541             OBLIGATION_REFERENCE,
542             OBLIGATION_COMMENTS
543          )
544          VALUES
545          (
546             l_llserviceHistoryId,
547             recInfoForHist.LANDLORD_SERVICE_ID,
548             recInfoForHist.LAST_UPDATE_DATE,
549             recInfoForHist.LAST_UPDATED_BY,
550             recInfoForHist.CREATION_DATE,
551             recInfoForHist.CREATED_BY,
552             recInfoForHist.LAST_UPDATE_LOGIN,
553             recInfoForHist.LEASE_ID,
554             recInfoForHist.LEASE_CHANGE_ID,
555             X_LEASE_CHANGE_ID,
556             recInfoForHist.SERVICE_TYPE_LOOKUP_CODE,
557             recInfoForHist.START_DATE,
558             recInfoForHist.END_DATE,
559             recInfoForHist.STATUS,
560             recInfoForHist.ATTRIBUTE_CATEGORY,
561             recInfoForHist.ATTRIBUTE1,
562             recInfoForHist.ATTRIBUTE2,
563             recInfoForHist.ATTRIBUTE3,
564             recInfoForHist.ATTRIBUTE4,
565             recInfoForHist.ATTRIBUTE5,
566             recInfoForHist.ATTRIBUTE6,
567             recInfoForHist.ATTRIBUTE7,
568             recInfoForHist.ATTRIBUTE8,
569             recInfoForHist.ATTRIBUTE9,
570             recInfoForHist.ATTRIBUTE10,
571             recInfoForHist.ATTRIBUTE11,
572             recInfoForHist.ATTRIBUTE12,
573             recInfoForHist.ATTRIBUTE13,
574             recInfoForHist.ATTRIBUTE14,
575             recInfoForHist.ATTRIBUTE15,
576             recInfoForHist.OBLIGATION_NUM,
577             recInfoForHist.RESPONSIBILITY_CODE,
578             recInfoForHist.COMMON_AREA_RESP,
579             recInfoForHist.FINANCIAL_RESP_PARTY_CODE,
580             recInfoForHist.FINANCIAL_PCT_RESP,
581             recInfoForHist.RESPONSIBILITY_MAINT,
582             recInfoForHist.COMPANY_ID,
583             recInfoForHist.OBLIGATION_REFERENCE,
584             recInfoForHist.OBLIGATION_COMMENTS
585          );
586 
587       END IF;
588    END IF;
589 
590    UPDATE PN_LANDLORD_SERVICES_ALL
591    SET    LEASE_ID                        = X_LEASE_ID,
592           LEASE_CHANGE_ID                 = X_LEASE_CHANGE_ID,
593           SERVICE_TYPE_LOOKUP_CODE        = X_SERVICE_TYPE_LOOKUP_CODE,
594           START_DATE                      = X_START_DATE,
595           END_DATE                        = X_END_DATE,
596           STATUS                          = X_STATUS,
597           ATTRIBUTE_CATEGORY              = X_ATTRIBUTE_CATEGORY,
598           ATTRIBUTE1                      = X_ATTRIBUTE1,
599           ATTRIBUTE2                      = X_ATTRIBUTE2,
600           ATTRIBUTE3                      = X_ATTRIBUTE3,
601           ATTRIBUTE4                      = X_ATTRIBUTE4,
602           ATTRIBUTE5                      = X_ATTRIBUTE5,
603           ATTRIBUTE6                      = X_ATTRIBUTE6,
604           ATTRIBUTE7                      = X_ATTRIBUTE7,
605           ATTRIBUTE8                      = X_ATTRIBUTE8,
606           ATTRIBUTE9                      = X_ATTRIBUTE9,
607           ATTRIBUTE10                     = X_ATTRIBUTE10,
608           ATTRIBUTE11                     = X_ATTRIBUTE11,
609           ATTRIBUTE12                     = X_ATTRIBUTE12,
610           ATTRIBUTE13                     = X_ATTRIBUTE13,
611           ATTRIBUTE14                     = X_ATTRIBUTE14,
612           ATTRIBUTE15                     = X_ATTRIBUTE15,
613           LANDLORD_SERVICE_ID             = X_LANDLORD_SERVICE_ID,
614           LAST_UPDATE_DATE                = X_LAST_UPDATE_DATE,
615           LAST_UPDATED_BY                 = X_LAST_UPDATED_BY,
616           LAST_UPDATE_LOGIN               = X_LAST_UPDATE_LOGIN,
617           OBLIGATION_NUM                  = X_OBLIGATION_NUM,
618           RESPONSIBILITY_CODE             = X_RESPONSIBILITY_CODE,
619           COMMON_AREA_RESP                = X_COMMON_AREA_RESP,
620           FINANCIAL_RESP_PARTY_CODE       = X_FINANCIAL_RESP_PARTY_CODE,
621           FINANCIAL_PCT_RESP              = X_FINANCIAL_PCT_RESP,
622           RESPONSIBILITY_MAINT            = X_RESPONSIBILITY_MAINT,
623           COMPANY_ID                      = X_COMPANY_ID,
624           OBLIGATION_REFERENCE            = X_OBLIGATION_REFERENCE,
625           OBLIGATION_COMMENTS             = X_OBLIGATION_COMMENTS
626    WHERE  LANDLORD_SERVICE_ID             = X_LANDLORD_SERVICE_ID;
627 
628    IF (SQL%NOTFOUND) THEN
629       RAISE NO_DATA_FOUND;
630    END IF;
631 
632    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Update_Row (-)');
633 
634 END Update_Row;
635 
636 -------------------------------------------------------------------------------
637 -- PROCDURE     : Delete_Row
638 -- INVOKED FROM : Delete_Row procedure
639 -- PURPOSE      : deletes the row
640 -- HISTORY      :
641 -- 05-JUL-05  sdmahesh o Bug 4284035 - Replaced pn_landlord_services with
642 --                       _ALL table.
643 -------------------------------------------------------------------------------
644 PROCEDURE Delete_Row
645 (
646    X_LANDLORD_SERVICE_ID   IN     NUMBER
647 )
648 IS
649 BEGIN
650 
651    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Delete_Row (+)');
652 
653    DELETE FROM pn_landlord_services_all
654    WHERE  landlord_service_id = x_landlord_service_id;
655 
656    IF (SQL%NOTFOUND) THEN
657       RAISE NO_DATA_FOUND;
658    END IF;
659 
660    pnp_debug_pkg.debug ('PN_LANDLORD_SERVICES_PKG.Delete_Row (-)');
661 
662 END Delete_Row;
663 
664 END pn_landlord_services_pkg;