[Home] [Help]
PACKAGE BODY: APPS.JG_ZZ_TAX
Source
1 PACKAGE BODY JG_ZZ_TAX AS
2 /* $Header: jgzzrtxb.pls 120.10.12010000.1 2008/07/28 07:58:21 appldev ship $ */
3
4 g_current_runtime_level NUMBER;
5 g_level_statement CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
6 g_level_procedure CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
7 g_level_unexpected CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
8
9 FUNCTION recalculate_tax RETURN VARCHAR2 IS
10 --
11 l_return_code VARCHAR2(1);
12 l_country_code VARCHAR2(2);
13 --l_tax_method zx_product_options.tax_method_code%type;
14 BEGIN
15
16 g_current_runtime_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
17
18 IF (g_level_statement >= g_current_runtime_level ) THEN
19 FND_LOG.STRING(g_level_statement,
20 'JG.PLSQL.JG_ZZ_TAX.recalculate_tax.BEGIN',
21 'JG_ZZ_TAX: recalculate_tax(+)');
22 END IF;
23
24 l_country_code := NULL;
25 --l_tax_method := NULL;
26 l_return_code := 'N';
27
28 --Bug 2354736
29 l_country_code := JG_ZZ_SHARED_PKG.GET_COUNTRY(
30 ZX_PRODUCT_INTEGRATION_PKG.old_line_rec.org_id,
31 null);
32 --l_country_code := FND_PROFILE.VALUE('JGZZ_COUNTRY_CODE');
33
34 IF (g_level_statement >= g_current_runtime_level ) THEN
35 FND_LOG.STRING(g_level_statement,
36 'JG.PLSQL.JG_ZZ_TAX.recalculate_tax',
37 'l_country_code = ' || l_country_code);
38 END IF;
39
40 IF NVL(l_country_code,'$') IN ('BR','AR','CO') THEN
41
42 -- Bug 5015952- remove as it is redundant
43 /******
44 l_tax_method := NULL;
45
46 BEGIN
47 SELECT tax_method_code
48 INTO l_tax_method
49 FROM zx_product_options;
50 EXCEPTION
51 WHEN OTHERS THEN
52 l_tax_method := NULL;
53 IF (g_level_unexpected >= g_current_runtime_level ) THEN
54 FND_LOG.STRING(g_level_unexpected,
55 'JG.PLSQL.JG_ZZ_TAX.recalculate_tax',
56 sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80));
57 END IF;
58 END;
59
60 IF NVL(l_tax_method,'$') = 'LTE' THEN
61 ****/
62
63 -- reverted back the change for product category, product fiscal classification
64 -- and tranasction business category as these columns will not be added to
65 -- receivables transaction tables.
66
67 IF (NVL(ZX_PRODUCT_INTEGRATION_PKG.old_line_rec.global_attribute2,'$') <>
68 NVL(ZX_PRODUCT_INTEGRATION_PKG.new_line_rec.global_attribute2,'$')) OR
69 (NVL(ZX_PRODUCT_INTEGRATION_PKG.old_line_rec.global_attribute3,'$') <>
70 NVL(ZX_PRODUCT_INTEGRATION_PKG.new_line_rec.global_attribute3,'$')) OR
71 (NVL(ZX_PRODUCT_INTEGRATION_PKG.old_line_rec.warehouse_id,'$') <>
72 NVL(ZX_PRODUCT_INTEGRATION_PKG.new_line_rec.warehouse_id,'$')) THEN
73 l_return_code := 'Y';
74 END IF;
75 -- END IF;
76 END IF;
77
78 IF (g_level_statement >= g_current_runtime_level ) THEN
79 FND_LOG.STRING(g_level_statement,
80 'JG.PLSQL.JG_ZZ_TAX.recalculate_tax',
81 'l_return_code = ' || l_return_code);
82 FND_LOG.STRING(g_level_statement,
83 'JG.PLSQL.JG_ZZ_TAX.recalculate_tax.END',
84 'JG_ZZ_TAX: recalculate_tax(-)');
85 END IF;
86
87 RETURN l_return_code;
88 END recalculate_tax;
89
90 FUNCTION get_default_tax_code (p_set_of_books_id IN NUMBER,
91 p_trx_date IN DATE,
92 p_trx_type_id IN NUMBER) RETURN VARCHAR2 IS
93
94 l_tax_code VARCHAR2(50);
95 l_org_id NUMBER;
96 l_country_code VARCHAR2(2);
97 --l_tax_method zx_product_options.tax_method_code%type;
98 BEGIN
99
100 g_current_runtime_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
101
102 IF (g_level_statement >= g_current_runtime_level ) THEN
103 FND_LOG.STRING(g_level_statement,
104 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code.BEGIN',
105 'JG_ZZ_TAX: get_default_tax_code(+)');
106 END IF;
107
108 l_country_code := NULL;
109 --l_tax_method := NULL;
110 l_tax_code := NULL;
111
112 --Bug 2354736
113 --l_country_code := JG_ZZ_SHARED_PKG.GET_COUNTRY(arp_tax.old_line_rec.org_id, null);
114 --l_country_code := FND_PROFILE.VALUE('JGZZ_COUNTRY_CODE');
115
116 --IF NVL(l_country_code,'$') IN ('BR','AR','CO') THEN
117
118 -- Bug 5015952- remove as this is redundant
119 /****
120 l_tax_method := NULL;
121
122 BEGIN
123 SELECT tax_method_code,
124 org_id
125 INTO l_tax_method,
126 l_org_id
127 FROM zx_product_options;
128 EXCEPTION
129 WHEN OTHERS THEN
130 l_tax_method := NULL;
131 IF (g_level_unexpected >= g_current_runtime_level ) THEN
132 FND_LOG.STRING(g_level_unexpected,
133 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code',
134 sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80));
135 END IF;
136
137 END;
138
139 IF (g_level_statement >= g_current_runtime_level ) THEN
140 FND_LOG.STRING(g_level_statement,
141 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code',
142 'l_tax_method = ' || l_tax_method);
143 FND_LOG.STRING(g_level_statement,
144 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code',
145 'l_org_id = ' || TO_CHAR(l_org_id));
146 END IF;
147
148 IF NVL(l_tax_method,'$') = 'LTE' THEN
149
150 ******/
151
152 l_org_id := ZX_AR_TAX_CLASSIFICATN_DEF_PKG.sysinfo.ar_product_options_rec.org_id;
153
154 IF (g_level_statement >= g_current_runtime_level ) THEN
155 FND_LOG.STRING(g_level_statement,
156 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code'
157 ,
158 'l_org_id = ' || TO_CHAR(l_org_id));
159 END IF;
160
161 -- bug#5601977- execute sql below only if org_id
162 -- is available
163 --
164 IF l_org_id IS NOT NULL THEN
165 BEGIN
166 SELECT ctt.global_attribute4
167 INTO l_tax_code
168 FROM ra_cust_trx_types_all ctt,
169 ar_vat_tax_all vt
170 WHERE ctt.cust_trx_type_id = p_trx_type_id
171 AND ctt.org_id = vt.org_id
172 AND ctt.org_id = l_org_id
173 AND ctt.global_attribute4 = vt.tax_code
174 AND vt.set_of_books_id = p_set_of_books_id
175 AND p_trx_date between vt.start_date
176 and nvl(vt.end_date,p_trx_date)
177 AND nvl(vt.enabled_flag,'Y') = 'Y'
178 AND nvl(vt.tax_class,'O') = 'O';
179 EXCEPTION
180 WHEN NO_DATA_FOUND THEN
181 l_tax_code := NULL;
182 WHEN OTHERS THEN
183 l_tax_code := NULL;
184 IF (g_level_unexpected >= g_current_runtime_level ) THEN
185 FND_LOG.STRING(g_level_unexpected,
186 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code',
187 sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80));
188 END IF;
189 END;
190 END IF;
191
192 -- END IF;
193
194 IF (g_level_statement >= g_current_runtime_level ) THEN
195 FND_LOG.STRING(g_level_statement,
196 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code',
197 'l_tax_code = ' || l_tax_code);
198 FND_LOG.STRING(g_level_statement,
199 'JG.PLSQL.JG_ZZ_TAX.get_default_tax_code.END',
200 'JG_ZZ_TAX: get_default_tax_code(-)');
201 END IF;
202
203 RETURN (l_tax_code);
204
205 END get_default_tax_code;
206
207 FUNCTION get_default_tax_code (
208 p_ship_to_site_use_id IN NUMBER
209 ,p_bill_to_site_use_id IN NUMBER
210 ,p_inventory_item_id IN NUMBER
211 ,p_organization_id IN NUMBER
212 ,p_warehouse_id IN NUMBER
213 ,p_set_of_books_id IN NUMBER
214 ,p_trx_date IN DATE
215 ,p_trx_type_id IN NUMBER
216 ,p_cust_trx_id IN NUMBER
217 ,p_cust_trx_line_id IN NUMBER
218 ,APPL_SHORT_NAME IN VARCHAR2
219 ,FUNC_SHORT_NAME IN VARCHAR2)
220 RETURN VARCHAR2 IS
221
222 l_tax_code VARCHAR2(50);
223
224 BEGIN
225
226 l_tax_code := get_default_tax_code (p_set_of_books_id => p_set_of_books_id,
227 p_trx_date => p_trx_date,
228 p_trx_type_id => p_trx_type_id);
229
230
231 RETURN (l_tax_code);
232
233 END get_default_tax_code;
234
235 END JG_ZZ_TAX;