DBA Data[Home] [Help]

PACKAGE BODY: APPS.PSP_DISTRIBUTION_INTERFACE_PKG

Source


1 package body PSP_DISTRIBUTION_INTERFACE_PKG as
2 -- $Header: PSPPIPGB.pls 115.7 2003/07/24 16:56:15 spchakra ship $
3 procedure INSERT_ROW (
4   X_ROWID in out NOCOPY VARCHAR2,
5   X_DISTRIBUTION_INTERFACE_ID in NUMBER,
6   X_BATCH_NAME in VARCHAR2,
7   X_PERSON_ID in NUMBER,
8   X_ASSIGNMENT_ID in NUMBER,
9   X_ELEMENT_TYPE_ID in NUMBER,
10   X_DISTRIBUTION_DATE in DATE,
11   X_DISTRIBUTION_AMOUNT in NUMBER,
12   X_PAYROLL_ID in NUMBER,
13   X_TIME_PERIOD_ID in NUMBER,
14   X_DR_CR_FLAG in VARCHAR2,
15   X_SOURCE_CODE in VARCHAR2,
16   X_GL_CODE_COMBINATION_ID in NUMBER,
17   X_PROJECT_ID in NUMBER,
18   X_EXPENDITURE_ORGANIZATION_ID in NUMBER,
19   X_EXPENDITURE_TYPE in VARCHAR2,
20   X_TASK_ID in NUMBER,
21   X_AWARD_ID in NUMBER,
22   X_STATUS_CODE in VARCHAR2,
23   X_ERROR_CODE in VARCHAR2,
24   X_ATTRIBUTE_CATEGORY in VARCHAR2,
25   X_ATTRIBUTE1 in VARCHAR2,
26   X_ATTRIBUTE2 in VARCHAR2,
27   X_ATTRIBUTE3 in VARCHAR2,
28   X_ATTRIBUTE4 in VARCHAR2,
29   X_ATTRIBUTE5 in VARCHAR2,
30   X_ATTRIBUTE6 in VARCHAR2,
31   X_ATTRIBUTE7 in VARCHAR2,
32   X_ATTRIBUTE8 in VARCHAR2,
33   X_ATTRIBUTE9 in VARCHAR2,
34   X_ATTRIBUTE10 in VARCHAR2,
35   X_ATTRIBUTE11 in VARCHAR2,
36   X_ATTRIBUTE12 in VARCHAR2,
37   X_ATTRIBUTE13 in VARCHAR2,
38   X_ATTRIBUTE14 in VARCHAR2,
39   X_ATTRIBUTE15 in VARCHAR2,
40   X_MODE in VARCHAR2 default 'R',
41   X_GL_POSTING_OVERRIDE_DATE in DATE,
42   X_GMS_POSTING_OVERRIDE_DATE in DATE,
43   X_BUSINESS_GROUP_ID IN NUMBER,
44   X_SET_OF_BOOKS_ID IN NUMBER,
45   X_CURRENCY_CODE IN VARCHAR2		-- Introduced for bug fix 2916848
46   ) is
47     cursor C is select ROWID from PSP_DISTRIBUTION_INTERFACE
48       where DISTRIBUTION_INTERFACE_ID = X_DISTRIBUTION_INTERFACE_ID
49       and BATCH_NAME = X_BATCH_NAME
50       and business_group_id = x_business_group_id
51       and set_of_books_id   = x_set_of_books_id;
52     X_LAST_UPDATE_DATE DATE;
53     X_LAST_UPDATED_BY NUMBER;
54     X_LAST_UPDATE_LOGIN NUMBER;
55 begin
56   X_LAST_UPDATE_DATE := SYSDATE;
57   if(X_MODE = 'I') then
58     X_LAST_UPDATED_BY := 1;
59     X_LAST_UPDATE_LOGIN := 0;
60   elsif (X_MODE = 'R') then
61     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
62     if X_LAST_UPDATED_BY is NULL then
63       X_LAST_UPDATED_BY := -1;
64     end if;
65     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
66     if X_LAST_UPDATE_LOGIN is NULL then
67       X_LAST_UPDATE_LOGIN := -1;
68     end if;
69   else
70     FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
71     app_exception.raise_exception;
72   end if;
73   insert into PSP_DISTRIBUTION_INTERFACE (
74     DISTRIBUTION_INTERFACE_ID,
75     PERSON_ID,
76     ASSIGNMENT_ID,
77     ELEMENT_TYPE_ID,
78     DISTRIBUTION_DATE,
79     DISTRIBUTION_AMOUNT,
80     PAYROLL_ID,
81     TIME_PERIOD_ID,
82     DR_CR_FLAG,
83     SOURCE_CODE,
84     GL_CODE_COMBINATION_ID,
85     PROJECT_ID,
86     EXPENDITURE_ORGANIZATION_ID,
87     EXPENDITURE_TYPE,
88     TASK_ID,
89     AWARD_ID,
90     STATUS_CODE,
91     BATCH_NAME,
92     ERROR_CODE,
93     ATTRIBUTE_CATEGORY,
94     ATTRIBUTE1,
95     ATTRIBUTE2,
96     ATTRIBUTE3,
97     ATTRIBUTE4,
98     ATTRIBUTE5,
99     ATTRIBUTE6,
100     ATTRIBUTE7,
101     ATTRIBUTE8,
102     ATTRIBUTE9,
103     ATTRIBUTE10,
104     ATTRIBUTE11,
105     ATTRIBUTE12,
106     ATTRIBUTE13,
107     ATTRIBUTE14,
108     ATTRIBUTE15,
109     CREATION_DATE,
110     CREATED_BY,
111     LAST_UPDATE_DATE,
112     LAST_UPDATED_BY,
113     LAST_UPDATE_LOGIN,
114     GL_POSTING_OVERRIDE_DATE,
115     GMS_POSTING_OVERRIDE_DATE,
116     business_group_id,
117     set_of_books_id,
118     currency_code		-- Introduced for bug fix 2916848
119   ) values (
120     X_DISTRIBUTION_INTERFACE_ID,
121     X_PERSON_ID,
122     X_ASSIGNMENT_ID,
123     X_ELEMENT_TYPE_ID,
124     X_DISTRIBUTION_DATE,
125     X_DISTRIBUTION_AMOUNT,
126     X_PAYROLL_ID,
127     X_TIME_PERIOD_ID,
128     X_DR_CR_FLAG,
129     X_SOURCE_CODE,
130     X_GL_CODE_COMBINATION_ID,
131     X_PROJECT_ID,
132     X_EXPENDITURE_ORGANIZATION_ID,
133     X_EXPENDITURE_TYPE,
134     X_TASK_ID,
135     X_AWARD_ID,
136     X_STATUS_CODE,
137     X_BATCH_NAME,
138     X_ERROR_CODE,
139     X_ATTRIBUTE_CATEGORY,
140     X_ATTRIBUTE1,
141     X_ATTRIBUTE2,
142     X_ATTRIBUTE3,
143     X_ATTRIBUTE4,
144     X_ATTRIBUTE5,
145     X_ATTRIBUTE6,
146     X_ATTRIBUTE7,
147     X_ATTRIBUTE8,
148     X_ATTRIBUTE9,
149     X_ATTRIBUTE10,
150     X_ATTRIBUTE11,
151     X_ATTRIBUTE12,
152     X_ATTRIBUTE13,
153     X_ATTRIBUTE14,
154     X_ATTRIBUTE15,
155     X_LAST_UPDATE_DATE,
156     X_LAST_UPDATED_BY,
157     X_LAST_UPDATE_DATE,
158     X_LAST_UPDATED_BY,
159     X_LAST_UPDATE_LOGIN,
160     X_GL_POSTING_OVERRIDE_DATE,
161     X_GMS_POSTING_OVERRIDE_DATE,
162     x_business_group_id,
163     x_set_of_books_id,
164     X_CURRENCY_CODE		-- Introduced for bug fix 2916848
165   );
166 
167   open c;
168   fetch c into X_ROWID;
169   if (c%notfound) then
170     close c;
171     raise no_data_found;
172   end if;
173   close c;
174 
175 end INSERT_ROW;
176 
177 procedure LOCK_ROW (
178   X_DISTRIBUTION_INTERFACE_ID in NUMBER,
179   X_BATCH_NAME in VARCHAR2,
180   X_PERSON_ID in NUMBER,
181   X_ASSIGNMENT_ID in NUMBER,
182   X_ELEMENT_TYPE_ID in NUMBER,
183   X_DISTRIBUTION_DATE in DATE,
184   X_DISTRIBUTION_AMOUNT in NUMBER,
185   X_PAYROLL_ID in NUMBER,
186   X_TIME_PERIOD_ID in NUMBER,
187   X_DR_CR_FLAG in VARCHAR2,
188   X_SOURCE_CODE in VARCHAR2,
189   X_GL_CODE_COMBINATION_ID in NUMBER,
190   X_PROJECT_ID in NUMBER,
191   X_EXPENDITURE_ORGANIZATION_ID in NUMBER,
192   X_EXPENDITURE_TYPE in VARCHAR2,
193   X_TASK_ID in NUMBER,
194   X_AWARD_ID in NUMBER,
195   X_STATUS_CODE in VARCHAR2,
196   X_ERROR_CODE in VARCHAR2,
197   X_ATTRIBUTE_CATEGORY in VARCHAR2,
198   X_ATTRIBUTE1 in VARCHAR2,
199   X_ATTRIBUTE2 in VARCHAR2,
200   X_ATTRIBUTE3 in VARCHAR2,
201   X_ATTRIBUTE4 in VARCHAR2,
202   X_ATTRIBUTE5 in VARCHAR2,
203   X_ATTRIBUTE6 in VARCHAR2,
204   X_ATTRIBUTE7 in VARCHAR2,
205   X_ATTRIBUTE8 in VARCHAR2,
206   X_ATTRIBUTE9 in VARCHAR2,
207   X_ATTRIBUTE10 in VARCHAR2,
208   X_ATTRIBUTE11 in VARCHAR2,
209   X_ATTRIBUTE12 in VARCHAR2,
210   X_ATTRIBUTE13 in VARCHAR2,
211   X_ATTRIBUTE14 in VARCHAR2,
212   X_ATTRIBUTE15 in VARCHAR2,
213   X_GL_POSTING_OVERRIDE_DATE in DATE,
214   X_GMS_POSTING_OVERRIDE_DATE in DATE,
215   X_BUSINESS_GROUP_ID IN NUMBER,
216   X_SET_OF_BOOKS_ID IN NUMBER,
217   X_CURRENCY_CODE IN VARCHAR2		-- Introduced for bug fix 2916848
218 ) is
219   cursor c1 is select
220       PERSON_ID,
221       ASSIGNMENT_ID,
222       ELEMENT_TYPE_ID,
223       DISTRIBUTION_DATE,
224       DISTRIBUTION_AMOUNT,
225       PAYROLL_ID,
226       TIME_PERIOD_ID,
227       DR_CR_FLAG,
228       SOURCE_CODE,
229       GL_CODE_COMBINATION_ID,
230       PROJECT_ID,
231       EXPENDITURE_ORGANIZATION_ID,
232       EXPENDITURE_TYPE,
233       TASK_ID,
234       AWARD_ID,
235       STATUS_CODE,
236       ERROR_CODE,
237       ATTRIBUTE_CATEGORY,
238       ATTRIBUTE1,
239       ATTRIBUTE2,
240       ATTRIBUTE3,
241       ATTRIBUTE4,
242       ATTRIBUTE5,
243       ATTRIBUTE6,
244       ATTRIBUTE7,
245       ATTRIBUTE8,
246       ATTRIBUTE9,
247       ATTRIBUTE10,
248       ATTRIBUTE11,
249       ATTRIBUTE12,
250       ATTRIBUTE13,
251       ATTRIBUTE14,
252       ATTRIBUTE15,
253       GL_POSTING_OVERRIDE_DATE,
254       GMS_POSTING_OVERRIDE_DATE,
255       business_group_id,
256       set_of_books_id,
257     currency_code	-- Introduced for bug fix 2916848
258     from PSP_DISTRIBUTION_INTERFACE
259     where DISTRIBUTION_INTERFACE_ID = X_DISTRIBUTION_INTERFACE_ID
260     and BATCH_NAME = X_BATCH_NAME
261     and business_group_id = x_business_group_id
262     and set_of_books_id   = x_set_of_books_id
263     for update of DISTRIBUTION_INTERFACE_ID nowait;
264   tlinfo c1%rowtype;
265 
266 begin
267   open c1;
268   fetch c1 into tlinfo;
269   if (c1%notfound) then
270     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
271     app_exception.raise_exception;
272     close c1;
273     return;
274   end if;
275   close c1;
276 
277   if ( (tlinfo.PERSON_ID = X_PERSON_ID)
278       AND (tlinfo.ASSIGNMENT_ID = X_ASSIGNMENT_ID)
279       AND (tlinfo.ELEMENT_TYPE_ID = X_ELEMENT_TYPE_ID)
280       AND (tlinfo.DISTRIBUTION_DATE = X_DISTRIBUTION_DATE)
281       AND (tlinfo.DISTRIBUTION_AMOUNT = X_DISTRIBUTION_AMOUNT)
282       AND (tlinfo.PAYROLL_ID = X_PAYROLL_ID)
283       AND (tlinfo.TIME_PERIOD_ID = X_TIME_PERIOD_ID)
284       AND (tlinfo.DR_CR_FLAG = X_DR_CR_FLAG)
285       AND (tlinfo.SOURCE_CODE = X_SOURCE_CODE)
286       AND ((tlinfo.GL_CODE_COMBINATION_ID = X_GL_CODE_COMBINATION_ID)
287            OR ((tlinfo.GL_CODE_COMBINATION_ID is null)
288                AND (X_GL_CODE_COMBINATION_ID is null)))
289       AND ((tlinfo.PROJECT_ID = X_PROJECT_ID)
290            OR ((tlinfo.PROJECT_ID is null)
291                AND (X_PROJECT_ID is null)))
292       AND ((tlinfo.EXPENDITURE_ORGANIZATION_ID = X_EXPENDITURE_ORGANIZATION_ID)
293            OR ((tlinfo.EXPENDITURE_ORGANIZATION_ID is null)
294                AND (X_EXPENDITURE_ORGANIZATION_ID is null)))
295       AND ((tlinfo.EXPENDITURE_TYPE = X_EXPENDITURE_TYPE)
296            OR ((tlinfo.EXPENDITURE_TYPE is null)
297                AND (X_EXPENDITURE_TYPE is null)))
298       AND ((tlinfo.TASK_ID = X_TASK_ID)
299            OR ((tlinfo.TASK_ID is null)
300                AND (X_TASK_ID is null)))
301       AND ((tlinfo.AWARD_ID = X_AWARD_ID)
302            OR ((tlinfo.AWARD_ID is null)
303                AND (X_AWARD_ID is null)))
304       AND (tlinfo.STATUS_CODE = X_STATUS_CODE)
305       AND ((tlinfo.ERROR_CODE = X_ERROR_CODE)
306            OR ((tlinfo.ERROR_CODE is null)
307                AND (X_ERROR_CODE is null)))
308       AND ((tlinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
309            OR ((tlinfo.ATTRIBUTE_CATEGORY is null)
310                AND (X_ATTRIBUTE_CATEGORY is null)))
311       AND ((tlinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
312            OR ((tlinfo.ATTRIBUTE1 is null)
313                AND (X_ATTRIBUTE1 is null)))
314       AND ((tlinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
315            OR ((tlinfo.ATTRIBUTE2 is null)
316                AND (X_ATTRIBUTE2 is null)))
317       AND ((tlinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
318            OR ((tlinfo.ATTRIBUTE3 is null)
319                AND (X_ATTRIBUTE3 is null)))
320       AND ((tlinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
321            OR ((tlinfo.ATTRIBUTE4 is null)
322                AND (X_ATTRIBUTE4 is null)))
323       AND ((tlinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
324            OR ((tlinfo.ATTRIBUTE5 is null)
325                AND (X_ATTRIBUTE5 is null)))
326       AND ((tlinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
327            OR ((tlinfo.ATTRIBUTE6 is null)
328                AND (X_ATTRIBUTE6 is null)))
329       AND ((tlinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
330            OR ((tlinfo.ATTRIBUTE7 is null)
331                AND (X_ATTRIBUTE7 is null)))
332       AND ((tlinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
333            OR ((tlinfo.ATTRIBUTE8 is null)
334                AND (X_ATTRIBUTE8 is null)))
335       AND ((tlinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
336            OR ((tlinfo.ATTRIBUTE9 is null)
337                AND (X_ATTRIBUTE9 is null)))
338       AND ((tlinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
339            OR ((tlinfo.ATTRIBUTE10 is null)
340                AND (X_ATTRIBUTE10 is null)))
341       AND ((tlinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
342            OR ((tlinfo.ATTRIBUTE11 is null)
343                AND (X_ATTRIBUTE11 is null)))
344       AND ((tlinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
345            OR ((tlinfo.ATTRIBUTE12 is null)
346                AND (X_ATTRIBUTE12 is null)))
347       AND ((tlinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
348            OR ((tlinfo.ATTRIBUTE13 is null)
349                AND (X_ATTRIBUTE13 is null)))
350       AND ((tlinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
351            OR ((tlinfo.ATTRIBUTE14 is null)
352                AND (X_ATTRIBUTE14 is null)))
353       AND ((tlinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
354            OR ((tlinfo.ATTRIBUTE15 is null)
355                AND (X_ATTRIBUTE15 is null)))
356   ) then
357     null;
358   else
359     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
360     app_exception.raise_exception;
361   end if;
362   return;
363 end LOCK_ROW;
364 
365 procedure UPDATE_ROW (
366   X_DISTRIBUTION_INTERFACE_ID in NUMBER,
367   X_BATCH_NAME in VARCHAR2,
368   X_PERSON_ID in NUMBER,
369   X_ASSIGNMENT_ID in NUMBER,
370   X_ELEMENT_TYPE_ID in NUMBER,
371   X_DISTRIBUTION_DATE in DATE,
372   X_DISTRIBUTION_AMOUNT in NUMBER,
373   X_PAYROLL_ID in NUMBER,
374   X_TIME_PERIOD_ID in NUMBER,
375   X_DR_CR_FLAG in VARCHAR2,
376   X_SOURCE_CODE in VARCHAR2,
377   X_GL_CODE_COMBINATION_ID in NUMBER,
378   X_PROJECT_ID in NUMBER,
379   X_EXPENDITURE_ORGANIZATION_ID in NUMBER,
380   X_EXPENDITURE_TYPE in VARCHAR2,
381   X_TASK_ID in NUMBER,
382   X_AWARD_ID in NUMBER,
383   X_STATUS_CODE in VARCHAR2,
384   X_ERROR_CODE in VARCHAR2,
385   X_ATTRIBUTE_CATEGORY in VARCHAR2,
386   X_ATTRIBUTE1 in VARCHAR2,
387   X_ATTRIBUTE2 in VARCHAR2,
388   X_ATTRIBUTE3 in VARCHAR2,
389   X_ATTRIBUTE4 in VARCHAR2,
390   X_ATTRIBUTE5 in VARCHAR2,
391   X_ATTRIBUTE6 in VARCHAR2,
392   X_ATTRIBUTE7 in VARCHAR2,
393   X_ATTRIBUTE8 in VARCHAR2,
394   X_ATTRIBUTE9 in VARCHAR2,
395   X_ATTRIBUTE10 in VARCHAR2,
396   X_ATTRIBUTE11 in VARCHAR2,
397   X_ATTRIBUTE12 in VARCHAR2,
398   X_ATTRIBUTE13 in VARCHAR2,
399   X_ATTRIBUTE14 in VARCHAR2,
400   X_ATTRIBUTE15 in VARCHAR2,
401   X_MODE in VARCHAR2 default 'R',
402   X_GL_POSTING_OVERRIDE_DATE in DATE,
403   X_GMS_POSTING_OVERRIDE_DATE in DATE,
404   X_BUSINESS_GROUP_ID IN NUMBER,
405   X_SET_OF_BOOKS_ID IN NUMBER,
406   X_CURRENCY_CODE IN VARCHAR2		-- Introduced for bug fix 2916848
407   ) is
408     X_LAST_UPDATE_DATE DATE;
409     X_LAST_UPDATED_BY NUMBER;
410     X_LAST_UPDATE_LOGIN NUMBER;
411 begin
412   X_LAST_UPDATE_DATE := SYSDATE;
413   if(X_MODE = 'I') then
414     X_LAST_UPDATED_BY := 1;
415     X_LAST_UPDATE_LOGIN := 0;
416   elsif (X_MODE = 'R') then
417     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
418     if X_LAST_UPDATED_BY is NULL then
419       X_LAST_UPDATED_BY := -1;
420     end if;
421     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
422     if X_LAST_UPDATE_LOGIN is NULL then
423       X_LAST_UPDATE_LOGIN := -1;
424     end if;
425   else
426     FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
427     app_exception.raise_exception;
428   end if;
429   update PSP_DISTRIBUTION_INTERFACE set
430     PERSON_ID = X_PERSON_ID,
431     ASSIGNMENT_ID = X_ASSIGNMENT_ID,
432     ELEMENT_TYPE_ID = X_ELEMENT_TYPE_ID,
433     DISTRIBUTION_DATE = X_DISTRIBUTION_DATE,
434     DISTRIBUTION_AMOUNT = X_DISTRIBUTION_AMOUNT,
435     PAYROLL_ID = X_PAYROLL_ID,
436     TIME_PERIOD_ID = X_TIME_PERIOD_ID,
437     DR_CR_FLAG = X_DR_CR_FLAG,
438     SOURCE_CODE = X_SOURCE_CODE,
439     GL_CODE_COMBINATION_ID = X_GL_CODE_COMBINATION_ID,
440     PROJECT_ID = X_PROJECT_ID,
441     EXPENDITURE_ORGANIZATION_ID = X_EXPENDITURE_ORGANIZATION_ID,
442     EXPENDITURE_TYPE = X_EXPENDITURE_TYPE,
446     ERROR_CODE = X_ERROR_CODE,
443     TASK_ID = X_TASK_ID,
444     AWARD_ID = X_AWARD_ID,
445     STATUS_CODE = X_STATUS_CODE,
447     ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
448     ATTRIBUTE1 = X_ATTRIBUTE1,
449     ATTRIBUTE2 = X_ATTRIBUTE2,
450     ATTRIBUTE3 = X_ATTRIBUTE3,
451     ATTRIBUTE4 = X_ATTRIBUTE4,
452     ATTRIBUTE5 = X_ATTRIBUTE5,
453     ATTRIBUTE6 = X_ATTRIBUTE6,
454     ATTRIBUTE7 = X_ATTRIBUTE7,
455     ATTRIBUTE8 = X_ATTRIBUTE8,
456     ATTRIBUTE9 = X_ATTRIBUTE9,
457     ATTRIBUTE10 = X_ATTRIBUTE10,
458     ATTRIBUTE11 = X_ATTRIBUTE11,
459     ATTRIBUTE12 = X_ATTRIBUTE12,
460     ATTRIBUTE13 = X_ATTRIBUTE13,
461     ATTRIBUTE14 = X_ATTRIBUTE14,
462     ATTRIBUTE15 = X_ATTRIBUTE15,
463     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
464     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
465     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
466     GL_POSTING_OVERRIDE_DATE = X_GL_POSTING_OVERRIDE_DATE,
467     GMS_POSTING_OVERRIDE_DATE = X_GMS_POSTING_OVERRIDE_DATE,
468     business_group_id         = X_BUSINESS_GROUP_ID,
469     set_of_books_id           = X_SET_OF_BOOKS_ID,
470     currency_code           = X_CURRENCY_CODE
471   where DISTRIBUTION_INTERFACE_ID = X_DISTRIBUTION_INTERFACE_ID
472   and BATCH_NAME = X_BATCH_NAME
473   and business_group_id = x_business_group_id
474   and set_of_books_id   = x_set_of_books_id
475   ;
476   if (sql%notfound) then
477     raise no_data_found;
478   end if;
479 end UPDATE_ROW;
480 
481 procedure ADD_ROW (
482   X_ROWID in out NOCOPY VARCHAR2,
483   X_DISTRIBUTION_INTERFACE_ID in NUMBER,
484   X_BATCH_NAME in VARCHAR2,
485   X_PERSON_ID in NUMBER,
486   X_ASSIGNMENT_ID in NUMBER,
487   X_ELEMENT_TYPE_ID in NUMBER,
488   X_DISTRIBUTION_DATE in DATE,
489   X_DISTRIBUTION_AMOUNT in NUMBER,
490   X_PAYROLL_ID in NUMBER,
491   X_TIME_PERIOD_ID in NUMBER,
492   X_DR_CR_FLAG in VARCHAR2,
493   X_SOURCE_CODE in VARCHAR2,
494   X_GL_CODE_COMBINATION_ID in NUMBER,
495   X_PROJECT_ID in NUMBER,
496   X_EXPENDITURE_ORGANIZATION_ID in NUMBER,
497   X_EXPENDITURE_TYPE in VARCHAR2,
498   X_TASK_ID in NUMBER,
499   X_AWARD_ID in NUMBER,
500   X_STATUS_CODE in VARCHAR2,
501   X_ERROR_CODE in VARCHAR2,
502   X_ATTRIBUTE_CATEGORY in VARCHAR2,
503   X_ATTRIBUTE1 in VARCHAR2,
504   X_ATTRIBUTE2 in VARCHAR2,
505   X_ATTRIBUTE3 in VARCHAR2,
506   X_ATTRIBUTE4 in VARCHAR2,
507   X_ATTRIBUTE5 in VARCHAR2,
508   X_ATTRIBUTE6 in VARCHAR2,
509   X_ATTRIBUTE7 in VARCHAR2,
510   X_ATTRIBUTE8 in VARCHAR2,
511   X_ATTRIBUTE9 in VARCHAR2,
512   X_ATTRIBUTE10 in VARCHAR2,
513   X_ATTRIBUTE11 in VARCHAR2,
514   X_ATTRIBUTE12 in VARCHAR2,
515   X_ATTRIBUTE13 in VARCHAR2,
516   X_ATTRIBUTE14 in VARCHAR2,
517   X_ATTRIBUTE15 in VARCHAR2,
518   X_MODE in VARCHAR2 default 'R',
519   X_GL_POSTING_OVERRIDE_DATE in DATE,
520   X_GMS_POSTING_OVERRIDE_DATE in DATE,
521   X_BUSINESS_GROUP_ID in NUMBER,
522   X_SET_OF_BOOKS_ID in NUMBER,
523   X_CURRENCY_CODE IN VARCHAR2		-- Introduced for bug fix 2916848
524   ) is
525   cursor c1 is select rowid from PSP_DISTRIBUTION_INTERFACE
526      where DISTRIBUTION_INTERFACE_ID = X_DISTRIBUTION_INTERFACE_ID
527      and BATCH_NAME = X_BATCH_NAME
528      and business_group_id = x_business_group_id
529      and set_of_books_id   = x_set_of_books_id
530   ;
531   dummy c1%rowtype;
532 begin
533   open c1;
534   fetch c1 into dummy;
535   if (c1%notfound) then
536     close c1;
537     INSERT_ROW (
538      X_ROWID,
539      X_DISTRIBUTION_INTERFACE_ID,
540      X_BATCH_NAME,
541      X_PERSON_ID,
542      X_ASSIGNMENT_ID,
543      X_ELEMENT_TYPE_ID,
544      X_DISTRIBUTION_DATE,
545      X_DISTRIBUTION_AMOUNT,
546      X_PAYROLL_ID,
547      X_TIME_PERIOD_ID,
548      X_DR_CR_FLAG,
549      X_SOURCE_CODE,
550      X_GL_CODE_COMBINATION_ID,
551      X_PROJECT_ID,
552      X_EXPENDITURE_ORGANIZATION_ID,
553      X_EXPENDITURE_TYPE,
554      X_TASK_ID,
555      X_AWARD_ID,
556      X_STATUS_CODE,
557      X_ERROR_CODE,
558      X_ATTRIBUTE_CATEGORY,
559      X_ATTRIBUTE1,
560      X_ATTRIBUTE2,
561      X_ATTRIBUTE3,
562      X_ATTRIBUTE4,
563      X_ATTRIBUTE5,
564      X_ATTRIBUTE6,
565      X_ATTRIBUTE7,
566      X_ATTRIBUTE8,
567      X_ATTRIBUTE9,
568      X_ATTRIBUTE10,
569      X_ATTRIBUTE11,
570      X_ATTRIBUTE12,
571      X_ATTRIBUTE13,
572      X_ATTRIBUTE14,
573      X_ATTRIBUTE15,
574      X_MODE,
575      X_GL_POSTING_OVERRIDE_DATE,
576      X_GMS_POSTING_OVERRIDE_DATE,
577      X_BUSINESS_GROUP_ID,
578      X_SET_OF_BOOKS_ID,
579      X_CURRENCY_CODE		-- Introduced for bug fix 2916848
580      );
581     return;
582   end if;
583   close c1;
584   UPDATE_ROW (
585    X_DISTRIBUTION_INTERFACE_ID,
586    X_BATCH_NAME,
587    X_PERSON_ID,
588    X_ASSIGNMENT_ID,
589    X_ELEMENT_TYPE_ID,
590    X_DISTRIBUTION_DATE,
591    X_DISTRIBUTION_AMOUNT,
592    X_PAYROLL_ID,
593    X_TIME_PERIOD_ID,
594    X_DR_CR_FLAG,
595    X_SOURCE_CODE,
596    X_GL_CODE_COMBINATION_ID,
597    X_PROJECT_ID,
598    X_EXPENDITURE_ORGANIZATION_ID,
599    X_EXPENDITURE_TYPE,
600    X_TASK_ID,
601    X_AWARD_ID,
602    X_STATUS_CODE,
603    X_ERROR_CODE,
604    X_ATTRIBUTE_CATEGORY,
605    X_ATTRIBUTE1,
606    X_ATTRIBUTE2,
607    X_ATTRIBUTE3,
608    X_ATTRIBUTE4,
609    X_ATTRIBUTE5,
610    X_ATTRIBUTE6,
611    X_ATTRIBUTE7,
612    X_ATTRIBUTE8,
613    X_ATTRIBUTE9,
614    X_ATTRIBUTE10,
615    X_ATTRIBUTE11,
616    X_ATTRIBUTE12,
617    X_ATTRIBUTE13,
618    X_ATTRIBUTE14,
619    X_ATTRIBUTE15,
620    X_MODE,
621    X_GL_POSTING_OVERRIDE_DATE,
622    X_GMS_POSTING_OVERRIDE_DATE,
623    X_BUSINESS_GROUP_ID,
624    X_SET_OF_BOOKS_ID,
625    X_CURRENCY_CODE		-- Introduced for bug fix 2916848
626    );
627 end ADD_ROW;
628 
629 procedure DELETE_ROW (
630   X_DISTRIBUTION_INTERFACE_ID in NUMBER,
631   X_BATCH_NAME in VARCHAR2,
632   X_BUSINESS_GROUP_ID in NUMBER,
633   X_SET_OF_BOOKS_ID in NUMBER
634 ) is
635 begin
636   delete from PSP_DISTRIBUTION_INTERFACE
637   where DISTRIBUTION_INTERFACE_ID = X_DISTRIBUTION_INTERFACE_ID
638   and BATCH_NAME = X_BATCH_NAME
639   and BUSINESS_GROUP_ID = X_BUSINESS_GROUP_ID
640   and SET_OF_BOOKS_ID = X_SET_OF_BOOKS_ID;
641   if (sql%notfound) then
642     raise no_data_found;
643   end if;
644 end DELETE_ROW;
645 
646 end PSP_DISTRIBUTION_INTERFACE_PKG;