[Home] [Help]
PACKAGE BODY: APPS.INV_INTER_INVOICE
Source
1 PACKAGE BODY inv_inter_invoice AS
2 /* $Header: INVITCIB.pls 120.4 2006/11/11 16:00:09 ankulkar noship $ */
3 g_version_printed BOOLEAN := FALSE;
4 g_pkg_name CONSTANT VARCHAR2(30) := 'INV:inliar';
5
6 Procedure print_debug(p_message IN VARCHAR2,
7 p_module IN VARCHAR2)
8 IS
9 BEGIN
10 IF NOT g_version_printed THEN
11 INV_TRX_UTIL_PUB.TRACE('$Header: INVITCIB.pls 120.4 2006/11/11 16:00:09 ankulkar noship $',G_PKG_NAME, 9);
12 g_version_printed := TRUE;
13 END IF;
14 inv_log_util.trace(p_message, p_module);
15 END;
16
17 PROCEDURE update_invoice_flag(p_header_id IN NUMBER, p_line_id IN NUMBER) IS
18 x_return_status VARCHAR2(30);
19 --g_pkg_name CONSTANT VARCHAR2(30) := 'INV:inliar';
20 d_sql_p INTEGER := NULL;
21 d_sql_rows_processed INTEGER := NULL;
22 d_sql_stmt VARCHAR2(6000) := NULL;
23 d_priceadjustmentid NUMBER;
24 l_debug NUMBER := NVL(fnd_profile.VALUE('INV_DEBUG_TRACE'), 0);
25 l_module VARCHAR2(50) := 'INV_INTER_INVOICE.update_invoice_flag';
26 BEGIN
27 IF l_debug = 1 THEN
28 /*inv_log_util.TRACE('Parameters Passed ', l_module);
29 inv_log_util.TRACE('p_header_id :' || p_header_id, l_module);
30 inv_log_util.TRACE('p_line_id :' || p_line_id, l_module);*/
31 print_debug('Parameters Passed ', l_module);
32 print_debug('p_header_id :' || p_header_id, l_module);
33 print_debug('p_line_id :' || p_line_id, l_module);
34 END IF;
35
36 d_sql_p := DBMS_SQL.open_cursor;
37 d_sql_stmt :=
38 'select price_adjustment_id '
39 || 'FROM oe_price_adjustments WHERE '
40 || '( line_id = :line_id OR '
41 || '(header_id = :header_id AND line_id IS NULL) )'
42 || 'AND nvl(interco_invoiced_flag,''N'') = ''N'' ';
43 DBMS_SQL.parse(d_sql_p, d_sql_stmt, DBMS_SQL.native);
44 DBMS_SQL.define_column(d_sql_p, 1, d_priceadjustmentid);
45 DBMS_SQL.bind_variable(d_sql_p, 'line_id', p_line_id);
46 DBMS_SQL.bind_variable(d_sql_p,'header_id',p_header_id);
47 d_sql_rows_processed := DBMS_SQL.EXECUTE(d_sql_p);
48
49 LOOP
50 IF (DBMS_SQL.fetch_rows(d_sql_p) > 0) THEN
51 DBMS_SQL.column_value(d_sql_p, 1, d_priceadjustmentid);
52
53 IF l_debug = 1 THEN
54 /*inv_log_util.TRACE('Calling OE_INVOICE_UTIL.Update_Interco_Invoiced_Flag for d_priceAdjustmentId :' || d_priceadjustmentid
55 , l_module);*/
56 print_debug('Calling OE_INVOICE_UTIL.Update_Interco_Invoiced_Flag for d_priceAdjustmentId :' || d_priceadjustmentid
57 , l_module);
58 END IF;
59
60 oe_invoice_util.update_interco_invoiced_flag(d_priceadjustmentid, x_return_status);
61 ELSE
62 -- No more rows in cursor
63 DBMS_SQL.close_cursor(d_sql_p);
64 EXIT;
65 END IF;
66 END LOOP;
67
68 IF DBMS_SQL.is_open(d_sql_p) THEN
69 DBMS_SQL.close_cursor(d_sql_p);
70 END IF;
71 EXCEPTION
72 WHEN OTHERS THEN
73 IF DBMS_SQL.is_open(d_sql_p) THEN
74 DBMS_SQL.close_cursor(d_sql_p);
75 END IF;
76
77 x_return_status := fnd_api.g_ret_sts_unexp_error;
78
79 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
80 oe_msg_pub.add_exc_msg(g_pkg_name, 'Update_Invoiced_flag');
81 /*inv_log_util.TRACE ('Unexpected Error occured while calling OE_INVOICE_UTIL.Update_Interco_Invoiced_Flag for d_priceAdjustmentId :'|| d_priceadjustmentid, l_module); */
82 print_debug('Unexpected Error occured while calling OE_INVOICE_UTIL.Update_Interco_Invoiced_Flag for d_priceAdjustmentId :'|| d_priceadjustmentid, l_module);
83 END IF;
84 END update_invoice_flag;
85
86
87
88 END inv_inter_invoice;