DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_FUNDS_ALL_PKG

Source


1 package body AMS_FUNDS_ALL_PKG as
2 /* $Header: amslfunb.pls 115.1 2002/07/15 22:11:55 mpande noship $ */
3 procedure INSERT_ROW (
4   X_ROWID in out VARCHAR2,
5   X_FUND_ID in NUMBER,
6   X_CREATED_FROM in VARCHAR2,
7   X_REQUEST_ID in NUMBER,
8   X_FUND_NUMBER in VARCHAR2,
9   X_PARENT_FUND_ID in NUMBER,
10   X_CATEGORY_ID in NUMBER,
11   X_FUND_TYPE in VARCHAR2,
12   X_FUND_USAGE in VARCHAR2,
13   X_STATUS_CODE in VARCHAR2,
14   X_STATUS_DATE in DATE,
15   X_ACCRUED_LIABLE_ACCOUNT in NUMBER,
16   X_DED_ADJUSTMENT_ACCOUNT in NUMBER,
17   X_LIABILITY_FLAG in VARCHAR2,
18   X_SET_OF_BOOKS_ID in NUMBER,
19   X_START_PERIOD_ID in NUMBER,
20   X_END_PERIOD_ID in NUMBER,
21   X_START_DATE_ACTIVE in DATE,
22   X_END_DATE_ACTIVE in DATE,
23   X_BUDGET_AMOUNT_TC in NUMBER,
24   X_BUDGET_AMOUNT_FC in NUMBER,
25   X_AVAILABLE_AMOUNT in NUMBER,
26   X_DISTRIBUTED_AMOUNT in NUMBER,
27   X_CURRENCY_CODE_TC in VARCHAR2,
28   X_CURRENCY_CODE_FC in VARCHAR2,
29   X_EXCHANGE_RATE_TYPE in VARCHAR2,
30   X_EXCHANGE_RATE_DATE in DATE,
31   X_EXCHANGE_RATE in NUMBER,
32   X_DEPARTMENT_ID in NUMBER,
33   X_COSTCENTRE_ID in NUMBER,
34   X_OWNER in NUMBER,
35   X_ACCRUAL_METHOD in VARCHAR2,
36   X_ACCRUAL_OPERAND in VARCHAR2,
37   X_ACCRUAL_RATE in NUMBER,
38   X_ACCRUAL_BASIS in VARCHAR2,
39   X_HIERARCHY in VARCHAR2,
40   X_HIERARCHY_LEVEL in VARCHAR2,
41   X_BUDGET_FLAG in VARCHAR2,
42   X_EARNED_FLAG in VARCHAR2,
43   X_APPLY_ACCRUAL_ON in VARCHAR2,
44   X_ACCRUAL_PHASE in VARCHAR2,
45   X_ACCRUAL_CAP in NUMBER,
46   X_ACCRUAL_UOM in VARCHAR2,
47   X_OBJECT_VERSION_NUMBER in NUMBER,
48   X_ATTRIBUTE_CATEGORY in VARCHAR2,
49   X_ATTRIBUTE1 in VARCHAR2,
50   X_ATTRIBUTE2 in VARCHAR2,
51   X_ATTRIBUTE3 in VARCHAR2,
52   X_ATTRIBUTE4 in VARCHAR2,
53   X_ATTRIBUTE5 in VARCHAR2,
54   X_ATTRIBUTE6 in VARCHAR2,
55   X_ATTRIBUTE7 in VARCHAR2,
56   X_ATTRIBUTE8 in VARCHAR2,
57   X_ATTRIBUTE9 in VARCHAR2,
58   X_ATTRIBUTE10 in VARCHAR2,
59   X_ATTRIBUTE11 in VARCHAR2,
60   X_ATTRIBUTE12 in VARCHAR2,
61   X_ATTRIBUTE13 in VARCHAR2,
62   X_ATTRIBUTE14 in VARCHAR2,
63   X_ATTRIBUTE15 in VARCHAR2,
64   X_SHORT_NAME in VARCHAR2,
65   X_DESCRIPTION in VARCHAR2,
66   X_CREATION_DATE in DATE,
67   X_CREATED_BY in NUMBER,
68   X_LAST_UPDATE_DATE in DATE,
69   X_LAST_UPDATED_BY in NUMBER,
70   X_LAST_UPDATE_LOGIN in NUMBER,
71   X_HIERARCHY_ID in NUMBER,
72   X_PARENT_NODE_ID in NUMBER,
73   X_NODE_ID in NUMBER,
74   X_ORIGINAL_BUDGET in NUMBER,
75   X_TRANSFERED_IN_AMT in NUMBER,
76   X_TRANSFERED_OUT_AMT in NUMBER,
77   X_HOLDBACK_AMT in NUMBER,
78   X_PLANNED_AMT in NUMBER,
79   X_COMMITTED_AMT in NUMBER,
80   X_EARNED_AMT in NUMBER,
81   X_PAID_AMT in NUMBER,
82   X_PLAN_TYPE in VARCHAR2,
83   X_PLAN_ID in NUMBER,
84   X_LIABLE_ACCNT_SEGMENTS in VARCHAR2,
85   X_ADJUSTMENT_ACCNT_SEGMENTS in VARCHAR2
86 ) is
87   cursor C is select ROWID from OZF_FUNDS_ALL_B
88     where FUND_ID = X_FUND_ID
89     ;
90 begin
91   insert into OZF_FUNDS_ALL_B (
92     FUND_ID,
93     CREATED_FROM,
94     REQUEST_ID,
95     FUND_NUMBER,
96     PARENT_FUND_ID,
97     CATEGORY_ID,
98     FUND_TYPE,
99     FUND_USAGE,
100     STATUS_CODE,
101     STATUS_DATE,
102     ACCRUED_LIABLE_ACCOUNT,
103     DED_ADJUSTMENT_ACCOUNT,
104     LIABILITY_FLAG,
105     SET_OF_BOOKS_ID,
106     START_PERIOD_ID,
107     END_PERIOD_ID,
108     START_DATE_ACTIVE,
109     END_DATE_ACTIVE,
110     BUDGET_AMOUNT_TC,
111     BUDGET_AMOUNT_FC,
112     AVAILABLE_AMOUNT,
113     DISTRIBUTED_AMOUNT,
114     CURRENCY_CODE_TC,
115     CURRENCY_CODE_FC,
116     EXCHANGE_RATE_TYPE,
117     EXCHANGE_RATE_DATE,
118     EXCHANGE_RATE,
119     DEPARTMENT_ID,
120     COSTCENTRE_ID,
121     OWNER,
122     ACCRUAL_METHOD,
123     ACCRUAL_OPERAND,
124     ACCRUAL_RATE,
125     ACCRUAL_BASIS,
126     HIERARCHY,
127     HIERARCHY_LEVEL,
128     BUDGET_FLAG,
129     EARNED_FLAG,
130     APPLY_ACCRUAL_ON,
131     ACCRUAL_PHASE,
132     ACCRUAL_CAP,
133     ACCRUAL_UOM,
134     OBJECT_VERSION_NUMBER,
135     ATTRIBUTE_CATEGORY,
136     ATTRIBUTE1,
137     ATTRIBUTE2,
138     ATTRIBUTE3,
139     ATTRIBUTE4,
140     ATTRIBUTE5,
141     ATTRIBUTE6,
142     ATTRIBUTE7,
143     ATTRIBUTE8,
144     ATTRIBUTE9,
145     ATTRIBUTE10,
146     ATTRIBUTE11,
147     ATTRIBUTE12,
148     ATTRIBUTE13,
149     ATTRIBUTE14,
150     ATTRIBUTE15,
151     CREATION_DATE,
152     CREATED_BY,
153     LAST_UPDATE_DATE,
154     LAST_UPDATED_BY,
155     LAST_UPDATE_LOGIN,
156     HIERARCHY_ID,
157     PARENT_NODE_ID ,
158     NODE_ID ,
159     ORIGINAL_BUDGET,
160     TRANSFERED_IN_AMT,
161     TRANSFERED_OUT_AMT,
162     HOLDBACK_AMT,
163     PLANNED_AMT,
164     COMMITTED_AMT,
165     EARNED_AMT,
166     PAID_AMT,
167     PLAN_TYPE,
168     PLAN_ID,
169     LIABLE_ACCNT_SEGMENTS,
170     ADJUSTMENT_ACCNT_SEGMENTS
171   ) values (
172     X_FUND_ID,
173     X_CREATED_FROM,
174     X_REQUEST_ID,
175     X_FUND_NUMBER,
176     X_PARENT_FUND_ID,
177     X_CATEGORY_ID,
178     X_FUND_TYPE,
179     X_FUND_USAGE,
180     X_STATUS_CODE,
181     X_STATUS_DATE,
182     X_ACCRUED_LIABLE_ACCOUNT,
183     X_DED_ADJUSTMENT_ACCOUNT,
184     X_LIABILITY_FLAG,
185     X_SET_OF_BOOKS_ID,
186     X_START_PERIOD_ID,
187     X_END_PERIOD_ID,
188     X_START_DATE_ACTIVE,
189     X_END_DATE_ACTIVE,
190     X_BUDGET_AMOUNT_TC,
191     X_BUDGET_AMOUNT_FC,
192     X_AVAILABLE_AMOUNT,
193     X_DISTRIBUTED_AMOUNT,
194     X_CURRENCY_CODE_TC,
195     X_CURRENCY_CODE_FC,
196     X_EXCHANGE_RATE_TYPE,
197     X_EXCHANGE_RATE_DATE,
198     X_EXCHANGE_RATE,
199     X_DEPARTMENT_ID,
200     X_COSTCENTRE_ID,
201     X_OWNER,
202     X_ACCRUAL_METHOD,
203     X_ACCRUAL_OPERAND,
204     X_ACCRUAL_RATE,
205     X_ACCRUAL_BASIS,
206     X_HIERARCHY,
207     X_HIERARCHY_LEVEL,
208     X_BUDGET_FLAG,
209     X_EARNED_FLAG,
210     X_APPLY_ACCRUAL_ON,
211     X_ACCRUAL_PHASE,
212     X_ACCRUAL_CAP,
213     X_ACCRUAL_UOM,
214     X_OBJECT_VERSION_NUMBER,
215     X_ATTRIBUTE_CATEGORY,
216     X_ATTRIBUTE1,
217     X_ATTRIBUTE2,
218     X_ATTRIBUTE3,
219     X_ATTRIBUTE4,
220     X_ATTRIBUTE5,
221     X_ATTRIBUTE6,
222     X_ATTRIBUTE7,
223     X_ATTRIBUTE8,
224     X_ATTRIBUTE9,
225     X_ATTRIBUTE10,
226     X_ATTRIBUTE11,
227     X_ATTRIBUTE12,
228     X_ATTRIBUTE13,
229     X_ATTRIBUTE14,
230     X_ATTRIBUTE15,
231     X_CREATION_DATE,
232     X_CREATED_BY,
233     X_LAST_UPDATE_DATE,
234     X_LAST_UPDATED_BY,
235     X_LAST_UPDATE_LOGIN,
236     X_HIERARCHY_ID,
237     X_PARENT_NODE_ID,
238     X_NODE_ID,
239     X_ORIGINAL_BUDGET,
240     X_TRANSFERED_IN_AMT,
241     X_TRANSFERED_OUT_AMT,
242     X_HOLDBACK_AMT,
243     X_PLANNED_AMT,
244     X_COMMITTED_AMT,
245     X_EARNED_AMT,
246     X_PAID_AMT,
247     X_PLAN_TYPE,
248     X_PLAN_ID,
249     X_LIABLE_ACCNT_SEGMENTS,
250     X_ADJUSTMENT_ACCNT_SEGMENTS
251   );
252 
253   insert into OZF_FUNDS_ALL_TL (
254     FUND_ID,
255     LAST_UPDATE_DATE,
256     LAST_UPDATED_BY,
257     LAST_UPDATE_LOGIN,
258     CREATION_DATE,
259     CREATED_BY,
260     CREATED_FROM,
261     REQUEST_ID,
262     SHORT_NAME,
263     DESCRIPTION,
264     LANGUAGE,
265     SOURCE_LANG
266   ) select
267     X_FUND_ID,
268     X_LAST_UPDATE_DATE,
269     X_LAST_UPDATED_BY,
270     X_LAST_UPDATE_LOGIN,
271     X_CREATION_DATE,
272     X_CREATED_BY,
273     X_CREATED_FROM,
274     X_REQUEST_ID,
275     X_SHORT_NAME,
276     X_DESCRIPTION,
277     L.LANGUAGE_CODE,
278     userenv('LANG')
279   from FND_LANGUAGES L
280   where L.INSTALLED_FLAG in ('I', 'B')
281   and not exists
282     (select NULL
283     from OZF_FUNDS_ALL_TL T
284     where T.FUND_ID = X_FUND_ID
285     and T.LANGUAGE = L.LANGUAGE_CODE);
286 
287   open c;
288   fetch c into X_ROWID;
289   if (c%notfound) then
290     close c;
291     raise no_data_found;
292   end if;
293   close c;
294 
295 end INSERT_ROW;
296 
297 procedure LOCK_ROW (
298   X_FUND_ID in NUMBER,
299   X_CREATED_FROM in VARCHAR2,
300   X_REQUEST_ID in NUMBER,
301   X_FUND_NUMBER in VARCHAR2,
302   X_PARENT_FUND_ID in NUMBER,
303   X_CATEGORY_ID in NUMBER,
304   X_FUND_TYPE in VARCHAR2,
305   X_FUND_USAGE in VARCHAR2,
306   X_STATUS_CODE in VARCHAR2,
307   X_STATUS_DATE in DATE,
308   X_ACCRUED_LIABLE_ACCOUNT in NUMBER,
309   X_DED_ADJUSTMENT_ACCOUNT in NUMBER,
310   X_LIABILITY_FLAG in VARCHAR2,
311   X_SET_OF_BOOKS_ID in NUMBER,
312   X_START_PERIOD_ID in NUMBER,
313   X_END_PERIOD_ID in NUMBER,
314   X_START_DATE_ACTIVE in DATE,
315   X_END_DATE_ACTIVE in DATE,
316   X_BUDGET_AMOUNT_TC in NUMBER,
317   X_BUDGET_AMOUNT_FC in NUMBER,
318   X_AVAILABLE_AMOUNT in NUMBER,
319   X_DISTRIBUTED_AMOUNT in NUMBER,
320   X_CURRENCY_CODE_TC in VARCHAR2,
321   X_CURRENCY_CODE_FC in VARCHAR2,
322   X_EXCHANGE_RATE_TYPE in VARCHAR2,
323   X_EXCHANGE_RATE_DATE in DATE,
324   X_EXCHANGE_RATE in NUMBER,
325   X_DEPARTMENT_ID in NUMBER,
326   X_COSTCENTRE_ID in NUMBER,
327   X_OWNER in NUMBER,
328   X_ACCRUAL_METHOD in VARCHAR2,
329   X_ACCRUAL_OPERAND in VARCHAR2,
330   X_ACCRUAL_RATE in NUMBER,
331   X_ACCRUAL_BASIS in VARCHAR2,
332   X_HIERARCHY in VARCHAR2,
333   X_HIERARCHY_LEVEL in VARCHAR2,
334   X_BUDGET_FLAG in VARCHAR2,
335   X_EARNED_FLAG in VARCHAR2,
336   X_APPLY_ACCRUAL_ON in VARCHAR2,
337   X_ACCRUAL_PHASE in VARCHAR2,
338   X_ACCRUAL_CAP in NUMBER,
339   X_ACCRUAL_UOM in VARCHAR2,
340   X_OBJECT_VERSION_NUMBER in NUMBER,
341   X_ATTRIBUTE_CATEGORY in VARCHAR2,
342   X_ATTRIBUTE1 in VARCHAR2,
343   X_ATTRIBUTE2 in VARCHAR2,
344   X_ATTRIBUTE3 in VARCHAR2,
345   X_ATTRIBUTE4 in VARCHAR2,
346   X_ATTRIBUTE5 in VARCHAR2,
347   X_ATTRIBUTE6 in VARCHAR2,
348   X_ATTRIBUTE7 in VARCHAR2,
349   X_ATTRIBUTE8 in VARCHAR2,
350   X_ATTRIBUTE9 in VARCHAR2,
351   X_ATTRIBUTE10 in VARCHAR2,
352   X_ATTRIBUTE11 in VARCHAR2,
353   X_ATTRIBUTE12 in VARCHAR2,
354   X_ATTRIBUTE13 in VARCHAR2,
355   X_ATTRIBUTE14 in VARCHAR2,
356   X_ATTRIBUTE15 in VARCHAR2,
357   X_SHORT_NAME in VARCHAR2,
358   X_DESCRIPTION in VARCHAR2,
359   X_HIERARCHY_ID in NUMBER,
360   X_PARENT_NODE_ID in NUMBER,
361   X_NODE_ID in NUMBER,
362   X_ORIGINAL_BUDGET in NUMBER,
363   X_TRANSFERED_IN_AMT in NUMBER,
364   X_TRANSFERED_OUT_AMT in NUMBER,
365   X_HOLDBACK_AMT in NUMBER,
366   X_PLANNED_AMT in NUMBER,
367   X_COMMITTED_AMT in NUMBER,
368   X_EARNED_AMT in NUMBER,
369   X_PAID_AMT in NUMBER,
370   X_PLAN_TYPE in VARCHAR2,
371   X_PLAN_ID in NUMBER,
372   X_LIABLE_ACCNT_SEGMENTS in VARCHAR2,
373   X_ADJUSTMENT_ACCNT_SEGMENTS in VARCHAR2
374 ) is
375   cursor c is select
376       CREATED_FROM,
377       REQUEST_ID,
378       FUND_NUMBER,
379       PARENT_FUND_ID,
380       CATEGORY_ID,
381       FUND_TYPE,
382       FUND_USAGE,
383       STATUS_CODE,
384       STATUS_DATE,
385       ACCRUED_LIABLE_ACCOUNT,
386       DED_ADJUSTMENT_ACCOUNT,
387       LIABILITY_FLAG,
388       SET_OF_BOOKS_ID,
389       START_PERIOD_ID,
390       END_PERIOD_ID,
391       START_DATE_ACTIVE,
392       END_DATE_ACTIVE,
393       BUDGET_AMOUNT_TC,
394       BUDGET_AMOUNT_FC,
395       AVAILABLE_AMOUNT,
396       DISTRIBUTED_AMOUNT,
397       CURRENCY_CODE_TC,
398       CURRENCY_CODE_FC,
399       EXCHANGE_RATE_TYPE,
400       EXCHANGE_RATE_DATE,
401       EXCHANGE_RATE,
402       DEPARTMENT_ID,
403       COSTCENTRE_ID,
404       OWNER,
405       ACCRUAL_METHOD,
406       ACCRUAL_OPERAND,
407       ACCRUAL_RATE,
408       ACCRUAL_BASIS,
409       HIERARCHY,
410       HIERARCHY_LEVEL,
411       BUDGET_FLAG,
412       EARNED_FLAG,
413       APPLY_ACCRUAL_ON,
414       ACCRUAL_PHASE,
415       ACCRUAL_CAP,
416       ACCRUAL_UOM,
417       OBJECT_VERSION_NUMBER,
418       ATTRIBUTE_CATEGORY,
419       ATTRIBUTE1,
420       ATTRIBUTE2,
421       ATTRIBUTE3,
422       ATTRIBUTE4,
423       ATTRIBUTE5,
424       ATTRIBUTE6,
425       ATTRIBUTE7,
426       ATTRIBUTE8,
427       ATTRIBUTE9,
428       ATTRIBUTE10,
429       ATTRIBUTE11,
430       ATTRIBUTE12,
431       ATTRIBUTE13,
432       ATTRIBUTE14,
433       ATTRIBUTE15,
434       HIERARCHY_ID,
435       PARENT_NODE_ID ,
436       NODE_ID ,
437       ORIGINAL_BUDGET,
438       TRANSFERED_IN_AMT,
439       TRANSFERED_OUT_AMT,
440       HOLDBACK_AMT,
441       PLANNED_AMT,
442       COMMITTED_AMT,
443       EARNED_AMT,
444       PAID_AMT,
445       PLAN_TYPE,
446       PLAN_ID,
447       LIABLE_ACCNT_SEGMENTS,
448       ADJUSTMENT_ACCNT_SEGMENTS
449     from OZF_FUNDS_ALL_B
450     where FUND_ID = X_FUND_ID
451     for update of FUND_ID nowait;
452   recinfo c%rowtype;
453 
454   cursor c1 is select
455       SHORT_NAME,
456       DESCRIPTION,
457       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
458     from OZF_FUNDS_ALL_TL
462 begin
459     where FUND_ID = X_FUND_ID
460     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
461     for update of FUND_ID nowait;
463   open c;
464   fetch c into recinfo;
465   if (c%notfound) then
466     close c;
467     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
468     app_exception.raise_exception;
469   end if;
470   close c;
471   if (    ((recinfo.CREATED_FROM = X_CREATED_FROM)
472            OR ((recinfo.CREATED_FROM is null) AND (X_CREATED_FROM is null)))
473       AND ((recinfo.REQUEST_ID = X_REQUEST_ID)
474            OR ((recinfo.REQUEST_ID is null) AND (X_REQUEST_ID is null)))
475       AND (recinfo.FUND_NUMBER = X_FUND_NUMBER)
476       AND ((recinfo.PARENT_FUND_ID = X_PARENT_FUND_ID)
477            OR ((recinfo.PARENT_FUND_ID is null) AND (X_PARENT_FUND_ID is null)))
478       AND ((recinfo.CATEGORY_ID = X_CATEGORY_ID)
479            OR ((recinfo.CATEGORY_ID is null) AND (X_CATEGORY_ID is null)))
480       AND ((recinfo.FUND_TYPE = X_FUND_TYPE)
481            OR ((recinfo.FUND_TYPE is null) AND (X_FUND_TYPE is null)))
482       AND ((recinfo.FUND_USAGE = X_FUND_USAGE)
483            OR ((recinfo.FUND_USAGE is null) AND (X_FUND_USAGE is null)))
484       AND (recinfo.STATUS_CODE = X_STATUS_CODE)
485       AND (recinfo.STATUS_DATE = X_STATUS_DATE)
486       AND ((recinfo.ACCRUED_LIABLE_ACCOUNT = X_ACCRUED_LIABLE_ACCOUNT)
487            OR ((recinfo.ACCRUED_LIABLE_ACCOUNT is null) AND (X_ACCRUED_LIABLE_ACCOUNT is null)))
488       AND ((recinfo.DED_ADJUSTMENT_ACCOUNT = X_DED_ADJUSTMENT_ACCOUNT)
489            OR ((recinfo.DED_ADJUSTMENT_ACCOUNT is null) AND (X_DED_ADJUSTMENT_ACCOUNT is null)))
490       AND (recinfo.LIABILITY_FLAG = X_LIABILITY_FLAG)
491       AND ((recinfo.SET_OF_BOOKS_ID = X_SET_OF_BOOKS_ID)
492            OR ((recinfo.SET_OF_BOOKS_ID is null) AND (X_SET_OF_BOOKS_ID is null)))
493       AND ((recinfo.START_PERIOD_ID = X_START_PERIOD_ID)
494            OR ((recinfo.START_PERIOD_ID is null) AND (X_START_PERIOD_ID is null)))
495       AND ((recinfo.END_PERIOD_ID = X_END_PERIOD_ID)
496            OR ((recinfo.END_PERIOD_ID is null) AND (X_END_PERIOD_ID is null)))
497       AND ((recinfo.START_DATE_ACTIVE = X_START_DATE_ACTIVE)
498            OR ((recinfo.START_DATE_ACTIVE is null) AND (X_START_DATE_ACTIVE is null)))
499       AND ((recinfo.END_DATE_ACTIVE = X_END_DATE_ACTIVE)
500            OR ((recinfo.END_DATE_ACTIVE is null) AND (X_END_DATE_ACTIVE is null)))
501       AND ((recinfo.BUDGET_AMOUNT_TC = X_BUDGET_AMOUNT_TC)
502            OR ((recinfo.BUDGET_AMOUNT_TC is null) AND (X_BUDGET_AMOUNT_TC is null)))
503       AND ((recinfo.BUDGET_AMOUNT_FC = X_BUDGET_AMOUNT_FC)
507       AND ((recinfo.DISTRIBUTED_AMOUNT = X_DISTRIBUTED_AMOUNT)
504            OR ((recinfo.BUDGET_AMOUNT_FC is null) AND (X_BUDGET_AMOUNT_FC is null)))
505       AND ((recinfo.AVAILABLE_AMOUNT = X_AVAILABLE_AMOUNT)
506            OR ((recinfo.AVAILABLE_AMOUNT is null) AND (X_AVAILABLE_AMOUNT is null)))
508            OR ((recinfo.DISTRIBUTED_AMOUNT is null) AND (X_DISTRIBUTED_AMOUNT is null)))
509       AND ((recinfo.CURRENCY_CODE_TC = X_CURRENCY_CODE_TC)
510            OR ((recinfo.CURRENCY_CODE_TC is null) AND (X_CURRENCY_CODE_TC is null)))
511       AND ((recinfo.CURRENCY_CODE_FC = X_CURRENCY_CODE_FC)
512            OR ((recinfo.CURRENCY_CODE_FC is null) AND (X_CURRENCY_CODE_FC is null)))
513       AND ((recinfo.EXCHANGE_RATE_TYPE = X_EXCHANGE_RATE_TYPE)
514            OR ((recinfo.EXCHANGE_RATE_TYPE is null) AND (X_EXCHANGE_RATE_TYPE is null)))
515       AND ((recinfo.EXCHANGE_RATE_DATE = X_EXCHANGE_RATE_DATE)
516            OR ((recinfo.EXCHANGE_RATE_DATE is null) AND (X_EXCHANGE_RATE_DATE is null)))
517       AND ((recinfo.EXCHANGE_RATE = X_EXCHANGE_RATE)
518            OR ((recinfo.EXCHANGE_RATE is null) AND (X_EXCHANGE_RATE is null)))
519       AND ((recinfo.DEPARTMENT_ID = X_DEPARTMENT_ID)
520            OR ((recinfo.DEPARTMENT_ID is null) AND (X_DEPARTMENT_ID is null)))
521       AND ((recinfo.COSTCENTRE_ID = X_COSTCENTRE_ID)
522            OR ((recinfo.COSTCENTRE_ID is null) AND (X_COSTCENTRE_ID is null)))
523       AND (recinfo.OWNER = X_OWNER)
524       AND ((recinfo.ACCRUAL_METHOD = X_ACCRUAL_METHOD)
525            OR ((recinfo.ACCRUAL_METHOD is null) AND (X_ACCRUAL_METHOD is null)))
526       AND ((recinfo.ACCRUAL_OPERAND = X_ACCRUAL_OPERAND)
527            OR ((recinfo.ACCRUAL_OPERAND is null) AND (X_ACCRUAL_OPERAND is null)))
528       AND ((recinfo.ACCRUAL_RATE = X_ACCRUAL_RATE)
529            OR ((recinfo.ACCRUAL_RATE is null) AND (X_ACCRUAL_RATE is null)))
530       AND ((recinfo.ACCRUAL_BASIS = X_ACCRUAL_BASIS)
531            OR ((recinfo.ACCRUAL_BASIS is null) AND (X_ACCRUAL_BASIS is null)))
532       AND ((recinfo.HIERARCHY = X_HIERARCHY)
533            OR ((recinfo.HIERARCHY is null) AND (X_HIERARCHY is null)))
534       AND ((recinfo.HIERARCHY_LEVEL = X_HIERARCHY_LEVEL)
535            OR ((recinfo.HIERARCHY_LEVEL is null) AND (X_HIERARCHY_LEVEL is null)))
536       AND ((recinfo.BUDGET_FLAG = X_BUDGET_FLAG)
537            OR ((recinfo.BUDGET_FLAG is null) AND (X_BUDGET_FLAG is null)))
538       AND ((recinfo.EARNED_FLAG = X_EARNED_FLAG)
539            OR ((recinfo.EARNED_FLAG is null) AND (X_EARNED_FLAG is null)))
540       AND ((recinfo.APPLY_ACCRUAL_ON = X_APPLY_ACCRUAL_ON)
541            OR ((recinfo.APPLY_ACCRUAL_ON is null) AND (X_APPLY_ACCRUAL_ON is null)))
542       AND ((recinfo.ACCRUAL_PHASE = X_ACCRUAL_PHASE)
543            OR ((recinfo.ACCRUAL_PHASE is null) AND (X_ACCRUAL_PHASE is null)))
544       AND ((recinfo.ACCRUAL_CAP = X_ACCRUAL_CAP)
548       AND ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
545            OR ((recinfo.ACCRUAL_CAP is null) AND (X_ACCRUAL_CAP is null)))
546       AND ((recinfo.ACCRUAL_UOM = X_ACCRUAL_UOM)
547            OR ((recinfo.ACCRUAL_UOM is null) AND (X_ACCRUAL_UOM is null)))
549            OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
550       AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
551            OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
552       AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
553            OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
554       AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
555            OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
556       AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
557            OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
558       AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
559            OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
560       AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
561            OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
562       AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
563            OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
564       AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
565            OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
566       AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
567            OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
568       AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
569            OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
570       AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
571            OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
572       AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
573            OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
574       AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
575            OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
576       AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
577            OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
578       AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
579            OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
580       AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
581            OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
582       AND ((recinfo.HIERARCHY_ID = X_HIERARCHY_ID)
583            OR ((recinfo.HIERARCHY_ID is null) AND (X_HIERARCHY_ID is null)))
584       AND ((recinfo.PARENT_NODE_ID  = X_PARENT_NODE_ID )
588       AND ((recinfo.ORIGINAL_BUDGET = X_ORIGINAL_BUDGET)
585            OR ((recinfo.PARENT_NODE_ID  is null) AND (X_PARENT_NODE_ID  is null)))
586       AND ((recinfo.NODE_ID = X_NODE_ID)
587            OR ((recinfo.NODE_ID is null) AND (X_NODE_ID is null)))
589            OR ((recinfo.ORIGINAL_BUDGET is null) AND (X_ORIGINAL_BUDGET is null)))
590       AND ((recinfo.TRANSFERED_IN_AMT = X_TRANSFERED_IN_AMT)
591            OR ((recinfo.TRANSFERED_IN_AMT is null) AND (X_TRANSFERED_IN_AMT is null)))
592       AND ((recinfo.TRANSFERED_OUT_AMT = X_TRANSFERED_OUT_AMT)
593            OR ((recinfo.TRANSFERED_OUT_AMT is null) AND (X_TRANSFERED_OUT_AMT is null)))
594       AND ((recinfo.HOLDBACK_AMT = X_HOLDBACK_AMT)
595            OR ((recinfo.HOLDBACK_AMT is null) AND (X_HOLDBACK_AMT is null)))
596       AND ((recinfo.PLANNED_AMT = X_PLANNED_AMT)
597            OR ((recinfo.PLANNED_AMT is null) AND (X_PLANNED_AMT is null)))
598       AND ((recinfo.COMMITTED_AMT = X_COMMITTED_AMT)
599            OR ((recinfo.COMMITTED_AMT is null) AND (X_COMMITTED_AMT is null)))
600       AND ((recinfo.EARNED_AMT = X_EARNED_AMT)
601            OR ((recinfo.EARNED_AMT is null) AND (X_EARNED_AMT is null)))
602       AND ((recinfo.PAID_AMT = X_PAID_AMT)
603            OR ((recinfo.PAID_AMT is null) AND (X_PAID_AMT is null)))
604       AND ((recinfo.PLAN_TYPE = X_PLAN_TYPE)
605            OR ((recinfo.PLAN_TYPE is null) AND (X_PLAN_TYPE is null)))
606       AND ((recinfo.PLAN_ID = X_PLAN_ID)
607            OR ((recinfo.PLAN_ID is null) AND (X_PLAN_ID is null)))
608       AND ((recinfo.LIABLE_ACCNT_SEGMENTS = X_LIABLE_ACCNT_SEGMENTS)
609            OR ((recinfo.LIABLE_ACCNT_SEGMENTS is null) AND (X_LIABLE_ACCNT_SEGMENTS is null)))
610       AND ((recinfo.ADJUSTMENT_ACCNT_SEGMENTS = X_ADJUSTMENT_ACCNT_SEGMENTS)
611            OR ((recinfo.ADJUSTMENT_ACCNT_SEGMENTS is null) AND (X_ADJUSTMENT_ACCNT_SEGMENTS is null)))
612   ) then
613     null;
614   else
615     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
616     app_exception.raise_exception;
617   end if;
618 
619   for tlinfo in c1 loop
620     if (tlinfo.BASELANG = 'Y') then
621       if (    (tlinfo.SHORT_NAME = X_SHORT_NAME)
622           AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
623                OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
624       ) then
625         null;
626       else
627         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
628         app_exception.raise_exception;
629       end if;
630     end if;
631   end loop;
632   return;
633 end LOCK_ROW;
634 
635 procedure UPDATE_ROW (
636   X_FUND_ID in NUMBER,
637   X_CREATED_FROM in VARCHAR2,
638   X_REQUEST_ID in NUMBER,
639   X_FUND_NUMBER in VARCHAR2,
640   X_PARENT_FUND_ID in NUMBER,
641   X_CATEGORY_ID in NUMBER,
642   X_FUND_TYPE in VARCHAR2,
643   X_FUND_USAGE in VARCHAR2,
644   X_STATUS_CODE in VARCHAR2,
645   X_STATUS_DATE in DATE,
646   X_ACCRUED_LIABLE_ACCOUNT in NUMBER,
647   X_DED_ADJUSTMENT_ACCOUNT in NUMBER,
648   X_LIABILITY_FLAG in VARCHAR2,
649   X_SET_OF_BOOKS_ID in NUMBER,
650   X_START_PERIOD_ID in NUMBER,
651   X_END_PERIOD_ID in NUMBER,
652   X_START_DATE_ACTIVE in DATE,
653   X_END_DATE_ACTIVE in DATE,
654   X_BUDGET_AMOUNT_TC in NUMBER,
655   X_BUDGET_AMOUNT_FC in NUMBER,
656   X_AVAILABLE_AMOUNT in NUMBER,
657   X_DISTRIBUTED_AMOUNT in NUMBER,
658   X_CURRENCY_CODE_TC in VARCHAR2,
659   X_CURRENCY_CODE_FC in VARCHAR2,
660   X_EXCHANGE_RATE_TYPE in VARCHAR2,
661   X_EXCHANGE_RATE_DATE in DATE,
662   X_EXCHANGE_RATE in NUMBER,
663   X_DEPARTMENT_ID in NUMBER,
664   X_COSTCENTRE_ID in NUMBER,
665   X_OWNER in NUMBER,
666   X_ACCRUAL_METHOD in VARCHAR2,
667   X_ACCRUAL_OPERAND in VARCHAR2,
668   X_ACCRUAL_RATE in NUMBER,
669   X_ACCRUAL_BASIS in VARCHAR2,
670   X_HIERARCHY in VARCHAR2,
674   X_APPLY_ACCRUAL_ON in VARCHAR2,
671   X_HIERARCHY_LEVEL in VARCHAR2,
672   X_BUDGET_FLAG in VARCHAR2,
673   X_EARNED_FLAG in VARCHAR2,
675   X_ACCRUAL_PHASE in VARCHAR2,
676   X_ACCRUAL_CAP in NUMBER,
677   X_ACCRUAL_UOM in VARCHAR2,
678   X_OBJECT_VERSION_NUMBER in NUMBER,
679   X_ATTRIBUTE_CATEGORY in VARCHAR2,
680   X_ATTRIBUTE1 in VARCHAR2,
681   X_ATTRIBUTE2 in VARCHAR2,
682   X_ATTRIBUTE3 in VARCHAR2,
683   X_ATTRIBUTE4 in VARCHAR2,
684   X_ATTRIBUTE5 in VARCHAR2,
685   X_ATTRIBUTE6 in VARCHAR2,
686   X_ATTRIBUTE7 in VARCHAR2,
687   X_ATTRIBUTE8 in VARCHAR2,
688   X_ATTRIBUTE9 in VARCHAR2,
689   X_ATTRIBUTE10 in VARCHAR2,
690   X_ATTRIBUTE11 in VARCHAR2,
691   X_ATTRIBUTE12 in VARCHAR2,
692   X_ATTRIBUTE13 in VARCHAR2,
693   X_ATTRIBUTE14 in VARCHAR2,
694   X_ATTRIBUTE15 in VARCHAR2,
695   X_SHORT_NAME in VARCHAR2,
696   X_DESCRIPTION in VARCHAR2,
697   X_LAST_UPDATE_DATE in DATE,
698   X_LAST_UPDATED_BY in NUMBER,
699   X_LAST_UPDATE_LOGIN in NUMBER,
700   X_HIERARCHY_ID in NUMBER,
701   X_PARENT_NODE_ID in NUMBER,
702   X_NODE_ID in NUMBER,
703   X_ORIGINAL_BUDGET in NUMBER,
704   X_TRANSFERED_IN_AMT in NUMBER,
705   X_TRANSFERED_OUT_AMT in NUMBER,
706   X_HOLDBACK_AMT in NUMBER,
707   X_PLANNED_AMT in NUMBER,
708   X_COMMITTED_AMT in NUMBER,
709   X_EARNED_AMT in NUMBER,
710   X_PAID_AMT in NUMBER,
711   X_PLAN_TYPE in VARCHAR2,
712   X_PLAN_ID in NUMBER,
713   X_LIABLE_ACCNT_SEGMENTS in VARCHAR2,
714   X_ADJUSTMENT_ACCNT_SEGMENTS in VARCHAR2
715 ) is
716 begin
717   update OZF_FUNDS_ALL_B set
718     CREATED_FROM = X_CREATED_FROM,
719     REQUEST_ID = X_REQUEST_ID,
720     FUND_NUMBER = X_FUND_NUMBER,
721     PARENT_FUND_ID = X_PARENT_FUND_ID,
722     CATEGORY_ID = X_CATEGORY_ID,
723     FUND_TYPE = X_FUND_TYPE,
724     FUND_USAGE = X_FUND_USAGE,
725     STATUS_CODE = X_STATUS_CODE,
726     STATUS_DATE = X_STATUS_DATE,
727     ACCRUED_LIABLE_ACCOUNT = X_ACCRUED_LIABLE_ACCOUNT,
728     DED_ADJUSTMENT_ACCOUNT = X_DED_ADJUSTMENT_ACCOUNT,
729     LIABILITY_FLAG = X_LIABILITY_FLAG,
730     SET_OF_BOOKS_ID = X_SET_OF_BOOKS_ID,
731     START_PERIOD_ID = X_START_PERIOD_ID,
732     END_PERIOD_ID = X_END_PERIOD_ID,
733     START_DATE_ACTIVE = X_START_DATE_ACTIVE,
734     END_DATE_ACTIVE = X_END_DATE_ACTIVE,
735     BUDGET_AMOUNT_TC = X_BUDGET_AMOUNT_TC,
736     BUDGET_AMOUNT_FC = X_BUDGET_AMOUNT_FC,
737     AVAILABLE_AMOUNT = X_AVAILABLE_AMOUNT,
738     DISTRIBUTED_AMOUNT = X_DISTRIBUTED_AMOUNT,
739     CURRENCY_CODE_TC = X_CURRENCY_CODE_TC,
740     CURRENCY_CODE_FC = X_CURRENCY_CODE_FC,
741     EXCHANGE_RATE_TYPE = X_EXCHANGE_RATE_TYPE,
742     EXCHANGE_RATE_DATE = X_EXCHANGE_RATE_DATE,
743     EXCHANGE_RATE = X_EXCHANGE_RATE,
744     DEPARTMENT_ID = X_DEPARTMENT_ID,
745     COSTCENTRE_ID = X_COSTCENTRE_ID,
746     OWNER = X_OWNER,
750     ACCRUAL_BASIS = X_ACCRUAL_BASIS,
747     ACCRUAL_METHOD = X_ACCRUAL_METHOD,
748     ACCRUAL_OPERAND = X_ACCRUAL_OPERAND,
749     ACCRUAL_RATE = X_ACCRUAL_RATE,
751     HIERARCHY = X_HIERARCHY,
752     HIERARCHY_LEVEL = X_HIERARCHY_LEVEL,
753     BUDGET_FLAG = X_BUDGET_FLAG,
754     EARNED_FLAG = X_EARNED_FLAG,
755     APPLY_ACCRUAL_ON = X_APPLY_ACCRUAL_ON,
756     ACCRUAL_PHASE = X_ACCRUAL_PHASE,
757     ACCRUAL_CAP = X_ACCRUAL_CAP,
758     ACCRUAL_UOM = X_ACCRUAL_UOM,
759     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
760     ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
761     ATTRIBUTE1 = X_ATTRIBUTE1,
762     ATTRIBUTE2 = X_ATTRIBUTE2,
763     ATTRIBUTE3 = X_ATTRIBUTE3,
764     ATTRIBUTE4 = X_ATTRIBUTE4,
765     ATTRIBUTE5 = X_ATTRIBUTE5,
766     ATTRIBUTE6 = X_ATTRIBUTE6,
767     ATTRIBUTE7 = X_ATTRIBUTE7,
768     ATTRIBUTE8 = X_ATTRIBUTE8,
769     ATTRIBUTE9 = X_ATTRIBUTE9,
770     ATTRIBUTE10 = X_ATTRIBUTE10,
771     ATTRIBUTE11 = X_ATTRIBUTE11,
772     ATTRIBUTE12 = X_ATTRIBUTE12,
773     ATTRIBUTE13 = X_ATTRIBUTE13,
774     ATTRIBUTE14 = X_ATTRIBUTE14,
775     ATTRIBUTE15 = X_ATTRIBUTE15,
776     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
777     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
778     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
779     HIERARCHY_ID = X_HIERARCHY_ID,
780     PARENT_NODE_ID = X_PARENT_NODE_ID,
781     NODE_ID = X_NODE_ID,
782     ORIGINAL_BUDGET = X_ORIGINAL_BUDGET,
783     TRANSFERED_IN_AMT = X_TRANSFERED_IN_AMT,
784     TRANSFERED_OUT_AMT = X_TRANSFERED_OUT_AMT,
785     HOLDBACK_AMT = X_HOLDBACK_AMT,
786     PLANNED_AMT = X_PLANNED_AMT,
787     COMMITTED_AMT = X_COMMITTED_AMT,
788     EARNED_AMT = X_EARNED_AMT,
789     PAID_AMT = X_PAID_AMT,
790     PLAN_TYPE = X_PLAN_TYPE,
791     PLAN_ID = X_PLAN_ID,
792     LIABLE_ACCNT_SEGMENTS = X_LIABLE_ACCNT_SEGMENTS,
793     ADJUSTMENT_ACCNT_SEGMENTS = X_ADJUSTMENT_ACCNT_SEGMENTS
794    where FUND_ID = X_FUND_ID;
795 
796   if (sql%notfound) then
797     raise no_data_found;
798   end if;
799 
800   update OZF_FUNDS_ALL_TL set
801     SHORT_NAME = X_SHORT_NAME,
802     DESCRIPTION = X_DESCRIPTION,
803     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
804     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
805     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
806     SOURCE_LANG = userenv('LANG')
807   where FUND_ID = X_FUND_ID
808   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
809 
810   if (sql%notfound) then
811     raise no_data_found;
812   end if;
813 end UPDATE_ROW;
814 
815 procedure DELETE_ROW (
816   X_FUND_ID in NUMBER
817 ) is
818 begin
819   delete from OZF_FUNDS_ALL_TL
820   where FUND_ID = X_FUND_ID;
821 
822   if (sql%notfound) then
823     raise no_data_found;
824   end if;
825 
826   delete from OZF_FUNDS_ALL_B
827   where FUND_ID = X_FUND_ID;
828 
829   if (sql%notfound) then
830     raise no_data_found;
831   end if;
832 end DELETE_ROW;
833 
834 procedure ADD_LANGUAGE
835 is
836 begin
837   delete from OZF_FUNDS_ALL_TL T
838   where not exists
839     (select NULL
840     from OZF_FUNDS_ALL_B B
841     where B.FUND_ID = T.FUND_ID
842     );
843 
844   update OZF_FUNDS_ALL_TL T set (
845       SHORT_NAME,
846       DESCRIPTION
847     ) = (select
848       B.SHORT_NAME,
849       B.DESCRIPTION
850     from OZF_FUNDS_ALL_TL B
851     where B.FUND_ID = T.FUND_ID
852     and B.LANGUAGE = T.SOURCE_LANG)
853   where (
854       T.FUND_ID,
855       T.LANGUAGE
856   ) in (select
857       SUBT.FUND_ID,
858       SUBT.LANGUAGE
859     from OZF_FUNDS_ALL_TL SUBB, OZF_FUNDS_ALL_TL SUBT
860     where SUBB.FUND_ID = SUBT.FUND_ID
861     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
862     and (SUBB.SHORT_NAME <> SUBT.SHORT_NAME
863       or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
864       or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
865       or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
866   ));
867 
868   insert into OZF_FUNDS_ALL_TL (
869     FUND_ID,
870     LAST_UPDATE_DATE,
871     LAST_UPDATED_BY,
872     LAST_UPDATE_LOGIN,
873     CREATION_DATE,
874     CREATED_BY,
875     CREATED_FROM,
876     REQUEST_ID,
877     PROGRAM_APPLICATION_ID,
878     PROGRAM_ID,
879     PROGRAM_UPDATE_DATE,
880     SHORT_NAME,
881     DESCRIPTION,
882     LANGUAGE,
883     SOURCE_LANG
884   ) select
885     B.FUND_ID,
886     B.LAST_UPDATE_DATE,
887     B.LAST_UPDATED_BY,
888     B.LAST_UPDATE_LOGIN,
889     B.CREATION_DATE,
890     B.CREATED_BY,
891     B.CREATED_FROM,
892     B.REQUEST_ID,
893     B.PROGRAM_APPLICATION_ID,
894     B.PROGRAM_ID,
895     B.PROGRAM_UPDATE_DATE,
896     B.SHORT_NAME,
897     B.DESCRIPTION,
898     L.LANGUAGE_CODE,
899     B.SOURCE_LANG
900   from OZF_FUNDS_ALL_TL B, FND_LANGUAGES L
901   where L.INSTALLED_FLAG in ('I', 'B')
902   and B.LANGUAGE = userenv('LANG')
906     where T.FUND_ID = B.FUND_ID
903   and not exists
904     (select NULL
905     from OZF_FUNDS_ALL_TL T
907     and T.LANGUAGE = L.LANGUAGE_CODE);
908 end ADD_LANGUAGE;
909 
910 procedure TRANSLATE_ROW(
911   X_FUND_ID in NUMBER,
912   X_SHORT_NAME in VARCHAR2,
913   X_DESCRIPTION in VARCHAR2,
914   X_OWNERS in VARCHAR2
915 )
916 IS
917 BEGIN
918   update OZF_FUNDS_ALL_TL set
919     short_name = nvl(x_short_name, short_name),
920     description = nvl(x_description, description),
921     source_lang = userenv('LANG'),
922     last_update_date = sysdate,
923     last_updated_by = decode(x_owners, 'SEED', 1, 0),
924     last_update_login = 0
925   where fund_id = x_fund_id
926   and userenv('LANG') in (language, source_lang);
927 END TRANSLATE_ROW;
928 
929 procedure  LOAD_ROW(
930   X_FUND_ID in NUMBER,
931   X_CREATED_FROM in VARCHAR2,
932   X_REQUEST_ID in NUMBER,
933   X_FUND_NUMBER in VARCHAR2,
934   X_PARENT_FUND_ID in NUMBER,
935   X_CATEGORY_ID in NUMBER,
936   X_FUND_TYPE in VARCHAR2,
937   X_FUND_USAGE in VARCHAR2,
938   X_STATUS_CODE in VARCHAR2,
939   X_STATUS_DATE in DATE,
940   X_ACCRUED_LIABLE_ACCOUNT in NUMBER,
941   X_DED_ADJUSTMENT_ACCOUNT in NUMBER,
942   X_LIABILITY_FLAG in VARCHAR2,
943   X_SET_OF_BOOKS_ID in NUMBER,
944   X_START_PERIOD_ID in NUMBER,
945   X_END_PERIOD_ID in NUMBER,
946   X_START_DATE_ACTIVE in DATE,
947   X_END_DATE_ACTIVE in DATE,
948   X_BUDGET_AMOUNT_TC in NUMBER,
949   X_BUDGET_AMOUNT_FC in NUMBER,
950   X_AVAILABLE_AMOUNT in NUMBER,
951   X_DISTRIBUTED_AMOUNT in NUMBER,
952   X_CURRENCY_CODE_TC in VARCHAR2,
953   X_CURRENCY_CODE_FC in VARCHAR2,
954   X_EXCHANGE_RATE_TYPE in VARCHAR2,
955   X_EXCHANGE_RATE_DATE in DATE,
956   X_EXCHANGE_RATE in NUMBER,
957   X_DEPARTMENT_ID in NUMBER,
958   X_COSTCENTRE_ID in NUMBER,
959   X_OWNER in NUMBER,
960   X_ACCRUAL_METHOD in VARCHAR2,
961   X_ACCRUAL_OPERAND in VARCHAR2,
962   X_ACCRUAL_RATE in NUMBER,
963   X_ACCRUAL_BASIS in VARCHAR2,
964   X_HIERARCHY in VARCHAR2,
965   X_HIERARCHY_LEVEL in VARCHAR2,
966   X_BUDGET_FLAG in VARCHAR2,
967   X_EARNED_FLAG in VARCHAR2,
968   X_APPLY_ACCRUAL_ON in VARCHAR2,
969   X_ACCRUAL_PHASE in VARCHAR2,
970   X_ACCRUAL_CAP in NUMBER,
971   X_ACCRUAL_UOM in VARCHAR2,
972   X_OBJECT_VERSION_NUMBER in NUMBER,
973   X_ATTRIBUTE_CATEGORY in VARCHAR2,
974   X_ATTRIBUTE1 in VARCHAR2,
975   X_ATTRIBUTE2 in VARCHAR2,
976   X_ATTRIBUTE3 in VARCHAR2,
977   X_ATTRIBUTE4 in VARCHAR2,
978   X_ATTRIBUTE5 in VARCHAR2,
979   X_ATTRIBUTE6 in VARCHAR2,
980   X_ATTRIBUTE7 in VARCHAR2,
981   X_ATTRIBUTE8 in VARCHAR2,
982   X_ATTRIBUTE9 in VARCHAR2,
983   X_ATTRIBUTE10 in VARCHAR2,
984   X_ATTRIBUTE11 in VARCHAR2,
985   X_ATTRIBUTE12 in VARCHAR2,
986   X_ATTRIBUTE13 in VARCHAR2,
987   X_ATTRIBUTE14 in VARCHAR2,
988   X_ATTRIBUTE15 in VARCHAR2,
989   X_SHORT_NAME in VARCHAR2,
990   X_DESCRIPTION in VARCHAR2,
991   X_OWNERS in VARCHAR2,
992   X_HIERARCHY_ID in NUMBER,
993   X_PARENT_NODE_ID in NUMBER,
994   X_NODE_ID in NUMBER,
995   X_ORIGINAL_BUDGET in NUMBER,
996   X_TRANSFERED_IN_AMT in NUMBER,
997   X_TRANSFERED_OUT_AMT in NUMBER,
998   X_HOLDBACK_AMT in NUMBER,
999   X_PLANNED_AMT in NUMBER,
1000   X_COMMITTED_AMT in NUMBER,
1001   X_EARNED_AMT in NUMBER,
1002   X_PAID_AMT in NUMBER,
1003   X_PLAN_TYPE in VARCHAR2,
1004   X_PLAN_ID in NUMBER,
1005   X_LIABLE_ACCNT_SEGMENTS in VARCHAR2,
1006   X_ADJUSTMENT_ACCNT_SEGMENTS in VARCHAR2
1007 )
1008 IS
1009 
1010   l_user_id    number := 0;
1011   l_version    number;
1012   l_fund_id    number;
1013   l_dummy_char varchar2(1);
1014   l_row_id     varchar2(100);
1015 
1016   cursor c_version is
1017   select object_version_number
1018   from   ozf_funds_all_b
1019   where  fund_id = X_FUND_ID;
1020 
1021   cursor c_fund_exists is
1022   select 'x'
1023   from   ozf_funds_all_b
1024   where  fund_id = X_FUND_ID;
1025 
1026   cursor c_fund_id is
1027   select OZF_FUNDS_S.nextval
1028   from   dual;
1029 
1030 BEGIN
1031 
1032   if X_OWNERS = 'SEED' then
1033     l_user_id := 1;
1034   end if;
1035 
1036   open c_fund_exists;
1037   fetch c_fund_exists into l_dummy_char;
1038   if c_fund_exists%notfound then
1039     close c_fund_exists;
1040     if X_FUND_ID is not null then
1041 	 l_fund_id := X_FUND_ID;
1042     else
1043       open c_fund_id;
1044       fetch c_fund_id into l_fund_id;
1045       close c_fund_id;
1046     end if;
1047     l_version := 1;
1048     AMS_FUNDS_ALL_PKG.INSERT_ROW(
1049        X_ROWID                    =>l_row_id
1050       ,X_FUND_ID                  =>l_fund_id
1051       ,X_CREATED_FROM             =>X_CREATED_FROM
1052       ,X_REQUEST_ID               =>X_REQUEST_ID
1053       ,X_FUND_NUMBER              =>X_FUND_NUMBER
1054       ,X_PARENT_FUND_ID           =>X_PARENT_FUND_ID
1055       ,X_CATEGORY_ID              =>X_CATEGORY_ID
1056       ,X_FUND_TYPE                =>X_FUND_TYPE
1057       ,X_FUND_USAGE               =>X_FUND_USAGE
1058       ,X_STATUS_CODE              =>X_STATUS_CODE
1059       ,X_STATUS_DATE              =>X_STATUS_DATE
1063       ,X_SET_OF_BOOKS_ID          =>X_SET_OF_BOOKS_ID
1060       ,X_ACCRUED_LIABLE_ACCOUNT   =>X_ACCRUED_LIABLE_ACCOUNT
1061       ,X_DED_ADJUSTMENT_ACCOUNT   =>X_DED_ADJUSTMENT_ACCOUNT
1062       ,X_LIABILITY_FLAG           =>X_LIABILITY_FLAG
1064       ,X_START_PERIOD_ID          =>X_START_PERIOD_ID
1065       ,X_END_PERIOD_ID            =>X_END_PERIOD_ID
1066       ,X_START_DATE_ACTIVE        =>X_START_DATE_ACTIVE
1067       ,X_END_DATE_ACTIVE          =>X_END_DATE_ACTIVE
1068       ,X_BUDGET_AMOUNT_TC         =>X_BUDGET_AMOUNT_TC
1069       ,X_BUDGET_AMOUNT_FC         =>X_BUDGET_AMOUNT_FC
1070       ,X_AVAILABLE_AMOUNT         =>X_AVAILABLE_AMOUNT
1071       ,X_DISTRIBUTED_AMOUNT       =>X_DISTRIBUTED_AMOUNT
1072       ,X_CURRENCY_CODE_TC         =>X_CURRENCY_CODE_TC
1073       ,X_CURRENCY_CODE_FC         =>X_CURRENCY_CODE_FC
1074       ,X_EXCHANGE_RATE_TYPE       =>X_EXCHANGE_RATE_TYPE
1075       ,X_EXCHANGE_RATE_DATE       =>X_EXCHANGE_RATE_DATE
1076       ,X_EXCHANGE_RATE            =>X_EXCHANGE_RATE
1077       ,X_DEPARTMENT_ID            =>X_DEPARTMENT_ID
1078       ,X_COSTCENTRE_ID            =>X_COSTCENTRE_ID
1079       ,X_OWNER                    =>X_OWNER
1080       ,X_ACCRUAL_METHOD           =>X_ACCRUAL_METHOD
1081       ,X_ACCRUAL_OPERAND          =>X_ACCRUAL_OPERAND
1082       ,X_ACCRUAL_RATE             =>X_ACCRUAL_RATE
1083       ,X_ACCRUAL_BASIS            =>X_ACCRUAL_BASIS
1084       ,X_HIERARCHY                =>X_HIERARCHY
1085       ,X_HIERARCHY_LEVEL          =>X_HIERARCHY_LEVEL
1086       ,X_BUDGET_FLAG              =>X_BUDGET_FLAG
1087       ,X_EARNED_FLAG              =>X_EARNED_FLAG
1088       ,X_APPLY_ACCRUAL_ON         =>X_APPLY_ACCRUAL_ON
1089       ,X_ACCRUAL_PHASE            =>X_ACCRUAL_PHASE
1090       ,X_ACCRUAL_CAP              =>X_ACCRUAL_CAP
1091       ,X_ACCRUAL_UOM              =>X_ACCRUAL_UOM
1092       ,X_OBJECT_VERSION_NUMBER    =>l_version
1093       ,X_ATTRIBUTE_CATEGORY       =>X_ATTRIBUTE_CATEGORY
1094       ,X_ATTRIBUTE1               =>X_ATTRIBUTE1
1095       ,X_ATTRIBUTE2               =>X_ATTRIBUTE2
1096       ,X_ATTRIBUTE3               =>X_ATTRIBUTE3
1097       ,X_ATTRIBUTE4               =>X_ATTRIBUTE4
1098       ,X_ATTRIBUTE5               =>X_ATTRIBUTE5
1099       ,X_ATTRIBUTE6               =>X_ATTRIBUTE6
1100       ,X_ATTRIBUTE7               =>X_ATTRIBUTE7
1101       ,X_ATTRIBUTE8               =>X_ATTRIBUTE8
1102       ,X_ATTRIBUTE9               =>X_ATTRIBUTE9
1106       ,X_ATTRIBUTE13              =>X_ATTRIBUTE13
1103       ,X_ATTRIBUTE10              =>X_ATTRIBUTE10
1104       ,X_ATTRIBUTE11              =>X_ATTRIBUTE11
1105       ,X_ATTRIBUTE12              =>X_ATTRIBUTE12
1107       ,X_ATTRIBUTE14              =>X_ATTRIBUTE14
1108       ,X_ATTRIBUTE15              =>X_ATTRIBUTE15
1109       ,X_SHORT_NAME               =>X_SHORT_NAME
1110       ,X_DESCRIPTION              =>X_DESCRIPTION
1111       ,X_CREATION_DATE            =>SYSDATE
1112       ,X_CREATED_BY               =>l_user_id
1113       ,X_LAST_UPDATE_DATE         =>SYSDATE
1114       ,X_LAST_UPDATED_BY          =>l_user_id
1115       ,X_LAST_UPDATE_LOGIN        =>0
1116       ,X_HIERARCHY_ID             =>X_HIERARCHY_ID
1117       ,X_PARENT_NODE_ID                =>X_PARENT_NODE_ID
1118       ,X_NODE_ID                  =>X_NODE_ID
1119       ,X_ORIGINAL_BUDGET          =>X_ORIGINAL_BUDGET
1120       ,X_TRANSFERED_IN_AMT        =>X_TRANSFERED_IN_AMT
1121       ,X_TRANSFERED_OUT_AMT       =>X_TRANSFERED_OUT_AMT
1122       ,X_HOLDBACK_AMT             =>X_HOLDBACK_AMT
1123       ,X_PLANNED_AMT              =>X_PLANNED_AMT
1124       ,X_COMMITTED_AMT            =>X_COMMITTED_AMT
1125       ,X_EARNED_AMT               =>X_EARNED_AMT
1126       ,X_PAID_AMT                 =>X_PAID_AMT
1127       ,X_PLAN_TYPE                =>X_PLAN_TYPE
1128       ,X_PLAN_ID                  =>X_PLAN_ID
1129       ,X_LIABLE_ACCNT_SEGMENTS    =>X_LIABLE_ACCNT_SEGMENTS
1130       ,X_ADJUSTMENT_ACCNT_SEGMENTS =>X_ADJUSTMENT_ACCNT_SEGMENTS
1131     );
1132   else
1133     close c_fund_exists;
1134     open c_version;
1135     fetch c_version into l_version;
1136     close c_version;
1137     AMS_FUNDS_ALL_PKG.UPDATE_ROW(
1138        X_FUND_ID                  =>l_fund_id
1139       ,X_CREATED_FROM             =>X_CREATED_FROM
1140       ,X_REQUEST_ID               =>X_REQUEST_ID
1141       ,X_FUND_NUMBER              =>X_FUND_NUMBER
1142       ,X_PARENT_FUND_ID           =>X_PARENT_FUND_ID
1143       ,X_CATEGORY_ID              =>X_CATEGORY_ID
1144       ,X_FUND_TYPE                =>X_FUND_TYPE
1145       ,X_FUND_USAGE               =>X_FUND_USAGE
1146       ,X_STATUS_CODE              =>X_STATUS_CODE
1147       ,X_STATUS_DATE              =>X_STATUS_DATE
1148       ,X_ACCRUED_LIABLE_ACCOUNT   =>X_ACCRUED_LIABLE_ACCOUNT
1149       ,X_DED_ADJUSTMENT_ACCOUNT   =>X_DED_ADJUSTMENT_ACCOUNT
1150       ,X_LIABILITY_FLAG           =>X_LIABILITY_FLAG
1151       ,X_SET_OF_BOOKS_ID          =>X_SET_OF_BOOKS_ID
1152       ,X_START_PERIOD_ID          =>X_START_PERIOD_ID
1153       ,X_END_PERIOD_ID            =>X_END_PERIOD_ID
1154       ,X_START_DATE_ACTIVE        =>X_START_DATE_ACTIVE
1155       ,X_END_DATE_ACTIVE          =>X_END_DATE_ACTIVE
1156       ,X_BUDGET_AMOUNT_TC         =>X_BUDGET_AMOUNT_TC
1157       ,X_BUDGET_AMOUNT_FC         =>X_BUDGET_AMOUNT_FC
1158       ,X_AVAILABLE_AMOUNT         =>X_AVAILABLE_AMOUNT
1159       ,X_DISTRIBUTED_AMOUNT       =>X_DISTRIBUTED_AMOUNT
1160       ,X_CURRENCY_CODE_TC         =>X_CURRENCY_CODE_TC
1161       ,X_CURRENCY_CODE_FC         =>X_CURRENCY_CODE_FC
1162       ,X_EXCHANGE_RATE_TYPE       =>X_EXCHANGE_RATE_TYPE
1163       ,X_EXCHANGE_RATE_DATE       =>X_EXCHANGE_RATE_DATE
1164       ,X_EXCHANGE_RATE            =>X_EXCHANGE_RATE
1165       ,X_DEPARTMENT_ID            =>X_DEPARTMENT_ID
1166       ,X_COSTCENTRE_ID            =>X_COSTCENTRE_ID
1167       ,X_OWNER                    =>X_OWNER
1168       ,X_ACCRUAL_METHOD           =>X_ACCRUAL_METHOD
1169       ,X_ACCRUAL_OPERAND          =>X_ACCRUAL_OPERAND
1170       ,X_ACCRUAL_RATE             =>X_ACCRUAL_RATE
1171       ,X_ACCRUAL_BASIS            =>X_ACCRUAL_BASIS
1172       ,X_HIERARCHY                =>X_HIERARCHY
1173       ,X_HIERARCHY_LEVEL          =>X_HIERARCHY_LEVEL
1174       ,X_BUDGET_FLAG              =>X_BUDGET_FLAG
1175       ,X_EARNED_FLAG              =>X_EARNED_FLAG
1176       ,X_APPLY_ACCRUAL_ON         =>X_APPLY_ACCRUAL_ON
1177       ,X_ACCRUAL_PHASE            =>X_ACCRUAL_PHASE
1178       ,X_ACCRUAL_CAP              =>X_ACCRUAL_CAP
1179       ,X_ACCRUAL_UOM              =>X_ACCRUAL_UOM
1180       ,X_OBJECT_VERSION_NUMBER    =>l_version + 1
1181       ,X_ATTRIBUTE_CATEGORY       =>X_ATTRIBUTE_CATEGORY
1182       ,X_ATTRIBUTE1               =>X_ATTRIBUTE1
1183       ,X_ATTRIBUTE2               =>X_ATTRIBUTE2
1184       ,X_ATTRIBUTE3               =>X_ATTRIBUTE3
1185       ,X_ATTRIBUTE4               =>X_ATTRIBUTE4
1186       ,X_ATTRIBUTE5               =>X_ATTRIBUTE5
1187       ,X_ATTRIBUTE6               =>X_ATTRIBUTE6
1188       ,X_ATTRIBUTE7               =>X_ATTRIBUTE7
1189       ,X_ATTRIBUTE8               =>X_ATTRIBUTE8
1190       ,X_ATTRIBUTE9               =>X_ATTRIBUTE9
1191       ,X_ATTRIBUTE10              =>X_ATTRIBUTE10
1192       ,X_ATTRIBUTE11              =>X_ATTRIBUTE11
1193       ,X_ATTRIBUTE12              =>X_ATTRIBUTE12
1194       ,X_ATTRIBUTE13              =>X_ATTRIBUTE13
1195       ,X_ATTRIBUTE14              =>X_ATTRIBUTE14
1196       ,X_ATTRIBUTE15              =>X_ATTRIBUTE15
1197       ,X_SHORT_NAME               =>X_SHORT_NAME
1198       ,X_DESCRIPTION              =>X_DESCRIPTION
1199       ,X_LAST_UPDATE_DATE         =>SYSDATE
1200       ,X_LAST_UPDATED_BY          =>l_user_id
1201       ,X_LAST_UPDATE_LOGIN        =>0
1202       ,X_HIERARCHY_ID             =>X_HIERARCHY_ID
1203       ,X_PARENT_NODE_ID                =>X_PARENT_NODE_ID
1204       ,X_NODE_ID                  =>X_NODE_ID
1205       ,X_ORIGINAL_BUDGET          =>X_ORIGINAL_BUDGET
1206       ,X_TRANSFERED_IN_AMT        =>X_TRANSFERED_IN_AMT
1207       ,X_TRANSFERED_OUT_AMT       =>X_TRANSFERED_OUT_AMT
1208       ,X_HOLDBACK_AMT             =>X_HOLDBACK_AMT
1209       ,X_PLANNED_AMT              =>X_PLANNED_AMT
1210       ,X_COMMITTED_AMT            =>X_COMMITTED_AMT
1211       ,X_EARNED_AMT               =>X_EARNED_AMT
1212       ,X_PAID_AMT                 =>X_PAID_AMT
1213       ,X_PLAN_TYPE                =>X_PLAN_TYPE
1214       ,X_PLAN_ID                  =>X_PLAN_ID
1215       ,X_LIABLE_ACCNT_SEGMENTS    =>X_LIABLE_ACCNT_SEGMENTS
1216       ,X_ADJUSTMENT_ACCNT_SEGMENTS =>X_ADJUSTMENT_ACCNT_SEGMENTS
1217     );
1218   end if;
1219 END LOAD_ROW;
1220 
1221 
1222 end AMS_FUNDS_ALL_PKG;