DBA Data[Home] [Help]

PACKAGE BODY: APPS.FTE_DELIVERY_PUB

Source


1 PACKAGE BODY FTE_DELIVERY_PUB AS
2 /* $Header: FTEPDELB.pls 120.0 2005/05/26 18:27:20 appldev noship $ */
3 
4 G_PKG_NAME CONSTANT VARCHAR2(30) := 'FTE_DELIVERY_PUB';
5 
6 --===================
7 -- PROCEDURES
8 --===================
9 
10 PROCEDURE Rate_Delivery (
11   p_api_version         IN		NUMBER,
12   p_init_msg_list	IN		VARCHAR2,
13   p_commit	    	IN  		VARCHAR2,
14   x_return_status	OUT NOCOPY	VARCHAR2,
15   x_msg_count		OUT NOCOPY	NUMBER,
16   x_msg_data		OUT NOCOPY	VARCHAR2,
17   p_action_code		IN		VARCHAR2,
18   p_delivery_in_rec	IN		delivery_in_rec_type
19 )
20 IS
21   l_api_name 	CONSTANT VARCHAR2(30) := 'Rate_Delivery';
22   l_api_version CONSTANT NUMBER := 1.0;
23   l_del_in_rec  FTE_FREIGHT_RATING_DLVY_GRP.delivery_in_rec_type;
24 BEGIN
25   IF NOT FND_API.Compatible_API_Call (
26     	   	l_api_version,
27 		p_api_version,
28 		l_api_name,
29 		G_PKG_NAME )
30   THEN
31     RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32   END IF;
33 
34   IF FND_API.to_Boolean(p_init_msg_list) THEN
35     FND_MSG_PUB.initialize;
36   END IF;
37 
38   IF p_action_code = 'RATE' THEN
39 
40     l_del_in_rec.name := p_delivery_in_rec.name;
41     l_del_in_rec.carrier_name := p_delivery_in_rec.carrier_name;
42     l_del_in_rec.mode_of_transport := p_delivery_in_rec.mode_of_transport;
43     l_del_in_rec.service_level := p_delivery_in_rec.service_level;
44 
45     FTE_FREIGHT_RATING_DLVY_GRP.Rate_Delivery2 (
46       p_commit			=> p_commit,
47       x_return_status		=> x_return_status,
48       x_msg_count 		=> x_msg_count,
49       x_msg_data		=> x_msg_data,
50       p_delivery_in_rec		=> l_del_in_rec
51       );
52 
53     IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
54       RAISE FND_API.G_EXC_ERROR;
55     END IF;
56 
57   ELSE
58     FND_MESSAGE.SET_NAME('FTE','FTE_PRC_DLV_INV_ACT');
59     FND_MSG_PUB.ADD;
60     RAISE FND_API.G_EXC_ERROR;
61   END IF;
62 
63     FND_MSG_PUB.Count_And_Get (
64 	p_count  => x_msg_count,
65 	p_data  =>  x_msg_data,
66 	p_encoded => FND_API.G_FALSE
67     );
68 
69 EXCEPTION
70   WHEN FND_API.G_EXC_ERROR THEN
71     x_return_status := FND_API.G_RET_STS_ERROR;
72     FND_MSG_PUB.Count_And_Get (
73 	p_count  => x_msg_count,
74 	p_data  =>  x_msg_data,
75 	p_encoded => FND_API.G_FALSE
76     );
77   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
78     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
79     FND_MSG_PUB.Count_And_Get (
80 	p_count  => x_msg_count,
81 	p_data  =>  x_msg_data,
82 	p_encoded => FND_API.G_FALSE
83     );
84   WHEN OTHERS THEN
85     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
86     IF FND_MSG_PUB.Check_Msg_Level
87   	(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
88     THEN
89       FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
90     END IF;
91     FND_MSG_PUB.Count_And_Get (
92 	p_count  => x_msg_count,
93 	p_data  =>  x_msg_data,
94 	p_encoded => FND_API.G_FALSE
95     );
96 END Rate_Delivery;
97 
98 END FTE_DELIVERY_PUB;