72:
73:
74: END IF;
75:
76: -- init return status to FND_API.G_RET_STS_SUCCESS
77: p_return_status := FND_API.G_RET_STS_SUCCESS;
78: p_error_buffer := NULL;
79:
80: --
73:
74: END IF;
75:
76: -- init return status to FND_API.G_RET_STS_SUCCESS
77: p_return_status := FND_API.G_RET_STS_SUCCESS;
78: p_error_buffer := NULL;
79:
80: --
81: -- check if begin_index and end_index have values
80: --
81: -- check if begin_index and end_index have values
82: --
83: IF (p_begin_index IS NULL OR p_end_index IS NULL) THEN
84: p_return_status:= FND_API.G_RET_STS_ERROR;
85:
86: IF (g_level_error >= g_current_runtime_level ) THEN
87: FND_LOG.STRING(g_level_error,
88: 'ZX.PLSQL.ZX_TDS_TAX_STATUS_DETM_PKG.get_tax_status',
157: l_tax_determine_date,
158: p_return_status,
159: p_error_buffer);
160:
161: IF p_return_status <> FND_API.G_RET_STS_SUCCESS THEN
162: IF (g_level_error >= g_current_runtime_level ) THEN
163: FND_LOG.STRING(g_level_error,
164: 'ZX.PLSQL.ZX_TDS_TAX_STATUS_DETM_PKG.get_tax_status',
165: 'Incorrect return_status after calling rule_base_tax_status_detm()');
181: l_tax_determine_date,
182: l_status_rec,
183: p_return_status,
184: p_error_buffer);
185: IF p_return_status <> FND_API.G_RET_STS_SUCCESS THEN
186: IF (g_level_error >= g_current_runtime_level ) THEN
187: FND_LOG.STRING(g_level_error,
188: 'ZX.PLSQL.ZX_TDS_TAX_STATUS_DETM_PKG.get_tax_status',
189: 'Incorrect return_status after calling '||
194: 'returned from rule engine. Need to get default tax status.');
195: END IF;
196: -- reset return status
197: --
198: p_return_status := FND_API.G_RET_STS_SUCCESS;
199: END IF;
200: END IF;
201:
202: IF l_tax_status_code IS NULL OR l_status_rec.tax_status_id IS NULL
240: ZX_TDS_CALC_SERVICES_PUB_PKG.g_msg_context_info_rec);
241: RETURN;
242: END IF;
243:
244: IF p_return_status <> FND_API.G_RET_STS_SUCCESS THEN
245: EXIT;
246: ELSE
247: update_det_tax_line(i,
248: l_status_result_id,
260: END IF;
261:
262: EXCEPTION
263: WHEN OTHERS THEN
264: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
265: p_error_buffer := sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80);
266:
267: IF (g_level_unexpected >= g_current_runtime_level ) THEN
268: FND_LOG.STRING(g_level_unexpected,
334: 'tax = ' || p_tax);
335:
336: END IF;
337:
338: p_return_status := FND_API.G_RET_STS_SUCCESS;
339:
340: OPEN get_def_status_info_csr(p_tax,
341: p_tax_regime_code,
342: p_tax_determine_date);
351: p_status_rec.Allow_Rate_Override_Flag,
352: p_status_rec.Allow_Exemptions_Flag,
353: p_status_rec.Allow_Exceptions_Flag;
354: IF get_def_status_info_csr%NOTFOUND THEN
355: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
356: p_error_buffer := 'No default tax status found';
357:
358: IF (g_level_statement >= g_current_runtime_level ) THEN
359: FND_LOG.STRING(g_level_statement,
364: CLOSE get_def_status_info_csr;
365: --
366: -- update the global status cache structure
367: --
368: IF p_return_status = FND_API.G_RET_STS_SUCCESS THEN
369: l_index := ZX_TDS_UTILITIES_PKG.get_tax_status_index(
370: p_status_rec.tax,
371: p_status_rec.tax_regime_code,
372: p_status_rec.tax_status_code);
383: END IF;
384:
385: EXCEPTION
386: WHEN OTHERS THEN
387: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
388: p_error_buffer := sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80);
389: IF get_def_status_info_csr%ISOPEN THEN
390: CLOSE get_def_status_info_csr;
391: END IF;
436: 'ZX.PLSQL.ZX_TDS_TAX_STATUS_DETM_PKG.rule_base_tax_status_detm',
437: 'p_tax_id = ' || to_char(p_tax_id));
438: END IF;
439:
440: p_return_status := FND_API.G_RET_STS_SUCCESS;
441:
442: l_service_type_code := 'DET_TAX_STATUS';
443:
444: ZX_TDS_RULE_BASE_DETM_PVT.rule_base_process(l_service_type_code,
454: p_return_status,
455: p_error_buffer);
456:
457: IF (l_tax_result_rec.alphanumeric_result IS NOT NULL AND
458: p_return_status = FND_API.G_RET_STS_SUCCESS) THEN
459: p_tax_status_code := l_tax_result_rec.alphanumeric_result;
460: p_status_result_id := l_tax_result_rec.result_id;
461: END IF;
462:
483: END IF;
484:
485: EXCEPTION
486: WHEN OTHERS THEN
487: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
488: p_error_buffer := sqlcode || ': ' || SUBSTR(SQLERRM, 1, 80);
489:
490: IF (g_level_unexpected >= g_current_runtime_level ) THEN
491: FND_LOG.STRING(g_level_unexpected,