[Home] [Help]
PACKAGE BODY: APPS.OKC_ASO_INT_GRP
Source
1 PACKAGE BODY OKC_ASO_INT_GRP AS
2 /* $Header: OKCGIASOB.pls 120.0 2005/05/25 18:25:49 appldev noship $ */
3
4
5 ---------------------------------------------------------------------------
6 -- GLOBAL MESSAGE CONSTANTS
7 ---------------------------------------------------------------------------
8 G_FND_APP CONSTANT VARCHAR2(200) := OKC_API.G_FND_APP;
9 ---------------------------------------------------------------------------
10 -- GLOBAL VARIABLES
11 ---------------------------------------------------------------------------
12 G_PKG_NAME CONSTANT VARCHAR2(200) := 'OKC_ASO_INT_GRP';
13 G_APP_NAME CONSTANT VARCHAR2(3) := OKC_API.G_APP_NAME;
14 G_MODULE_NAME CONSTANT VARCHAR2(250) := 'OKC.PLSQL.'||G_PKG_NAME||'.';
15 G_STMT_LEVEL CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
16 ------------------------------------------------------------------------------
17 -- GLOBAL CONSTANTS
18 ------------------------------------------------------------------------------
19 G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
20 G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
21 G_RET_STS_SUCCESS CONSTANT varchar2(1) := FND_API.G_RET_STS_SUCCESS;
22 G_RET_STS_ERROR CONSTANT varchar2(1) := FND_API.G_RET_STS_ERROR ;
23 G_RET_STS_UNEXP_ERROR CONSTANT varchar2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
24 G_UNEXPECTED_ERROR CONSTANT varchar2(200) := 'OKC_UNEXPECTED_ERROR';
25 G_SQLERRM_TOKEN CONSTANT varchar2(200) := 'ERROR_MESSAGE';
26 G_SQLCODE_TOKEN CONSTANT varchar2(200) := 'ERROR_CODE';
27
28
29 Procedure get_article_variable_values(
30 p_api_version IN Number,
31 p_init_msg_list IN Varchar2,
32 p_doc_id IN Number,
33 p_sys_var_value_tbl IN OUT NOCOPY sys_var_value_tbl_type,
34 x_return_status OUT NOCOPY Varchar2,
35 x_msg_data OUT NOCOPY Varchar2,
36 x_msg_count OUT NOCOPY Number
37 ) IS
38
39 l_api_version CONSTANT NUMBER := 1;
40 l_api_name CONSTANT VARCHAR2(30) := 'g_get_article_variable_values';
41 l_debug Boolean;
42 l_module VARCHAR2(250) := G_MODULE_NAME||l_api_name;
43
44 BEGIN
45 x_return_status := FND_API.G_RET_STS_SUCCESS;
46
47 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
48 l_debug := true;
49 END IF;
50
51 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
52 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'10:Entering OKC_ASO_INT_GRP.Get_Article_Variable_Values');
53 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'20:Calling OKC_XPRT_QUOTE_INT_PVT.Get_clause_Variable_Values');
54 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
55 END IF;
56
57 OKC_XPRT_QUOTE_INT_PVT.get_clause_variable_values(
58 p_api_version => l_api_version,
59 p_init_msg_list => FND_API.G_FALSE,
60 p_doc_id => p_doc_id,
61 p_sys_var_value_tbl => p_sys_var_value_tbl,
62 x_return_status => x_return_status,
63 x_msg_data => x_msg_data,
64 x_msg_count => x_msg_count);
65
66 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
67 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
68 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
69 RAISE FND_API.G_EXC_ERROR ;
70 END IF;
71
72 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
73 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
74 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'30:Return status from OKC_XPRT_QUOTE_INT_PVT.Get_clause_Variable_Values = '||x_return_status);
75 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'40:Leaving OKC_ASO_INT_GRP.get_article_variable_values');
76 END IF;
77
78 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
79
80 EXCEPTION
81 WHEN FND_API.G_EXC_ERROR THEN
82
83 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
84 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'50: Leaving get_article_variable_values: OKC_API.G_EXCEPTION_ERROR Exception');
85 END IF;
86
87 x_return_status := G_RET_STS_ERROR ;
88 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
89
90 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
91 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
92 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'60: Leaving get_article_variable_values: OKC_API.G_EXCEPTION_UNEXPECTED_ERROR Exception');
93 END IF;
94
95 x_return_status := G_RET_STS_UNEXP_ERROR ;
96 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
97
98 WHEN OTHERS THEN
99 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
100 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'70: Leaving get_article_variable_values because of EXCEPTION: '||sqlerrm);
101 END IF;
102
103 x_return_status := G_RET_STS_UNEXP_ERROR ;
104
105 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
106 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
107 END IF;
108 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
109
110 END get_article_variable_values;
111
112
113
114
115 Procedure get_item_dtl_for_expert(
116 p_api_version IN Number,
117 p_init_msg_list IN Varchar2,
118 p_doc_id IN Number,
119 x_category_tbl OUT NOCOPY item_tbl_type,
120 x_item_tbl OUT NOCOPY item_tbl_type,
121 x_return_status OUT NOCOPY Varchar2,
122 x_msg_data OUT NOCOPY Varchar2,
123 x_msg_count OUT NOCOPY Number
124 ) IS
125
126 l_api_version CONSTANT NUMBER := 1;
127 l_api_name CONSTANT VARCHAR2(30) := 'g_get_item_dtl_for_expert';
128 x_variables_tbl OKC_TERMS_UTIL_GRP.item_dtl_tbl;
129 l_sys_var_value_tbl sys_var_value_tbl_type;
130 l_cat_index NUMBER := -1;
131 l_item_index NUMBER := -1;
132
133 l_debug Boolean;
134 l_module VARCHAR2(250) := G_MODULE_NAME||l_api_name;
135
136 BEGIN
137 x_return_status := FND_API.G_RET_STS_SUCCESS;
138
139 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
140 l_debug := true;
141 END IF;
142
143 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
144 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'80:Entering OKC_ASO_INT_GRP.get_item_dtl_for_expert');
145 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'90:Calling OKC_XPRT_QUOTE_INT_PVT.get_clause_variable_values - 2 ');
146 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
147 END IF;
148
149 l_sys_var_value_tbl(0).variable_code :='OKC$S_ITEM_CATEGORY';
150 l_sys_var_value_tbl(1).variable_code :='OKC$S_ITEM';
151
152 OKC_XPRT_QUOTE_INT_PVT.get_clause_variable_values(
153 p_api_version => l_api_version,
154 p_init_msg_list => FND_API.G_FALSE,
155 p_doc_id => p_doc_id,
156 p_variables_tbl => l_sys_var_value_tbl,
157 x_line_var_value_tbl => x_variables_tbl,
158 x_return_status => x_return_status,
159 x_msg_data => x_msg_data,
160 x_msg_count => x_msg_count);
161
162 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
163 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
164 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'95:Return status from OKC_XPRT_QUOTE_INT_PVT.Get_clause_Variable_Values - 2 = '||x_return_status);
165 END IF;
166
167 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
168 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
169 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
170 RAISE FND_API.G_EXC_ERROR ;
171 END IF;
172
173
174 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
175 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'100:Category count = '||x_variables_tbl.category.COUNT);
176 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'110:Item count = '||x_variables_tbl.item.COUNT);
177 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
178 END IF;
179
180 -- Populate the categories
181 IF x_variables_tbl.category.COUNT > 0 THEN
182 FOR i in x_variables_tbl.category.FIRST.. x_variables_tbl.category.LAST LOOP
183 l_cat_index :=x_category_tbl.count + 1;
184 x_category_tbl(l_cat_index).name := x_variables_tbl.category(i);
185 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
186 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'120:x_category_tbl('||l_cat_index||').name = '||x_category_tbl(l_cat_index).name);
187 END IF;
188 END LOOP;
189 END IF;
190
191 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
192 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
193 END IF;
194 -- Populate the Items
195
196 IF x_variables_tbl.item.COUNT > 0 THEN
197 FOR i in x_variables_tbl.item.FIRST.. x_variables_tbl.item.LAST LOOP
198 l_item_index :=x_item_tbl.count + 1;
199 x_item_tbl(l_item_index).name := x_variables_tbl.item(i);
200 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
201 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'130:x_item_tbl('||l_item_index||').name = '||x_item_tbl(l_item_index).name);
202 END IF;
203 END LOOP;
204 END IF;
205
206 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
207 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,' ');
208 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'140:Leaving OKC_ASO_INT_GRP.g_get_item_dtl_for_expert');
209 END IF;
210
211 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
212
213 EXCEPTION
214 WHEN FND_API.G_EXC_ERROR THEN
215
216 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
217 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'160: Leaving get_item_dtl_for_expert: OKC_API.G_EXCEPTION_ERROR Exception');
218 END IF;
219
220 x_return_status := G_RET_STS_ERROR ;
221 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
222
223 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
224 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
225 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'170: Leaving get_item_dtl_for_expert: OKC_API.G_EXCEPTION_UNEXPECTED_ERROR Exception');
226 END IF;
227
228 x_return_status := G_RET_STS_UNEXP_ERROR ;
229 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
230 WHEN OTHERS THEN
231 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
232 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'180: Leaving get_item_dtl_for_expert because of EXCEPTION: '||sqlerrm);
233 END IF;
234
235 x_return_status := G_RET_STS_UNEXP_ERROR ;
236
237 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
238 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
239 END IF;
240 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
241
242 END get_item_dtl_for_expert;
243
244
245
246
247 Function ok_to_commit (
248 p_api_version IN Number,
249 p_init_msg_list IN Varchar2,
250 p_doc_id IN Number,
254 x_msg_data OUT NOCOPY Varchar2,
251 p_doc_type IN VARCHAR2,
252 p_validation_string IN Varchar2,
253 x_return_status OUT NOCOPY Varchar2,
255 x_msg_count OUT NOCOPY Number
256 )
257 Return Varchar2 IS
258
259 l_api_version CONSTANT NUMBER := 1;
260 l_api_name CONSTANT VARCHAR2(30) := 'g_ok_to_commit';
261 l_update_allowed varchar2(1);
262
263 l_debug Boolean;
264 l_module VARCHAR2(250) := G_MODULE_NAME||l_api_name;
265
266 BEGIN
267
268 x_return_status := FND_API.G_RET_STS_SUCCESS;
269
270 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
271 l_debug := true;
272 END IF;
273
274 l_update_allowed := ASO_CONTRACT_TERMS_PUB.ok_to_commit(
275 p_api_version => l_api_version,
276 p_init_msg_list => FND_API.G_FALSE,
277 p_doc_id => p_doc_id,
278 p_doc_type => p_doc_type,
279 p_validation_string => p_validation_string,
280 x_return_status => x_return_status,
281 x_msg_data => x_msg_data,
282 x_msg_count => x_msg_count);
283
284 IF (x_return_status = G_RET_STS_UNEXP_ERROR) THEN
285 RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
286 ELSIF (x_return_status = G_RET_STS_ERROR) THEN
287 RAISE FND_API.G_EXC_ERROR ;
288 END IF;
289
290 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
291
292 return l_update_allowed;
293
294 EXCEPTION
295 WHEN FND_API.G_EXC_ERROR THEN
296 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
297 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'190: Leaving ok_to_commit: OKC_API.G_EXCEPTION_ERROR Exception');
298 END IF;
299
300 x_return_status := G_RET_STS_ERROR ;
301 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
302 return FND_API.G_FALSE;
303
304 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
305 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
306 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'200: Leaving ok_to_commit: OKC_API.G_EXCEPTION_UNEXPECTED_ERROR Exception');
307 END IF;
308
309 x_return_status := G_RET_STS_UNEXP_ERROR ;
310 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
311 return FND_API.G_FALSE;
312
313 WHEN OTHERS THEN
314 IF (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
315 fnd_log.string(FND_LOG.LEVEL_STATEMENT,l_module,'210: Leaving ok_to_commit because of EXCEPTION: '||sqlerrm);
316 END IF;
317
318 x_return_status := G_RET_STS_UNEXP_ERROR ;
319
320 IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
321 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
322 END IF;
323 FND_MSG_PUB.Count_And_Get(p_encoded=>'F', p_count => x_msg_count, p_data => x_msg_data );
324 return FND_API.G_FALSE;
325
326 END ok_to_commit;
327
328 END OKC_ASO_INT_GRP;
329