[Home] [Help]
PACKAGE BODY: APPS.GL_BC_PACKETS_PKG
Source
1 PACKAGE BODY gl_bc_packets_pkg AS
2 /* $Header: glibcpab.pls 120.6 2005/07/29 16:58:18 djogg ship $ */
3
4 --
5 -- PRIVATE FUNCTIONS
6 --
7 PROCEDURE Lock_Budget_Transfer_Row(
8 X_Rowid VARCHAR2,
9 X_Status_Code VARCHAR2,
10 X_Packet_Id NUMBER,
11 X_Ledger_Id NUMBER,
12 X_Je_Source_Name VARCHAR2,
13 X_Je_Category_Name VARCHAR2,
14 X_Code_Combination_Id NUMBER,
15 X_Period_Name VARCHAR2,
16 X_Period_Year NUMBER,
17 X_Period_Num NUMBER,
18 X_Quarter_Num NUMBER,
19 X_Currency_Code VARCHAR2,
20 X_Budget_Version_Id NUMBER,
21 X_Entered_Dr NUMBER,
22 X_Entered_Cr NUMBER,
23 X_Je_Batch_Name VARCHAR2,
24 X_Combination_Number NUMBER
25 ) IS
26 CURSOR C IS
27 SELECT *
28 FROM GL_BC_PACKETS
29 WHERE rowid = X_Rowid
30 FOR UPDATE of Packet_Id NOWAIT;
31 Recinfo C%ROWTYPE;
32 BEGIN
33
34 OPEN C;
35 FETCH C INTO Recinfo;
36 if (C%NOTFOUND) then
37 CLOSE C;
38 RAISE NO_DATA_FOUND;
39 end if;
40 CLOSE C;
41
42 if (
43 ( (Recinfo.status_code = X_Status_Code)
44 OR ( (Recinfo.status_code IS NULL)
45 AND (X_Status_Code IS NULL)))
46 AND ( (Recinfo.packet_id = X_Packet_Id)
47 OR ( (Recinfo.packet_id IS NULL)
48 AND (X_Packet_Id IS NULL)))
49 AND ( (Recinfo.ledger_id = X_Ledger_Id)
50 OR ( (Recinfo.ledger_id IS NULL)
51 AND (X_Ledger_Id IS NULL)))
52 AND ( (Recinfo.je_source_name = X_Je_Source_Name)
53 OR ( (Recinfo.je_source_name IS NULL)
54 AND (X_Je_Source_Name IS NULL)))
55 AND ( (Recinfo.je_category_name = X_Je_Category_Name)
56 OR ( (Recinfo.je_category_name IS NULL)
57 AND (X_Je_Category_Name IS NULL)))
58 AND ( (Recinfo.code_combination_id = X_Code_Combination_Id)
59 OR ( (Recinfo.code_combination_id IS NULL)
60 AND (X_Code_Combination_Id IS NULL)))
61 AND (Recinfo.actual_flag = 'B')
62 AND ( (Recinfo.period_name = X_Period_Name)
63 OR ( (Recinfo.period_name IS NULL)
64 AND (X_Period_Name IS NULL)))
65 AND ( (Recinfo.period_year = X_Period_Year)
66 OR ( (Recinfo.period_year IS NULL)
67 AND (X_Period_Year IS NULL)))
68 AND ( (Recinfo.period_num = X_Period_Num)
69 OR ( (Recinfo.period_num IS NULL)
70 AND (X_Period_Num IS NULL)))
71 AND ( (Recinfo.quarter_num = X_Quarter_Num)
72 OR ( (Recinfo.quarter_num IS NULL)
73 AND (X_Quarter_Num IS NULL)))
74 AND ( (Recinfo.currency_code = X_Currency_Code)
75 OR ( (Recinfo.currency_code IS NULL)
76 AND (X_Currency_Code IS NULL)))
77 AND ( (Recinfo.budget_version_id = X_Budget_Version_Id)
78 OR ( (Recinfo.budget_version_id IS NULL)
79 AND (X_Budget_Version_Id IS NULL)))
80 AND ( (Recinfo.entered_dr = X_Entered_Dr)
81 OR ( (Recinfo.entered_dr IS NULL)
82 AND (X_Entered_Dr IS NULL)))
83 AND ( (Recinfo.entered_cr = X_Entered_Cr)
84 OR ( (Recinfo.entered_cr IS NULL)
85 AND (X_Entered_Cr IS NULL)))
86 AND ( (Recinfo.reference1 = X_Combination_Number)
87 OR ( (Recinfo.reference1 IS NULL)
88 AND (X_Combination_Number IS NULL)))
89 AND ( (Recinfo.je_batch_name = X_Je_Batch_Name)
90 OR ( (Recinfo.je_batch_name IS NULL)
91 AND (X_Je_Batch_Name IS NULL)))
92 ) then
93 return;
94 else
95 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
96 APP_EXCEPTION.RAISE_EXCEPTION;
97 end if;
98 END Lock_Budget_Transfer_Row;
99
100
101 --
102 -- PUBLIC FUNCTIONS
103 --
104
105 FUNCTION get_unique_id RETURN NUMBER IS
106 CURSOR get_new_id IS
107 SELECT gl_bc_packets_s.NEXTVAL
108 FROM dual;
109 new_id number;
110 BEGIN
111 OPEN get_new_id;
112 FETCH get_new_id INTO new_id;
113
114 IF get_new_id%FOUND THEN
115 CLOSE get_new_id;
116 return(new_id);
117 ELSE
118 CLOSE get_new_id;
119 fnd_message.set_name('SQLGL', 'GL_ERROR_GETTING_UNIQUE_ID');
120 fnd_message.set_token('SEQUENCE', 'GL_BC_PACKETS_S');
121 app_exception.raise_exception;
122 END IF;
123
124 EXCEPTION
125 WHEN app_exceptions.application_exception THEN
126 RAISE;
127 WHEN OTHERS THEN
128 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
129 fnd_message.set_token('PROCEDURE', 'gl_bc_packets_pkg.get_unique_id');
130 RAISE;
131 END get_unique_id;
132
133 FUNCTION insert_je_packet(batch_id NUMBER,
134 lgr_id NUMBER,
135 mode_code VARCHAR2,
136 user_id NUMBER,
137 x_session_id NUMBER,
138 x_serial_id NUMBER) RETURN NUMBER IS
139 new_packet_id NUMBER;
140 insert_mode VARCHAR2(1);
141 BEGIN
142 -- Get the packet id
143 new_packet_id := gl_bc_packets_pkg.get_unique_id;
144
145 -- Set the funds check mode
146 IF (mode_code = 'R') THEN
147 insert_mode := 'P';
148 ELSE
149 insert_mode := 'C';
150 END IF;
151
152 -- Insert the data into gl_je_packets
153 INSERT INTO gl_bc_packets
154 (packet_id, ledger_id, je_source_name,
155 je_category_name, code_combination_id, actual_flag,
156 period_name, period_year, period_num, quarter_num,
157 currency_code, status_code,
158 last_update_date, last_updated_by,
159 budget_version_id, encumbrance_type_id,
160 entered_dr, entered_cr, accounted_dr, accounted_cr,
161 ussgl_transaction_code, je_batch_id, je_header_id, je_line_num,
162 application_id, session_id, serial_id)
163 SELECT new_packet_id, jeh.ledger_id, jeh.je_source,
164 jeh.je_category, jel.code_combination_id, jeb.actual_flag,
165 per.period_name, per.period_year, per.period_num, per.quarter_num,
166 jeh.currency_code, insert_mode,
167 sysdate, user_id,
168 jeh.budget_version_id, jeh.encumbrance_type_id,
169 jel.entered_dr, jel.entered_cr, jel.accounted_dr,jel.accounted_cr,
170 jel.ussgl_transaction_code, jeh.je_batch_id, jeh.je_header_id,
171 jel.je_line_num, 101, x_session_id, x_serial_id
172 FROM gl_je_batches jeb, gl_period_statuses per, gl_je_headers jeh,
173 gl_je_lines jel
174 WHERE jeb.je_batch_id = batch_id
175 AND per.application_id = 101
176 AND per.ledger_id = jeh.ledger_id
177 AND per.period_name = jeb.default_period_name
178 AND jeh.je_batch_id = jeb.je_batch_id
179 AND jeh.ledger_id = lgr_id
180 AND jel.je_header_id = jeh.je_header_id;
181
182 RETURN (new_packet_id);
183 EXCEPTION
184 WHEN app_exceptions.application_exception THEN
185 RAISE;
186 WHEN OTHERS THEN
187 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
188 fnd_message.set_token('PROCEDURE', 'gl_bc_packets_pkg.insert_je_packet');
189 RAISE;
190 END insert_je_packet;
191
192 FUNCTION exists_packet(xpacket_id NUMBER) RETURN BOOLEAN IS
193 CURSOR check_for_pkt IS
194 SELECT 'Has packet'
195 FROM dual
196 WHERE EXISTS (SELECT 'Has packet'
197 FROM gl_bc_packets
198 WHERE packet_id = xpacket_id);
199 dummy VARCHAR2(100);
200 BEGIN
201 OPEN check_for_pkt;
202 FETCH check_for_pkt INTO dummy;
203
204 IF check_for_pkt%FOUND THEN
205 CLOSE check_for_pkt;
206 return(TRUE);
207 ELSE
208 CLOSE check_for_pkt;
209 return(FALSE);
210 END IF;
211
212 EXCEPTION
213 WHEN app_exceptions.application_exception THEN
214 RAISE;
215 WHEN OTHERS THEN
216 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
217 fnd_message.set_token('PROCEDURE', 'gl_bc_packets_pkg.exists_packet');
218 RAISE;
219 END exists_packet;
220
221 FUNCTION get_ledger_id(xpacket_id NUMBER) RETURN NUMBER IS
222 CURSOR get_lgr_id IS
223 SELECT ledger_id
224 FROM gl_bc_packets
225 WHERE packet_id = xpacket_id;
226 lgr_id NUMBER;
227 BEGIN
228 OPEN get_lgr_id;
229 FETCH get_lgr_id INTO lgr_id;
230
231 IF get_lgr_id%FOUND THEN
232 CLOSE get_lgr_id;
233 return(lgr_id);
234 ELSE
235 CLOSE get_lgr_id;
236 Raise NO_DATA_FOUND;
237 END IF;
238
239 EXCEPTION
240 WHEN app_exceptions.application_exception THEN
241 RAISE;
242 WHEN OTHERS THEN
243 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
244 fnd_message.set_token('PROCEDURE', 'gl_bc_packets_pkg.get_ledger_id');
245 RAISE;
246 END get_ledger_id;
247
248 PROCEDURE Insert_Budget_Transfer_Row(
249 X_From_Rowid IN OUT NOCOPY VARCHAR2,
250 X_To_Rowid IN OUT NOCOPY VARCHAR2,
251 X_Status_Code VARCHAR2,
252 X_Packet_Id NUMBER,
253 X_Ledger_Id NUMBER,
254 X_Je_Source_Name VARCHAR2,
255 X_Je_Category_Name VARCHAR2,
256 X_Budget_Version_Id NUMBER,
257 X_Je_Batch_Name VARCHAR2,
258 X_Currency_Code VARCHAR2,
259 X_From_Code_Combination_Id NUMBER,
260 X_To_Code_Combination_Id NUMBER,
261 X_Combination_Number NUMBER,
262 X_Period_Name VARCHAR2,
263 X_Period_Year NUMBER,
264 X_Period_Num NUMBER,
265 X_Quarter_Num NUMBER,
266 X_From_Entered_Dr NUMBER,
267 X_From_Entered_Cr NUMBER,
268 X_To_Entered_Dr NUMBER,
269 X_To_Entered_Cr NUMBER,
270 X_Last_Update_Date DATE,
271 X_Last_Updated_By NUMBER,
272 X_Session_Id NUMBER,
273 X_Serial_Id NUMBER) IS
274 CURSOR C (ccid IN NUMBER, unique_value IN VARCHAR2) IS
275 SELECT rowid FROM GL_BC_PACKETS
276 WHERE packet_id = X_Packet_Id
277 AND ledger_id = X_Ledger_Id
278 AND reference2 = unique_value
279 AND code_combination_id = ccid
280 AND reference1 = to_char(X_Combination_Number)
281 AND period_name = X_Period_Name;
282 BEGIN
283
284 -- Insert the From line
285 INSERT INTO GL_BC_PACKETS(
286 status_code,
287 packet_id,
288 ledger_id,
289 je_source_name,
290 je_category_name,
291 code_combination_id,
292 actual_flag,
293 period_name,
294 period_year,
295 period_num,
296 quarter_num,
297 currency_code,
298 last_update_date,
299 last_updated_by,
300 budget_version_id,
301 entered_dr,
302 entered_cr,
303 accounted_dr,
304 accounted_cr,
305 je_batch_name,
306 application_id,
307 session_id,
308 serial_id,
309 reference1,
310 reference2
311 ) VALUES (
312 X_Status_Code,
313 X_Packet_Id,
314 X_Ledger_Id,
315 X_Je_Source_Name,
316 X_Je_Category_Name,
317 X_From_Code_Combination_Id,
318 'B',
319 X_Period_Name,
320 X_Period_Year,
321 X_Period_Num,
322 X_Quarter_Num,
323 X_Currency_Code,
324 X_Last_Update_Date,
325 X_Last_Updated_By,
326 X_Budget_Version_Id,
327 X_From_Entered_Dr,
328 X_From_Entered_Cr,
329 X_From_Entered_Dr,
330 X_From_Entered_Cr,
331 X_Je_Batch_Name,
332 101,
333 X_Session_Id,
334 X_Serial_Id,
335 X_Combination_Number,
336 'New Budget Transfer Row');
337
338 OPEN C(X_From_Code_Combination_Id, 'New Budget Transfer Row');
339 FETCH C INTO X_From_Rowid;
340 if (C%NOTFOUND) then
341 CLOSE C;
342 RAISE NO_DATA_FOUND;
343 end if;
344 CLOSE C;
345
346 -- Insert the to line, switching the Cr and Dr
347 INSERT INTO GL_BC_PACKETS(
348 status_code,
349 packet_id,
350 ledger_id,
351 je_source_name,
352 je_category_name,
353 code_combination_id,
354 actual_flag,
355 period_name,
356 period_year,
357 period_num,
358 quarter_num,
359 currency_code,
360 last_update_date,
361 last_updated_by,
362 budget_version_id,
363 entered_dr,
364 entered_cr,
365 accounted_dr,
366 accounted_cr,
367 je_batch_name,
368 application_id,
369 session_id,
370 serial_id,
371 reference1,
372 reference2
373 ) VALUES (
374 X_Status_Code,
375 X_Packet_Id,
376 X_Ledger_Id,
377 X_Je_Source_Name,
378 X_Je_Category_Name,
379 X_To_Code_Combination_Id,
380 'B',
381 X_Period_Name,
382 X_Period_Year,
383 X_Period_Num,
384 X_Quarter_Num,
385 X_Currency_Code,
386 X_Last_Update_Date,
387 X_Last_Updated_By,
388 X_Budget_Version_Id,
389 X_To_Entered_Dr,
390 X_To_Entered_Cr,
391 X_To_Entered_Dr,
392 X_To_Entered_Cr,
393 X_Je_Batch_Name,
394 101,
395 X_Session_Id,
396 X_Serial_Id,
397 X_Combination_Number,
398 X_From_RowId);
399
400 OPEN C(X_To_Code_Combination_Id, X_From_RowId);
401 FETCH C INTO X_To_Rowid;
402 if (C%NOTFOUND) then
403 CLOSE C;
404 RAISE NO_DATA_FOUND;
405 end if;
406 CLOSE C;
407
408
409 -- Change the from reference2 to the to rowid.
410 UPDATE GL_BC_PACKETS
411 SET reference2 = X_To_RowId
412 WHERE packet_id = X_Packet_Id
413 AND ledger_id = X_Ledger_Id
414 AND reference2 = 'New Budget Transfer Row'
415 AND code_combination_id = X_From_Code_Combination_Id
416 AND reference1 = to_char(X_Combination_Number)
417 AND period_name = X_Period_Name;
418
419 END Insert_Budget_Transfer_Row;
420
421 PROCEDURE Update_Budget_Transfer_Row(
422 X_From_Rowid VARCHAR2,
423 X_To_Rowid VARCHAR2,
424 X_Status_Code VARCHAR2,
425 X_Packet_Id NUMBER,
426 X_Ledger_Id NUMBER,
427 X_Je_Source_Name VARCHAR2,
428 X_Je_Category_Name VARCHAR2,
429 X_Budget_Version_Id NUMBER,
433 X_To_Code_Combination_Id NUMBER,
430 X_Je_Batch_Name VARCHAR2,
431 X_Currency_Code VARCHAR2,
432 X_From_Code_Combination_Id NUMBER,
434 X_Combination_Number NUMBER,
435 X_Period_Name VARCHAR2,
436 X_Period_Year NUMBER,
437 X_Period_Num NUMBER,
438 X_Quarter_Num NUMBER,
439 X_From_Entered_Dr NUMBER,
440 X_From_Entered_Cr NUMBER,
441 X_To_Entered_Dr NUMBER,
442 X_To_Entered_Cr NUMBER,
443 X_Last_Update_Date DATE,
444 X_Last_Updated_By NUMBER) IS
445 BEGIN
446 UPDATE GL_BC_PACKETS
447 SET
448 status_code = X_Status_Code,
449 packet_id = X_Packet_Id,
450 ledger_id = X_Ledger_Id,
451 je_source_name = X_Je_Source_Name,
452 je_category_name = X_Je_Category_Name,
453 code_combination_id = decode(rowid,
454 X_From_Rowid, X_From_Code_Combination_Id,
455 X_To_Rowid, X_To_Code_Combination_Id),
456 actual_flag = 'B',
457 period_name = X_Period_Name,
458 period_year = X_Period_Year,
459 period_num = X_Period_Num,
460 quarter_num = X_Quarter_Num,
461 currency_code = X_Currency_Code,
462 last_update_date = X_Last_Update_Date,
463 last_updated_by = X_Last_Updated_By,
464 budget_version_id = X_Budget_Version_Id,
465 entered_dr = decode(rowid,
466 X_From_Rowid, X_From_Entered_Dr,
467 X_To_Rowid, X_To_Entered_Dr),
468 entered_cr = decode(rowid,
469 X_From_Rowid, X_From_Entered_Cr,
470 X_To_Rowid, X_To_Entered_Cr),
471 accounted_dr = decode(rowid,
472 X_From_Rowid, X_From_Entered_Dr,
473 X_To_Rowid, X_To_Entered_Dr),
474 accounted_cr = decode(rowid,
475 X_From_Rowid, X_From_Entered_Cr,
476 X_To_Rowid, X_To_Entered_Cr),
477 je_batch_name = X_Je_Batch_Name,
478 reference1 = X_Combination_Number
479 WHERE rowid IN (X_From_Rowid, X_To_RowId);
480
481 if (SQL%NOTFOUND) then
482 RAISE NO_DATA_FOUND;
483 end if;
484
485 END Update_Budget_Transfer_Row;
486
487 PROCEDURE Lock_Budget_Transfer_Row(
488 X_From_Rowid VARCHAR2,
489 X_To_Rowid VARCHAR2,
490 X_Status_Code VARCHAR2,
491 X_Packet_Id NUMBER,
492 X_Ledger_Id NUMBER,
493 X_Je_Source_Name VARCHAR2,
494 X_Je_Category_Name VARCHAR2,
495 X_Budget_Version_Id NUMBER,
496 X_Je_Batch_Name VARCHAR2,
497 X_Currency_Code VARCHAR2,
498 X_From_Code_Combination_Id NUMBER,
499 X_To_Code_Combination_Id NUMBER,
500 X_Combination_Number NUMBER,
501 X_Period_Name VARCHAR2,
502 X_Period_Year NUMBER,
503 X_Period_Num NUMBER,
504 X_Quarter_Num NUMBER,
505 X_From_Entered_Dr NUMBER,
506 X_From_Entered_Cr NUMBER,
507 X_To_Entered_Dr NUMBER,
508 X_To_Entered_Cr NUMBER) IS
509 BEGIN
510
511 -- Lock the from row
512 GL_BC_PACKETS_PKG.Lock_Budget_Transfer_Row(
513 X_Rowid => X_From_RowId,
514 X_Status_Code => X_Status_Code,
515 X_Packet_Id => X_Packet_Id,
516 X_Ledger_Id => X_Ledger_Id,
517 X_Je_Source_Name => X_Je_Source_Name,
518 X_Je_Category_Name => X_Je_Category_Name,
519 X_Code_Combination_Id => X_From_Code_Combination_Id,
520 X_Period_Name => X_Period_Name,
521 X_Period_Year => X_Period_Year,
522 X_Period_Num => X_Period_Num,
523 X_Quarter_Num => X_Quarter_Num,
524 X_Currency_Code => X_Currency_Code,
525 X_Budget_Version_Id => X_Budget_Version_Id,
526 X_Entered_Dr => X_From_Entered_Dr,
527 X_Entered_Cr => X_From_Entered_Cr,
528 X_Combination_Number => X_Combination_Number,
529 X_Je_Batch_Name => X_Je_Batch_Name
530 );
531
532 -- Lock the to row
533 GL_BC_PACKETS_PKG.Lock_Budget_Transfer_Row(
534 X_Rowid => X_To_RowId,
535 X_Status_Code => X_Status_Code,
536 X_Packet_Id => X_Packet_Id,
537 X_Ledger_Id => X_Ledger_Id,
538 X_Je_Source_Name => X_Je_Source_Name,
539 X_Je_Category_Name => X_Je_Category_Name,
540 X_Code_Combination_Id => X_To_Code_Combination_Id,
541 X_Period_Name => X_Period_Name,
542 X_Period_Year => X_Period_Year,
543 X_Period_Num => X_Period_Num,
544 X_Quarter_Num => X_Quarter_Num,
545 X_Currency_Code => X_Currency_Code,
546 X_Budget_Version_Id => X_Budget_Version_Id,
550 X_Je_Batch_Name => X_Je_Batch_Name
547 X_Entered_Dr => X_To_Entered_Dr,
548 X_Entered_Cr => X_To_Entered_Cr,
549 X_Combination_Number => X_Combination_Number,
551 );
552
553 END Lock_Budget_Transfer_Row;
554
555 PROCEDURE Delete_Budget_Transfer_Row(X_From_Rowid VARCHAR2,
556 X_To_Rowid VARCHAR2) IS
557 BEGIN
558 DELETE FROM GL_BC_PACKETS
559 WHERE rowid IN (X_From_Rowid, X_To_Rowid);
560
561 if (SQL%NOTFOUND) then
562 RAISE NO_DATA_FOUND;
563 end if;
564 END Delete_Budget_Transfer_Row;
565
566 PROCEDURE Delete_Packet(Packet_Id NUMBER,
567 Reference1 NUMBER DEFAULT NULL) IS
568 BEGIN
569 DELETE gl_bc_packets
570 WHERE packet_id = Delete_Packet.packet_id
571 AND status_code IN ('P', 'C')
572 AND nvl(reference1,'XZYXZ')
573 = nvl(Delete_Packet.reference1, nvl(reference1, 'XZYXZ'));
574 EXCEPTION
575 WHEN NO_DATA_FOUND THEN
576 RETURN;
577 END Delete_Packet;
578
579 FUNCTION copy_packet(packet_id NUMBER,
580 mode_code VARCHAR2,
581 user_id NUMBER,
582 x_session_id NUMBER,
583 x_serial_id NUMBER) RETURN NUMBER IS
584 new_packet_id NUMBER;
585 insert_mode VARCHAR2(1);
586 BEGIN
587 -- Get the packet id
588 new_packet_id := gl_bc_packets_pkg.get_unique_id;
589
590 -- Set the funds check mode
591 IF (mode_code = 'R') THEN
592 insert_mode := 'P';
593 ELSE
594 insert_mode := 'C';
595 END IF;
596
597 -- Insert the data into gl_je_packets
598 INSERT INTO gl_bc_packets
599 (packet_id, ledger_id, je_source_name,
600 je_category_name, code_combination_id, actual_flag,
601 period_name, period_year, period_num, quarter_num,
602 currency_code, status_code,
603 last_update_date, last_updated_by, budget_version_id,
604 entered_dr, entered_cr, accounted_dr, accounted_cr,
605 ussgl_transaction_code, je_batch_name,
606 application_id, session_id, serial_id)
607 SELECT new_packet_id, bc.ledger_id, bc.je_source_name,
608 bc.je_category_name, bc.code_combination_id, bc.actual_flag,
609 bc.period_name, bc.period_year, bc.period_num, bc.quarter_num,
610 bc.currency_code, insert_mode,
611 sysdate, user_id, bc.budget_version_id,
612 bc.entered_dr, bc.entered_cr, bc.accounted_dr, bc.accounted_cr,
613 bc.ussgl_transaction_code, bc.je_batch_name,
614 101, x_session_id, x_serial_id
615 FROM gl_bc_packets bc
616 WHERE bc.packet_id = copy_packet.packet_id;
617
618 RETURN (new_packet_id);
619 EXCEPTION
620 WHEN app_exceptions.application_exception THEN
621 RAISE;
622 WHEN OTHERS THEN
623 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
624 fnd_message.set_token('PROCEDURE', 'gl_bc_packets_pkg.copy_packet');
625 RAISE;
626 END copy_packet;
627
628 FUNCTION view_bc_results_setup(packet_id NUMBER,
629 ledger_id NUMBER) RETURN NUMBER IS
630 seq_id NUMBER;
631 errbuf VARCHAR2(80);
632 retcode VARCHAR2(80);
633 BEGIN
634 DELETE FROM PSA_BC_REPORT_EVENTS_GT;
635 INSERT INTO PSA_BC_REPORT_EVENTS_GT(packet_id) VALUES (packet_id);
636
637 SELECT PSA_BC_XML_REPORT_S.nextval
638 INTO seq_id
639 FROM dual;
640
641 PSA_BC_XML_REPORT_PUB.Create_BC_Transaction_Report(
642 errbuf => errbuf,
643 retcode => retcode,
644 p_ledger_id => ledger_id,
645 p_application_id => 101,
646 p_packet_event_flag => 'P',
647 p_sequence_id => seq_id);
648
649 RETURN(seq_id);
650 END view_bc_results_setup;
651
652 END gl_bc_packets_pkg;