DBA Data[Home] [Help]

PACKAGE BODY: APPS.OZF_SYS_PARAMETERS_PVT

Source


1 PACKAGE BODY OZF_SYS_PARAMETERS_PVT AS
2 /* $Header: ozfvsysb.pls 120.13 2007/12/21 07:47:54 gdeepika ship $ */
3 
4 g_pkg_name   CONSTANT VARCHAR2(30):='OZF_Sys_Parameters_PVT';
5 
6 G_DEBUG BOOLEAN := FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_debug_high);
7 
8 
9 
10 
11 -- PROCEDURE
12 --    Check_Batch_Tolerances
13 --
14 -- HISTORY
15 --    05/18/2004  upoluri  Create.
16 ---------------------------------------------------------------------
17 PROCEDURE Check_Batch_Tolerances(
18    p_sys_parameters_rec IN  sys_parameters_rec_type
19   ,x_return_status      OUT NOCOPY VARCHAR2
20 )
21 IS
22 
23 BEGIN
24    x_return_status := FND_API.g_ret_sts_success;
25 
26    IF (p_sys_parameters_rec.header_tolerance_calc_code is null
27          AND p_sys_parameters_rec.header_tolerance_operand is not null)
28          THEN
29                IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
30                THEN
31                   FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BATCH_TOL_TYPE_REQ');
32                   FND_MSG_PUB.add;
33               END IF;
34               x_return_status := FND_API.g_ret_sts_error;
35               RETURN;
36       ELSIF (p_sys_parameters_rec.header_tolerance_calc_code is not null
37          AND p_sys_parameters_rec.header_tolerance_operand is null)
38          THEN
39                IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
40                THEN
41                   FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BATCH_TOL_VAL_REQ');
42                   FND_MSG_PUB.add;
43               END IF;
44               x_return_status := FND_API.g_ret_sts_error;
45               RETURN;
46       END IF;
47 
48 
49 
50       IF (p_sys_parameters_rec.line_tolerance_calc_code is null
51          AND p_sys_parameters_rec.line_tolerance_operand is not null )
52          THEN
53                IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
54                THEN
55                   FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_LINE_TOL_TYPE_REQ');
56                   FND_MSG_PUB.add;
57               END IF;
58               x_return_status := FND_API.g_ret_sts_error;
59               RETURN;
60       ELSIF (p_sys_parameters_rec.line_tolerance_calc_code is not null
61          AND p_sys_parameters_rec.line_tolerance_operand is null)
62          THEN
63                IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
64                THEN
65                   FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_LINE_TOL_VAL_REQ');
66                   FND_MSG_PUB.add;
67               END IF;
68               x_return_status := FND_API.g_ret_sts_error;
69               RETURN;
70       END IF;
71 
72 END Check_Batch_Tolerances;
73 
74 ---------------------------------------------------------------------
75 -- PROCEDURE
76 --    Create_Sys_Parameters
77 --
78 -- HISTORY
79 --    06/12/2000  mchang  Create.
80 --    08/31/2000  mchang  Updated: insert 4 more columns.
81 --    03/15/2001  mchang  Updated: insert autopay setting columns.
82 ---------------------------------------------------------------------
83 PROCEDURE Create_Sys_Parameters(
84    p_api_version       IN  NUMBER
85   ,p_init_msg_list     IN  VARCHAR2  := FND_API.g_false
86   ,p_commit            IN  VARCHAR2  := FND_API.g_false
87   ,p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full
88 
89   ,x_return_status     OUT NOCOPY VARCHAR2
90   ,x_msg_count         OUT NOCOPY NUMBER
91   ,x_msg_data          OUT NOCOPY VARCHAR2
92 
93   ,p_sys_parameters_rec IN  sys_parameters_rec_type
94   ,x_set_of_books_id    OUT NOCOPY NUMBER
95 )
96 IS
97 
98    l_api_version CONSTANT NUMBER       := 1.0;
99    l_api_name    CONSTANT VARCHAR2(30) := 'Create_Sys_Parameters';
100    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
101 
102    l_last_updated_by       NUMBER;
103    l_created_by            NUMBER;
104    l_last_update_login     NUMBER;
105    l_org_id                NUMBER;
106    l_post_to_gl            VARCHAR2(1);
107    l_transfer_to_gl        VARCHAR2(1);
108 
109    l_return_status         VARCHAR2(1);
110    l_sys_parameters_rec    sys_parameters_rec_type := p_sys_parameters_rec;
111    l_object_version_number NUMBER := 1;
112    l_books_id_count        NUMBER;
113 
114    l_set_of_books_id       NUMBER;
115    l_set_of_books          VARCHAR2(30);
116 
117 
118    -- Cursor to validate the uniqueness of the set_of_books_id
119    CURSOR c_books_id_count(cv_org_id IN NUMBER) IS
120    SELECT  COUNT(set_of_books_id)
121      FROM  ozf_sys_parameters;
122      --WHERE org_id = cv_org_id;
123      --WHERE set_of_books_id = cv_books_id;
124 
125 BEGIN
126 
127    --------------------- initialize -----------------------
128    SAVEPOINT Create_Sys_Parameters;
129 
130    IF g_debug THEN
131       OZF_Utility_PVT.debug_message(l_full_name||': start');
132    END IF;
133 
134    IF FND_API.to_boolean(p_init_msg_list) THEN
135       FND_MSG_PUB.initialize;
136    END IF;
137 
138    IF NOT FND_API.compatible_api_call(
139          l_api_version,
140          p_api_version,
141          l_api_name,
142          g_pkg_name
143    ) THEN
144       RAISE FND_API.g_exc_unexpected_error;
145    END IF;
146 
147    x_return_status := FND_API.g_ret_sts_success;
148 
149    l_last_updated_by := NVL(FND_GLOBAL.user_id,-1);
150    l_created_by := NVL(FND_GLOBAL.user_id,-1);
151    l_last_update_login := NVL(FND_GLOBAL.conc_login_id,-1);
152 
153    l_post_to_gl := l_sys_parameters_rec.post_to_gl;  -- Bug 4760420
154 
155    --bugfix 4743804
156     IF l_post_to_gl IS NULL OR l_post_to_gl = FND_API.G_MISS_CHAR
157    THEN
158       l_post_to_gl:=FND_API.g_false;
159    END IF;
160 
161    IF l_transfer_to_gl  IS NULL OR l_transfer_to_gl = FND_API.G_MISS_CHAR
162    THEN
163       l_transfer_to_gl:=FND_API.g_false;
164    END IF;
165    --end bugfix 4743804
166 
167    l_org_id := l_sys_parameters_rec.org_id;  -- R12 Enhancements
168 
169    ----------------------- validate -----------------------
170    IF g_debug THEN
171       OZF_Utility_PVT.debug_message(l_full_name ||': validate');
172    END IF;
173 
174    -- validate the uniqueness of the set_of_books_id
175    IF p_sys_parameters_rec.set_of_books_id IS NULL THEN
176       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
177          FND_MESSAGE.set_name('OZF', 'OZF_SET_OF_BOOKS_NULL');
178          FND_MSG_PUB.add;
179       END IF;
180       RAISE FND_API.g_exc_error;
181    ELSE
182       --OPEN c_books_id_count(p_sys_parameters_rec.set_of_books_id);
183       OPEN c_books_id_count(l_org_id);
184       FETCH c_books_id_count INTO l_books_id_count;
185       CLOSE c_books_id_count;
186 
187       -- R12 : Commented below condition, to add multiple system parameters.
188      /* IF l_books_id_count > 0 THEN
189         IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
190            FND_MESSAGE.set_name('OZF', 'OZF_SET_OF_BOOKS_EXIST');
191            FND_MSG_PUB.add;
192         END IF;
193         RAISE FND_API.g_exc_error;
194       END IF;  */
195    END IF;
196 
197    -- Get the set_of_books_id for given org_id
198    MO_UTILS.Get_Ledger_Info (
199      p_operating_unit     =>  l_sys_parameters_rec.org_id,
200      p_ledger_id          =>  l_set_of_books_id,
201      p_ledger_name        =>  l_set_of_books
202    );
203 
204    l_sys_parameters_rec.set_of_books_id := l_set_of_books_id;
205 
206    Validate_Sys_Parameters(
207       p_api_version         => l_api_version,
208       p_init_msg_list       => p_init_msg_list,
209       p_validation_level    => p_validation_level,
210       x_return_status       => l_return_status,
211       x_msg_count           => x_msg_count,
212       x_msg_data            => x_msg_data,
213       p_sys_parameters_rec  => l_sys_parameters_rec
214    );
215 
216    IF l_return_status = FND_API.g_ret_sts_error THEN
217       RAISE FND_API.g_exc_error;
218    ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
219       RAISE FND_API.g_exc_unexpected_error;
220    END IF;
221 
222   -------------------------- insert --------------------------
223   IF g_debug THEN
224      OZF_Utility_PVT.debug_message(l_full_name ||': insert');
225   END IF;
226 
227   INSERT INTO ozf_sys_parameters_all (
228        set_of_books_id
229       ,object_version_number
230       ,last_update_date
231       ,last_updated_by
232       ,creation_date
233       ,created_by
234       ,last_update_login
235       ,request_id
236       ,program_application_id
237       ,program_update_date
238       ,program_id
239       ,created_from
240       ,post_to_gl
241       ,transfer_to_gl_in
242       ,ap_payment_term_id
243       ,rounding_level_flag
244       ,gl_id_rounding
245       ,gl_id_ded_clearing
246       ,gl_id_ded_adj
247       ,gl_id_accr_promo_liab
248       ,gl_id_ded_adj_clearing
249       ,gl_rec_ded_account
250       ,gl_rec_clearing_account
251       ,gl_cost_adjustment_acct
252       ,gl_contra_liability_acct
253       ,gl_pp_accrual_acct
254       ,gl_date_type
255       ,days_due
256       ,claim_type_id
257       ,reason_code_id
258       ,autopay_claim_type_id
259       ,autopay_reason_code_id
260       ,autopay_flag
261       ,autopay_periodicity
262       ,autopay_periodicity_type
263       ,accounting_method_option
264       ,billback_trx_type_id
265       ,cm_trx_type_id
266       ,attribute_category
267       ,attribute1
268       ,attribute2
269       ,attribute3
270       ,attribute4
271       ,attribute5
272       ,attribute6
273       ,attribute7
274       ,attribute8
275       ,attribute9
276       ,attribute10
277       ,attribute11
278       ,attribute12
279       ,attribute13
280       ,attribute14
281       ,attribute15
282       ,org_id
283       ,batch_source_id
284       ,payables_source
285       ,default_owner_id
286       ,auto_assign_flag
287       ,exchange_rate_type
288       ,order_type_id
289       --11.5.10 enhancements
290 	  , gl_acct_for_offinv_flag
291 	  --, short_payment_reason_code_id
292 	  , cb_trx_type_id
293 	  , pos_write_off_threshold
294 	  , neg_write_off_threshold
295 	  , adj_rec_trx_id
296 	  , wo_rec_trx_id
297 	  , neg_wo_rec_trx_id
298 	  , un_earned_pay_allow_to
299 	  , un_earned_pay_thold_type
300 	  , un_earned_pay_thold_amount
301 	  , un_earned_pay_thold_flag
302 	  , header_tolerance_calc_code
303 	  , header_tolerance_operand
304 	  , line_tolerance_calc_code
305 	  , line_tolerance_operand
306 
307       , ship_debit_accrual_flag
308       , ship_debit_calc_type
309       , inventory_tracking_flag
310       , end_cust_relation_flag
311       , auto_tp_accrual_flag
312       , gl_balancing_flex_value
313       , prorate_earnings_flag
314       , sales_credit_default_type
315       , net_amt_for_mass_settle_flag
316 
317       ,claim_tax_incl_flag
318   )
319   VALUES (
320        l_sys_parameters_rec.set_of_books_id
321       ,l_object_version_number
322       ,SYSDATE                                -- LAST_UPDATE_DATE
323       ,l_last_updated_by                      -- LAST_UPDATED_BY
324       ,SYSDATE                                -- CREATION_DATE
325       ,l_created_by                           -- CREATED_BY
326       ,l_last_update_login                    -- LAST_UPDATE_LOGIN
327       ,FND_GLOBAL.CONC_REQUEST_ID             -- REQUEST_ID
328       ,FND_GLOBAL.PROG_APPL_ID                -- PROGRAM_APPLICATION_ID
329       ,SYSDATE                                -- PROGRAM_UPDATE_DATE
330       ,FND_GLOBAL.CONC_PROGRAM_ID             -- PROGRAM_ID
331       ,l_sys_parameters_rec.created_from      -- CREATED_FROM
332       ,l_post_to_gl
333       ,l_transfer_to_gl
334       ,l_sys_parameters_rec.ap_payment_term_id
335       ,l_sys_parameters_rec.rounding_level_flag
336       ,l_sys_parameters_rec.gl_id_rounding
337       ,l_sys_parameters_rec.gl_id_ded_clearing
338       ,l_sys_parameters_rec.gl_id_ded_adj
339       ,l_sys_parameters_rec.gl_id_accr_promo_liab
340       ,l_sys_parameters_rec.gl_id_ded_adj_clearing
341       ,l_sys_parameters_rec.gl_rec_ded_account
342       ,l_sys_parameters_rec.gl_rec_clearing_account
343       ,l_sys_parameters_rec.gl_cost_adjustment_acct
344       ,l_sys_parameters_rec.gl_contra_liability_acct
345       ,l_sys_parameters_rec.gl_pp_accrual_acct
346       ,l_sys_parameters_rec.gl_date_type
347       ,l_sys_parameters_rec.days_due
348       ,l_sys_parameters_rec.claim_type_id
349       ,l_sys_parameters_rec.reason_code_id
350       ,l_sys_parameters_rec.autopay_claim_type_id
351       ,l_sys_parameters_rec.autopay_reason_code_id
352       ,l_sys_parameters_rec.autopay_flag
353       ,l_sys_parameters_rec.autopay_periodicity
354       ,l_sys_parameters_rec.autopay_periodicity_type
355       ,l_sys_parameters_rec.accounting_method_option
356       ,l_sys_parameters_rec.billback_trx_type_id
357       ,l_sys_parameters_rec.cm_trx_type_id
358       ,l_sys_parameters_rec.attribute_category
359       ,l_sys_parameters_rec.attribute1
360       ,l_sys_parameters_rec.attribute2
361       ,l_sys_parameters_rec.attribute3
362       ,l_sys_parameters_rec.attribute4
363       ,l_sys_parameters_rec.attribute5
364       ,l_sys_parameters_rec.attribute6
365       ,l_sys_parameters_rec.attribute7
366       ,l_sys_parameters_rec.attribute8
367       ,l_sys_parameters_rec.attribute9
368       ,l_sys_parameters_rec.attribute10
369       ,l_sys_parameters_rec.attribute11
370       ,l_sys_parameters_rec.attribute12
371       ,l_sys_parameters_rec.attribute13
372       ,l_sys_parameters_rec.attribute14
373       ,l_sys_parameters_rec.attribute15
374       ,l_org_id                                       -- org_id
375       ,l_sys_parameters_rec.batch_source_id
376       ,l_sys_parameters_rec.payables_source
377       ,l_sys_parameters_rec.default_owner_id
378       ,l_sys_parameters_rec.auto_assign_flag
379       ,l_sys_parameters_rec.exchange_rate_type
380       ,l_sys_parameters_rec.order_type_id
381       --11.5.10 enhancements
382       ,l_sys_parameters_rec.gl_acct_for_offinv_flag
383       --,l_sys_parameters_rec.short_payment_reason_code_id
384       ,l_sys_parameters_rec.cb_trx_type_id
385       ,l_sys_parameters_rec.pos_write_off_threshold
386       ,l_sys_parameters_rec.neg_write_off_threshold
387       ,l_sys_parameters_rec.adj_rec_trx_id
388       ,l_sys_parameters_rec.wo_rec_trx_id
389       ,l_sys_parameters_rec.neg_wo_rec_trx_id
390       ,l_sys_parameters_rec.un_earned_pay_allow_to
391       ,l_sys_parameters_rec.un_earned_pay_thold_type
392       ,l_sys_parameters_rec.un_earned_pay_threshold
393       ,l_sys_parameters_rec.un_earned_pay_thold_flag
394       ,l_sys_parameters_rec.header_tolerance_calc_code
395       ,l_sys_parameters_rec.header_tolerance_operand
396       ,l_sys_parameters_rec.line_tolerance_calc_code
397       ,l_sys_parameters_rec.line_tolerance_operand
398 
399       ,l_sys_parameters_rec.ship_debit_accrual_flag
400       ,l_sys_parameters_rec.ship_debit_calc_type
401       ,l_sys_parameters_rec.inventory_tracking_flag
402       ,l_sys_parameters_rec.end_cust_relation_flag
403       ,l_sys_parameters_rec.auto_tp_accrual_flag
404       ,l_sys_parameters_rec.gl_balancing_flex_value
405       ,l_sys_parameters_rec.prorate_earnings_flag
406       ,l_sys_parameters_rec.sales_credit_default_type
407       ,l_sys_parameters_rec.net_amt_for_mass_settle_flag
408       ,l_sys_parameters_rec.claim_tax_incl_flag
409       );
410 
411   ------------------------- finish -------------------------------
412   x_set_of_books_id := l_sys_parameters_rec.set_of_books_id;
413 
417   END IF;
414   -- Check for commit
415   IF FND_API.to_boolean(p_commit) THEN
416     COMMIT;
418 
419   FND_MSG_PUB.count_and_get(
420          p_encoded => FND_API.g_false,
421          p_count   => x_msg_count,
422          p_data    => x_msg_data
423   );
424 
425   IF g_debug THEN
426      OZF_Utility_PVT.debug_message(l_full_name ||': end');
427   END IF;
428 
429 EXCEPTION
430     WHEN FND_API.g_exc_error THEN
431       ROLLBACK TO Create_Sys_Parameters;
432       x_return_status := FND_API.g_ret_sts_error;
433       FND_MSG_PUB.count_and_get (
434            p_encoded => FND_API.g_false
435           ,p_count   => x_msg_count
436           ,p_data    => x_msg_data
437           );
438 
439     WHEN FND_API.g_exc_unexpected_error THEN
440       ROLLBACK TO Create_Sys_Parameters;
441       x_return_status := FND_API.g_ret_sts_unexp_error ;
442       FND_MSG_PUB.count_and_get (
443            p_encoded => FND_API.g_false
444           ,p_count   => x_msg_count
445           ,p_data    => x_msg_data
446           );
447 
448 
449     WHEN OTHERS THEN
450       ROLLBACK TO Create_Sys_Parameters;
451       x_return_status := FND_API.g_ret_sts_unexp_error ;
452       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
453                 THEN
454          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
455       END IF;
456       FND_MSG_PUB.count_and_get(
457            p_encoded => FND_API.g_false
458           ,p_count   => x_msg_count
459           ,p_data    => x_msg_data
460           );
461 
462 END Create_Sys_Parameters;
463 
464 
465 ---------------------------------------------------------------
466 -- PROCEDURE
467 --    Delete_Sys_Parameters
468 --
469 -- HISTORY
470 --    06/12/2000  mchang  Create.
471 ---------------------------------------------------------------
472 PROCEDURE Delete_Sys_Parameters(
473    p_api_version       IN  NUMBER
474   ,p_init_msg_list     IN  VARCHAR2 := FND_API.g_false
475   ,p_commit            IN  VARCHAR2 := FND_API.g_false
476 
477   ,x_return_status     OUT NOCOPY VARCHAR2
478   ,x_msg_count         OUT NOCOPY NUMBER
479   ,x_msg_data          OUT NOCOPY VARCHAR2
480 
481   ,p_set_of_books_id   IN  NUMBER
482   ,p_object_version    IN  NUMBER
483 )
484 IS
485 
486    l_api_version CONSTANT NUMBER       := 1.0;
487    l_api_name    CONSTANT VARCHAR2(30) := 'Delete_Sys_Parameters';
488    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
489    l_org_id      NUMBER :=  MO_GLOBAL.GET_CURRENT_ORG_ID();  -- R12 Enhancements
490 
491 BEGIN
492 
493    --------------------- initialize -----------------------
494    SAVEPOINT Delete_Sys_Parameters;
495 
496    IF g_debug THEN
497       OZF_Utility_PVT.debug_message(l_full_name||': start');
498    END IF;
499 
500    IF FND_API.to_boolean(p_init_msg_list) THEN
501       FND_MSG_PUB.initialize;
502    END IF;
503 
504    IF NOT FND_API.compatible_api_call(
505          l_api_version,
506          p_api_version,
507          l_api_name,
508          g_pkg_name
509    ) THEN
510       RAISE FND_API.g_exc_unexpected_error;
511    END IF;
512 
513    x_return_status := FND_API.G_RET_STS_SUCCESS;
514 
515    ------------------------ delete ------------------------
516    IF g_debug THEN
517       OZF_Utility_PVT.debug_message(l_full_name ||': delete');
518    END IF;
519 
520    DELETE FROM ozf_sys_parameters_all
521      WHERE set_of_books_id = p_set_of_books_id
522      AND   object_version_number = p_object_version
523      AND   org_id = l_org_id; -- R12 Enhancements
524 
525    IF (SQL%NOTFOUND) THEN
526       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
527        THEN
528          FND_MESSAGE.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
529          FND_MSG_PUB.add;
530       END IF;
531       RAISE FND_API.g_exc_error;
532    END IF;
533 
534    -------------------- finish --------------------------
535    IF FND_API.to_boolean(p_commit) THEN
536       COMMIT;
537    END IF;
538 
539    FND_MSG_PUB.count_and_get(
540          p_encoded => FND_API.g_false,
541          p_count   => x_msg_count,
542          p_data    => x_msg_data
543    );
544 
545    IF g_debug THEN
546       OZF_Utility_PVT.debug_message(l_full_name ||': end');
547    END IF;
548 
549 EXCEPTION
550    WHEN FND_API.g_exc_error THEN
551       ROLLBACK TO Delete_Sys_Parameters;
552       x_return_status := FND_API.g_ret_sts_error;
553       FND_MSG_PUB.count_and_get(
554             p_encoded => FND_API.g_false,
555             p_count   => x_msg_count,
556             p_data    => x_msg_data
557       );
558 
559    WHEN FND_API.g_exc_unexpected_error THEN
560       ROLLBACK TO Delete_Sys_Parameters;
561       x_return_status := FND_API.g_ret_sts_unexp_error ;
562       FND_MSG_PUB.count_and_get(
563             p_encoded => FND_API.g_false,
564             p_count   => x_msg_count,
565             p_data    => x_msg_data
566       );
567 
568    WHEN OTHERS THEN
569       ROLLBACK TO Delete_Sys_Parameters;
573          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
570       x_return_status := FND_API.g_ret_sts_unexp_error ;
571       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
572                 THEN
574       END IF;
575       FND_MSG_PUB.count_and_get(
576             p_encoded => FND_API.g_false,
577             p_count   => x_msg_count,
578             p_data    => x_msg_data
579       );
580 
581 END Delete_Sys_Parameters;
582 
583 
584 -------------------------------------------------------------------
585 -- PROCEDURE
586 --    Lock_Sys_Parameters
587 --
588 -- HISTORY
589 --    06/12/2000  mchang  Create.
590 --------------------------------------------------------------------
591 PROCEDURE Lock_Sys_Parameters(
592    p_api_version       IN  NUMBER
593   ,p_init_msg_list     IN  VARCHAR2 := FND_API.g_false
594 
595   ,x_return_status     OUT NOCOPY VARCHAR2
596   ,x_msg_count         OUT NOCOPY NUMBER
597   ,x_msg_data          OUT NOCOPY VARCHAR2
598 
599   ,p_set_of_books_id   IN  NUMBER
600   ,p_object_version    IN  NUMBER
601 )
602 IS
603 
604    l_api_version  CONSTANT NUMBER       := 1.0;
605    l_api_name     CONSTANT VARCHAR2(30) := 'Lock_Sys_Parameters';
606    l_full_name    CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
607 
608    l_set_of_books_id      NUMBER;
609 
610    CURSOR c_sys_para IS
611    SELECT  set_of_books_id
612      FROM  ozf_sys_parameters_all
613      WHERE set_of_books_id = p_set_of_books_id
614      AND   object_version_number = p_object_version
615    FOR UPDATE OF set_of_books_id NOWAIT;
616 
617 BEGIN
618 
619    -------------------- initialize ------------------------
620    IF g_debug THEN
621       OZF_Utility_PVT.debug_message(l_full_name||': start');
622    END IF;
623 
624    IF FND_API.to_boolean(p_init_msg_list) THEN
625       FND_MSG_PUB.initialize;
626    END IF;
627 
628    IF NOT FND_API.compatible_api_call(
629          l_api_version,
630          p_api_version,
631          l_api_name,
632          g_pkg_name
633    ) THEN
634       RAISE FND_API.g_exc_unexpected_error;
635    END IF;
636 
637    x_return_status := FND_API.G_RET_STS_SUCCESS;
638 
639    ------------------------ lock -------------------------
640    IF g_debug THEN
641       OZF_Utility_PVT.debug_message(l_full_name||': lock');
642    END IF;
643 
644    OPEN  c_sys_para;
645    FETCH c_sys_para INTO l_set_of_books_id;
646    IF (c_sys_para%NOTFOUND) THEN
647       CLOSE c_sys_para;
648       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
649          FND_MESSAGE.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
650          FND_MSG_PUB.add;
651       END IF;
652       RAISE FND_API.g_exc_error;
653    END IF;
654    CLOSE c_sys_para;
655 
656    -------------------- finish --------------------------
657    FND_MSG_PUB.count_and_get(
658          p_encoded => FND_API.g_false,
659          p_count   => x_msg_count,
660          p_data    => x_msg_data
661    );
662 
663    IF g_debug THEN
664       OZF_Utility_PVT.debug_message(l_full_name ||': end');
665    END IF;
666 
667 EXCEPTION
668    WHEN OZF_Utility_PVT.resource_locked THEN
669       x_return_status := FND_API.g_ret_sts_error;
670                 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
671                    FND_MESSAGE.set_name('OZF', 'OZF_API_RESOURCE_LOCKED');
672                    FND_MSG_PUB.add;
673                 END IF;
674 
675       FND_MSG_PUB.count_and_get(
676             p_encoded => FND_API.g_false,
677             p_count   => x_msg_count,
678             p_data    => x_msg_data
679       );
680 
681         WHEN FND_API.g_exc_error THEN
682       x_return_status := FND_API.g_ret_sts_error;
683       FND_MSG_PUB.count_and_get(
684             p_encoded => FND_API.g_false,
685             p_count   => x_msg_count,
686             p_data    => x_msg_data
687       );
688 
689    WHEN FND_API.g_exc_unexpected_error THEN
690       x_return_status := FND_API.g_ret_sts_unexp_error ;
691       FND_MSG_PUB.count_and_get(
692             p_encoded => FND_API.g_false,
693             p_count   => x_msg_count,
694             p_data    => x_msg_data
695       );
696 
697    WHEN OTHERS THEN
698       x_return_status := FND_API.g_ret_sts_unexp_error ;
699       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
700                 THEN
701          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
702       END IF;
703       FND_MSG_PUB.count_and_get(
704             p_encoded => FND_API.g_false,
705             p_count   => x_msg_count,
706             p_data    => x_msg_data
707       );
708 
709 END Lock_Sys_Parameters;
710 
711 
712 ---------------------------------------------------------------------
713 -- PROCEDURE
714 --    Update_Sys_Parameters
715 --
716 -- HISTORY
717 --    06/12/2000  mchang  Create.
718 --    08/31/2000  mchang  Updated: insert 4 more columns.
719 --    03/15/2001  mchang  Updated: insert autopay setting columns.
723   ,p_init_msg_list           IN  VARCHAR2  := FND_API.g_false
720 ----------------------------------------------------------------------
721 PROCEDURE Update_Sys_Parameters(
722    p_api_version             IN  NUMBER
724   ,p_commit                  IN  VARCHAR2  := FND_API.g_false
725   ,p_validation_level        IN  NUMBER    := FND_API.g_valid_level_full
726 
727   ,x_return_status           OUT NOCOPY VARCHAR2
728   ,x_msg_count               OUT NOCOPY NUMBER
729   ,x_msg_data                OUT NOCOPY VARCHAR2
730 
731   ,p_sys_parameters_rec      IN  sys_parameters_rec_type
732   ,p_mode                    IN  VARCHAR2 := JTF_PLSQL_API.g_update
733   ,x_object_version_number   OUT NOCOPY NUMBER
734 )
735 IS
736 
737    l_api_version CONSTANT   NUMBER := 1.0;
738    l_api_name    CONSTANT   VARCHAR2(30) := 'Update_Sys_Parameters';
739    l_full_name   CONSTANT   VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
740 
741    l_last_updated_by        NUMBER;
742    l_last_update_login      NUMBER;
743 
744    l_sys_parameters_rec     sys_parameters_rec_type;
745    l_return_status          VARCHAR2(1);
746    l_mode                   VARCHAR2(30);
747    l_object_version_number  NUMBER;
748    -- l_org_id                 NUMBER := MO_GLOBAL.GET_CURRENT_ORG_ID();  -- R12 Enhancements
749 
750    l_set_of_books_id       NUMBER;
751    l_set_of_books          VARCHAR2(30);
752 
753 
754 BEGIN
755 
756    -------------------- initialize -------------------------
757    SAVEPOINT Update_Sys_Parameters;
758 
759    IF g_debug THEN
760       OZF_Utility_PVT.debug_message(l_full_name||': start');
761    END IF;
762 
763    IF FND_API.to_boolean(p_init_msg_list) THEN
764       FND_MSG_PUB.initialize;
765    END IF;
766 
767    IF NOT FND_API.compatible_api_call(
768          l_api_version,
769          p_api_version,
770          l_api_name,
771          g_pkg_name
772    ) THEN
773       RAISE FND_API.g_exc_unexpected_error;
774    END IF;
775 
776    x_return_status := FND_API.G_RET_STS_SUCCESS;
777 
778    l_last_updated_by := NVL(FND_GLOBAL.user_id,-1);
779    l_last_update_login := NVL(FND_GLOBAL.conc_login_id,-1);
780 
781    ----------------------- validate ----------------------
782    IF g_debug THEN
783       OZF_Utility_PVT.debug_message(l_full_name ||': validate');
784    END IF;
785 
786    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
787       Check_Sys_Parameters_Items(
788          p_sys_parameters_rec   => p_sys_parameters_rec,
789          p_validation_mode      => JTF_PLSQL_API.g_update,
790          x_return_status        => l_return_status
791       );
792       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
793          RAISE FND_API.g_exc_unexpected_error;
794       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
795          RAISE FND_API.g_exc_error;
796       END IF;
797    END IF;
798 
799    -- replace g_miss_char/num/date with current column values
800    Complete_Sys_Parameters_Rec(
801          p_sys_parameters_rec =>  p_sys_parameters_rec
802         ,x_complete_rec       =>  l_sys_parameters_rec
803    );
804 
805    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_record THEN
806       Check_Sys_Parameters_Record(
807          p_sys_parameters_rec => p_sys_parameters_rec,
808          p_complete_rec       => l_sys_parameters_rec,
809          p_mode               => p_mode,
810          x_return_status      => l_return_status
811       );
812       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
813          RAISE FND_API.g_exc_unexpected_error;
814       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
815          RAISE FND_API.g_exc_error;
816       END IF;
817    END IF;
818 
819    --Check the tolerances.
820    Check_Batch_Tolerances(
821       p_sys_parameters_rec =>  l_sys_parameters_rec,
822       x_return_status      =>  l_return_status
823     );
824    IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
825          RAISE FND_API.g_exc_unexpected_error;
826    ELSIF l_return_status = FND_API.g_ret_sts_error THEN
827          RAISE FND_API.g_exc_error;
828    END IF;
829 
830    l_object_version_number := l_sys_parameters_rec.object_version_number + 1;
831 ozf_utility_pvt.debug_message('Object version number is :'||
832 l_sys_parameters_rec.object_version_number);
833 
834 ozf_utility_pvt.debug_message('Orgid is :'||p_sys_parameters_rec.org_id);
835 ozf_utility_pvt.debug_message('l_sys_parameters_rec.transfer_to_gl_in :'||l_sys_parameters_rec.transfer_to_gl_in);
836 
837 -- Get the set_of_books_id for given org_id
838    MO_UTILS.Get_Ledger_Info (
839      p_operating_unit     =>  p_sys_parameters_rec.org_id,
840      p_ledger_id          =>  l_set_of_books_id,
841      p_ledger_name        =>  l_set_of_books
842    );
843 
844    l_sys_parameters_rec.set_of_books_id := l_set_of_books_id;
845 
846    -------------------------- update --------------------
847    IF g_debug THEN
848       OZF_Utility_PVT.debug_message(l_full_name ||': update');
849    END IF;
850    UPDATE ozf_sys_parameters_all SET
854       ,last_updated_by                  = l_last_updated_by
851        set_of_books_id                  = l_sys_parameters_rec.set_of_books_id
852       ,object_version_number            = l_object_version_number
853       ,last_update_date                 = SYSDATE
855       ,last_update_login                = l_last_update_login
856       ,request_id                       = FND_GLOBAL.CONC_REQUEST_ID
857       ,program_application_id           = FND_GLOBAL.PROG_APPL_ID
858       ,program_update_date              = SYSDATE
859       ,program_id                       = FND_GLOBAL.CONC_PROGRAM_ID
860       ,created_from                     = l_sys_parameters_rec.created_from
861       ,post_to_gl                       = l_sys_parameters_rec.post_to_gl
862       ,transfer_to_gl_in                = l_sys_parameters_rec.transfer_to_gl_in
863       ,ap_payment_term_id               = l_sys_parameters_rec.ap_payment_term_id
864       ,rounding_level_flag              = l_sys_parameters_rec.rounding_level_flag
865       ,gl_id_rounding                   = l_sys_parameters_rec.gl_id_rounding
866       ,gl_id_ded_clearing               = l_sys_parameters_rec.gl_id_ded_clearing
867       ,gl_id_ded_adj                    = l_sys_parameters_rec.gl_id_ded_adj
868       ,gl_id_accr_promo_liab            = l_sys_parameters_rec.gl_id_accr_promo_liab
869       ,gl_id_ded_adj_clearing           = l_sys_parameters_rec.gl_id_ded_adj_clearing
870       ,gl_rec_ded_account               = l_sys_parameters_rec.gl_rec_ded_account
871       ,gl_rec_clearing_account          = l_sys_parameters_rec.gl_rec_clearing_account
872       ,gl_cost_adjustment_acct		= l_sys_parameters_rec.gl_cost_adjustment_acct
873       ,gl_contra_liability_acct		= l_sys_parameters_rec.gl_contra_liability_acct
874       ,gl_pp_accrual_acct		= l_sys_parameters_rec.gl_pp_accrual_acct
875       ,gl_date_type                     = l_sys_parameters_rec.gl_date_type
876       ,days_due                         = l_sys_parameters_rec.days_due
877       ,claim_type_id                    = l_sys_parameters_rec.claim_type_id
878       ,reason_code_id                   = l_sys_parameters_rec.reason_code_id
879       ,autopay_claim_type_id            = l_sys_parameters_rec.autopay_claim_type_id
880       ,autopay_reason_code_id           = l_sys_parameters_rec.autopay_reason_code_id
881       ,autopay_flag                     = l_sys_parameters_rec.autopay_flag
882       ,autopay_periodicity              = l_sys_parameters_rec.autopay_periodicity
883       ,autopay_periodicity_type         = l_sys_parameters_rec.autopay_periodicity_type
884       ,accounting_method_option         = l_sys_parameters_rec.accounting_method_option
885       ,billback_trx_type_id             = l_sys_parameters_rec.billback_trx_type_id
886       ,cm_trx_type_id                   = l_sys_parameters_rec.cm_trx_type_id
887       ,attribute_category               = l_sys_parameters_rec.attribute_category
888       ,attribute1                       = l_sys_parameters_rec.attribute1
889       ,attribute2                       = l_sys_parameters_rec.attribute2
890       ,attribute3                       = l_sys_parameters_rec.attribute3
891       ,attribute4                       = l_sys_parameters_rec.attribute4
892       ,attribute5                       = l_sys_parameters_rec.attribute5
893       ,attribute6                       = l_sys_parameters_rec.attribute6
894       ,attribute7                       = l_sys_parameters_rec.attribute7
895       ,attribute8                       = l_sys_parameters_rec.attribute8
896       ,attribute9                       = l_sys_parameters_rec.attribute9
897       ,attribute10                      = l_sys_parameters_rec.attribute10
898       ,attribute11                      = l_sys_parameters_rec.attribute11
899       ,attribute12                      = l_sys_parameters_rec.attribute12
900       ,attribute13                      = l_sys_parameters_rec.attribute13
901       ,attribute14                      = l_sys_parameters_rec.attribute14
902       ,attribute15                      = l_sys_parameters_rec.attribute15
903       --,org_id                           = l_sys_parameters_rec.org_id
904       ,batch_source_id                  = l_sys_parameters_rec.batch_source_id
905       ,payables_source                  = l_sys_parameters_rec.payables_source
906       ,default_owner_id                 = l_sys_parameters_rec.default_owner_id
907       ,auto_assign_flag                 = l_sys_parameters_rec.auto_assign_flag
908       ,exchange_rate_type               = l_sys_parameters_rec.exchange_rate_type
909       ,order_type_id                    = l_sys_parameters_rec.order_type_id
910       --11.5.10 enhancements
911 	 ,gl_acct_for_offinv_flag                    = l_sys_parameters_rec.gl_acct_for_offinv_flag
912 	 --,short_payment_reason_code_id                    = l_sys_parameters_rec.short_payment_reason_code_id
913 	 ,cb_trx_type_id                    = l_sys_parameters_rec.cb_trx_type_id
914      ,pos_write_off_threshold                    = l_sys_parameters_rec.pos_write_off_threshold
915 	 ,neg_write_off_threshold                    = l_sys_parameters_rec.neg_write_off_threshold
916 	 ,adj_rec_trx_id                    = l_sys_parameters_rec.adj_rec_trx_id
917 	 ,wo_rec_trx_id                    = l_sys_parameters_rec.wo_rec_trx_id
918 	 ,neg_wo_rec_trx_id                    = l_sys_parameters_rec.neg_wo_rec_trx_id
919 	 ,un_earned_pay_allow_to                    = l_sys_parameters_rec.un_earned_pay_allow_to
920 	 ,un_earned_pay_thold_type                    = l_sys_parameters_rec.un_earned_pay_thold_type
921 	 ,un_earned_pay_thold_amount                    = l_sys_parameters_rec.un_earned_pay_threshold
925 	 ,line_tolerance_calc_code                    = l_sys_parameters_rec.line_tolerance_calc_code
922 	 ,un_earned_pay_thold_flag                    = l_sys_parameters_rec.un_earned_pay_thold_flag
923 	 ,header_tolerance_calc_code                    = l_sys_parameters_rec.header_tolerance_calc_code
924 	 ,header_tolerance_operand                    = l_sys_parameters_rec.header_tolerance_operand
926 	 ,line_tolerance_operand                     = l_sys_parameters_rec.line_tolerance_operand
927 
928 	 ,ship_debit_accrual_flag                     = l_sys_parameters_rec.ship_debit_accrual_flag
929 	 ,ship_debit_calc_type                     = l_sys_parameters_rec.ship_debit_calc_type
930 	 ,inventory_tracking_flag                     = l_sys_parameters_rec.inventory_tracking_flag
931 	 ,end_cust_relation_flag                     = l_sys_parameters_rec.end_cust_relation_flag
932 	 ,auto_tp_accrual_flag                     = l_sys_parameters_rec.auto_tp_accrual_flag
933 	 ,gl_balancing_flex_value                     = l_sys_parameters_rec.gl_balancing_flex_value
934          ,prorate_earnings_flag                       = l_sys_parameters_rec.prorate_earnings_flag
935          ,sales_credit_default_type                   = l_sys_parameters_rec.sales_credit_default_type
936      ,net_amt_for_mass_settle_flag                = l_sys_parameters_rec.net_amt_for_mass_settle_flag
937          ,claim_tax_incl_flag                            =  l_sys_parameters_rec.claim_tax_incl_flag
938         WHERE object_version_number = l_sys_parameters_rec.object_version_number
939 	--AND org_id = l_org_id; -- R12 Enhancements
940         AND org_id = p_sys_parameters_rec.org_id;
941 
942    IF (SQL%NOTFOUND) THEN
943       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
944          FND_MESSAGE.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
945          FND_MSG_PUB.add;
946       END IF;
947       RAISE FND_API.g_exc_error;
948    END IF;
949 
950    -------------------- finish --------------------------
951 
952    x_object_version_number := l_object_version_number;
953 
954    -- Check for commit
955    IF FND_API.to_boolean(p_commit) THEN
956       COMMIT;
957    END IF;
958 
959    FND_MSG_PUB.count_and_get(
960          p_encoded => FND_API.g_false,
961          p_count   => x_msg_count,
962          p_data    => x_msg_data
963    );
964 
965    IF g_debug THEN
966       OZF_Utility_PVT.debug_message(l_full_name ||': end');
967    END IF;
968 
969 EXCEPTION
970 
971    WHEN FND_API.g_exc_error THEN
972       ROLLBACK TO Update_Sys_Parameters;
973       x_return_status := FND_API.g_ret_sts_error;
974       FND_MSG_PUB.count_and_get(
975             p_encoded => FND_API.g_false,
976             p_count   => x_msg_count,
977             p_data    => x_msg_data
978       );
979 
980    WHEN FND_API.g_exc_unexpected_error THEN
981       ROLLBACK TO Update_Sys_Parameters;
982       x_return_status := FND_API.g_ret_sts_unexp_error ;
983       FND_MSG_PUB.count_and_get(
984             p_encoded => FND_API.g_false,
985             p_count   => x_msg_count,
986             p_data    => x_msg_data
987       );
988 
989    WHEN OTHERS THEN
990       ROLLBACK TO Update_Sys_Parameters;
991       x_return_status := FND_API.g_ret_sts_unexp_error ;
992       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
993                 THEN
994          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
995       END IF;
996       FND_MSG_PUB.count_and_get(
997             p_encoded => FND_API.g_false,
998             p_count   => x_msg_count,
999             p_data    => x_msg_data
1000       );
1001 
1002 END Update_Sys_Parameters;
1003 
1004 
1005 --------------------------------------------------------------------
1006 -- PROCEDURE
1007 --    Validate_Sys_Parameters
1008 --
1009 -- HISTORY
1010 --    06/12/2000  mchang  Create.
1011 --------------------------------------------------------------------
1012 PROCEDURE Validate_Sys_Parameters(
1013    p_api_version        IN  NUMBER
1014   ,p_init_msg_list      IN  VARCHAR2  := FND_API.g_false
1015   ,p_validation_level   IN  NUMBER    := FND_API.g_valid_level_full
1016 
1017   ,x_return_status      OUT NOCOPY VARCHAR2
1018   ,x_msg_count          OUT NOCOPY NUMBER
1019   ,x_msg_data           OUT NOCOPY VARCHAR2
1020 
1021   ,p_sys_parameters_rec IN  sys_parameters_rec_type
1022 )
1023 IS
1024 
1025    l_api_version CONSTANT NUMBER       := 1.0;
1026    l_api_name    CONSTANT VARCHAR2(30) := 'Validate_Sys_Parameters';
1027    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
1028 
1029    l_return_status VARCHAR2(1);
1030 
1031 BEGIN
1032 
1033    ----------------------- initialize --------------------
1034    IF g_debug THEN
1035       OZF_Utility_PVT.debug_message(l_full_name||': start');
1036    END IF;
1037 
1038    IF FND_API.to_boolean(p_init_msg_list) THEN
1039       FND_MSG_PUB.initialize;
1040    END IF;
1041 
1042    IF NOT FND_API.compatible_api_call(
1043          l_api_version,
1044          p_api_version,
1045          l_api_name,
1046          g_pkg_name
1047    ) THEN
1048       RAISE FND_API.g_exc_unexpected_error;
1049    END IF;
1050 
1051    x_return_status := FND_API.g_ret_sts_success;
1052 
1056    END IF;
1053    ---------------------- validate ------------------------
1054    IF g_debug THEN
1055       OZF_Utility_PVT.debug_message(l_full_name||': check items');
1057 
1058    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1059       Check_Sys_Parameters_Items(
1060          p_sys_parameters_rec   => p_sys_parameters_rec,
1061          p_validation_mode      => JTF_PLSQL_API.g_create,
1062          x_return_status        => l_return_status
1063       );
1064 
1065       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1066          RAISE FND_API.g_exc_unexpected_error;
1067       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1068          RAISE FND_API.g_exc_error;
1069       END IF;
1070    END IF;
1071 
1072    IF g_debug THEN
1073       OZF_Utility_PVT.debug_message(l_full_name||': check record');
1074    END IF;
1075 
1076    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_record THEN
1077       Check_Sys_Parameters_Record(
1078          p_sys_parameters_rec   => p_sys_parameters_rec,
1079          p_complete_rec         => NULL,
1080          x_return_status        => l_return_status
1081       );
1082 
1083       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1084          RAISE FND_API.g_exc_unexpected_error;
1085       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1086          RAISE FND_API.g_exc_error;
1087       END IF;
1088    END IF;
1089 
1090 
1091    --Check the tolerances.
1092    Check_Batch_Tolerances(
1093       p_sys_parameters_rec =>  p_sys_parameters_rec,
1094       x_return_status      =>  l_return_status
1095     );
1096    IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1097          RAISE FND_API.g_exc_unexpected_error;
1098    ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1099          RAISE FND_API.g_exc_error;
1100    END IF;
1101 
1102 
1103    -------------------- finish --------------------------
1104    FND_MSG_PUB.count_and_get(
1105          p_encoded => FND_API.g_false,
1106          p_count   => x_msg_count,
1107          p_data    => x_msg_data
1108    );
1109 
1110    IF g_debug THEN
1111       OZF_Utility_PVT.debug_message(l_full_name ||': end');
1112    END IF;
1113 
1114 EXCEPTION
1115 
1116    WHEN FND_API.g_exc_error THEN
1117       x_return_status := FND_API.g_ret_sts_error;
1118       FND_MSG_PUB.count_and_get(
1119             p_encoded => FND_API.g_false,
1120             p_count   => x_msg_count,
1121             p_data    => x_msg_data
1122       );
1123 
1124    WHEN FND_API.g_exc_unexpected_error THEN
1125       x_return_status := FND_API.g_ret_sts_unexp_error ;
1126       FND_MSG_PUB.count_and_get(
1127             p_encoded => FND_API.g_false,
1128             p_count   => x_msg_count,
1129             p_data    => x_msg_data
1130       );
1131 
1132    WHEN OTHERS THEN
1133       x_return_status := FND_API.g_ret_sts_unexp_error;
1134       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
1135                 THEN
1136          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
1137       END IF;
1138       FND_MSG_PUB.count_and_get(
1139             p_encoded => FND_API.g_false,
1140             p_count   => x_msg_count,
1141             p_data    => x_msg_data
1142       );
1143 
1144 END Validate_Sys_Parameters;
1145 
1146 
1147 ---------------------------------------------------------------------
1148 -- PROCEDURE
1149 --    Check_Sys_Para_Req_Items
1150 --
1151 -- HISTORY
1152 --    06/12/2000  mchang  Create.
1153 ---------------------------------------------------------------------
1154 PROCEDURE Check_Sys_Para_Req_Items(
1155    p_sys_parameters_rec IN  sys_parameters_rec_type
1156   ,x_return_status      OUT NOCOPY VARCHAR2
1157 )
1158 IS
1159 BEGIN
1160 
1161    x_return_status := FND_API.g_ret_sts_success;
1162 
1163 END Check_Sys_Para_Req_Items;
1164 
1165 
1166 ---------------------------------------------------------------------
1167 -- PROCEDURE
1168 --    Check_Sys_Para_Uk_Items
1169 --
1170 -- HISTORY
1171 --    06/12/2000  mchang  Create.
1172 ---------------------------------------------------------------------
1173 PROCEDURE Check_Sys_Para_Uk_Items(
1174    p_sys_parameters_rec IN  sys_parameters_rec_type
1175   ,p_validation_mode    IN  VARCHAR2 := JTF_PLSQL_API.g_create
1176   ,x_return_status      OUT NOCOPY VARCHAR2
1177 )
1178 IS
1179    l_valid_flag  VARCHAR2(1);
1180 BEGIN
1181 
1182    x_return_status := FND_API.g_ret_sts_success;
1183 
1184 END Check_Sys_Para_Uk_Items;
1185 
1186 
1187 ---------------------------------------------------------------------
1188 -- PROCEDURE
1189 --    Check_Sys_Para_Fk_Items
1190 --
1191 -- HISTORY
1192 --    06/12/2000  mchang  Create.
1193 ---------------------------------------------------------------------
1194 PROCEDURE Check_Sys_Para_Fk_Items(
1195    p_sys_parameters_rec IN  sys_parameters_rec_type
1196   ,x_return_status      OUT NOCOPY VARCHAR2
1197 )
1198 IS
1199 BEGIN
1200 
1201    x_return_status := FND_API.g_ret_sts_success;
1202 
1203    -- check other fk items
1204 
1205 END Check_Sys_Para_Fk_Items;
1206 
1207 
1208 ---------------------------------------------------------------------
1209 -- PROCEDURE
1210 --    Check_Sys_Para_Lookup_Items
1211 --
1212 -- HISTORY
1216    p_sys_parameters_rec IN  sys_parameters_rec_type
1213 --    04/25/2000  mchang  Create.
1214 ---------------------------------------------------------------------
1215 PROCEDURE Check_Sys_Para_Lookup_Items(
1217   ,x_return_status      OUT NOCOPY VARCHAR2
1218 )
1219 IS
1220 BEGIN
1221 
1222    x_return_status := FND_API.g_ret_sts_success;
1223 
1224    -- check other lookup codes
1225 
1226 END Check_Sys_Para_Lookup_Items;
1227 
1228 
1229 ---------------------------------------------------------------------
1230 -- PROCEDURE
1231 --    Check_Sys_Para_Flag_Items
1232 --
1233 -- HISTORY
1234 --    06/12/2000  mchang  Create.
1235 --    08/31/2000  mchang  Updated: check flag column value (FND_API.G_TRUE/FALSE)
1236 ---------------------------------------------------------------------
1237 PROCEDURE Check_Sys_Para_Flag_Items(
1238    p_sys_parameters_rec IN  sys_parameters_rec_type
1239   ,x_return_status      OUT NOCOPY VARCHAR2
1240 )
1241 IS
1242 BEGIN
1243 
1244    x_return_status := FND_API.g_ret_sts_success;
1245 
1246    ----------------------- POST_TO_GL ------------------------
1247    IF p_sys_parameters_rec.post_to_gl <> FND_API.g_miss_char
1248       AND p_sys_parameters_rec.post_to_gl IS NOT NULL
1249    THEN
1250       IF p_sys_parameters_rec.post_to_gl <> FND_API.g_true
1251         AND p_sys_parameters_rec.post_to_gl <> FND_API.g_false
1252       THEN
1253          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
1254          THEN
1255             FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BAD_FLAG');
1256 				FND_MESSAGE.set_token('FLAG', 'POST_TO_GL');
1257             FND_MSG_PUB.add;
1258          END IF;
1259 
1260          x_return_status := FND_API.g_ret_sts_error;
1261          RETURN;
1262       END IF;
1263    END IF;
1264 
1265    ----------------------- TRANSFER_TO_GL_IN ------------------------
1266    IF p_sys_parameters_rec.transfer_to_gl_in <> FND_API.g_miss_char
1267       AND p_sys_parameters_rec.transfer_to_gl_in IS NOT NULL
1268    THEN
1269       IF p_sys_parameters_rec.transfer_to_gl_in <> FND_API.g_true
1270         AND p_sys_parameters_rec.transfer_to_gl_in <> FND_API.g_false
1271       THEN
1272          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
1273          THEN
1274             FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BAD_FLAG');
1275 				FND_MESSAGE.set_token('FLAG', 'TRANSFER_TO_GL_IN');
1276             FND_MSG_PUB.add;
1277          END IF;
1278 
1279          x_return_status := FND_API.g_ret_sts_error;
1280          RETURN;
1281       END IF;
1282    END IF;
1283 
1284    ----------------------- ROUNDING_LEVEL_FLAG ------------------------
1285    IF p_sys_parameters_rec.rounding_level_flag <> FND_API.g_miss_char
1286       AND p_sys_parameters_rec.rounding_level_flag IS NOT NULL
1287    THEN
1288       IF p_sys_parameters_rec.rounding_level_flag <> FND_API.g_true
1289         AND p_sys_parameters_rec.rounding_level_flag <> FND_API.g_false
1290       THEN
1291          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
1292          THEN
1293             FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BAD_FLAG');
1294 				FND_MESSAGE.set_token('FLAG', 'ROUNDING_LEVEL_FLAG');
1295             FND_MSG_PUB.add;
1296          END IF;
1297 
1298          x_return_status := FND_API.g_ret_sts_error;
1299          RETURN;
1300       END IF;
1301    END IF;
1302 
1303    ----------------------- AUTOPAY_FLAG ------------------------
1304    IF p_sys_parameters_rec.autopay_flag <> FND_API.g_miss_char
1305       AND p_sys_parameters_rec.autopay_flag IS NOT NULL
1306    THEN
1307       IF p_sys_parameters_rec.autopay_flag <> FND_API.g_true
1308         AND p_sys_parameters_rec.autopay_flag <> FND_API.g_false
1309       THEN
1310          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
1311          THEN
1312             FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_BAD_FLAG');
1313 				FND_MESSAGE.set_token('FLAG', 'AUTOPAY_FLAG');
1314             FND_MSG_PUB.add;
1315          END IF;
1316 
1317          x_return_status := FND_API.g_ret_sts_error;
1318          RETURN;
1319       END IF;
1320    END IF;
1321 
1322    -- check other flags
1323 
1324 END Check_Sys_Para_Flag_Items;
1325 
1326 
1327 ---------------------------------------------------------------------
1328 -- PROCEDURE
1329 --    Check_Sys_Parameters_Items
1330 --
1331 -- HISTORY
1332 --    06/12/2000  mchang  Create.
1333 ---------------------------------------------------------------------
1334 PROCEDURE Check_Sys_Parameters_Items(
1335    p_sys_parameters_rec IN  sys_parameters_rec_type
1336   ,p_validation_mode    IN  VARCHAR2 := JTF_PLSQL_API.g_create
1337   ,x_return_status      OUT NOCOPY VARCHAR2
1338 )
1339 IS
1340 
1341 l_dummy NUMBER;
1342 
1343 CURSOR  c_order_trx_type(cv_id NUMBER)
1344 IS
1345    SELECT 1
1346    FROM oe_transaction_types_vl
1347    WHERE transaction_type_id = cv_id;
1348 
1349 BEGIN
1350 
1351    Check_Sys_Para_Req_Items(
1352       p_sys_parameters_rec  => p_sys_parameters_rec
1353      ,x_return_status       => x_return_status
1354    );
1355 
1356    IF x_return_status <> FND_API.g_ret_sts_success THEN
1357       RETURN;
1358    END IF;
1359 
1360    Check_Sys_Para_Uk_Items(
1361       p_sys_parameters_rec  => p_sys_parameters_rec
1362      ,p_validation_mode     => p_validation_mode
1366    IF x_return_status <> FND_API.g_ret_sts_success THEN
1363      ,x_return_status       => x_return_status
1364    );
1365 
1367       RETURN;
1368    END IF;
1369 
1370    Check_Sys_Para_Fk_Items(
1371       p_sys_parameters_rec  => p_sys_parameters_rec
1372      ,x_return_status       => x_return_status
1373    );
1374 
1375    IF x_return_status <> FND_API.g_ret_sts_success THEN
1376       RETURN;
1377    END IF;
1378 
1379    Check_Sys_Para_Lookup_Items(
1380       p_sys_parameters_rec  => p_sys_parameters_rec
1381      ,x_return_status       => x_return_status
1382    );
1383 
1384    IF x_return_status <> FND_API.g_ret_sts_success THEN
1385       RETURN;
1386    END IF;
1387 
1388    Check_Sys_Para_Flag_Items(
1389       p_sys_parameters_rec  => p_sys_parameters_rec
1390      ,x_return_status       => x_return_status
1391    );
1392 
1393    IF x_return_status <> FND_API.g_ret_sts_success THEN
1394       RETURN;
1395    END IF;
1396 
1397    --Check the validity of OM Transaction type
1398    IF p_sys_parameters_rec.order_type_id IS NOT NULL THEN
1399       OPEN c_order_trx_type(p_sys_parameters_rec.order_type_id);
1400       FETCH c_order_trx_type INTO l_dummy;
1401       CLOSE c_order_trx_type;
1402 
1403       IF l_dummy <> 1 THEN
1404           IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
1405             THEN
1406                FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INVALID_OM_TRX_TYPE');
1407                FND_MSG_PUB.add;
1408            END IF;
1409            x_return_status := FND_API.g_ret_sts_error;
1410            RETURN;
1411       END IF;
1412    END IF;
1413 
1414 END Check_Sys_Parameters_Items;
1415 
1416 
1417 
1418 ---------------------------------------------------------------------
1419 -- PROCEDURE
1420 --    Check_Sys_Parameters_Record
1421 --
1422 -- HISTORY
1423 --    06/12/2000  mchang  Create.
1424 ---------------------------------------------------------------------
1425 PROCEDURE Check_Sys_Parameters_Record(
1426    p_sys_parameters_rec IN  sys_parameters_rec_type
1427   ,p_complete_rec       IN  sys_parameters_rec_type := NULL
1428   ,p_mode               IN  VARCHAR2 := JTF_PLSQL_API.g_create
1429   ,x_return_status      OUT NOCOPY VARCHAR2
1430 )
1431 IS
1432 
1433 BEGIN
1434    x_return_status := FND_API.g_ret_sts_success;
1435 
1436    -- do other record level checkings
1437 
1438 END Check_Sys_Parameters_Record;
1439 
1440 
1441 ---------------------------------------------------------------------
1442 -- PROCEDURE
1443 --    Init_Sys_Parameters_Rec
1444 --
1445 -- HISTORY
1446 --    06/12/2000  mchang  Create.
1447 ---------------------------------------------------------------------
1448 PROCEDURE Init_Sys_Parameters_Rec(
1449    x_sys_parameters_rec   OUT NOCOPY  sys_parameters_rec_type
1450 )
1451 IS
1452 BEGIN
1453 
1454 
1455    RETURN;
1456 END Init_Sys_Parameters_Rec;
1457 
1458 
1459 ---------------------------------------------------------------------
1460 -- PROCEDURE
1461 --    Complete_Sys_Parameters_Rec
1462 --
1463 -- HISTORY
1464 --    06/12/2000  mchang  Create.
1465 ---------------------------------------------------------------------
1466 PROCEDURE Complete_Sys_Parameters_Rec(
1467    p_sys_parameters_rec IN  sys_parameters_rec_type
1468   ,x_complete_rec       OUT NOCOPY sys_parameters_rec_type
1469 )
1470 IS
1471 
1472    CURSOR c_sys_para IS
1473    SELECT
1474       set_of_books_id,
1475       object_version_number,
1476       last_update_date,
1477       last_updated_by,
1478       creation_date,
1479       created_by,
1480       last_update_login,
1481       request_id,
1482       program_application_id,
1483       program_update_date,
1484       program_id,
1485       created_from,
1486       post_to_gl,
1487       transfer_to_gl_in,
1488       ap_payment_term_id,
1489       rounding_level_flag,
1490       gl_id_rounding,
1491       gl_id_ded_clearing,
1492       gl_id_ded_adj,
1493       gl_id_accr_promo_liab,
1494       gl_id_ded_adj_clearing,
1495       gl_rec_ded_account,
1496       gl_rec_clearing_account,
1497       gl_cost_adjustment_acct,
1498       gl_contra_liability_acct ,
1499       gl_pp_accrual_acct ,
1500       gl_date_type,
1501       days_due,
1502       claim_type_id,
1503       reason_code_id,
1504       autopay_claim_type_id,
1505       autopay_reason_code_id,
1506       autopay_flag,
1507       autopay_periodicity,
1508       autopay_periodicity_type,
1509       accounting_method_option,
1510       billback_trx_type_id,
1511       cm_trx_type_id,
1512       attribute_category,
1513       attribute1,
1514       attribute2,
1515       attribute3,
1516       attribute4,
1517       attribute5,
1518       attribute6,
1519       attribute7,
1520       attribute8,
1521       attribute9,
1522       attribute10,
1523       attribute11,
1524       attribute12,
1525       attribute13,
1526       attribute14,
1527       attribute15,
1528       org_id,
1529       batch_source_id,
1530       payables_source,
1531       default_owner_id,
1535       --11.5.10 enhancements.
1532       auto_assign_flag,
1533       exchange_rate_type,
1534       order_type_id,
1536 	  gl_acct_for_offinv_flag,
1537   	  --short_payment_reason_code_id,
1538 	  cb_trx_type_id,
1539 	  pos_write_off_threshold,
1540 	  neg_write_off_threshold,
1541 	  adj_rec_trx_id,
1542 	  wo_rec_trx_id,
1543 	  neg_wo_rec_trx_id,
1544 	  un_earned_pay_allow_to,
1545 	  un_earned_pay_thold_type,
1546 	  un_earned_pay_thold_amount,
1547 	  un_earned_pay_thold_flag,
1548 	  header_tolerance_calc_code,
1549 	  header_tolerance_operand,
1550 	  line_tolerance_calc_code,
1551 	  line_tolerance_operand,
1552 
1553 	  ship_debit_accrual_flag,
1554 	  ship_debit_calc_type,
1555 	  inventory_tracking_flag,
1556 	  end_cust_relation_flag,
1557 	  auto_tp_accrual_flag,
1558 	  gl_balancing_flex_value,
1559           prorate_earnings_flag,
1560       sales_credit_default_type,
1561       net_amt_for_mass_settle_flag,
1562       claim_tax_incl_flag
1563     FROM  ozf_sys_parameters;
1564 
1565 
1566    l_sys_parameters_rec  c_sys_para%ROWTYPE;
1567 
1568 BEGIN
1569 
1570    x_complete_rec := p_sys_parameters_rec;
1571 
1572    OPEN c_sys_para;
1573    FETCH c_sys_para INTO l_sys_parameters_rec;
1574    IF c_sys_para%NOTFOUND THEN
1575       CLOSE c_sys_para;
1576       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1577          FND_MESSAGE.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
1578          FND_MSG_PUB.add;
1579       END IF;
1580       RAISE FND_API.g_exc_error;
1581    END IF;
1582    CLOSE c_sys_para;
1583 
1584   IF p_sys_parameters_rec.object_version_number = FND_API.G_MISS_NUM THEN
1585      x_complete_rec.object_version_number := NULL;
1586   END IF;
1587   IF p_sys_parameters_rec.object_version_number IS NULL THEN
1588      x_complete_rec.object_version_number := l_sys_parameters_rec.object_version_number;
1589   END IF;
1590 
1591   IF p_sys_parameters_rec.post_to_gl = FND_API.G_MISS_CHAR  THEN
1592   x_complete_rec.post_to_gl := NULL;
1593 
1594   END IF;
1595   IF p_sys_parameters_rec.post_to_gl IS NULL THEN
1596      x_complete_rec.post_to_gl := l_sys_parameters_rec.post_to_gl;
1597   END IF;
1598   IF p_sys_parameters_rec.transfer_to_gl_in = FND_API.G_MISS_CHAR THEN
1599   ozf_utility_pvt.debug_message('IN transfer_to_gl_in = FND_API.G_MISS_CHAR');
1600      --Commented as transfer_to_gl_in cannot be NULL and as this object is not displayed, the same value is retained.
1601      --x_complete_rec.transfer_to_gl_in := NULL;
1602      x_complete_rec.transfer_to_gl_in := l_sys_parameters_rec.transfer_to_gl_in;
1603   END IF;
1604   IF p_sys_parameters_rec.transfer_to_gl_in IS NULL THEN
1605      x_complete_rec.transfer_to_gl_in := l_sys_parameters_rec.transfer_to_gl_in;
1606   END IF;
1607 
1608   IF p_sys_parameters_rec.ap_payment_term_id = FND_API.G_MISS_NUM  THEN
1609      x_complete_rec.ap_payment_term_id := NULL;
1610   END IF;
1611   IF p_sys_parameters_rec.ap_payment_term_id IS NULL THEN
1612      x_complete_rec.ap_payment_term_id := l_sys_parameters_rec.ap_payment_term_id;
1613   END IF;
1614 
1615   IF p_sys_parameters_rec.rounding_level_flag = FND_API.G_MISS_CHAR THEN
1616      x_complete_rec.rounding_level_flag := NULL;
1617   END IF;
1618   IF p_sys_parameters_rec.rounding_level_flag IS NULL THEN
1619      x_complete_rec.rounding_level_flag := l_sys_parameters_rec.rounding_level_flag;
1620   END IF;
1621 
1622   IF p_sys_parameters_rec.gl_id_rounding = FND_API.G_MISS_NUM  THEN
1623      x_complete_rec.gl_id_rounding := NULL;
1624   END IF;
1625   IF p_sys_parameters_rec.gl_id_rounding IS NULL THEN
1626      x_complete_rec.gl_id_rounding := l_sys_parameters_rec.gl_id_rounding;
1627   END IF;
1628 
1629   IF p_sys_parameters_rec.gl_id_ded_clearing = FND_API.G_MISS_NUM THEN
1630      x_complete_rec.gl_id_ded_clearing := NULL;
1631   END IF;
1632   IF p_sys_parameters_rec.gl_id_ded_clearing IS NULL THEN
1633      x_complete_rec.gl_id_ded_clearing := l_sys_parameters_rec.gl_id_ded_clearing;
1634   END IF;
1635 
1636   IF p_sys_parameters_rec.gl_id_ded_adj = FND_API.G_MISS_NUM  THEN
1637      x_complete_rec.gl_id_ded_adj := NULL;
1638   END IF;
1639   IF p_sys_parameters_rec.gl_id_ded_adj IS NULL THEN
1640      x_complete_rec.gl_id_ded_adj := l_sys_parameters_rec.gl_id_ded_adj;
1641   END IF;
1642 
1643   IF p_sys_parameters_rec.gl_id_accr_promo_liab = FND_API.G_MISS_NUM  THEN
1644      x_complete_rec.gl_id_accr_promo_liab := NULL;
1645   END IF;
1646   IF p_sys_parameters_rec.gl_id_accr_promo_liab IS NULL THEN
1647      x_complete_rec.gl_id_accr_promo_liab := l_sys_parameters_rec.gl_id_accr_promo_liab;
1648   END IF;
1649 
1650   IF p_sys_parameters_rec.gl_id_ded_adj_clearing = FND_API.G_MISS_NUM  THEN
1651      x_complete_rec.gl_id_ded_adj_clearing := NULL;
1652   END IF;
1653   IF p_sys_parameters_rec.gl_id_ded_adj_clearing IS NULL THEN
1654      x_complete_rec.gl_id_ded_adj_clearing := l_sys_parameters_rec.gl_id_ded_adj_clearing;
1655   END IF;
1656 
1657   IF p_sys_parameters_rec.gl_rec_ded_account = FND_API.G_MISS_NUM  THEN
1658      x_complete_rec.gl_rec_ded_account := NULL;
1659   END IF;
1660   IF p_sys_parameters_rec.gl_rec_ded_account IS NULL THEN
1661      x_complete_rec.gl_rec_ded_account := l_sys_parameters_rec.gl_rec_ded_account;
1662   END IF;
1663 
1664 
1668   IF p_sys_parameters_rec.gl_rec_clearing_account IS NULL THEN
1665   IF p_sys_parameters_rec.gl_rec_clearing_account = FND_API.G_MISS_NUM  THEN
1666      x_complete_rec.gl_rec_clearing_account := NULL;
1667   END IF;
1669      x_complete_rec.gl_rec_clearing_account := l_sys_parameters_rec.gl_rec_clearing_account;
1670   END IF;
1671 
1672   IF p_sys_parameters_rec.gl_cost_adjustment_acct = FND_API.G_MISS_NUM  THEN
1673      x_complete_rec.gl_cost_adjustment_acct := NULL;
1674   END IF;
1675   IF p_sys_parameters_rec.gl_cost_adjustment_acct IS NULL THEN
1676      x_complete_rec.gl_cost_adjustment_acct := l_sys_parameters_rec.gl_cost_adjustment_acct;
1677   END IF;
1678 
1679   IF p_sys_parameters_rec.gl_contra_liability_acct = FND_API.G_MISS_NUM  THEN
1680      x_complete_rec.gl_contra_liability_acct := NULL;
1681   END IF;
1682   IF p_sys_parameters_rec.gl_contra_liability_acct IS NULL THEN
1683      x_complete_rec.gl_contra_liability_acct := l_sys_parameters_rec.gl_contra_liability_acct;
1684   END IF;
1685 
1686   IF p_sys_parameters_rec.gl_pp_accrual_acct = FND_API.G_MISS_NUM  THEN
1687      x_complete_rec.gl_pp_accrual_acct := NULL;
1688   END IF;
1689   IF p_sys_parameters_rec.gl_pp_accrual_acct IS NULL THEN
1690      x_complete_rec.gl_pp_accrual_acct := l_sys_parameters_rec.gl_pp_accrual_acct;
1691   END IF;
1692 
1693 
1694   IF p_sys_parameters_rec.gl_date_type = FND_API.G_MISS_CHAR  THEN
1695      x_complete_rec.gl_date_type := NULL;
1696   END IF;
1697   IF p_sys_parameters_rec.gl_date_type IS NULL THEN
1698      x_complete_rec.gl_date_type := l_sys_parameters_rec.gl_date_type;
1699   END IF;
1700 
1701 
1702   IF p_sys_parameters_rec.days_due = FND_API.G_MISS_NUM  THEN
1703      x_complete_rec.days_due := NULL;
1704   END IF;
1705   IF p_sys_parameters_rec.days_due IS NULL THEN
1706      x_complete_rec.days_due := l_sys_parameters_rec.days_due;
1707   END IF;
1708 
1709 
1710   IF p_sys_parameters_rec.claim_type_id = FND_API.G_MISS_NUM  THEN
1711      x_complete_rec.claim_type_id := NULL;
1712   END IF;
1713   IF p_sys_parameters_rec.claim_type_id IS NULL THEN
1714      x_complete_rec.claim_type_id := l_sys_parameters_rec.claim_type_id;
1715   END IF;
1716 
1717 
1718   IF p_sys_parameters_rec.reason_code_id = FND_API.G_MISS_NUM  THEN
1719      x_complete_rec.reason_code_id := NULL;
1720   END IF;
1721   IF p_sys_parameters_rec.reason_code_id IS NULL THEN
1722      x_complete_rec.reason_code_id := l_sys_parameters_rec.reason_code_id;
1723   END IF;
1724 
1725 
1726   IF p_sys_parameters_rec.autopay_claim_type_id = FND_API.G_MISS_NUM  THEN
1727      x_complete_rec.autopay_claim_type_id := NULL;
1728   END IF;
1729   IF p_sys_parameters_rec.autopay_claim_type_id IS NULL THEN
1730      x_complete_rec.autopay_claim_type_id := l_sys_parameters_rec.autopay_claim_type_id;
1731   END IF;
1732 
1733 
1734   IF p_sys_parameters_rec.autopay_reason_code_id = FND_API.G_MISS_NUM  THEN
1735      x_complete_rec.autopay_reason_code_id := NULL;
1736   END IF;
1737   IF p_sys_parameters_rec.autopay_reason_code_id IS NULL THEN
1738      x_complete_rec.autopay_reason_code_id := l_sys_parameters_rec.autopay_reason_code_id;
1739   END IF;
1740 
1741 
1742   IF p_sys_parameters_rec.autopay_flag = FND_API.G_MISS_CHAR  THEN
1743      x_complete_rec.autopay_flag := NULL;
1744   END IF;
1745   IF p_sys_parameters_rec.autopay_flag IS NULL THEN
1746      x_complete_rec.autopay_flag := l_sys_parameters_rec.autopay_flag;
1747   END IF;
1748 
1749 
1750   IF p_sys_parameters_rec.autopay_periodicity = FND_API.G_MISS_NUM  THEN
1751      x_complete_rec.autopay_periodicity := NULL;
1752   END IF;
1753   IF p_sys_parameters_rec.autopay_periodicity IS NULL THEN
1754      x_complete_rec.autopay_periodicity := l_sys_parameters_rec.autopay_periodicity;
1755   END IF;
1756 
1757 
1758   IF p_sys_parameters_rec.autopay_periodicity_type = FND_API.G_MISS_CHAR  THEN
1759      x_complete_rec.autopay_periodicity_type := NULL;
1760   END IF;
1761   IF p_sys_parameters_rec.autopay_periodicity_type IS NULL THEN
1762      x_complete_rec.autopay_periodicity_type := l_sys_parameters_rec.autopay_periodicity_type;
1763   END IF;
1764 
1765 
1766   IF p_sys_parameters_rec.accounting_method_option = FND_API.G_MISS_CHAR  THEN
1767      x_complete_rec.accounting_method_option := NULL;
1768   END IF;
1769   IF p_sys_parameters_rec.accounting_method_option IS NULL THEN
1770      x_complete_rec.accounting_method_option := l_sys_parameters_rec.accounting_method_option;
1771   END IF;
1772 
1773   IF p_sys_parameters_rec.billback_trx_type_id = FND_API.G_MISS_NUM  THEN
1774      x_complete_rec.billback_trx_type_id := NULL;
1775   END IF;
1776   IF p_sys_parameters_rec.billback_trx_type_id IS NULL THEN
1777      x_complete_rec.billback_trx_type_id := l_sys_parameters_rec.billback_trx_type_id;
1778   END IF;
1779 
1780   IF p_sys_parameters_rec.cm_trx_type_id = FND_API.G_MISS_NUM  THEN
1781      x_complete_rec.cm_trx_type_id := NULL;
1782   END IF;
1783   IF p_sys_parameters_rec.cm_trx_type_id IS NULL THEN
1784      x_complete_rec.cm_trx_type_id := l_sys_parameters_rec.cm_trx_type_id;
1785   END IF;
1786 
1787   IF p_sys_parameters_rec.attribute_category = FND_API.G_MISS_CHAR THEN
1788      x_complete_rec.attribute_category := NULL;
1789   END IF;
1790   IF p_sys_parameters_rec.attribute_category IS NULL THEN
1791      x_complete_rec.attribute_category := l_sys_parameters_rec.attribute_category;
1795      x_complete_rec.attribute1 := NULL;
1792   END IF;
1793 
1794   IF p_sys_parameters_rec.attribute1 = FND_API.G_MISS_CHAR THEN
1796   END IF;
1797   IF p_sys_parameters_rec.attribute1 IS NULL THEN
1798      x_complete_rec.attribute1 := l_sys_parameters_rec.attribute1;
1799   END IF;
1800 
1801   IF p_sys_parameters_rec.attribute2 = FND_API.G_MISS_CHAR THEN
1802      x_complete_rec.attribute2 := NULL;
1803   END IF;
1804   IF p_sys_parameters_rec.attribute2 IS NULL THEN
1805      x_complete_rec.attribute2 := l_sys_parameters_rec.attribute2;
1806   END IF;
1807 
1808   IF p_sys_parameters_rec.attribute3 = FND_API.G_MISS_CHAR THEN
1809      x_complete_rec.attribute3 := NULL;
1810   END IF;
1811   IF p_sys_parameters_rec.attribute3 IS NULL THEN
1812      x_complete_rec.attribute3 := l_sys_parameters_rec.attribute3;
1813   END IF;
1814 
1815   IF p_sys_parameters_rec.attribute4 = FND_API.G_MISS_CHAR THEN
1816      x_complete_rec.attribute4 := NULL;
1817   END IF;
1818   IF p_sys_parameters_rec.attribute4 IS NULL THEN
1819      x_complete_rec.attribute4 := l_sys_parameters_rec.attribute4;
1820   END IF;
1821 
1822   IF p_sys_parameters_rec.attribute5 = FND_API.G_MISS_CHAR THEN
1823      x_complete_rec.attribute5 := NULL;
1824   END IF;
1825   IF p_sys_parameters_rec.attribute5 IS NULL THEN
1826      x_complete_rec.attribute5 := l_sys_parameters_rec.attribute5;
1827   END IF;
1828 
1829   IF p_sys_parameters_rec.attribute6 = FND_API.G_MISS_CHAR THEN
1830      x_complete_rec.attribute6 := NULL;
1831   END IF;
1832   IF p_sys_parameters_rec.attribute6 IS NULL THEN
1833      x_complete_rec.attribute6 := l_sys_parameters_rec.attribute6;
1834   END IF;
1835 
1836   IF p_sys_parameters_rec.attribute7 = FND_API.G_MISS_CHAR THEN
1837      x_complete_rec.attribute7 := NULL;
1838   END IF;
1839   IF p_sys_parameters_rec.attribute7 IS NULL THEN
1840      x_complete_rec.attribute7 := l_sys_parameters_rec.attribute7;
1841   END IF;
1842 
1843   IF p_sys_parameters_rec.attribute8 = FND_API.G_MISS_CHAR THEN
1844      x_complete_rec.attribute8 := NULL;
1845   END IF;
1846   IF p_sys_parameters_rec.attribute8 IS NULL THEN
1847      x_complete_rec.attribute8 := l_sys_parameters_rec.attribute8;
1848   END IF;
1849 
1850   IF p_sys_parameters_rec.attribute9 = FND_API.G_MISS_CHAR THEN
1851      x_complete_rec.attribute9 := NULL;
1852   END IF;
1853   IF p_sys_parameters_rec.attribute9 IS NULL THEN
1854      x_complete_rec.attribute9 := l_sys_parameters_rec.attribute9;
1855   END IF;
1856 
1857   IF p_sys_parameters_rec.attribute10 = FND_API.G_MISS_CHAR THEN
1858      x_complete_rec.attribute10 := NULL;
1859   END IF;
1860   IF p_sys_parameters_rec.attribute10 IS NULL THEN
1861      x_complete_rec.attribute10 := l_sys_parameters_rec.attribute10;
1862   END IF;
1863 
1864   IF p_sys_parameters_rec.attribute11 = FND_API.G_MISS_CHAR THEN
1865      x_complete_rec.attribute11 := NULL;
1866   END IF;
1867   IF p_sys_parameters_rec.attribute11 IS NULL THEN
1868      x_complete_rec.attribute11 := l_sys_parameters_rec.attribute11;
1869   END IF;
1870 
1871   IF p_sys_parameters_rec.attribute12 = FND_API.G_MISS_CHAR THEN
1872      x_complete_rec.attribute12 := NULL;
1873   END IF;
1874   IF p_sys_parameters_rec.attribute12 IS NULL THEN
1875      x_complete_rec.attribute12 := l_sys_parameters_rec.attribute12;
1876   END IF;
1877 
1878   IF p_sys_parameters_rec.attribute13 = FND_API.G_MISS_CHAR THEN
1879      x_complete_rec.attribute13 := NULL;
1880   END IF;
1881   IF p_sys_parameters_rec.attribute13 IS NULL THEN
1882      x_complete_rec.attribute13 := l_sys_parameters_rec.attribute13;
1883   END IF;
1884 
1885   IF p_sys_parameters_rec.attribute14 = FND_API.G_MISS_CHAR THEN
1886      x_complete_rec.attribute14 := NULL;
1887   END IF;
1888   IF p_sys_parameters_rec.attribute14 IS NULL THEN
1889      x_complete_rec.attribute14 := l_sys_parameters_rec.attribute14;
1890   END IF;
1891 
1892   IF p_sys_parameters_rec.attribute15 = FND_API.G_MISS_CHAR THEN
1893      x_complete_rec.attribute15 := NULL;
1894   END IF;
1895   IF p_sys_parameters_rec.attribute15 IS NULL THEN
1896      x_complete_rec.attribute15 := l_sys_parameters_rec.attribute15;
1897   END IF;
1898 
1899   IF p_sys_parameters_rec.org_id = FND_API.G_MISS_NUM THEN
1900      x_complete_rec.org_id := NULL;
1901   END IF;
1902   IF p_sys_parameters_rec.org_id IS NULL THEN
1903      x_complete_rec.org_id := l_sys_parameters_rec.org_id;
1904   END IF;
1905 
1906   IF p_sys_parameters_rec.batch_source_id = FND_API.G_MISS_NUM THEN
1907      x_complete_rec.batch_source_id := NULL;
1908   END IF;
1909   IF p_sys_parameters_rec.batch_source_id IS NULL THEN
1910      x_complete_rec.batch_source_id := l_sys_parameters_rec.batch_source_id;
1911   END IF;
1912 
1913   IF p_sys_parameters_rec.payables_source = FND_API.G_MISS_CHAR THEN
1914      x_complete_rec.payables_source := NULL;
1915   END IF;
1916   IF p_sys_parameters_rec.payables_source IS NULL THEN
1917      x_complete_rec.payables_source := l_sys_parameters_rec.payables_source;
1918   END IF;
1919 
1920   IF p_sys_parameters_rec.default_owner_id = FND_API.G_MISS_NUM THEN
1921      x_complete_rec.default_owner_id := NULL;
1922   END IF;
1923   IF p_sys_parameters_rec.default_owner_id IS NULL THEN
1924      x_complete_rec.default_owner_id := l_sys_parameters_rec.default_owner_id;
1928      x_complete_rec.auto_assign_flag := NULL;
1925   END IF;
1926 
1927   IF p_sys_parameters_rec.auto_assign_flag = FND_API.G_MISS_CHAR THEN
1929   END IF;
1930   IF p_sys_parameters_rec.auto_assign_flag IS NULL THEN
1931      x_complete_rec.auto_assign_flag := l_sys_parameters_rec.auto_assign_flag;
1932   END IF;
1933 
1934   IF p_sys_parameters_rec.exchange_rate_type = FND_API.G_MISS_CHAR THEN
1935      x_complete_rec.exchange_rate_type := NULL;
1936   END IF;
1937   IF p_sys_parameters_rec.exchange_rate_type IS NULL THEN
1938      x_complete_rec.exchange_rate_type := l_sys_parameters_rec.exchange_rate_type;
1939   END IF;
1940 
1941    IF p_sys_parameters_rec.order_type_id = FND_API.G_MISS_NUM THEN
1942      x_complete_rec.order_type_id := NULL;
1943   END IF;
1944    IF p_sys_parameters_rec.order_type_id IS NULL THEN
1945      x_complete_rec.order_type_id := l_sys_parameters_rec.order_type_id;
1946   END IF;
1947 
1948     --11.5.10 enhancements
1949   IF p_sys_parameters_rec.gl_acct_for_offinv_flag = FND_API.G_MISS_CHAR THEN
1950      x_complete_rec.gl_acct_for_offinv_flag := NULL;
1951   END IF;
1952    IF p_sys_parameters_rec.gl_acct_for_offinv_flag IS NULL THEN
1953      x_complete_rec.gl_acct_for_offinv_flag := l_sys_parameters_rec.gl_acct_for_offinv_flag;
1954   END IF;
1955 
1956   /*
1957   IF p_sys_parameters_rec.short_payment_reason_code_id = FND_API.G_MISS_NUM THEN
1958      x_complete_rec.short_payment_reason_code_id := NULL;
1959   END IF;
1960    IF p_sys_parameters_rec.short_payment_reason_code_id IS NULL THEN
1961      x_complete_rec.short_payment_reason_code_id := l_sys_parameters_rec.short_payment_reason_code_id;
1962   END IF;
1963   */
1964 
1965   IF p_sys_parameters_rec.cb_trx_type_id = FND_API.G_MISS_NUM THEN
1966      x_complete_rec.cb_trx_type_id := NULL;
1967   END IF;
1968    IF p_sys_parameters_rec.cb_trx_type_id IS NULL THEN
1969      x_complete_rec.cb_trx_type_id := l_sys_parameters_rec.cb_trx_type_id;
1970   END IF;
1971 
1972   IF p_sys_parameters_rec.pos_write_off_threshold = FND_API.G_MISS_NUM THEN
1973      x_complete_rec.pos_write_off_threshold := NULL;
1974   END IF;
1975    IF p_sys_parameters_rec.pos_write_off_threshold IS NULL THEN
1976      x_complete_rec.pos_write_off_threshold := l_sys_parameters_rec.pos_write_off_threshold;
1977   END IF;
1978 
1979   IF p_sys_parameters_rec.neg_write_off_threshold = FND_API.G_MISS_NUM THEN
1980      x_complete_rec.neg_write_off_threshold := NULL;
1981   END IF;
1982    IF p_sys_parameters_rec.neg_write_off_threshold IS NULL THEN
1983      x_complete_rec.neg_write_off_threshold := l_sys_parameters_rec.neg_write_off_threshold;
1984   END IF;
1985 
1986   IF p_sys_parameters_rec.adj_rec_trx_id = FND_API.G_MISS_NUM THEN
1987      x_complete_rec.adj_rec_trx_id := NULL;
1988   END IF;
1989    IF p_sys_parameters_rec.adj_rec_trx_id IS NULL THEN
1990      x_complete_rec.adj_rec_trx_id := l_sys_parameters_rec.adj_rec_trx_id;
1991   END IF;
1992 
1993   IF p_sys_parameters_rec.wo_rec_trx_id = FND_API.G_MISS_NUM THEN
1994      x_complete_rec.wo_rec_trx_id := NULL;
1995   END IF;
1996    IF p_sys_parameters_rec.wo_rec_trx_id IS NULL THEN
1997      x_complete_rec.wo_rec_trx_id := l_sys_parameters_rec.wo_rec_trx_id;
1998   END IF;
1999 
2000   IF p_sys_parameters_rec.neg_wo_rec_trx_id = FND_API.G_MISS_NUM THEN
2001      x_complete_rec.neg_wo_rec_trx_id := NULL;
2002   END IF;
2003    IF p_sys_parameters_rec.neg_wo_rec_trx_id IS NULL THEN
2004      x_complete_rec.neg_wo_rec_trx_id := l_sys_parameters_rec.neg_wo_rec_trx_id;
2005   END IF;
2006 
2007   IF p_sys_parameters_rec.un_earned_pay_allow_to = FND_API.G_MISS_CHAR THEN
2008      x_complete_rec.un_earned_pay_allow_to := NULL;
2009   END IF;
2010    IF p_sys_parameters_rec.un_earned_pay_allow_to IS NULL THEN
2011      x_complete_rec.un_earned_pay_allow_to := l_sys_parameters_rec.un_earned_pay_allow_to;
2012   END IF;
2013 
2014   IF p_sys_parameters_rec.un_earned_pay_thold_type = FND_API.G_MISS_CHAR THEN
2015      x_complete_rec.un_earned_pay_thold_type := NULL;
2016   END IF;
2017    IF p_sys_parameters_rec.un_earned_pay_thold_type IS NULL THEN
2018      x_complete_rec.un_earned_pay_thold_type := l_sys_parameters_rec.un_earned_pay_thold_type;
2019   END IF;
2020 
2021   IF p_sys_parameters_rec.un_earned_pay_threshold = FND_API.G_MISS_NUM THEN
2022      x_complete_rec.un_earned_pay_threshold := NULL;
2023   END IF;
2024    IF p_sys_parameters_rec.un_earned_pay_threshold IS NULL THEN
2025      x_complete_rec.un_earned_pay_threshold := l_sys_parameters_rec.un_earned_pay_thold_amount;
2026   END IF;
2027 
2028   IF p_sys_parameters_rec.un_earned_pay_thold_flag = FND_API.G_MISS_CHAR THEN
2029      x_complete_rec.un_earned_pay_thold_flag := NULL;
2030   END IF;
2031    IF p_sys_parameters_rec.un_earned_pay_thold_flag IS NULL THEN
2032      x_complete_rec.un_earned_pay_thold_flag := l_sys_parameters_rec.un_earned_pay_thold_flag;
2033   END IF;
2034 
2035   IF p_sys_parameters_rec.header_tolerance_calc_code = FND_API.G_MISS_CHAR THEN
2036      x_complete_rec.header_tolerance_calc_code := NULL;
2037   END IF;
2038    IF p_sys_parameters_rec.header_tolerance_calc_code IS NULL THEN
2039      x_complete_rec.header_tolerance_calc_code := l_sys_parameters_rec.header_tolerance_calc_code;
2040   END IF;
2041 
2042   IF p_sys_parameters_rec.header_tolerance_operand = FND_API.G_MISS_NUM THEN
2043      x_complete_rec.header_tolerance_operand := NULL;
2044   END IF;
2048 
2045    IF p_sys_parameters_rec.header_tolerance_operand IS NULL THEN
2046      x_complete_rec.header_tolerance_operand := l_sys_parameters_rec.header_tolerance_operand;
2047   END IF;
2049   IF p_sys_parameters_rec.line_tolerance_calc_code = FND_API.G_MISS_CHAR THEN
2050      x_complete_rec.line_tolerance_calc_code := NULL;
2051   END IF;
2052    IF p_sys_parameters_rec.line_tolerance_calc_code IS NULL THEN
2053      x_complete_rec.line_tolerance_calc_code := l_sys_parameters_rec.line_tolerance_calc_code;
2054   END IF;
2055 
2056   IF p_sys_parameters_rec.line_tolerance_operand = FND_API.G_MISS_NUM THEN
2057      x_complete_rec.line_tolerance_operand := NULL;
2058   END IF;
2059    IF p_sys_parameters_rec.line_tolerance_operand IS NULL THEN
2060      x_complete_rec.line_tolerance_operand := l_sys_parameters_rec.line_tolerance_operand;
2061   END IF;
2062 
2063   IF p_sys_parameters_rec.ship_debit_accrual_flag = FND_API.G_MISS_CHAR THEN
2064      x_complete_rec.ship_debit_accrual_flag := NULL;
2065   END IF;
2066    IF p_sys_parameters_rec.ship_debit_accrual_flag IS NULL THEN
2067      x_complete_rec.ship_debit_accrual_flag := l_sys_parameters_rec.ship_debit_accrual_flag;
2068   END IF;
2069 
2070   IF p_sys_parameters_rec.ship_debit_calc_type = FND_API.G_MISS_CHAR THEN
2071      x_complete_rec.ship_debit_calc_type := NULL;
2072   END IF;
2073    IF p_sys_parameters_rec.ship_debit_calc_type IS NULL THEN
2074      x_complete_rec.ship_debit_calc_type := l_sys_parameters_rec.ship_debit_calc_type;
2075   END IF;
2076 
2077   IF p_sys_parameters_rec.inventory_tracking_flag = FND_API.G_MISS_CHAR THEN
2078      x_complete_rec.inventory_tracking_flag := NULL;
2079   END IF;
2080    IF p_sys_parameters_rec.inventory_tracking_flag IS NULL THEN
2081      x_complete_rec.inventory_tracking_flag := l_sys_parameters_rec.inventory_tracking_flag;
2082   END IF;
2083 
2084   IF p_sys_parameters_rec.end_cust_relation_flag = FND_API.G_MISS_CHAR THEN
2085      x_complete_rec.end_cust_relation_flag := NULL;
2086   END IF;
2087    IF p_sys_parameters_rec.end_cust_relation_flag IS NULL THEN
2088      x_complete_rec.end_cust_relation_flag := l_sys_parameters_rec.end_cust_relation_flag;
2089   END IF;
2090 
2091   IF p_sys_parameters_rec.auto_tp_accrual_flag = FND_API.G_MISS_CHAR THEN
2092      x_complete_rec.auto_tp_accrual_flag := NULL;
2093   END IF;
2094    IF p_sys_parameters_rec.auto_tp_accrual_flag IS NULL THEN
2095      x_complete_rec.auto_tp_accrual_flag := l_sys_parameters_rec.auto_tp_accrual_flag;
2096   END IF;
2097 
2098   IF p_sys_parameters_rec.gl_balancing_flex_value = FND_API.G_MISS_CHAR THEN
2099      x_complete_rec.gl_balancing_flex_value := NULL;
2100   END IF;
2101    IF p_sys_parameters_rec.gl_balancing_flex_value IS NULL THEN
2102      x_complete_rec.gl_balancing_flex_value := l_sys_parameters_rec.gl_balancing_flex_value;
2103   END IF;
2104 
2105   IF p_sys_parameters_rec.prorate_earnings_flag = FND_API.G_MISS_CHAR THEN
2106      x_complete_rec.prorate_earnings_flag := NULL;
2107   END IF;
2108   IF p_sys_parameters_rec.prorate_earnings_flag IS NULL THEN
2109      x_complete_rec.prorate_earnings_flag := l_sys_parameters_rec.prorate_earnings_flag;
2110   END IF;
2111 
2112   IF p_sys_parameters_rec.sales_credit_default_type = FND_API.G_MISS_CHAR THEN
2113      x_complete_rec.sales_credit_default_type := NULL;
2114   END IF;
2115   IF p_sys_parameters_rec.sales_credit_default_type IS NULL THEN
2116      x_complete_rec.sales_credit_default_type := l_sys_parameters_rec.sales_credit_default_type;
2117   END IF;
2118 
2119   IF p_sys_parameters_rec.net_amt_for_mass_settle_flag = FND_API.G_MISS_CHAR THEN
2120      x_complete_rec.net_amt_for_mass_settle_flag := NULL;
2121   END IF;
2122   IF p_sys_parameters_rec.net_amt_for_mass_settle_flag IS NULL THEN
2123      x_complete_rec.net_amt_for_mass_settle_flag := l_sys_parameters_rec.net_amt_for_mass_settle_flag;
2124   END IF;
2125 
2126   IF p_sys_parameters_rec.claim_tax_incl_flag = FND_API.G_MISS_CHAR THEN
2127      x_complete_rec.claim_tax_incl_flag := NULL;
2128   END IF;
2129   IF p_sys_parameters_rec.claim_tax_incl_flag IS NULL THEN
2130      x_complete_rec.claim_tax_incl_flag := l_sys_parameters_rec.claim_tax_incl_flag;
2131   END IF;
2132 
2133 END Complete_Sys_Parameters_Rec;
2134 
2135 END OZF_Sys_Parameters_PVT;