DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_PROCESS_SALES_TAX_PUB

Source


1 PACKAGE BODY	OKL_PROCESS_SALES_TAX_PUB AS
2 /* $Header: OKLPPSTB.pls 120.2 2007/07/12 22:19:47 rravikir ship $ */
3 
4   -- Start of comments
5   -- Procedure Name	  : calculate_sales_tax
6   -- Description	  : This procedure calls pvt procedure to calculate sales tax
7   -- Business Rules   :
8   -- Parameters		  : p_source_trx_id - source transaction ID
9   --                    p_source_trx_name - source trx name
10   --                    p_source_table - source transaction table
11   -- Version		  : 1.0
12   -- History          :
13   -- End of comments
14 PROCEDURE  calculate_sales_tax(
15     p_api_version                  	IN  NUMBER,
16     p_init_msg_list                	IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
17     x_return_status                	OUT NOCOPY VARCHAR2,
18     x_msg_count                    	OUT NOCOPY NUMBER,
19     x_msg_data                     	OUT NOCOPY VARCHAR2,
20     p_source_trx_id				 	IN  NUMBER,
21     p_source_trx_name               IN  VARCHAR2,
22     p_source_table                  IN  VARCHAR2,
23     p_tax_call_type                 IN  VARCHAR2 DEFAULT NULL,
24     p_serialized_asset              IN  VARCHAR2 DEFAULT NULL,
25     p_request_id                    IN  NUMBER   DEFAULT NULL,
26     p_alc_final_call                IN  VARCHAR2 DEFAULT NULL) IS
27 
28     l_api_version NUMBER ;
29     l_init_msg_list VARCHAR2(1) ;
30     l_return_status VARCHAR2(1);
31     l_msg_count NUMBER ;
32     l_msg_data VARCHAR2(2000);
33 
34     lp_source_trx_id 				NUMBER;
35     lp_source_trx_name				VARCHAR2(150);
36     lp_source_table					VARCHAR2(30);
37 
38 BEGIN
39 SAVEPOINT trx_calc_sales_tax;
40 
41 l_api_version := p_api_version ;
42 l_init_msg_list := p_init_msg_list ;
43 l_return_status := x_return_status ;
44 l_msg_count := x_msg_count ;
45 l_msg_data := x_msg_data ;
46 lp_source_trx_id :=  p_source_trx_id;
47 lp_source_trx_name :=  p_source_trx_name;
48 lp_source_table := p_source_table;
49 
50 -- call the insert of pvt
51 
52 	OKL_PROCESS_SALES_TAX_PVT.calculate_sales_tax( p_api_version => l_api_version
53 	                                              ,p_init_msg_list => l_init_msg_list
54 	                                              ,x_msg_data => l_msg_data
55 	                                              ,x_msg_count => l_msg_count
56 	                                              ,x_return_status => l_return_status
57 	                                              ,p_source_trx_id	=> lp_source_trx_id
58     											  ,p_source_trx_name  => lp_source_trx_name
59     											  ,p_source_table => lp_source_table
60                                                   ,p_tax_call_type => p_tax_call_type
61                                                   ,p_serialized_asset => p_serialized_asset
62                                                   ,p_request_id       => p_request_id
63                                                   ,p_alc_final_call   => p_alc_final_call);
64 
65 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
66 	RAISE FND_API.G_EXC_ERROR;
67 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
68 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
69 END IF;
70 
71 x_return_status := l_return_status ;
72 x_msg_count := l_msg_count ;
73 x_msg_data := l_msg_data ;
74 
75 EXCEPTION
76 
77     WHEN FND_API.G_EXC_ERROR THEN
78       ROLLBACK TO trx_calc_sales_tax;
79       x_return_status := FND_API.G_RET_STS_ERROR;
80       x_msg_count := l_msg_count ;
81       x_msg_data := l_msg_data ;
82       FND_MSG_PUB.count_and_get(
83              p_count   => x_msg_count
84             ,p_data    => x_msg_data);
85     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
86       ROLLBACK TO trx_calc_sales_tax;
87       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
88       x_msg_count := l_msg_count ;
89       x_msg_data := l_msg_data ;
90       FND_MSG_PUB.count_and_get(
91              p_count   => x_msg_count
92             ,p_data    => x_msg_data);
93     WHEN OTHERS THEN
94       ROLLBACK TO trx_calc_sales_tax;
95       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
96       x_msg_count := l_msg_count ;
97       x_msg_data := l_msg_data ;
98       FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_SALES_TAX_PUB','calculate_sales_tax');
99       FND_MSG_PUB.count_and_get(
100              p_count   => x_msg_count
101             ,p_data    => x_msg_data);
102 END calculate_sales_tax;
103 
104 
105 END OKL_PROCESS_SALES_TAX_PUB;