DBA Data[Home] [Help]

PACKAGE BODY: APPS.ASO_CREDIT_CHECK_PUB

Source


1 PACKAGE BODY ASO_CREDIT_CHECK_PUB as
2 /* $Header: asopqccb.pls 120.1 2005/06/29 12:37:24 appldev ship $ */
3 -- Start of Comments
4 -- Package name     : ASO_CREDIT_CHECK_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 G_PKG_NAME CONSTANT VARCHAR2(30):= 'ASO_CREDIT_CHECK_PUB';
11 G_FILE_NAME CONSTANT VARCHAR2(12) := 'asopqccb.pls';
12 
13 --subha  madapusi - quote credit check call.
14 
15 PROCEDURE CREDIT_CHECK(
16   P_API_VERSION		    IN	NUMBER,
17   P_INIT_MSG_LIST	    IN	VARCHAR2  := FND_API.G_FALSE,
18   P_COMMIT		    IN 	VARCHAR2  := FND_API.G_FALSE,
19   P_QTE_HEADER_REC          IN  ASO_QUOTE_PUB.Qte_Header_Rec_Type,
20   X_RESULT_OUT              OUT NOCOPY /* file.sql.39 change */  VARCHAR2,
21   X_CC_HOLD_COMMENT         OUT NOCOPY /* file.sql.39 change */  VARCHAR2,
22   X_RETURN_STATUS	    OUT NOCOPY /* file.sql.39 change */ 	VARCHAR2,
23   X_MSG_COUNT		    OUT NOCOPY /* file.sql.39 change */ 	NUMBER,
24   X_MSG_DATA		    OUT NOCOPY /* file.sql.39 change */ 	VARCHAR2
25 )
26 IS
27 
28   l_api_version             NUMBER        := 1.0;
29   l_api_name                VARCHAR2(50)  := 'Credit_Check';
30 
31 BEGIN
32   -- Standard Start of API savepoint
33   SAVEPOINT Credit_Check_PUB;
34 
35   -- Standard call to check for call compatibility.
36   IF NOT FND_API.Compatible_API_Call ( l_api_version,
37                      	                 p_api_version,
38                                        l_api_name,
39                                        G_PKG_NAME)
40   THEN
41     RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
42   END IF;
43 
44 
45   -- Initialize message list if p_init_msg_list is set to TRUE.
46   IF FND_API.to_Boolean( p_init_msg_list )
47   THEN
48     FND_MSG_PUB.initialize;
49   END IF;
50 
51 
52   -- Initializing Global Debug Variable.
53   aso_debug_pub.g_debug_flag := NVL(FND_PROFILE.VALUE('ASO_ENABLE_DEBUG'),'N');
54 
55   -- Initialize API return status to SUCCESS
56   x_return_status := FND_API.G_RET_STS_SUCCESS;
57 
58   --
59   -- API body
60   --
61 
62   --  call user hooks - Pre processing
63 
64   -- customer pre processing
65 
66   IF aso_debug_pub.g_debug_flag = 'Y' THEN
67      aso_debug_pub.add('Credit_Check_CUHK: Before Customer Pre Hook................. ', 1, 'Y');
68   END IF;
69 
70   IF (JTF_USR_HKS.ok_to_execute(G_PKG_NAME, l_api_name, 'B', 'C')) THEN
71     ASO_CREDIT_CHECK_CUHK.credit_check_PRE(
72     P_API_VERSION		=> 1.0,
73     P_INIT_MSG_LIST	        => FND_API.G_FALSE,
74     p_commit                  	=> FND_API.G_FALSE,
75     p_qte_header_rec		=> p_qte_header_rec,
76     X_RETURN_STATUS	        => x_return_status,
77     X_MSG_COUNT		        => x_msg_count,
78     X_MSG_DATA		        => x_msg_data
79     );
80   IF aso_debug_pub.g_debug_flag = 'Y' THEN
81     aso_debug_pub.add('Credit_Check_CUHK: after CREDIT_CHECK_CUHK Pre hook return_status: '||x_return_status, 1, 'Y');
82   END IF;
83 
84     IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
85              IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
86 		  FND_MESSAGE.Set_Name('ASO', 'ASO_ERROR_RETURNED');
87 		  FND_MESSAGE.Set_Token('PKG_NAME', 'ASO_CREDIT_CHECK_CUHK', FALSE);
88 		  FND_MESSAGE.Set_Token('API_NAME', 'Credit_Check_PRE', FALSE);
89 		  FND_MSG_PUB.ADD;
90              END IF;
91              IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
92                  RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
93              ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
94                  RAISE FND_API.G_EXC_ERROR;
95              END IF;
96      END IF;
97   END IF; -- customer hook
98 
99   -- vertical pre hook
100   IF aso_debug_pub.g_debug_flag = 'Y' THEN
101      aso_debug_pub.add('Credit_Check_VUHK: Before Vertical Pre Hook................. ', 1, 'Y');
102   END IF;
103 
104   IF (JTF_USR_HKS.ok_to_execute(G_PKG_NAME, l_api_name, 'B', 'V')) THEN
105     ASO_CREDIT_CHECK_VUHK.Credit_Check_PRE(
106     P_API_VERSION		=> 1.0,
107     P_INIT_MSG_LIST	        => FND_API.G_FALSE,
108     p_commit                  	=> FND_API.G_FALSE,
109     p_qte_header_rec		=> p_qte_header_rec,
110     X_RETURN_STATUS	        => x_return_status,
111     X_MSG_COUNT		        => x_msg_count,
112     X_MSG_DATA		        => x_msg_data
113     );
114   IF aso_debug_pub.g_debug_flag = 'Y' THEN
115      aso_debug_pub.add('Credit_Check_VUHK: after CREDIT_CHECK_VUHK Pre hook return_status: '||x_return_status, 1, 'Y');
116   END IF;
117 
118     IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
119              IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
120 		  FND_MESSAGE.Set_Name('ASO', 'ASO_ERROR_RETURNED');
121 		  FND_MESSAGE.Set_Token('PKG_NAME', 'ASO_CREDIT_CHECK_VUHK', FALSE);
122 		  FND_MESSAGE.Set_Token('API_NAME', 'Credit_Check_PRE', FALSE);
123 		  FND_MSG_PUB.ADD;
124              END IF;
125              IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
126                     RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
127              ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
128                     RAISE FND_API.G_EXC_ERROR;
129              END IF;
130     END IF;
131   END IF;
132 
133   -- Public API Call.
134   IF aso_debug_pub.g_debug_flag = 'Y' THEN
135      aso_debug_pub.add('Credit_Check_PUB: Before CREDIT_CHECK................. ', 1, 'Y');
136   END IF;
137 
138   ASO_CREDIT_CHECK_PVT.CREDIT_CHECK(
139     P_API_VERSION		=> 1.0,
140     P_INIT_MSG_LIST	        => FND_API.G_FALSE,
141     p_commit                  	=> FND_API.G_FALSE,
142     p_qte_header_rec		=> p_qte_header_rec,
143     X_result_out                => x_result_out,
144     X_cc_hold_comment      	=> x_cc_hold_comment,
145     X_RETURN_STATUS	        => x_return_status,
146     X_MSG_COUNT		        => x_msg_count,
147     X_MSG_DATA		        => x_msg_data
148   );
149 
150   IF aso_debug_pub.g_debug_flag = 'Y' THEN
151      aso_debug_pub.add('Credit_Check_PUB: after CREDIT_CHECK return_status: '||x_return_status, 1, 'Y');
152   END IF;
153 
154   IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
155     RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
156   ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
157     RAISE FND_API.G_EXC_ERROR;
158   END IF;
159 
160   --  call user hooks - Post Processing.
161 
162   -- customer post processing
163   IF aso_debug_pub.g_debug_flag = 'Y' THEN
164      aso_debug_pub.add('Credit_Check_CUHK: Before Customer Post Hook................. ', 1, 'Y');
165   END IF;
166 
167   IF (JTF_USR_HKS.ok_to_execute(G_PKG_NAME, l_api_name, 'A', 'C')) THEN
168     ASO_CREDIT_CHECK_CUHK.Credit_Check_POST(
169     P_API_VERSION		=> 1.0,
170     P_INIT_MSG_LIST	        => FND_API.G_FALSE,
171     p_commit                  	=> FND_API.G_FALSE,
172     p_qte_header_rec		=> p_qte_header_rec,
173     p_result_out                => x_result_out,
174     p_cc_hold_comment           => x_cc_hold_comment,
175     X_RETURN_STATUS	        => x_return_status,
176     X_MSG_COUNT		        => x_msg_count,
177     X_MSG_DATA		        => x_msg_data
178     );
179   IF aso_debug_pub.g_debug_flag = 'Y' THEN
180      aso_debug_pub.add('Credit_Check_CUHK: after CREDIT_CHECK_CUHK Post hook return_status: '||x_return_status, 1, 'Y');
181   END IF;
182 
183     IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
184         IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
185 		FND_MESSAGE.Set_Name('ASO', 'ASO_ERROR_RETURNED');
186 		FND_MESSAGE.Set_Token('PKG_NAME', 'ASO_CREDIT_CHECK_CUHK', FALSE);
187 		FND_MESSAGE.Set_Token('API_NAME', 'Credit_Check_POST', FALSE);
188 		FND_MSG_PUB.ADD;
189         END IF;
190         IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
191                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
192         ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
193                 RAISE FND_API.G_EXC_ERROR;
194         END IF;
195     END IF;
196   END IF; -- customer hook
197 
198   -- vertical post hook
199 
200   IF aso_debug_pub.g_debug_flag = 'Y' THEN
201      aso_debug_pub.add('Credit_Check_VUHK: Before Vertical Post Hook................. ', 1, 'Y');
202   END IF;
203 
204   IF (JTF_USR_HKS.ok_to_execute(G_PKG_NAME, l_api_name, 'A', 'V')) THEN
205     ASO_CREDIT_CHECK_VUHK.Credit_check_POST(
206     P_API_VERSION		=> 1.0,
207     P_INIT_MSG_LIST	        => FND_API.G_FALSE,
208     p_commit                  	=> FND_API.G_FALSE,
209     p_qte_header_rec		=> p_qte_header_rec,
210     p_result_out                => x_result_out,
211     p_cc_hold_comment           => x_cc_hold_comment,
212     X_RETURN_STATUS	        => x_return_status,
213     X_MSG_COUNT		        => x_msg_count,
214     X_MSG_DATA		        => x_msg_data
215     );
216   IF aso_debug_pub.g_debug_flag = 'Y' THEN
217      aso_debug_pub.add('Credit_Check_VUHK: after CREDIT_CHECK_VUHK Post hook return_status: '||x_return_status, 1, 'Y');
218   END IF;
219     IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
220        IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
221 		FND_MESSAGE.Set_Name('ASO', 'ASO_ERROR_RETURNED');
222 		FND_MESSAGE.Set_Token('PKG_NAME', 'ASO_CREDIT_CHECK_VUHK', FALSE);
223 		FND_MESSAGE.Set_Token('API_NAME', 'Credit_check_POST', FALSE);
224 		FND_MSG_PUB.ADD;
225        END IF;
226        IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
227                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
228        ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
229                 RAISE FND_API.G_EXC_ERROR;
230        END IF;
231     END IF;
232   END IF; -- vertical hook
233 
234   -- End of API body.
235   --
236 
237   -- Standard check for p_commit
238   IF FND_API.to_Boolean( p_commit )
239   THEN
240     COMMIT WORK;
241   END IF;
242 
243 
244 
245 
246   -- Standard call to get message count and if count is 1, get message info.
247   FND_MSG_PUB.Count_And_Get
248   (  p_count          =>   x_msg_count,
249      p_data           =>   x_msg_data
250   );
251 
252   EXCEPTION
253       WHEN FND_API.G_EXC_ERROR THEN
254           ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
255                P_API_NAME => L_API_NAME
256               ,P_PKG_NAME => G_PKG_NAME
257               ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
258               ,P_PACKAGE_TYPE => ASO_UTILITY_PVT.G_PUB
259               ,P_SQLCODE => SQLCODE
260               ,P_SQLERRM => SQLERRM
261               ,X_MSG_COUNT => X_MSG_COUNT
262               ,X_MSG_DATA => X_MSG_DATA
263               ,X_RETURN_STATUS => X_RETURN_STATUS);
264 
265       WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
266           ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
267                P_API_NAME => L_API_NAME
268               ,P_PKG_NAME => G_PKG_NAME
269               ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
270               ,P_PACKAGE_TYPE => ASO_UTILITY_PVT.G_PUB
271               ,P_SQLCODE => SQLCODE
272               ,P_SQLERRM => SQLERRM
273               ,X_MSG_COUNT => X_MSG_COUNT
274               ,X_MSG_DATA => X_MSG_DATA
275               ,X_RETURN_STATUS => X_RETURN_STATUS);
276 
277       WHEN OTHERS THEN
278           ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
279                P_API_NAME => L_API_NAME
280               ,P_PKG_NAME => G_PKG_NAME
281               ,P_EXCEPTION_LEVEL => ASO_UTILITY_PVT.G_EXC_OTHERS
282               ,P_PACKAGE_TYPE => ASO_UTILITY_PVT.G_PUB
283               ,P_SQLCODE => SQLCODE
284               ,P_SQLERRM => SQLERRM
285               ,X_MSG_COUNT => X_MSG_COUNT
286               ,X_MSG_DATA => X_MSG_DATA
287               ,X_RETURN_STATUS => X_RETURN_STATUS);
288 END Credit_Check;
289 -- subha madapusi - quote credit check end.
290 
291 END ASO_CREDIT_CHECK_PUB;