3: ---------------------------------------------------------------------------
4: -- PROCEDURE load_error_tbl
5: ---------------------------------------------------------------------------
6: PROCEDURE load_error_tbl (
7: px_error_rec IN OUT NOCOPY OKL_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
9:
10: j INTEGER := NVL(px_error_tbl.LAST, 0) + 1;
11: last_msg_idx INTEGER := FND_MSG_PUB.COUNT_MSG;
4: -- PROCEDURE load_error_tbl
5: ---------------------------------------------------------------------------
6: PROCEDURE load_error_tbl (
7: px_error_rec IN OUT NOCOPY OKL_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
9:
10: j INTEGER := NVL(px_error_tbl.LAST, 0) + 1;
11: last_msg_idx INTEGER := FND_MSG_PUB.COUNT_MSG;
12: l_msg_idx INTEGER := FND_MSG_PUB.G_NEXT;
36: ---------------------------------------------------------------------------
37: -- FUNCTION find_highest_exception
38: ---------------------------------------------------------------------------
39: -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40: -- in a OKL_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKL_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
38: ---------------------------------------------------------------------------
39: -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40: -- in a OKL_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKL_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
45: i INTEGER := 1;
46: BEGIN
40: -- in a OKL_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKL_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
45: i INTEGER := 1;
46: BEGIN
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
46: BEGIN
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
49: LOOP
50: IF (p_error_tbl(i).error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> OKL_API.G_RET_STS_UNEXP_ERROR) THEN
52: l_return_status := p_error_tbl(i).error_type;
53: END IF;
54: END IF;
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
49: LOOP
50: IF (p_error_tbl(i).error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> OKL_API.G_RET_STS_UNEXP_ERROR) THEN
52: l_return_status := p_error_tbl(i).error_type;
53: END IF;
54: END IF;
55: EXIT WHEN (i = p_error_tbl.LAST);
148: ) RETURN qsl_rec_type IS
149: l_qsl_rec qsl_rec_type;
150: l_row_notfound BOOLEAN := TRUE;
151: BEGIN
152: x_return_status := OKL_API.G_RET_STS_SUCCESS;
153: l_qsl_rec := get_rec(p_qsl_rec, l_row_notfound);
154: IF (l_row_notfound) THEN
155: OKL_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'QUOTE_STRM_ELEMENT_ID');
156: x_return_status := OKL_API.G_RET_STS_ERROR;
151: BEGIN
152: x_return_status := OKL_API.G_RET_STS_SUCCESS;
153: l_qsl_rec := get_rec(p_qsl_rec, l_row_notfound);
154: IF (l_row_notfound) THEN
155: OKL_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'QUOTE_STRM_ELEMENT_ID');
156: x_return_status := OKL_API.G_RET_STS_ERROR;
157: END IF;
158: RETURN(l_qsl_rec);
159: END get_rec;
152: x_return_status := OKL_API.G_RET_STS_SUCCESS;
153: l_qsl_rec := get_rec(p_qsl_rec, l_row_notfound);
154: IF (l_row_notfound) THEN
155: OKL_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'QUOTE_STRM_ELEMENT_ID');
156: x_return_status := OKL_API.G_RET_STS_ERROR;
157: END IF;
158: RETURN(l_qsl_rec);
159: END get_rec;
160: -----------------------------------------------------------
174: p_qsl_rec IN qsl_rec_type
175: ) RETURN qsl_rec_type IS
176: l_qsl_rec qsl_rec_type := p_qsl_rec;
177: BEGIN
178: IF (l_qsl_rec.quote_strm_element_id = OKL_API.G_MISS_NUM ) THEN
179: l_qsl_rec.quote_strm_element_id := NULL;
180: END IF;
181: IF (l_qsl_rec.quote_stream_id = OKL_API.G_MISS_NUM ) THEN
182: l_qsl_rec.quote_stream_id := NULL;
177: BEGIN
178: IF (l_qsl_rec.quote_strm_element_id = OKL_API.G_MISS_NUM ) THEN
179: l_qsl_rec.quote_strm_element_id := NULL;
180: END IF;
181: IF (l_qsl_rec.quote_stream_id = OKL_API.G_MISS_NUM ) THEN
182: l_qsl_rec.quote_stream_id := NULL;
183: END IF;
184: IF (l_qsl_rec.object_version_number = OKL_API.G_MISS_NUM ) THEN
185: l_qsl_rec.object_version_number := NULL;
180: END IF;
181: IF (l_qsl_rec.quote_stream_id = OKL_API.G_MISS_NUM ) THEN
182: l_qsl_rec.quote_stream_id := NULL;
183: END IF;
184: IF (l_qsl_rec.object_version_number = OKL_API.G_MISS_NUM ) THEN
185: l_qsl_rec.object_version_number := NULL;
186: END IF;
187: IF (l_qsl_rec.stream_element_date = OKL_API.G_MISS_DATE ) THEN
188: l_qsl_rec.stream_element_date := NULL;
183: END IF;
184: IF (l_qsl_rec.object_version_number = OKL_API.G_MISS_NUM ) THEN
185: l_qsl_rec.object_version_number := NULL;
186: END IF;
187: IF (l_qsl_rec.stream_element_date = OKL_API.G_MISS_DATE ) THEN
188: l_qsl_rec.stream_element_date := NULL;
189: END IF;
190: IF (l_qsl_rec.amount = OKL_API.G_MISS_NUM ) THEN
191: l_qsl_rec.amount := NULL;
186: END IF;
187: IF (l_qsl_rec.stream_element_date = OKL_API.G_MISS_DATE ) THEN
188: l_qsl_rec.stream_element_date := NULL;
189: END IF;
190: IF (l_qsl_rec.amount = OKL_API.G_MISS_NUM ) THEN
191: l_qsl_rec.amount := NULL;
192: END IF;
193: IF (l_qsl_rec.created_by = OKL_API.G_MISS_NUM ) THEN
194: l_qsl_rec.created_by := NULL;
189: END IF;
190: IF (l_qsl_rec.amount = OKL_API.G_MISS_NUM ) THEN
191: l_qsl_rec.amount := NULL;
192: END IF;
193: IF (l_qsl_rec.created_by = OKL_API.G_MISS_NUM ) THEN
194: l_qsl_rec.created_by := NULL;
195: END IF;
196: IF (l_qsl_rec.creation_date = OKL_API.G_MISS_DATE ) THEN
197: l_qsl_rec.creation_date := NULL;
192: END IF;
193: IF (l_qsl_rec.created_by = OKL_API.G_MISS_NUM ) THEN
194: l_qsl_rec.created_by := NULL;
195: END IF;
196: IF (l_qsl_rec.creation_date = OKL_API.G_MISS_DATE ) THEN
197: l_qsl_rec.creation_date := NULL;
198: END IF;
199: IF (l_qsl_rec.last_updated_by = OKL_API.G_MISS_NUM ) THEN
200: l_qsl_rec.last_updated_by := NULL;
195: END IF;
196: IF (l_qsl_rec.creation_date = OKL_API.G_MISS_DATE ) THEN
197: l_qsl_rec.creation_date := NULL;
198: END IF;
199: IF (l_qsl_rec.last_updated_by = OKL_API.G_MISS_NUM ) THEN
200: l_qsl_rec.last_updated_by := NULL;
201: END IF;
202: IF (l_qsl_rec.last_update_date = OKL_API.G_MISS_DATE ) THEN
203: l_qsl_rec.last_update_date := NULL;
198: END IF;
199: IF (l_qsl_rec.last_updated_by = OKL_API.G_MISS_NUM ) THEN
200: l_qsl_rec.last_updated_by := NULL;
201: END IF;
202: IF (l_qsl_rec.last_update_date = OKL_API.G_MISS_DATE ) THEN
203: l_qsl_rec.last_update_date := NULL;
204: END IF;
205: IF (l_qsl_rec.last_update_login = OKL_API.G_MISS_NUM ) THEN
206: l_qsl_rec.last_update_login := NULL;
201: END IF;
202: IF (l_qsl_rec.last_update_date = OKL_API.G_MISS_DATE ) THEN
203: l_qsl_rec.last_update_date := NULL;
204: END IF;
205: IF (l_qsl_rec.last_update_login = OKL_API.G_MISS_NUM ) THEN
206: l_qsl_rec.last_update_login := NULL;
207: END IF;
208: RETURN(l_qsl_rec);
209: END null_out_defaults;
213: PROCEDURE validate_quote_strm_element_id(
214: x_return_status OUT NOCOPY VARCHAR2,
215: p_quote_strm_element_id IN NUMBER) IS
216: BEGIN
217: x_return_status := OKL_API.G_RET_STS_SUCCESS;
218: IF (p_quote_strm_element_id IS NULL) THEN
219: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_strm_element_id');
220: x_return_status := OKL_API.G_RET_STS_ERROR;
221: RAISE G_EXCEPTION_HALT_VALIDATION;
215: p_quote_strm_element_id IN NUMBER) IS
216: BEGIN
217: x_return_status := OKL_API.G_RET_STS_SUCCESS;
218: IF (p_quote_strm_element_id IS NULL) THEN
219: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_strm_element_id');
220: x_return_status := OKL_API.G_RET_STS_ERROR;
221: RAISE G_EXCEPTION_HALT_VALIDATION;
222: END IF;
223: EXCEPTION
216: BEGIN
217: x_return_status := OKL_API.G_RET_STS_SUCCESS;
218: IF (p_quote_strm_element_id IS NULL) THEN
219: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_strm_element_id');
220: x_return_status := OKL_API.G_RET_STS_ERROR;
221: RAISE G_EXCEPTION_HALT_VALIDATION;
222: END IF;
223: EXCEPTION
224: WHEN G_EXCEPTION_HALT_VALIDATION THEN
223: EXCEPTION
224: WHEN G_EXCEPTION_HALT_VALIDATION THEN
225: null;
226: WHEN OTHERS THEN
227: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
228: ,p_msg_name => G_UNEXPECTED_ERROR
229: ,p_token1 => G_SQLCODE_TOKEN
230: ,p_token1_value => SQLCODE
231: ,p_token2 => G_SQLERRM_TOKEN
229: ,p_token1 => G_SQLCODE_TOKEN
230: ,p_token1_value => SQLCODE
231: ,p_token2 => G_SQLERRM_TOKEN
232: ,p_token2_value => SQLERRM);
233: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
234: END validate_quote_strm_element_id;
235: ----------------------------------------------
236: -- Validate_Attributes for: QUOTE_STREAM_ID --
237: ----------------------------------------------
238: PROCEDURE validate_quote_stream_id(
239: x_return_status OUT NOCOPY VARCHAR2,
240: p_quote_stream_id IN NUMBER) IS
241: BEGIN
242: x_return_status := OKL_API.G_RET_STS_SUCCESS;
243: IF (p_quote_stream_id IS NULL) THEN
244: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_stream_id');
245: x_return_status := OKL_API.G_RET_STS_ERROR;
246: RAISE G_EXCEPTION_HALT_VALIDATION;
240: p_quote_stream_id IN NUMBER) IS
241: BEGIN
242: x_return_status := OKL_API.G_RET_STS_SUCCESS;
243: IF (p_quote_stream_id IS NULL) THEN
244: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_stream_id');
245: x_return_status := OKL_API.G_RET_STS_ERROR;
246: RAISE G_EXCEPTION_HALT_VALIDATION;
247: END IF;
248: EXCEPTION
241: BEGIN
242: x_return_status := OKL_API.G_RET_STS_SUCCESS;
243: IF (p_quote_stream_id IS NULL) THEN
244: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'quote_stream_id');
245: x_return_status := OKL_API.G_RET_STS_ERROR;
246: RAISE G_EXCEPTION_HALT_VALIDATION;
247: END IF;
248: EXCEPTION
249: WHEN G_EXCEPTION_HALT_VALIDATION THEN
248: EXCEPTION
249: WHEN G_EXCEPTION_HALT_VALIDATION THEN
250: null;
251: WHEN OTHERS THEN
252: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
253: ,p_msg_name => G_UNEXPECTED_ERROR
254: ,p_token1 => G_SQLCODE_TOKEN
255: ,p_token1_value => SQLCODE
256: ,p_token2 => G_SQLERRM_TOKEN
254: ,p_token1 => G_SQLCODE_TOKEN
255: ,p_token1_value => SQLCODE
256: ,p_token2 => G_SQLERRM_TOKEN
257: ,p_token2_value => SQLERRM);
258: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
259: END validate_quote_stream_id;
260: ----------------------------------------------------
261: -- Validate_Attributes for: OBJECT_VERSION_NUMBER --
262: ----------------------------------------------------
263: PROCEDURE validate_object_version_number(
264: x_return_status OUT NOCOPY VARCHAR2,
265: p_object_version_number IN NUMBER) IS
266: BEGIN
267: x_return_status := OKL_API.G_RET_STS_SUCCESS;
268: IF (p_object_version_number IS NULL) THEN
269: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'object_version_number');
270: x_return_status := OKL_API.G_RET_STS_ERROR;
271: RAISE G_EXCEPTION_HALT_VALIDATION;
265: p_object_version_number IN NUMBER) IS
266: BEGIN
267: x_return_status := OKL_API.G_RET_STS_SUCCESS;
268: IF (p_object_version_number IS NULL) THEN
269: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'object_version_number');
270: x_return_status := OKL_API.G_RET_STS_ERROR;
271: RAISE G_EXCEPTION_HALT_VALIDATION;
272: END IF;
273: EXCEPTION
266: BEGIN
267: x_return_status := OKL_API.G_RET_STS_SUCCESS;
268: IF (p_object_version_number IS NULL) THEN
269: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'object_version_number');
270: x_return_status := OKL_API.G_RET_STS_ERROR;
271: RAISE G_EXCEPTION_HALT_VALIDATION;
272: END IF;
273: EXCEPTION
274: WHEN G_EXCEPTION_HALT_VALIDATION THEN
273: EXCEPTION
274: WHEN G_EXCEPTION_HALT_VALIDATION THEN
275: null;
276: WHEN OTHERS THEN
277: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
278: ,p_msg_name => G_UNEXPECTED_ERROR
279: ,p_token1 => G_SQLCODE_TOKEN
280: ,p_token1_value => SQLCODE
281: ,p_token2 => G_SQLERRM_TOKEN
279: ,p_token1 => G_SQLCODE_TOKEN
280: ,p_token1_value => SQLCODE
281: ,p_token2 => G_SQLERRM_TOKEN
282: ,p_token2_value => SQLERRM);
283: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
284: END validate_object_version_number;
285: --------------------------------------------------
286: -- Validate_Attributes for: STREAM_ELEMENT_DATE --
287: --------------------------------------------------
288: PROCEDURE validate_stream_element_date(
289: x_return_status OUT NOCOPY VARCHAR2,
290: p_stream_element_date IN DATE) IS
291: BEGIN
292: x_return_status := OKL_API.G_RET_STS_SUCCESS;
293: IF (p_stream_element_date IS NULL) THEN
294: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'stream_element_date');
295: x_return_status := OKL_API.G_RET_STS_ERROR;
296: RAISE G_EXCEPTION_HALT_VALIDATION;
290: p_stream_element_date IN DATE) IS
291: BEGIN
292: x_return_status := OKL_API.G_RET_STS_SUCCESS;
293: IF (p_stream_element_date IS NULL) THEN
294: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'stream_element_date');
295: x_return_status := OKL_API.G_RET_STS_ERROR;
296: RAISE G_EXCEPTION_HALT_VALIDATION;
297: END IF;
298: EXCEPTION
291: BEGIN
292: x_return_status := OKL_API.G_RET_STS_SUCCESS;
293: IF (p_stream_element_date IS NULL) THEN
294: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'stream_element_date');
295: x_return_status := OKL_API.G_RET_STS_ERROR;
296: RAISE G_EXCEPTION_HALT_VALIDATION;
297: END IF;
298: EXCEPTION
299: WHEN G_EXCEPTION_HALT_VALIDATION THEN
298: EXCEPTION
299: WHEN G_EXCEPTION_HALT_VALIDATION THEN
300: null;
301: WHEN OTHERS THEN
302: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
303: ,p_msg_name => G_UNEXPECTED_ERROR
304: ,p_token1 => G_SQLCODE_TOKEN
305: ,p_token1_value => SQLCODE
306: ,p_token2 => G_SQLERRM_TOKEN
304: ,p_token1 => G_SQLCODE_TOKEN
305: ,p_token1_value => SQLCODE
306: ,p_token2 => G_SQLERRM_TOKEN
307: ,p_token2_value => SQLERRM);
308: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
309: END validate_stream_element_date;
310: -------------------------------------
311: -- Validate_Attributes for: AMOUNT --
312: -------------------------------------
313: PROCEDURE validate_amount(
314: x_return_status OUT NOCOPY VARCHAR2,
315: p_amount IN NUMBER) IS
316: BEGIN
317: x_return_status := OKL_API.G_RET_STS_SUCCESS;
318: IF (p_amount IS NULL) THEN
319: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'amount');
320: x_return_status := OKL_API.G_RET_STS_ERROR;
321: RAISE G_EXCEPTION_HALT_VALIDATION;
315: p_amount IN NUMBER) IS
316: BEGIN
317: x_return_status := OKL_API.G_RET_STS_SUCCESS;
318: IF (p_amount IS NULL) THEN
319: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'amount');
320: x_return_status := OKL_API.G_RET_STS_ERROR;
321: RAISE G_EXCEPTION_HALT_VALIDATION;
322: END IF;
323: EXCEPTION
316: BEGIN
317: x_return_status := OKL_API.G_RET_STS_SUCCESS;
318: IF (p_amount IS NULL) THEN
319: OKL_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'amount');
320: x_return_status := OKL_API.G_RET_STS_ERROR;
321: RAISE G_EXCEPTION_HALT_VALIDATION;
322: END IF;
323: EXCEPTION
324: WHEN G_EXCEPTION_HALT_VALIDATION THEN
323: EXCEPTION
324: WHEN G_EXCEPTION_HALT_VALIDATION THEN
325: null;
326: WHEN OTHERS THEN
327: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
328: ,p_msg_name => G_UNEXPECTED_ERROR
329: ,p_token1 => G_SQLCODE_TOKEN
330: ,p_token1_value => SQLCODE
331: ,p_token2 => G_SQLERRM_TOKEN
329: ,p_token1 => G_SQLCODE_TOKEN
330: ,p_token1_value => SQLCODE
331: ,p_token2 => G_SQLERRM_TOKEN
332: ,p_token2_value => SQLERRM);
333: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
334: END validate_amount;
335: ---------------------------------------------------------------------------
336: -- FUNCTION Validate_Attributes
337: ---------------------------------------------------------------------------
340: -----------------------------------------------------
341: FUNCTION Validate_Attributes (
342: p_qsl_rec IN qsl_rec_type
343: ) RETURN VARCHAR2 IS
344: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
345: x_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
346: BEGIN
347: -----------------------------
348: -- Column Level Validation --
341: FUNCTION Validate_Attributes (
342: p_qsl_rec IN qsl_rec_type
343: ) RETURN VARCHAR2 IS
344: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
345: x_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
346: BEGIN
347: -----------------------------
348: -- Column Level Validation --
349: -----------------------------
350: -- ***
351: -- quote_strm_element_id
352: -- ***
353: validate_quote_strm_element_id(x_return_status, p_qsl_rec.quote_strm_element_id);
354: IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
355: l_return_status := x_return_status;
356: RAISE G_EXCEPTION_HALT_VALIDATION;
357: END IF;
358:
359: -- ***
360: -- quote_stream_id
361: -- ***
362: validate_quote_stream_id(x_return_status, p_qsl_rec.quote_stream_id);
363: IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
364: l_return_status := x_return_status;
365: RAISE G_EXCEPTION_HALT_VALIDATION;
366: END IF;
367:
368: -- ***
369: -- object_version_number
370: -- ***
371: validate_object_version_number(x_return_status, p_qsl_rec.object_version_number);
372: IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
373: l_return_status := x_return_status;
374: RAISE G_EXCEPTION_HALT_VALIDATION;
375: END IF;
376:
377: -- ***
378: -- stream_element_date
379: -- ***
380: validate_stream_element_date(x_return_status, p_qsl_rec.stream_element_date);
381: IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
382: l_return_status := x_return_status;
383: RAISE G_EXCEPTION_HALT_VALIDATION;
384: END IF;
385:
386: -- ***
387: -- amount
388: -- ***
389: validate_amount(x_return_status, p_qsl_rec.amount);
390: IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
391: l_return_status := x_return_status;
392: RAISE G_EXCEPTION_HALT_VALIDATION;
393: END IF;
394:
396: EXCEPTION
397: WHEN G_EXCEPTION_HALT_VALIDATION THEN
398: RETURN(l_return_status);
399: WHEN OTHERS THEN
400: OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
401: ,p_msg_name => G_UNEXPECTED_ERROR
402: ,p_token1 => G_SQLCODE_TOKEN
403: ,p_token1_value => SQLCODE
404: ,p_token2 => G_SQLERRM_TOKEN
402: ,p_token1 => G_SQLCODE_TOKEN
403: ,p_token1_value => SQLCODE
404: ,p_token2 => G_SQLERRM_TOKEN
405: ,p_token2_value => SQLERRM);
406: l_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
407: RETURN(l_return_status);
408: END Validate_Attributes;
409: ---------------------------------------------------------------------------
410: -- PROCEDURE Validate_Record
415: FUNCTION Validate_Record (
416: p_qsl_rec IN qsl_rec_type,
417: p_db_qsl_rec IN qsl_rec_type
418: ) RETURN VARCHAR2 IS
419: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
420: BEGIN
421: RETURN (l_return_status);
422: END Validate_Record;
423: FUNCTION Validate_Record (
422: END Validate_Record;
423: FUNCTION Validate_Record (
424: p_qsl_rec IN qsl_rec_type
425: ) RETURN VARCHAR2 IS
426: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
427: l_db_qsl_rec qsl_rec_type := get_rec(p_qsl_rec);
428: BEGIN
429: l_return_status := Validate_Record(p_qsl_rec => p_qsl_rec,
430: p_db_qsl_rec => l_db_qsl_rec);
441: -- validate_row for:OKL_QUOTE_STRM_ELEMENTS --
442: ----------------------------------------------
443: PROCEDURE validate_row(
444: p_api_version IN NUMBER,
445: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
446: x_return_status OUT NOCOPY VARCHAR2,
447: x_msg_count OUT NOCOPY NUMBER,
448: x_msg_data OUT NOCOPY VARCHAR2,
449: p_qsl_rec IN qsl_rec_type) IS
449: p_qsl_rec IN qsl_rec_type) IS
450:
451: l_api_version CONSTANT NUMBER := 1;
452: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
453: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
454: l_qsl_rec qsl_rec_type := p_qsl_rec;
455: BEGIN
456: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
457: G_PKG_NAME,
452: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
453: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
454: l_qsl_rec qsl_rec_type := p_qsl_rec;
455: BEGIN
456: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
457: G_PKG_NAME,
458: p_init_msg_list,
459: l_api_version,
460: p_api_version,
459: l_api_version,
460: p_api_version,
461: '_PVT',
462: x_return_status);
463: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
464: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
465: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
466: RAISE OKL_API.G_EXCEPTION_ERROR;
467: END IF;
460: p_api_version,
461: '_PVT',
462: x_return_status);
463: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
464: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
465: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
466: RAISE OKL_API.G_EXCEPTION_ERROR;
467: END IF;
468: --- Validate all non-missing attributes (Item Level Validation)
461: '_PVT',
462: x_return_status);
463: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
464: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
465: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
466: RAISE OKL_API.G_EXCEPTION_ERROR;
467: END IF;
468: --- Validate all non-missing attributes (Item Level Validation)
469: l_return_status := Validate_Attributes(l_qsl_rec);
462: x_return_status);
463: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
464: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
465: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
466: RAISE OKL_API.G_EXCEPTION_ERROR;
467: END IF;
468: --- Validate all non-missing attributes (Item Level Validation)
469: l_return_status := Validate_Attributes(l_qsl_rec);
470: --- If any errors happen abort API
467: END IF;
468: --- Validate all non-missing attributes (Item Level Validation)
469: l_return_status := Validate_Attributes(l_qsl_rec);
470: --- If any errors happen abort API
471: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
472: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
473: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
468: --- Validate all non-missing attributes (Item Level Validation)
469: l_return_status := Validate_Attributes(l_qsl_rec);
470: --- If any errors happen abort API
471: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
472: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
473: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
469: l_return_status := Validate_Attributes(l_qsl_rec);
470: --- If any errors happen abort API
471: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
472: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
473: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
470: --- If any errors happen abort API
471: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
472: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
473: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
473: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
479: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
480: RAISE OKL_API.G_EXCEPTION_ERROR;
481: END IF;
474: RAISE OKL_API.G_EXCEPTION_ERROR;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
479: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
480: RAISE OKL_API.G_EXCEPTION_ERROR;
481: END IF;
482: x_return_status := l_return_status;
475: END IF;
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
479: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
480: RAISE OKL_API.G_EXCEPTION_ERROR;
481: END IF;
482: x_return_status := l_return_status;
483: EXCEPTION
476: l_return_status := Validate_Record(l_qsl_rec);
477: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
479: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
480: RAISE OKL_API.G_EXCEPTION_ERROR;
481: END IF;
482: x_return_status := l_return_status;
483: EXCEPTION
484: WHEN OKL_API.G_EXCEPTION_ERROR THEN
480: RAISE OKL_API.G_EXCEPTION_ERROR;
481: END IF;
482: x_return_status := l_return_status;
483: EXCEPTION
484: WHEN OKL_API.G_EXCEPTION_ERROR THEN
485: x_return_status := OKL_API.HANDLE_EXCEPTIONS
486: (
487: l_api_name,
488: G_PKG_NAME,
481: END IF;
482: x_return_status := l_return_status;
483: EXCEPTION
484: WHEN OKL_API.G_EXCEPTION_ERROR THEN
485: x_return_status := OKL_API.HANDLE_EXCEPTIONS
486: (
487: l_api_name,
488: G_PKG_NAME,
489: 'OKL_API.G_RET_STS_ERROR',
485: x_return_status := OKL_API.HANDLE_EXCEPTIONS
486: (
487: l_api_name,
488: G_PKG_NAME,
489: 'OKL_API.G_RET_STS_ERROR',
490: x_msg_count,
491: x_msg_data,
492: '_PVT'
493: );
490: x_msg_count,
491: x_msg_data,
492: '_PVT'
493: );
494: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
495: x_return_status := OKL_API.HANDLE_EXCEPTIONS
496: (
497: l_api_name,
498: G_PKG_NAME,
491: x_msg_data,
492: '_PVT'
493: );
494: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
495: x_return_status := OKL_API.HANDLE_EXCEPTIONS
496: (
497: l_api_name,
498: G_PKG_NAME,
499: 'OKL_API.G_RET_STS_UNEXP_ERROR',
495: x_return_status := OKL_API.HANDLE_EXCEPTIONS
496: (
497: l_api_name,
498: G_PKG_NAME,
499: 'OKL_API.G_RET_STS_UNEXP_ERROR',
500: x_msg_count,
501: x_msg_data,
502: '_PVT'
503: );
501: x_msg_data,
502: '_PVT'
503: );
504: WHEN OTHERS THEN
505: x_return_status := OKL_API.HANDLE_EXCEPTIONS
506: (
507: l_api_name,
508: G_PKG_NAME,
509: 'OTHERS',
516: -- PL/SQL TBL validate_row for:OKL_QUOTE_STRM_ELEMENTS --
517: ---------------------------------------------------------
518: PROCEDURE validate_row(
519: p_api_version IN NUMBER,
520: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
521: x_return_status OUT NOCOPY VARCHAR2,
522: x_msg_count OUT NOCOPY NUMBER,
523: x_msg_data OUT NOCOPY VARCHAR2,
524: p_qsl_tbl IN qsl_tbl_type,
521: x_return_status OUT NOCOPY VARCHAR2,
522: x_msg_count OUT NOCOPY NUMBER,
523: x_msg_data OUT NOCOPY VARCHAR2,
524: p_qsl_tbl IN qsl_tbl_type,
525: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
526:
527: l_api_version CONSTANT NUMBER := 1;
528: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
529: i NUMBER := 0;
527: l_api_version CONSTANT NUMBER := 1;
528: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
529: i NUMBER := 0;
530: BEGIN
531: OKL_API.init_msg_list(p_init_msg_list);
532: -- Make sure PL/SQL table has records in it before passing
533: IF (p_qsl_tbl.COUNT > 0) THEN
534: i := p_qsl_tbl.FIRST;
535: LOOP
533: IF (p_qsl_tbl.COUNT > 0) THEN
534: i := p_qsl_tbl.FIRST;
535: LOOP
536: DECLARE
537: l_error_rec OKL_API.ERROR_REC_TYPE;
538: BEGIN
539: l_error_rec.api_name := l_api_name;
540: l_error_rec.api_package := G_PKG_NAME;
541: l_error_rec.idx := i;
540: l_error_rec.api_package := G_PKG_NAME;
541: l_error_rec.idx := i;
542: validate_row (
543: p_api_version => p_api_version,
544: p_init_msg_list => OKL_API.G_FALSE,
545: x_return_status => l_error_rec.error_type,
546: x_msg_count => l_error_rec.msg_count,
547: x_msg_data => l_error_rec.msg_data,
548: p_qsl_rec => p_qsl_tbl(i));
545: x_return_status => l_error_rec.error_type,
546: x_msg_count => l_error_rec.msg_count,
547: x_msg_data => l_error_rec.msg_data,
548: p_qsl_rec => p_qsl_tbl(i));
549: IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
550: l_error_rec.sqlcode := SQLCODE;
551: load_error_tbl(l_error_rec, px_error_tbl);
552: ELSE
553: x_msg_count := l_error_rec.msg_count;
553: x_msg_count := l_error_rec.msg_count;
554: x_msg_data := l_error_rec.msg_data;
555: END IF;
556: EXCEPTION
557: WHEN OKL_API.G_EXCEPTION_ERROR THEN
558: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
559: l_error_rec.sqlcode := SQLCODE;
560: load_error_tbl(l_error_rec, px_error_tbl);
561: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
554: x_msg_data := l_error_rec.msg_data;
555: END IF;
556: EXCEPTION
557: WHEN OKL_API.G_EXCEPTION_ERROR THEN
558: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
559: l_error_rec.sqlcode := SQLCODE;
560: load_error_tbl(l_error_rec, px_error_tbl);
561: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
562: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
557: WHEN OKL_API.G_EXCEPTION_ERROR THEN
558: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
559: l_error_rec.sqlcode := SQLCODE;
560: load_error_tbl(l_error_rec, px_error_tbl);
561: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
562: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
563: l_error_rec.sqlcode := SQLCODE;
564: load_error_tbl(l_error_rec, px_error_tbl);
565: WHEN OTHERS THEN
558: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
559: l_error_rec.sqlcode := SQLCODE;
560: load_error_tbl(l_error_rec, px_error_tbl);
561: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
562: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
563: l_error_rec.sqlcode := SQLCODE;
564: load_error_tbl(l_error_rec, px_error_tbl);
565: WHEN OTHERS THEN
566: l_error_rec.error_type := 'OTHERS';
573: END IF;
574: -- Loop through the error_tbl to find the error with the highest severity
575: -- and return it.
576: x_return_status := find_highest_exception(px_error_tbl);
577: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
578: EXCEPTION
579: WHEN OKL_API.G_EXCEPTION_ERROR THEN
580: x_return_status := OKL_API.HANDLE_EXCEPTIONS
581: (
575: -- and return it.
576: x_return_status := find_highest_exception(px_error_tbl);
577: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
578: EXCEPTION
579: WHEN OKL_API.G_EXCEPTION_ERROR THEN
580: x_return_status := OKL_API.HANDLE_EXCEPTIONS
581: (
582: l_api_name,
583: G_PKG_NAME,
576: x_return_status := find_highest_exception(px_error_tbl);
577: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
578: EXCEPTION
579: WHEN OKL_API.G_EXCEPTION_ERROR THEN
580: x_return_status := OKL_API.HANDLE_EXCEPTIONS
581: (
582: l_api_name,
583: G_PKG_NAME,
584: 'OKL_API.G_RET_STS_ERROR',
580: x_return_status := OKL_API.HANDLE_EXCEPTIONS
581: (
582: l_api_name,
583: G_PKG_NAME,
584: 'OKL_API.G_RET_STS_ERROR',
585: x_msg_count,
586: x_msg_data,
587: '_PVT'
588: );
585: x_msg_count,
586: x_msg_data,
587: '_PVT'
588: );
589: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
590: x_return_status := OKL_API.HANDLE_EXCEPTIONS
591: (
592: l_api_name,
593: G_PKG_NAME,
586: x_msg_data,
587: '_PVT'
588: );
589: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
590: x_return_status := OKL_API.HANDLE_EXCEPTIONS
591: (
592: l_api_name,
593: G_PKG_NAME,
594: 'OKL_API.G_RET_STS_UNEXP_ERROR',
590: x_return_status := OKL_API.HANDLE_EXCEPTIONS
591: (
592: l_api_name,
593: G_PKG_NAME,
594: 'OKL_API.G_RET_STS_UNEXP_ERROR',
595: x_msg_count,
596: x_msg_data,
597: '_PVT'
598: );
596: x_msg_data,
597: '_PVT'
598: );
599: WHEN OTHERS THEN
600: x_return_status := OKL_API.HANDLE_EXCEPTIONS
601: (
602: l_api_name,
603: G_PKG_NAME,
604: 'OTHERS',
612: -- PL/SQL TBL validate_row for:OKL_QUOTE_STRM_ELEMENTS --
613: ---------------------------------------------------------
614: PROCEDURE validate_row(
615: p_api_version IN NUMBER,
616: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
617: x_return_status OUT NOCOPY VARCHAR2,
618: x_msg_count OUT NOCOPY NUMBER,
619: x_msg_data OUT NOCOPY VARCHAR2,
620: p_qsl_tbl IN qsl_tbl_type) IS
620: p_qsl_tbl IN qsl_tbl_type) IS
621:
622: l_api_version CONSTANT NUMBER := 1;
623: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
624: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
625: l_error_tbl OKL_API.ERROR_TBL_TYPE;
626: BEGIN
627: OKL_API.init_msg_list(p_init_msg_list);
628: -- Make sure PL/SQL table has records in it before passing
621:
622: l_api_version CONSTANT NUMBER := 1;
623: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
624: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
625: l_error_tbl OKL_API.ERROR_TBL_TYPE;
626: BEGIN
627: OKL_API.init_msg_list(p_init_msg_list);
628: -- Make sure PL/SQL table has records in it before passing
629: IF (p_qsl_tbl.COUNT > 0) THEN
623: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
624: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
625: l_error_tbl OKL_API.ERROR_TBL_TYPE;
626: BEGIN
627: OKL_API.init_msg_list(p_init_msg_list);
628: -- Make sure PL/SQL table has records in it before passing
629: IF (p_qsl_tbl.COUNT > 0) THEN
630: validate_row (
631: p_api_version => p_api_version,
628: -- Make sure PL/SQL table has records in it before passing
629: IF (p_qsl_tbl.COUNT > 0) THEN
630: validate_row (
631: p_api_version => p_api_version,
632: p_init_msg_list => OKL_API.G_FALSE,
633: x_return_status => x_return_status,
634: x_msg_count => x_msg_count,
635: x_msg_data => x_msg_data,
636: p_qsl_tbl => p_qsl_tbl,
635: x_msg_data => x_msg_data,
636: p_qsl_tbl => p_qsl_tbl,
637: px_error_tbl => l_error_tbl);
638: END IF;
639: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
640: EXCEPTION
641: WHEN OKL_API.G_EXCEPTION_ERROR THEN
642: x_return_status := OKL_API.HANDLE_EXCEPTIONS
643: (
637: px_error_tbl => l_error_tbl);
638: END IF;
639: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
640: EXCEPTION
641: WHEN OKL_API.G_EXCEPTION_ERROR THEN
642: x_return_status := OKL_API.HANDLE_EXCEPTIONS
643: (
644: l_api_name,
645: G_PKG_NAME,
638: END IF;
639: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
640: EXCEPTION
641: WHEN OKL_API.G_EXCEPTION_ERROR THEN
642: x_return_status := OKL_API.HANDLE_EXCEPTIONS
643: (
644: l_api_name,
645: G_PKG_NAME,
646: 'OKL_API.G_RET_STS_ERROR',
642: x_return_status := OKL_API.HANDLE_EXCEPTIONS
643: (
644: l_api_name,
645: G_PKG_NAME,
646: 'OKL_API.G_RET_STS_ERROR',
647: x_msg_count,
648: x_msg_data,
649: '_PVT'
650: );
647: x_msg_count,
648: x_msg_data,
649: '_PVT'
650: );
651: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
652: x_return_status := OKL_API.HANDLE_EXCEPTIONS
653: (
654: l_api_name,
655: G_PKG_NAME,
648: x_msg_data,
649: '_PVT'
650: );
651: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
652: x_return_status := OKL_API.HANDLE_EXCEPTIONS
653: (
654: l_api_name,
655: G_PKG_NAME,
656: 'OKL_API.G_RET_STS_UNEXP_ERROR',
652: x_return_status := OKL_API.HANDLE_EXCEPTIONS
653: (
654: l_api_name,
655: G_PKG_NAME,
656: 'OKL_API.G_RET_STS_UNEXP_ERROR',
657: x_msg_count,
658: x_msg_data,
659: '_PVT'
660: );
658: x_msg_data,
659: '_PVT'
660: );
661: WHEN OTHERS THEN
662: x_return_status := OKL_API.HANDLE_EXCEPTIONS
663: (
664: l_api_name,
665: G_PKG_NAME,
666: 'OTHERS',
677: -- insert_row for:OKL_QUOTE_STRM_ELEMENTS --
678: --------------------------------------------
679: PROCEDURE insert_row(
680: p_api_version IN NUMBER,
681: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
682: x_return_status OUT NOCOPY VARCHAR2,
683: x_msg_count OUT NOCOPY NUMBER,
684: x_msg_data OUT NOCOPY VARCHAR2,
685: p_qsl_rec IN qsl_rec_type,
686: x_qsl_rec OUT NOCOPY qsl_rec_type) IS
687:
688: l_api_version CONSTANT NUMBER := 1;
689: l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
690: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
691: l_qsl_rec qsl_rec_type := p_qsl_rec;
692: l_def_qsl_rec qsl_rec_type;
693: -------------------------------
694: -- FUNCTION fill_who_columns --
711: FUNCTION Set_Attributes (
712: p_qsl_rec IN qsl_rec_type,
713: x_qsl_rec OUT NOCOPY qsl_rec_type
714: ) RETURN VARCHAR2 IS
715: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
716: BEGIN
717: x_qsl_rec := p_qsl_rec;
718: x_qsl_rec.OBJECT_VERSION_NUMBER := 1;
719: RETURN(l_return_status);
718: x_qsl_rec.OBJECT_VERSION_NUMBER := 1;
719: RETURN(l_return_status);
720: END Set_Attributes;
721: BEGIN
722: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
723: G_PKG_NAME,
724: p_init_msg_list,
725: l_api_version,
726: p_api_version,
725: l_api_version,
726: p_api_version,
727: '_PVT',
728: x_return_status);
729: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
730: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
731: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
732: RAISE OKL_API.G_EXCEPTION_ERROR;
733: END IF;
726: p_api_version,
727: '_PVT',
728: x_return_status);
729: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
730: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
731: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
732: RAISE OKL_API.G_EXCEPTION_ERROR;
733: END IF;
734: l_qsl_rec := null_out_defaults(p_qsl_rec);
727: '_PVT',
728: x_return_status);
729: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
730: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
731: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
732: RAISE OKL_API.G_EXCEPTION_ERROR;
733: END IF;
734: l_qsl_rec := null_out_defaults(p_qsl_rec);
735: -- Set primary key value
728: x_return_status);
729: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
730: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
731: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
732: RAISE OKL_API.G_EXCEPTION_ERROR;
733: END IF;
734: l_qsl_rec := null_out_defaults(p_qsl_rec);
735: -- Set primary key value
736: l_qsl_rec.QUOTE_STRM_ELEMENT_ID := get_seq_id;
738: l_return_Status := Set_Attributes(
739: l_qsl_rec, -- IN
740: l_def_qsl_rec); -- OUT
741: --- If any errors happen abort API
742: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
743: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
744: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
745: RAISE OKL_API.G_EXCEPTION_ERROR;
746: END IF;
739: l_qsl_rec, -- IN
740: l_def_qsl_rec); -- OUT
741: --- If any errors happen abort API
742: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
743: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
744: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
745: RAISE OKL_API.G_EXCEPTION_ERROR;
746: END IF;
747: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
740: l_def_qsl_rec); -- OUT
741: --- If any errors happen abort API
742: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
743: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
744: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
745: RAISE OKL_API.G_EXCEPTION_ERROR;
746: END IF;
747: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
748: --- Validate all non-missing attributes (Item Level Validation)
741: --- If any errors happen abort API
742: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
743: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
744: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
745: RAISE OKL_API.G_EXCEPTION_ERROR;
746: END IF;
747: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
748: --- Validate all non-missing attributes (Item Level Validation)
749: l_return_status := Validate_Attributes(l_def_qsl_rec);
747: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
748: --- Validate all non-missing attributes (Item Level Validation)
749: l_return_status := Validate_Attributes(l_def_qsl_rec);
750: --- If any errors happen abort API
751: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
752: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
753: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
748: --- Validate all non-missing attributes (Item Level Validation)
749: l_return_status := Validate_Attributes(l_def_qsl_rec);
750: --- If any errors happen abort API
751: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
752: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
753: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
749: l_return_status := Validate_Attributes(l_def_qsl_rec);
750: --- If any errors happen abort API
751: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
752: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
753: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
750: --- If any errors happen abort API
751: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
752: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
753: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
758: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
753: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
758: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
759: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
760: RAISE OKL_API.G_EXCEPTION_ERROR;
761: END IF;
754: RAISE OKL_API.G_EXCEPTION_ERROR;
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
758: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
759: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
760: RAISE OKL_API.G_EXCEPTION_ERROR;
761: END IF;
762: INSERT INTO OKL_QUOTE_STRM_ELEMENTS(
755: END IF;
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
758: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
759: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
760: RAISE OKL_API.G_EXCEPTION_ERROR;
761: END IF;
762: INSERT INTO OKL_QUOTE_STRM_ELEMENTS(
763: quote_strm_element_id,
756: l_return_status := Validate_Record(l_def_qsl_rec);
757: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
758: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
759: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
760: RAISE OKL_API.G_EXCEPTION_ERROR;
761: END IF;
762: INSERT INTO OKL_QUOTE_STRM_ELEMENTS(
763: quote_strm_element_id,
764: quote_stream_id,
783: l_def_qsl_rec.last_update_login);
784: -- Set OUT values
785: x_qsl_rec := l_def_qsl_rec;
786: x_return_status := l_return_status;
787: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
788: EXCEPTION
789: WHEN OKL_API.G_EXCEPTION_ERROR THEN
790: x_return_status := OKL_API.HANDLE_EXCEPTIONS
791: (
785: x_qsl_rec := l_def_qsl_rec;
786: x_return_status := l_return_status;
787: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
788: EXCEPTION
789: WHEN OKL_API.G_EXCEPTION_ERROR THEN
790: x_return_status := OKL_API.HANDLE_EXCEPTIONS
791: (
792: l_api_name,
793: G_PKG_NAME,
786: x_return_status := l_return_status;
787: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
788: EXCEPTION
789: WHEN OKL_API.G_EXCEPTION_ERROR THEN
790: x_return_status := OKL_API.HANDLE_EXCEPTIONS
791: (
792: l_api_name,
793: G_PKG_NAME,
794: 'OKL_API.G_RET_STS_ERROR',
790: x_return_status := OKL_API.HANDLE_EXCEPTIONS
791: (
792: l_api_name,
793: G_PKG_NAME,
794: 'OKL_API.G_RET_STS_ERROR',
795: x_msg_count,
796: x_msg_data,
797: '_PVT'
798: );
795: x_msg_count,
796: x_msg_data,
797: '_PVT'
798: );
799: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
800: x_return_status := OKL_API.HANDLE_EXCEPTIONS
801: (
802: l_api_name,
803: G_PKG_NAME,
796: x_msg_data,
797: '_PVT'
798: );
799: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
800: x_return_status := OKL_API.HANDLE_EXCEPTIONS
801: (
802: l_api_name,
803: G_PKG_NAME,
804: 'OKL_API.G_RET_STS_UNEXP_ERROR',
800: x_return_status := OKL_API.HANDLE_EXCEPTIONS
801: (
802: l_api_name,
803: G_PKG_NAME,
804: 'OKL_API.G_RET_STS_UNEXP_ERROR',
805: x_msg_count,
806: x_msg_data,
807: '_PVT'
808: );
806: x_msg_data,
807: '_PVT'
808: );
809: WHEN OTHERS THEN
810: x_return_status := OKL_API.HANDLE_EXCEPTIONS
811: (
812: l_api_name,
813: G_PKG_NAME,
814: 'OTHERS',
821: -- PL/SQL TBL insert_row for:QSL_TBL --
822: ---------------------------------------
823: PROCEDURE insert_row(
824: p_api_version IN NUMBER,
825: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
826: x_return_status OUT NOCOPY VARCHAR2,
827: x_msg_count OUT NOCOPY NUMBER,
828: x_msg_data OUT NOCOPY VARCHAR2,
829: p_qsl_tbl IN qsl_tbl_type,
827: x_msg_count OUT NOCOPY NUMBER,
828: x_msg_data OUT NOCOPY VARCHAR2,
829: p_qsl_tbl IN qsl_tbl_type,
830: x_qsl_tbl OUT NOCOPY qsl_tbl_type,
831: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
832:
833: l_api_version CONSTANT NUMBER := 1;
834: l_api_name CONSTANT VARCHAR2(30) := 'error_tbl_insert_row';
835: i NUMBER := 0;
833: l_api_version CONSTANT NUMBER := 1;
834: l_api_name CONSTANT VARCHAR2(30) := 'error_tbl_insert_row';
835: i NUMBER := 0;
836: BEGIN
837: OKL_API.init_msg_list(p_init_msg_list);
838: -- Make sure PL/SQL table has records in it before passing
839: IF (p_qsl_tbl.COUNT > 0) THEN
840: i := p_qsl_tbl.FIRST;
841: LOOP
839: IF (p_qsl_tbl.COUNT > 0) THEN
840: i := p_qsl_tbl.FIRST;
841: LOOP
842: DECLARE
843: l_error_rec OKL_API.ERROR_REC_TYPE;
844: BEGIN
845: l_error_rec.api_name := l_api_name;
846: l_error_rec.api_package := G_PKG_NAME;
847: l_error_rec.idx := i;
846: l_error_rec.api_package := G_PKG_NAME;
847: l_error_rec.idx := i;
848: insert_row (
849: p_api_version => p_api_version,
850: p_init_msg_list => OKL_API.G_FALSE,
851: x_return_status => l_error_rec.error_type,
852: x_msg_count => l_error_rec.msg_count,
853: x_msg_data => l_error_rec.msg_data,
854: p_qsl_rec => p_qsl_tbl(i),
852: x_msg_count => l_error_rec.msg_count,
853: x_msg_data => l_error_rec.msg_data,
854: p_qsl_rec => p_qsl_tbl(i),
855: x_qsl_rec => x_qsl_tbl(i));
856: IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
857: l_error_rec.sqlcode := SQLCODE;
858: load_error_tbl(l_error_rec, px_error_tbl);
859: ELSE
860: x_msg_count := l_error_rec.msg_count;
860: x_msg_count := l_error_rec.msg_count;
861: x_msg_data := l_error_rec.msg_data;
862: END IF;
863: EXCEPTION
864: WHEN OKL_API.G_EXCEPTION_ERROR THEN
865: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
866: l_error_rec.sqlcode := SQLCODE;
867: load_error_tbl(l_error_rec, px_error_tbl);
868: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
861: x_msg_data := l_error_rec.msg_data;
862: END IF;
863: EXCEPTION
864: WHEN OKL_API.G_EXCEPTION_ERROR THEN
865: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
866: l_error_rec.sqlcode := SQLCODE;
867: load_error_tbl(l_error_rec, px_error_tbl);
868: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
869: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
864: WHEN OKL_API.G_EXCEPTION_ERROR THEN
865: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
866: l_error_rec.sqlcode := SQLCODE;
867: load_error_tbl(l_error_rec, px_error_tbl);
868: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
869: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
870: l_error_rec.sqlcode := SQLCODE;
871: load_error_tbl(l_error_rec, px_error_tbl);
872: WHEN OTHERS THEN
865: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
866: l_error_rec.sqlcode := SQLCODE;
867: load_error_tbl(l_error_rec, px_error_tbl);
868: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
869: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
870: l_error_rec.sqlcode := SQLCODE;
871: load_error_tbl(l_error_rec, px_error_tbl);
872: WHEN OTHERS THEN
873: l_error_rec.error_type := 'OTHERS';
880: END IF;
881: -- Loop through the error_tbl to find the error with the highest severity
882: -- and return it.
883: x_return_status := find_highest_exception(px_error_tbl);
884: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
885: EXCEPTION
886: WHEN OKL_API.G_EXCEPTION_ERROR THEN
887: x_return_status := OKL_API.HANDLE_EXCEPTIONS
888: (
882: -- and return it.
883: x_return_status := find_highest_exception(px_error_tbl);
884: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
885: EXCEPTION
886: WHEN OKL_API.G_EXCEPTION_ERROR THEN
887: x_return_status := OKL_API.HANDLE_EXCEPTIONS
888: (
889: l_api_name,
890: G_PKG_NAME,
883: x_return_status := find_highest_exception(px_error_tbl);
884: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
885: EXCEPTION
886: WHEN OKL_API.G_EXCEPTION_ERROR THEN
887: x_return_status := OKL_API.HANDLE_EXCEPTIONS
888: (
889: l_api_name,
890: G_PKG_NAME,
891: 'OKL_API.G_RET_STS_ERROR',
887: x_return_status := OKL_API.HANDLE_EXCEPTIONS
888: (
889: l_api_name,
890: G_PKG_NAME,
891: 'OKL_API.G_RET_STS_ERROR',
892: x_msg_count,
893: x_msg_data,
894: '_PVT'
895: );
892: x_msg_count,
893: x_msg_data,
894: '_PVT'
895: );
896: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
897: x_return_status := OKL_API.HANDLE_EXCEPTIONS
898: (
899: l_api_name,
900: G_PKG_NAME,
893: x_msg_data,
894: '_PVT'
895: );
896: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
897: x_return_status := OKL_API.HANDLE_EXCEPTIONS
898: (
899: l_api_name,
900: G_PKG_NAME,
901: 'OKL_API.G_RET_STS_UNEXP_ERROR',
897: x_return_status := OKL_API.HANDLE_EXCEPTIONS
898: (
899: l_api_name,
900: G_PKG_NAME,
901: 'OKL_API.G_RET_STS_UNEXP_ERROR',
902: x_msg_count,
903: x_msg_data,
904: '_PVT'
905: );
903: x_msg_data,
904: '_PVT'
905: );
906: WHEN OTHERS THEN
907: x_return_status := OKL_API.HANDLE_EXCEPTIONS
908: (
909: l_api_name,
910: G_PKG_NAME,
911: 'OTHERS',
919: -- PL/SQL TBL insert_row for:QSL_TBL --
920: ---------------------------------------
921: PROCEDURE insert_row(
922: p_api_version IN NUMBER,
923: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
924: x_return_status OUT NOCOPY VARCHAR2,
925: x_msg_count OUT NOCOPY NUMBER,
926: x_msg_data OUT NOCOPY VARCHAR2,
927: p_qsl_tbl IN qsl_tbl_type,
928: x_qsl_tbl OUT NOCOPY qsl_tbl_type) IS
929:
930: l_api_version CONSTANT NUMBER := 1;
931: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
932: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
933: l_error_tbl OKL_API.ERROR_TBL_TYPE;
934: BEGIN
935: OKL_API.init_msg_list(p_init_msg_list);
936: -- Make sure PL/SQL table has records in it before passing
929:
930: l_api_version CONSTANT NUMBER := 1;
931: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
932: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
933: l_error_tbl OKL_API.ERROR_TBL_TYPE;
934: BEGIN
935: OKL_API.init_msg_list(p_init_msg_list);
936: -- Make sure PL/SQL table has records in it before passing
937: IF (p_qsl_tbl.COUNT > 0) THEN
931: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
932: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
933: l_error_tbl OKL_API.ERROR_TBL_TYPE;
934: BEGIN
935: OKL_API.init_msg_list(p_init_msg_list);
936: -- Make sure PL/SQL table has records in it before passing
937: IF (p_qsl_tbl.COUNT > 0) THEN
938: insert_row (
939: p_api_version => p_api_version,
936: -- Make sure PL/SQL table has records in it before passing
937: IF (p_qsl_tbl.COUNT > 0) THEN
938: insert_row (
939: p_api_version => p_api_version,
940: p_init_msg_list => OKL_API.G_FALSE,
941: x_return_status => x_return_status,
942: x_msg_count => x_msg_count,
943: x_msg_data => x_msg_data,
944: p_qsl_tbl => p_qsl_tbl,
944: p_qsl_tbl => p_qsl_tbl,
945: x_qsl_tbl => x_qsl_tbl,
946: px_error_tbl => l_error_tbl);
947: END IF;
948: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
949: EXCEPTION
950: WHEN OKL_API.G_EXCEPTION_ERROR THEN
951: x_return_status := OKL_API.HANDLE_EXCEPTIONS
952: (
946: px_error_tbl => l_error_tbl);
947: END IF;
948: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
949: EXCEPTION
950: WHEN OKL_API.G_EXCEPTION_ERROR THEN
951: x_return_status := OKL_API.HANDLE_EXCEPTIONS
952: (
953: l_api_name,
954: G_PKG_NAME,
947: END IF;
948: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
949: EXCEPTION
950: WHEN OKL_API.G_EXCEPTION_ERROR THEN
951: x_return_status := OKL_API.HANDLE_EXCEPTIONS
952: (
953: l_api_name,
954: G_PKG_NAME,
955: 'OKL_API.G_RET_STS_ERROR',
951: x_return_status := OKL_API.HANDLE_EXCEPTIONS
952: (
953: l_api_name,
954: G_PKG_NAME,
955: 'OKL_API.G_RET_STS_ERROR',
956: x_msg_count,
957: x_msg_data,
958: '_PVT'
959: );
956: x_msg_count,
957: x_msg_data,
958: '_PVT'
959: );
960: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
961: x_return_status := OKL_API.HANDLE_EXCEPTIONS
962: (
963: l_api_name,
964: G_PKG_NAME,
957: x_msg_data,
958: '_PVT'
959: );
960: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
961: x_return_status := OKL_API.HANDLE_EXCEPTIONS
962: (
963: l_api_name,
964: G_PKG_NAME,
965: 'OKL_API.G_RET_STS_UNEXP_ERROR',
961: x_return_status := OKL_API.HANDLE_EXCEPTIONS
962: (
963: l_api_name,
964: G_PKG_NAME,
965: 'OKL_API.G_RET_STS_UNEXP_ERROR',
966: x_msg_count,
967: x_msg_data,
968: '_PVT'
969: );
967: x_msg_data,
968: '_PVT'
969: );
970: WHEN OTHERS THEN
971: x_return_status := OKL_API.HANDLE_EXCEPTIONS
972: (
973: l_api_name,
974: G_PKG_NAME,
975: 'OTHERS',
984: ------------------------------------------
985: -- lock_row for:OKL_QUOTE_STRM_ELEMENTS --
986: ------------------------------------------
987: PROCEDURE lock_row(
988: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
989: x_return_status OUT NOCOPY VARCHAR2,
990: x_msg_count OUT NOCOPY NUMBER,
991: x_msg_data OUT NOCOPY VARCHAR2,
992: p_qsl_rec IN qsl_rec_type) IS
1005: FROM OKL_QUOTE_STRM_ELEMENTS
1006: WHERE QUOTE_STRM_ELEMENT_ID = p_qsl_rec.quote_strm_element_id;
1007: l_api_version CONSTANT NUMBER := 1;
1008: l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1009: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1010: l_object_version_number OKL_QUOTE_STRM_ELEMENTS.OBJECT_VERSION_NUMBER%TYPE;
1011: lc_object_version_number OKL_QUOTE_STRM_ELEMENTS.OBJECT_VERSION_NUMBER%TYPE;
1012: l_row_notfound BOOLEAN := FALSE;
1013: lc_row_notfound BOOLEAN := FALSE;
1011: lc_object_version_number OKL_QUOTE_STRM_ELEMENTS.OBJECT_VERSION_NUMBER%TYPE;
1012: l_row_notfound BOOLEAN := FALSE;
1013: lc_row_notfound BOOLEAN := FALSE;
1014: BEGIN
1015: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1016: p_init_msg_list,
1017: '_PVT',
1018: x_return_status);
1019: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1015: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1016: p_init_msg_list,
1017: '_PVT',
1018: x_return_status);
1019: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1020: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1021: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1022: RAISE OKL_API.G_EXCEPTION_ERROR;
1023: END IF;
1016: p_init_msg_list,
1017: '_PVT',
1018: x_return_status);
1019: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1020: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1021: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1022: RAISE OKL_API.G_EXCEPTION_ERROR;
1023: END IF;
1024: BEGIN
1017: '_PVT',
1018: x_return_status);
1019: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1020: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1021: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1022: RAISE OKL_API.G_EXCEPTION_ERROR;
1023: END IF;
1024: BEGIN
1025: OPEN lock_csr(p_qsl_rec);
1018: x_return_status);
1019: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1020: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1021: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1022: RAISE OKL_API.G_EXCEPTION_ERROR;
1023: END IF;
1024: BEGIN
1025: OPEN lock_csr(p_qsl_rec);
1026: FETCH lock_csr INTO l_object_version_number;
1030: WHEN E_Resource_Busy THEN
1031: IF (lock_csr%ISOPEN) THEN
1032: CLOSE lock_csr;
1033: END IF;
1034: OKL_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1035: RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1036: END;
1037:
1038: IF ( l_row_notfound ) THEN
1041: lc_row_notfound := lchk_csr%NOTFOUND;
1042: CLOSE lchk_csr;
1043: END IF;
1044: IF (lc_row_notfound) THEN
1045: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1046: RAISE OKL_API.G_EXCEPTION_ERROR;
1047: ELSIF lc_object_version_number > p_qsl_rec.object_version_number THEN
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1042: CLOSE lchk_csr;
1043: END IF;
1044: IF (lc_row_notfound) THEN
1045: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1046: RAISE OKL_API.G_EXCEPTION_ERROR;
1047: ELSIF lc_object_version_number > p_qsl_rec.object_version_number THEN
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1044: IF (lc_row_notfound) THEN
1045: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1046: RAISE OKL_API.G_EXCEPTION_ERROR;
1047: ELSIF lc_object_version_number > p_qsl_rec.object_version_number THEN
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1045: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1046: RAISE OKL_API.G_EXCEPTION_ERROR;
1047: ELSIF lc_object_version_number > p_qsl_rec.object_version_number THEN
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1053: ELSIF lc_object_version_number = -1 THEN
1047: ELSIF lc_object_version_number > p_qsl_rec.object_version_number THEN
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1053: ELSIF lc_object_version_number = -1 THEN
1054: OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1055: RAISE OKL_API.G_EXCEPTION_ERROR;
1048: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1049: RAISE OKL_API.G_EXCEPTION_ERROR;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1053: ELSIF lc_object_version_number = -1 THEN
1054: OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1055: RAISE OKL_API.G_EXCEPTION_ERROR;
1056: END IF;
1050: ELSIF lc_object_version_number <> p_qsl_rec.object_version_number THEN
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1053: ELSIF lc_object_version_number = -1 THEN
1054: OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1055: RAISE OKL_API.G_EXCEPTION_ERROR;
1056: END IF;
1057: x_return_status := l_return_status;
1058: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1051: OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1052: RAISE OKL_API.G_EXCEPTION_ERROR;
1053: ELSIF lc_object_version_number = -1 THEN
1054: OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1055: RAISE OKL_API.G_EXCEPTION_ERROR;
1056: END IF;
1057: x_return_status := l_return_status;
1058: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1059: EXCEPTION
1054: OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1055: RAISE OKL_API.G_EXCEPTION_ERROR;
1056: END IF;
1057: x_return_status := l_return_status;
1058: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1059: EXCEPTION
1060: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1061: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1062: (
1056: END IF;
1057: x_return_status := l_return_status;
1058: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1059: EXCEPTION
1060: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1061: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1062: (
1063: l_api_name,
1064: G_PKG_NAME,
1057: x_return_status := l_return_status;
1058: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1059: EXCEPTION
1060: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1061: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1062: (
1063: l_api_name,
1064: G_PKG_NAME,
1065: 'OKL_API.G_RET_STS_ERROR',
1061: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1062: (
1063: l_api_name,
1064: G_PKG_NAME,
1065: 'OKL_API.G_RET_STS_ERROR',
1066: x_msg_count,
1067: x_msg_data,
1068: '_PVT'
1069: );
1066: x_msg_count,
1067: x_msg_data,
1068: '_PVT'
1069: );
1070: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1071: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1072: (
1073: l_api_name,
1074: G_PKG_NAME,
1067: x_msg_data,
1068: '_PVT'
1069: );
1070: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1071: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1072: (
1073: l_api_name,
1074: G_PKG_NAME,
1075: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1071: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1072: (
1073: l_api_name,
1074: G_PKG_NAME,
1075: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1076: x_msg_count,
1077: x_msg_data,
1078: '_PVT'
1079: );
1077: x_msg_data,
1078: '_PVT'
1079: );
1080: WHEN OTHERS THEN
1081: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1082: (
1083: l_api_name,
1084: G_PKG_NAME,
1085: 'OTHERS',
1092: -- lock_row for: OKL_QUOTE_STRM_ELEMENTS --
1093: -------------------------------------------
1094: PROCEDURE lock_row(
1095: p_api_version IN NUMBER,
1096: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1097: x_return_status OUT NOCOPY VARCHAR2,
1098: x_msg_count OUT NOCOPY NUMBER,
1099: x_msg_data OUT NOCOPY VARCHAR2,
1100: p_qsl_rec IN qsl_rec_type) IS
1100: p_qsl_rec IN qsl_rec_type) IS
1101:
1102: l_api_version CONSTANT NUMBER := 1;
1103: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1104: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1105: l_qsl_rec qsl_rec_type:= p_qsl_rec;
1106: BEGIN
1107: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1108: G_PKG_NAME,
1103: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1104: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1105: l_qsl_rec qsl_rec_type:= p_qsl_rec;
1106: BEGIN
1107: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1108: G_PKG_NAME,
1109: p_init_msg_list,
1110: l_api_version,
1111: p_api_version,
1110: l_api_version,
1111: p_api_version,
1112: '_PVT',
1113: x_return_status);
1114: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1115: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1116: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1117: RAISE OKL_API.G_EXCEPTION_ERROR;
1118: END IF;
1111: p_api_version,
1112: '_PVT',
1113: x_return_status);
1114: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1115: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1116: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1117: RAISE OKL_API.G_EXCEPTION_ERROR;
1118: END IF;
1119: -----------------------------------------
1112: '_PVT',
1113: x_return_status);
1114: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1115: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1116: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1117: RAISE OKL_API.G_EXCEPTION_ERROR;
1118: END IF;
1119: -----------------------------------------
1120: -- Move VIEW record to "Child" records --
1113: x_return_status);
1114: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1115: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1116: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1117: RAISE OKL_API.G_EXCEPTION_ERROR;
1118: END IF;
1119: -----------------------------------------
1120: -- Move VIEW record to "Child" records --
1121: -----------------------------------------
1128: x_msg_count,
1129: x_msg_data,
1130: l_qsl_rec
1131: );
1132: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1133: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1134: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1135: RAISE OKL_API.G_EXCEPTION_ERROR;
1136: END IF;
1129: x_msg_data,
1130: l_qsl_rec
1131: );
1132: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1133: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1134: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1135: RAISE OKL_API.G_EXCEPTION_ERROR;
1136: END IF;
1137: x_return_status := l_return_status;
1130: l_qsl_rec
1131: );
1132: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1133: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1134: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1135: RAISE OKL_API.G_EXCEPTION_ERROR;
1136: END IF;
1137: x_return_status := l_return_status;
1138: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1131: );
1132: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1133: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1134: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1135: RAISE OKL_API.G_EXCEPTION_ERROR;
1136: END IF;
1137: x_return_status := l_return_status;
1138: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1139: EXCEPTION
1134: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1135: RAISE OKL_API.G_EXCEPTION_ERROR;
1136: END IF;
1137: x_return_status := l_return_status;
1138: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1139: EXCEPTION
1140: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1141: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1142: (
1136: END IF;
1137: x_return_status := l_return_status;
1138: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1139: EXCEPTION
1140: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1141: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1142: (
1143: l_api_name,
1144: G_PKG_NAME,
1137: x_return_status := l_return_status;
1138: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1139: EXCEPTION
1140: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1141: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1142: (
1143: l_api_name,
1144: G_PKG_NAME,
1145: 'OKL_API.G_RET_STS_ERROR',
1141: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1142: (
1143: l_api_name,
1144: G_PKG_NAME,
1145: 'OKL_API.G_RET_STS_ERROR',
1146: x_msg_count,
1147: x_msg_data,
1148: '_PVT'
1149: );
1146: x_msg_count,
1147: x_msg_data,
1148: '_PVT'
1149: );
1150: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1151: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1152: (
1153: l_api_name,
1154: G_PKG_NAME,
1147: x_msg_data,
1148: '_PVT'
1149: );
1150: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1151: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1152: (
1153: l_api_name,
1154: G_PKG_NAME,
1155: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1151: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1152: (
1153: l_api_name,
1154: G_PKG_NAME,
1155: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1156: x_msg_count,
1157: x_msg_data,
1158: '_PVT'
1159: );
1157: x_msg_data,
1158: '_PVT'
1159: );
1160: WHEN OTHERS THEN
1161: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1162: (
1163: l_api_name,
1164: G_PKG_NAME,
1165: 'OTHERS',
1172: -- PL/SQL TBL lock_row for:QSL_TBL --
1173: -------------------------------------
1174: PROCEDURE lock_row(
1175: p_api_version IN NUMBER,
1176: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1177: x_return_status OUT NOCOPY VARCHAR2,
1178: x_msg_count OUT NOCOPY NUMBER,
1179: x_msg_data OUT NOCOPY VARCHAR2,
1180: p_qsl_tbl IN qsl_tbl_type,
1177: x_return_status OUT NOCOPY VARCHAR2,
1178: x_msg_count OUT NOCOPY NUMBER,
1179: x_msg_data OUT NOCOPY VARCHAR2,
1180: p_qsl_tbl IN qsl_tbl_type,
1181: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
1182:
1183: l_api_version CONSTANT NUMBER := 1;
1184: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1185: i NUMBER := 0;
1183: l_api_version CONSTANT NUMBER := 1;
1184: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1185: i NUMBER := 0;
1186: BEGIN
1187: OKL_API.init_msg_list(p_init_msg_list);
1188: -- Make sure PL/SQL table has recrods in it before passing
1189: IF (p_qsl_tbl.COUNT > 0) THEN
1190: i := p_qsl_tbl.FIRST;
1191: LOOP
1189: IF (p_qsl_tbl.COUNT > 0) THEN
1190: i := p_qsl_tbl.FIRST;
1191: LOOP
1192: DECLARE
1193: l_error_rec OKL_API.ERROR_REC_TYPE;
1194: BEGIN
1195: l_error_rec.api_name := l_api_name;
1196: l_error_rec.api_package := G_PKG_NAME;
1197: l_error_rec.idx := i;
1196: l_error_rec.api_package := G_PKG_NAME;
1197: l_error_rec.idx := i;
1198: lock_row(
1199: p_api_version => p_api_version,
1200: p_init_msg_list => OKL_API.G_FALSE,
1201: x_return_status => l_error_rec.error_type,
1202: x_msg_count => l_error_rec.msg_count,
1203: x_msg_data => l_error_rec.msg_data,
1204: p_qsl_rec => p_qsl_tbl(i));
1201: x_return_status => l_error_rec.error_type,
1202: x_msg_count => l_error_rec.msg_count,
1203: x_msg_data => l_error_rec.msg_data,
1204: p_qsl_rec => p_qsl_tbl(i));
1205: IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
1206: l_error_rec.sqlcode := SQLCODE;
1207: load_error_tbl(l_error_rec, px_error_tbl);
1208: ELSE
1209: x_msg_count := l_error_rec.msg_count;
1209: x_msg_count := l_error_rec.msg_count;
1210: x_msg_data := l_error_rec.msg_data;
1211: END IF;
1212: EXCEPTION
1213: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1214: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1215: l_error_rec.sqlcode := SQLCODE;
1216: load_error_tbl(l_error_rec, px_error_tbl);
1217: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1210: x_msg_data := l_error_rec.msg_data;
1211: END IF;
1212: EXCEPTION
1213: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1214: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1215: l_error_rec.sqlcode := SQLCODE;
1216: load_error_tbl(l_error_rec, px_error_tbl);
1217: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1218: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1213: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1214: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1215: l_error_rec.sqlcode := SQLCODE;
1216: load_error_tbl(l_error_rec, px_error_tbl);
1217: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1218: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1219: l_error_rec.sqlcode := SQLCODE;
1220: load_error_tbl(l_error_rec, px_error_tbl);
1221: WHEN OTHERS THEN
1214: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1215: l_error_rec.sqlcode := SQLCODE;
1216: load_error_tbl(l_error_rec, px_error_tbl);
1217: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1218: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1219: l_error_rec.sqlcode := SQLCODE;
1220: load_error_tbl(l_error_rec, px_error_tbl);
1221: WHEN OTHERS THEN
1222: l_error_rec.error_type := 'OTHERS';
1229: END IF;
1230: -- Loop through the error_tbl to find the error with the highest severity
1231: -- and return it.
1232: x_return_status := find_highest_exception(px_error_tbl);
1233: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1234: EXCEPTION
1235: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1236: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1237: (
1231: -- and return it.
1232: x_return_status := find_highest_exception(px_error_tbl);
1233: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1234: EXCEPTION
1235: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1236: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1237: (
1238: l_api_name,
1239: G_PKG_NAME,
1232: x_return_status := find_highest_exception(px_error_tbl);
1233: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1234: EXCEPTION
1235: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1236: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1237: (
1238: l_api_name,
1239: G_PKG_NAME,
1240: 'OKL_API.G_RET_STS_ERROR',
1236: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1237: (
1238: l_api_name,
1239: G_PKG_NAME,
1240: 'OKL_API.G_RET_STS_ERROR',
1241: x_msg_count,
1242: x_msg_data,
1243: '_PVT'
1244: );
1241: x_msg_count,
1242: x_msg_data,
1243: '_PVT'
1244: );
1245: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1246: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1247: (
1248: l_api_name,
1249: G_PKG_NAME,
1242: x_msg_data,
1243: '_PVT'
1244: );
1245: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1246: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1247: (
1248: l_api_name,
1249: G_PKG_NAME,
1250: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1246: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1247: (
1248: l_api_name,
1249: G_PKG_NAME,
1250: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1251: x_msg_count,
1252: x_msg_data,
1253: '_PVT'
1254: );
1252: x_msg_data,
1253: '_PVT'
1254: );
1255: WHEN OTHERS THEN
1256: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1257: (
1258: l_api_name,
1259: G_PKG_NAME,
1260: 'OTHERS',
1267: -- PL/SQL TBL lock_row for:QSL_TBL --
1268: -------------------------------------
1269: PROCEDURE lock_row(
1270: p_api_version IN NUMBER,
1271: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1272: x_return_status OUT NOCOPY VARCHAR2,
1273: x_msg_count OUT NOCOPY NUMBER,
1274: x_msg_data OUT NOCOPY VARCHAR2,
1275: p_qsl_tbl IN qsl_tbl_type) IS
1275: p_qsl_tbl IN qsl_tbl_type) IS
1276:
1277: l_api_version CONSTANT NUMBER := 1;
1278: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1279: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1280: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1281: BEGIN
1282: OKL_API.init_msg_list(p_init_msg_list);
1283: -- Make sure PL/SQL table has recrods in it before passing
1276:
1277: l_api_version CONSTANT NUMBER := 1;
1278: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1279: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1280: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1281: BEGIN
1282: OKL_API.init_msg_list(p_init_msg_list);
1283: -- Make sure PL/SQL table has recrods in it before passing
1284: IF (p_qsl_tbl.COUNT > 0) THEN
1278: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1279: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1280: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1281: BEGIN
1282: OKL_API.init_msg_list(p_init_msg_list);
1283: -- Make sure PL/SQL table has recrods in it before passing
1284: IF (p_qsl_tbl.COUNT > 0) THEN
1285: lock_row(
1286: p_api_version => p_api_version,
1283: -- Make sure PL/SQL table has recrods in it before passing
1284: IF (p_qsl_tbl.COUNT > 0) THEN
1285: lock_row(
1286: p_api_version => p_api_version,
1287: p_init_msg_list => OKL_API.G_FALSE,
1288: x_return_status => x_return_status,
1289: x_msg_count => x_msg_count,
1290: x_msg_data => x_msg_data,
1291: p_qsl_tbl => p_qsl_tbl,
1290: x_msg_data => x_msg_data,
1291: p_qsl_tbl => p_qsl_tbl,
1292: px_error_tbl => l_error_tbl);
1293: END IF;
1294: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1295: EXCEPTION
1296: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1297: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1298: (
1292: px_error_tbl => l_error_tbl);
1293: END IF;
1294: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1295: EXCEPTION
1296: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1297: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1298: (
1299: l_api_name,
1300: G_PKG_NAME,
1293: END IF;
1294: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1295: EXCEPTION
1296: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1297: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1298: (
1299: l_api_name,
1300: G_PKG_NAME,
1301: 'OKL_API.G_RET_STS_ERROR',
1297: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1298: (
1299: l_api_name,
1300: G_PKG_NAME,
1301: 'OKL_API.G_RET_STS_ERROR',
1302: x_msg_count,
1303: x_msg_data,
1304: '_PVT'
1305: );
1302: x_msg_count,
1303: x_msg_data,
1304: '_PVT'
1305: );
1306: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1307: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1308: (
1309: l_api_name,
1310: G_PKG_NAME,
1303: x_msg_data,
1304: '_PVT'
1305: );
1306: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1307: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1308: (
1309: l_api_name,
1310: G_PKG_NAME,
1311: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1307: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1308: (
1309: l_api_name,
1310: G_PKG_NAME,
1311: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1312: x_msg_count,
1313: x_msg_data,
1314: '_PVT'
1315: );
1313: x_msg_data,
1314: '_PVT'
1315: );
1316: WHEN OTHERS THEN
1317: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1318: (
1319: l_api_name,
1320: G_PKG_NAME,
1321: 'OTHERS',
1330: --------------------------------------------
1331: -- update_row for:OKL_QUOTE_STRM_ELEMENTS --
1332: --------------------------------------------
1333: PROCEDURE update_row(
1334: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1335: x_return_status OUT NOCOPY VARCHAR2,
1336: x_msg_count OUT NOCOPY NUMBER,
1337: x_msg_data OUT NOCOPY VARCHAR2,
1338: p_qsl_rec IN qsl_rec_type,
1339: x_qsl_rec OUT NOCOPY qsl_rec_type) IS
1340:
1341: l_api_version CONSTANT NUMBER := 1;
1342: l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
1343: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1344: l_qsl_rec qsl_rec_type := p_qsl_rec;
1345: l_def_qsl_rec qsl_rec_type;
1346: l_row_notfound BOOLEAN := TRUE;
1347: ----------------------------------
1352: x_qsl_rec OUT NOCOPY qsl_rec_type
1353: ) RETURN VARCHAR2 IS
1354: l_qsl_rec qsl_rec_type;
1355: l_row_notfound BOOLEAN := TRUE;
1356: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1357: BEGIN
1358: x_qsl_rec := p_qsl_rec;
1359: -- Get current database values
1360: l_qsl_rec := get_rec(p_qsl_rec, l_return_status);
1357: BEGIN
1358: x_qsl_rec := p_qsl_rec;
1359: -- Get current database values
1360: l_qsl_rec := get_rec(p_qsl_rec, l_return_status);
1361: IF (l_return_status = OKL_API.G_RET_STS_SUCCESS) THEN
1362: IF x_qsl_rec.quote_strm_element_id IS NULL THEN
1363: x_qsl_rec.quote_strm_element_id := l_qsl_rec.quote_strm_element_id;
1364: END IF;
1365: IF x_qsl_rec.quote_stream_id IS NULL THEN
1398: FUNCTION Set_Attributes (
1399: p_qsl_rec IN qsl_rec_type,
1400: x_qsl_rec OUT NOCOPY qsl_rec_type
1401: ) RETURN VARCHAR2 IS
1402: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1403: BEGIN
1404: x_qsl_rec := p_qsl_rec;
1405: x_qsl_rec.OBJECT_VERSION_NUMBER := p_qsl_rec.OBJECT_VERSION_NUMBER + 1;
1406: RETURN(l_return_status);
1405: x_qsl_rec.OBJECT_VERSION_NUMBER := p_qsl_rec.OBJECT_VERSION_NUMBER + 1;
1406: RETURN(l_return_status);
1407: END Set_Attributes;
1408: BEGIN
1409: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1410: p_init_msg_list,
1411: '_PVT',
1412: x_return_status);
1413: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1409: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1410: p_init_msg_list,
1411: '_PVT',
1412: x_return_status);
1413: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1414: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1415: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1416: RAISE OKL_API.G_EXCEPTION_ERROR;
1417: END IF;
1410: p_init_msg_list,
1411: '_PVT',
1412: x_return_status);
1413: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1414: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1415: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1416: RAISE OKL_API.G_EXCEPTION_ERROR;
1417: END IF;
1418: --- Setting item attributes
1411: '_PVT',
1412: x_return_status);
1413: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1414: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1415: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1416: RAISE OKL_API.G_EXCEPTION_ERROR;
1417: END IF;
1418: --- Setting item attributes
1419: l_return_status := Set_Attributes(
1412: x_return_status);
1413: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1414: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1415: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1416: RAISE OKL_API.G_EXCEPTION_ERROR;
1417: END IF;
1418: --- Setting item attributes
1419: l_return_status := Set_Attributes(
1420: p_qsl_rec, -- IN
1419: l_return_status := Set_Attributes(
1420: p_qsl_rec, -- IN
1421: l_qsl_rec); -- OUT
1422: --- If any errors happen abort API
1423: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1424: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1425: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1420: p_qsl_rec, -- IN
1421: l_qsl_rec); -- OUT
1422: --- If any errors happen abort API
1423: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1424: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1425: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1421: l_qsl_rec); -- OUT
1422: --- If any errors happen abort API
1423: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1424: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1425: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1422: --- If any errors happen abort API
1423: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1424: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1425: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1430: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1425: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1430: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1431: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1432: RAISE OKL_API.G_EXCEPTION_ERROR;
1433: END IF;
1426: RAISE OKL_API.G_EXCEPTION_ERROR;
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1430: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1431: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1432: RAISE OKL_API.G_EXCEPTION_ERROR;
1433: END IF;
1434: UPDATE OKL_QUOTE_STRM_ELEMENTS
1427: END IF;
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1430: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1431: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1432: RAISE OKL_API.G_EXCEPTION_ERROR;
1433: END IF;
1434: UPDATE OKL_QUOTE_STRM_ELEMENTS
1435: SET QUOTE_STREAM_ID = l_def_qsl_rec.quote_stream_id,
1428: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1429: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1430: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1431: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1432: RAISE OKL_API.G_EXCEPTION_ERROR;
1433: END IF;
1434: UPDATE OKL_QUOTE_STRM_ELEMENTS
1435: SET QUOTE_STREAM_ID = l_def_qsl_rec.quote_stream_id,
1436: OBJECT_VERSION_NUMBER = l_def_qsl_rec.object_version_number,
1444: WHERE QUOTE_STRM_ELEMENT_ID = l_def_qsl_rec.quote_strm_element_id;
1445:
1446: x_qsl_rec := l_qsl_rec;
1447: x_return_status := l_return_status;
1448: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1449: EXCEPTION
1450: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1451: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1452: (
1446: x_qsl_rec := l_qsl_rec;
1447: x_return_status := l_return_status;
1448: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1449: EXCEPTION
1450: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1451: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1452: (
1453: l_api_name,
1454: G_PKG_NAME,
1447: x_return_status := l_return_status;
1448: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1449: EXCEPTION
1450: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1451: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1452: (
1453: l_api_name,
1454: G_PKG_NAME,
1455: 'OKL_API.G_RET_STS_ERROR',
1451: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1452: (
1453: l_api_name,
1454: G_PKG_NAME,
1455: 'OKL_API.G_RET_STS_ERROR',
1456: x_msg_count,
1457: x_msg_data,
1458: '_PVT'
1459: );
1456: x_msg_count,
1457: x_msg_data,
1458: '_PVT'
1459: );
1460: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1461: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1462: (
1463: l_api_name,
1464: G_PKG_NAME,
1457: x_msg_data,
1458: '_PVT'
1459: );
1460: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1461: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1462: (
1463: l_api_name,
1464: G_PKG_NAME,
1465: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1461: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1462: (
1463: l_api_name,
1464: G_PKG_NAME,
1465: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1466: x_msg_count,
1467: x_msg_data,
1468: '_PVT'
1469: );
1467: x_msg_data,
1468: '_PVT'
1469: );
1470: WHEN OTHERS THEN
1471: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1472: (
1473: l_api_name,
1474: G_PKG_NAME,
1475: 'OTHERS',
1482: -- update_row for:OKL_QUOTE_STRM_ELEMENTS --
1483: --------------------------------------------
1484: PROCEDURE update_row(
1485: p_api_version IN NUMBER,
1486: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1487: x_return_status OUT NOCOPY VARCHAR2,
1488: x_msg_count OUT NOCOPY NUMBER,
1489: x_msg_data OUT NOCOPY VARCHAR2,
1490: p_qsl_rec IN qsl_rec_type,
1491: x_qsl_rec OUT NOCOPY qsl_rec_type) IS
1492:
1493: l_api_version CONSTANT NUMBER := 1;
1494: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
1495: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1496: l_qsl_rec qsl_rec_type := p_qsl_rec;
1497: l_def_qsl_rec qsl_rec_type;
1498: l_db_qsl_rec qsl_rec_type;
1499: lx_qsl_rec qsl_rec_type;
1517: p_qsl_rec IN qsl_rec_type,
1518: x_qsl_rec OUT NOCOPY qsl_rec_type
1519: ) RETURN VARCHAR2 IS
1520: l_row_notfound BOOLEAN := TRUE;
1521: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1522: BEGIN
1523: x_qsl_rec := p_qsl_rec;
1524: -- Get current database values
1525: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1524: -- Get current database values
1525: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1526: -- so it may be verified through LOCK_ROW.
1527: l_db_qsl_rec := get_rec(p_qsl_rec, l_return_status);
1528: IF (l_return_status = OKL_API.G_RET_STS_SUCCESS) THEN
1529: IF x_qsl_rec.quote_strm_element_id IS NULL THEN
1530: x_qsl_rec.quote_strm_element_id := l_db_qsl_rec.quote_strm_element_id;
1531: END IF;
1532: IF x_qsl_rec.quote_stream_id IS NULL THEN
1562: FUNCTION Set_Attributes (
1563: p_qsl_rec IN qsl_rec_type,
1564: x_qsl_rec OUT NOCOPY qsl_rec_type
1565: ) RETURN VARCHAR2 IS
1566: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1567: BEGIN
1568: x_qsl_rec := p_qsl_rec;
1569: RETURN(l_return_status);
1570: END Set_Attributes;
1568: x_qsl_rec := p_qsl_rec;
1569: RETURN(l_return_status);
1570: END Set_Attributes;
1571: BEGIN
1572: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1573: G_PKG_NAME,
1574: p_init_msg_list,
1575: l_api_version,
1576: p_api_version,
1575: l_api_version,
1576: p_api_version,
1577: '_PVT',
1578: x_return_status);
1579: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1580: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1581: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1582: RAISE OKL_API.G_EXCEPTION_ERROR;
1583: END IF;
1576: p_api_version,
1577: '_PVT',
1578: x_return_status);
1579: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1580: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1581: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1582: RAISE OKL_API.G_EXCEPTION_ERROR;
1583: END IF;
1584: --- Setting item attributes
1577: '_PVT',
1578: x_return_status);
1579: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1580: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1581: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1582: RAISE OKL_API.G_EXCEPTION_ERROR;
1583: END IF;
1584: --- Setting item attributes
1585: l_return_status := Set_Attributes(
1578: x_return_status);
1579: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1580: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1581: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1582: RAISE OKL_API.G_EXCEPTION_ERROR;
1583: END IF;
1584: --- Setting item attributes
1585: l_return_status := Set_Attributes(
1586: p_qsl_rec, -- IN
1585: l_return_status := Set_Attributes(
1586: p_qsl_rec, -- IN
1587: x_qsl_rec); -- OUT
1588: --- If any errors happen abort API
1589: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1591: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1586: p_qsl_rec, -- IN
1587: x_qsl_rec); -- OUT
1588: --- If any errors happen abort API
1589: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1591: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1587: x_qsl_rec); -- OUT
1588: --- If any errors happen abort API
1589: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1591: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1588: --- If any errors happen abort API
1589: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1591: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1596: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1591: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1596: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1597: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1598: RAISE OKL_API.G_EXCEPTION_ERROR;
1599: END IF;
1592: RAISE OKL_API.G_EXCEPTION_ERROR;
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1596: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1597: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1598: RAISE OKL_API.G_EXCEPTION_ERROR;
1599: END IF;
1600: l_def_qsl_rec := null_out_defaults(l_def_qsl_rec);
1593: END IF;
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1596: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1597: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1598: RAISE OKL_API.G_EXCEPTION_ERROR;
1599: END IF;
1600: l_def_qsl_rec := null_out_defaults(l_def_qsl_rec);
1601: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
1594: l_return_status := populate_new_record(l_qsl_rec, l_def_qsl_rec);
1595: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1596: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1597: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1598: RAISE OKL_API.G_EXCEPTION_ERROR;
1599: END IF;
1600: l_def_qsl_rec := null_out_defaults(l_def_qsl_rec);
1601: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
1602: --- Validate all non-missing attributes (Item Level Validation)
1601: l_def_qsl_rec := fill_who_columns(l_def_qsl_rec);
1602: --- Validate all non-missing attributes (Item Level Validation)
1603: l_return_status := Validate_Attributes(l_def_qsl_rec);
1604: --- If any errors happen abort API
1605: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1606: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1607: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1602: --- Validate all non-missing attributes (Item Level Validation)
1603: l_return_status := Validate_Attributes(l_def_qsl_rec);
1604: --- If any errors happen abort API
1605: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1606: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1607: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1603: l_return_status := Validate_Attributes(l_def_qsl_rec);
1604: --- If any errors happen abort API
1605: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1606: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1607: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1604: --- If any errors happen abort API
1605: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1606: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1607: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1612: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1607: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1612: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1613: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1614: RAISE OKL_API.G_EXCEPTION_ERROR;
1615: END IF;
1608: RAISE OKL_API.G_EXCEPTION_ERROR;
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1612: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1613: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1614: RAISE OKL_API.G_EXCEPTION_ERROR;
1615: END IF;
1616:
1609: END IF;
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1612: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1613: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1614: RAISE OKL_API.G_EXCEPTION_ERROR;
1615: END IF;
1616:
1617: -- Lock the Record
1610: l_return_status := Validate_Record(l_def_qsl_rec, l_db_qsl_rec);
1611: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1612: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1613: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1614: RAISE OKL_API.G_EXCEPTION_ERROR;
1615: END IF;
1616:
1617: -- Lock the Record
1618: lock_row(
1621: x_return_status => l_return_status,
1622: x_msg_count => x_msg_count,
1623: x_msg_data => x_msg_data,
1624: p_qsl_rec => p_qsl_rec);
1625: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1626: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1627: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1628: RAISE OKL_API.G_EXCEPTION_ERROR;
1629: END IF;
1622: x_msg_count => x_msg_count,
1623: x_msg_data => x_msg_data,
1624: p_qsl_rec => p_qsl_rec);
1625: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1626: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1627: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1628: RAISE OKL_API.G_EXCEPTION_ERROR;
1629: END IF;
1630:
1623: x_msg_data => x_msg_data,
1624: p_qsl_rec => p_qsl_rec);
1625: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1626: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1627: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1628: RAISE OKL_API.G_EXCEPTION_ERROR;
1629: END IF;
1630:
1631: -----------------------------------------
1624: p_qsl_rec => p_qsl_rec);
1625: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1626: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1627: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1628: RAISE OKL_API.G_EXCEPTION_ERROR;
1629: END IF;
1630:
1631: -----------------------------------------
1632: -- Move VIEW record to "Child" records --
1641: x_msg_data,
1642: l_qsl_rec,
1643: lx_qsl_rec
1644: );
1645: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1646: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1647: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1648: RAISE OKL_API.G_EXCEPTION_ERROR;
1649: END IF;
1642: l_qsl_rec,
1643: lx_qsl_rec
1644: );
1645: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1646: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1647: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1648: RAISE OKL_API.G_EXCEPTION_ERROR;
1649: END IF;
1650: x_qsl_rec := l_def_qsl_rec;
1643: lx_qsl_rec
1644: );
1645: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1646: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1647: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1648: RAISE OKL_API.G_EXCEPTION_ERROR;
1649: END IF;
1650: x_qsl_rec := l_def_qsl_rec;
1651: x_return_status := l_return_status;
1644: );
1645: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1646: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1647: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1648: RAISE OKL_API.G_EXCEPTION_ERROR;
1649: END IF;
1650: x_qsl_rec := l_def_qsl_rec;
1651: x_return_status := l_return_status;
1652: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1648: RAISE OKL_API.G_EXCEPTION_ERROR;
1649: END IF;
1650: x_qsl_rec := l_def_qsl_rec;
1651: x_return_status := l_return_status;
1652: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1656: (
1650: x_qsl_rec := l_def_qsl_rec;
1651: x_return_status := l_return_status;
1652: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1651: x_return_status := l_return_status;
1652: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1659: 'OKL_API.G_RET_STS_ERROR',
1655: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1659: 'OKL_API.G_RET_STS_ERROR',
1660: x_msg_count,
1661: x_msg_data,
1662: '_PVT'
1663: );
1660: x_msg_count,
1661: x_msg_data,
1662: '_PVT'
1663: );
1664: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1665: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1661: x_msg_data,
1662: '_PVT'
1663: );
1664: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1665: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1669: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1665: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1669: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1670: x_msg_count,
1671: x_msg_data,
1672: '_PVT'
1673: );
1671: x_msg_data,
1672: '_PVT'
1673: );
1674: WHEN OTHERS THEN
1675: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1676: (
1677: l_api_name,
1678: G_PKG_NAME,
1679: 'OTHERS',
1686: -- PL/SQL TBL update_row for:qsl_tbl --
1687: ---------------------------------------
1688: PROCEDURE update_row(
1689: p_api_version IN NUMBER,
1690: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1691: x_return_status OUT NOCOPY VARCHAR2,
1692: x_msg_count OUT NOCOPY NUMBER,
1693: x_msg_data OUT NOCOPY VARCHAR2,
1694: p_qsl_tbl IN qsl_tbl_type,
1692: x_msg_count OUT NOCOPY NUMBER,
1693: x_msg_data OUT NOCOPY VARCHAR2,
1694: p_qsl_tbl IN qsl_tbl_type,
1695: x_qsl_tbl OUT NOCOPY qsl_tbl_type,
1696: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
1697:
1698: l_api_version CONSTANT NUMBER := 1;
1699: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1700: i NUMBER := 0;
1698: l_api_version CONSTANT NUMBER := 1;
1699: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1700: i NUMBER := 0;
1701: BEGIN
1702: OKL_API.init_msg_list(p_init_msg_list);
1703: -- Make sure PL/SQL table has records in it before passing
1704: IF (p_qsl_tbl.COUNT > 0) THEN
1705: i := p_qsl_tbl.FIRST;
1706: LOOP
1704: IF (p_qsl_tbl.COUNT > 0) THEN
1705: i := p_qsl_tbl.FIRST;
1706: LOOP
1707: DECLARE
1708: l_error_rec OKL_API.ERROR_REC_TYPE;
1709: BEGIN
1710: l_error_rec.api_name := l_api_name;
1711: l_error_rec.api_package := G_PKG_NAME;
1712: l_error_rec.idx := i;
1711: l_error_rec.api_package := G_PKG_NAME;
1712: l_error_rec.idx := i;
1713: update_row (
1714: p_api_version => p_api_version,
1715: p_init_msg_list => OKL_API.G_FALSE,
1716: x_return_status => l_error_rec.error_type,
1717: x_msg_count => l_error_rec.msg_count,
1718: x_msg_data => l_error_rec.msg_data,
1719: p_qsl_rec => p_qsl_tbl(i),
1717: x_msg_count => l_error_rec.msg_count,
1718: x_msg_data => l_error_rec.msg_data,
1719: p_qsl_rec => p_qsl_tbl(i),
1720: x_qsl_rec => x_qsl_tbl(i));
1721: IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
1722: l_error_rec.sqlcode := SQLCODE;
1723: load_error_tbl(l_error_rec, px_error_tbl);
1724: ELSE
1725: x_msg_count := l_error_rec.msg_count;
1725: x_msg_count := l_error_rec.msg_count;
1726: x_msg_data := l_error_rec.msg_data;
1727: END IF;
1728: EXCEPTION
1729: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1730: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1731: l_error_rec.sqlcode := SQLCODE;
1732: load_error_tbl(l_error_rec, px_error_tbl);
1733: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1726: x_msg_data := l_error_rec.msg_data;
1727: END IF;
1728: EXCEPTION
1729: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1730: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1731: l_error_rec.sqlcode := SQLCODE;
1732: load_error_tbl(l_error_rec, px_error_tbl);
1733: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1734: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1729: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1730: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1731: l_error_rec.sqlcode := SQLCODE;
1732: load_error_tbl(l_error_rec, px_error_tbl);
1733: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1734: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1735: l_error_rec.sqlcode := SQLCODE;
1736: load_error_tbl(l_error_rec, px_error_tbl);
1737: WHEN OTHERS THEN
1730: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
1731: l_error_rec.sqlcode := SQLCODE;
1732: load_error_tbl(l_error_rec, px_error_tbl);
1733: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1734: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
1735: l_error_rec.sqlcode := SQLCODE;
1736: load_error_tbl(l_error_rec, px_error_tbl);
1737: WHEN OTHERS THEN
1738: l_error_rec.error_type := 'OTHERS';
1745: END IF;
1746: -- Loop through the error_tbl to find the error with the highest severity
1747: -- and return it.
1748: x_return_status := find_highest_exception(px_error_tbl);
1749: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1750: EXCEPTION
1751: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1752: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1753: (
1747: -- and return it.
1748: x_return_status := find_highest_exception(px_error_tbl);
1749: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1750: EXCEPTION
1751: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1752: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1753: (
1754: l_api_name,
1755: G_PKG_NAME,
1748: x_return_status := find_highest_exception(px_error_tbl);
1749: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1750: EXCEPTION
1751: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1752: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1753: (
1754: l_api_name,
1755: G_PKG_NAME,
1756: 'OKL_API.G_RET_STS_ERROR',
1752: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1753: (
1754: l_api_name,
1755: G_PKG_NAME,
1756: 'OKL_API.G_RET_STS_ERROR',
1757: x_msg_count,
1758: x_msg_data,
1759: '_PVT'
1760: );
1757: x_msg_count,
1758: x_msg_data,
1759: '_PVT'
1760: );
1761: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1762: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1763: (
1764: l_api_name,
1765: G_PKG_NAME,
1758: x_msg_data,
1759: '_PVT'
1760: );
1761: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1762: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1763: (
1764: l_api_name,
1765: G_PKG_NAME,
1766: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1762: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1763: (
1764: l_api_name,
1765: G_PKG_NAME,
1766: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1767: x_msg_count,
1768: x_msg_data,
1769: '_PVT'
1770: );
1768: x_msg_data,
1769: '_PVT'
1770: );
1771: WHEN OTHERS THEN
1772: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1773: (
1774: l_api_name,
1775: G_PKG_NAME,
1776: 'OTHERS',
1784: -- PL/SQL TBL update_row for:QSL_TBL --
1785: ---------------------------------------
1786: PROCEDURE update_row(
1787: p_api_version IN NUMBER,
1788: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1789: x_return_status OUT NOCOPY VARCHAR2,
1790: x_msg_count OUT NOCOPY NUMBER,
1791: x_msg_data OUT NOCOPY VARCHAR2,
1792: p_qsl_tbl IN qsl_tbl_type,
1793: x_qsl_tbl OUT NOCOPY qsl_tbl_type) IS
1794:
1795: l_api_version CONSTANT NUMBER := 1;
1796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
1797: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1798: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1799: BEGIN
1800: OKL_API.init_msg_list(p_init_msg_list);
1801: -- Make sure PL/SQL table has records in it before passing
1794:
1795: l_api_version CONSTANT NUMBER := 1;
1796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
1797: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1798: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1799: BEGIN
1800: OKL_API.init_msg_list(p_init_msg_list);
1801: -- Make sure PL/SQL table has records in it before passing
1802: IF (p_qsl_tbl.COUNT > 0) THEN
1796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
1797: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1798: l_error_tbl OKL_API.ERROR_TBL_TYPE;
1799: BEGIN
1800: OKL_API.init_msg_list(p_init_msg_list);
1801: -- Make sure PL/SQL table has records in it before passing
1802: IF (p_qsl_tbl.COUNT > 0) THEN
1803: update_row (
1804: p_api_version => p_api_version,
1801: -- Make sure PL/SQL table has records in it before passing
1802: IF (p_qsl_tbl.COUNT > 0) THEN
1803: update_row (
1804: p_api_version => p_api_version,
1805: p_init_msg_list => OKL_API.G_FALSE,
1806: x_return_status => x_return_status,
1807: x_msg_count => x_msg_count,
1808: x_msg_data => x_msg_data,
1809: p_qsl_tbl => p_qsl_tbl,
1809: p_qsl_tbl => p_qsl_tbl,
1810: x_qsl_tbl => x_qsl_tbl,
1811: px_error_tbl => l_error_tbl);
1812: END IF;
1813: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1814: EXCEPTION
1815: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1816: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1817: (
1811: px_error_tbl => l_error_tbl);
1812: END IF;
1813: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1814: EXCEPTION
1815: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1816: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1817: (
1818: l_api_name,
1819: G_PKG_NAME,
1812: END IF;
1813: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1814: EXCEPTION
1815: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1816: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1817: (
1818: l_api_name,
1819: G_PKG_NAME,
1820: 'OKL_API.G_RET_STS_ERROR',
1816: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1817: (
1818: l_api_name,
1819: G_PKG_NAME,
1820: 'OKL_API.G_RET_STS_ERROR',
1821: x_msg_count,
1822: x_msg_data,
1823: '_PVT'
1824: );
1821: x_msg_count,
1822: x_msg_data,
1823: '_PVT'
1824: );
1825: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1826: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1827: (
1828: l_api_name,
1829: G_PKG_NAME,
1822: x_msg_data,
1823: '_PVT'
1824: );
1825: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1826: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1827: (
1828: l_api_name,
1829: G_PKG_NAME,
1830: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1826: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1827: (
1828: l_api_name,
1829: G_PKG_NAME,
1830: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1831: x_msg_count,
1832: x_msg_data,
1833: '_PVT'
1834: );
1832: x_msg_data,
1833: '_PVT'
1834: );
1835: WHEN OTHERS THEN
1836: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1837: (
1838: l_api_name,
1839: G_PKG_NAME,
1840: 'OTHERS',
1850: --------------------------------------------
1851: -- delete_row for:OKL_QUOTE_STRM_ELEMENTS --
1852: --------------------------------------------
1853: PROCEDURE delete_row(
1854: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1855: x_return_status OUT NOCOPY VARCHAR2,
1856: x_msg_count OUT NOCOPY NUMBER,
1857: x_msg_data OUT NOCOPY VARCHAR2,
1858: p_qsl_rec IN qsl_rec_type) IS
1858: p_qsl_rec IN qsl_rec_type) IS
1859:
1860: l_api_version CONSTANT NUMBER := 1;
1861: l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
1862: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1863: l_qsl_rec qsl_rec_type := p_qsl_rec;
1864: l_row_notfound BOOLEAN := TRUE;
1865: BEGIN
1866: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1862: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1863: l_qsl_rec qsl_rec_type := p_qsl_rec;
1864: l_row_notfound BOOLEAN := TRUE;
1865: BEGIN
1866: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1867: p_init_msg_list,
1868: '_PVT',
1869: x_return_status);
1870: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1866: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1867: p_init_msg_list,
1868: '_PVT',
1869: x_return_status);
1870: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1871: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1872: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1873: RAISE OKL_API.G_EXCEPTION_ERROR;
1874: END IF;
1867: p_init_msg_list,
1868: '_PVT',
1869: x_return_status);
1870: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1871: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1872: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1873: RAISE OKL_API.G_EXCEPTION_ERROR;
1874: END IF;
1875:
1868: '_PVT',
1869: x_return_status);
1870: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1871: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1872: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1873: RAISE OKL_API.G_EXCEPTION_ERROR;
1874: END IF;
1875:
1876: DELETE FROM OKL_QUOTE_STRM_ELEMENTS
1869: x_return_status);
1870: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1871: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1872: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1873: RAISE OKL_API.G_EXCEPTION_ERROR;
1874: END IF;
1875:
1876: DELETE FROM OKL_QUOTE_STRM_ELEMENTS
1877: WHERE QUOTE_STRM_ELEMENT_ID = p_qsl_rec.quote_strm_element_id;
1876: DELETE FROM OKL_QUOTE_STRM_ELEMENTS
1877: WHERE QUOTE_STRM_ELEMENT_ID = p_qsl_rec.quote_strm_element_id;
1878:
1879: x_return_status := l_return_status;
1880: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1881: EXCEPTION
1882: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1883: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1884: (
1878:
1879: x_return_status := l_return_status;
1880: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1881: EXCEPTION
1882: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1883: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1884: (
1885: l_api_name,
1886: G_PKG_NAME,
1879: x_return_status := l_return_status;
1880: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1881: EXCEPTION
1882: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1883: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1884: (
1885: l_api_name,
1886: G_PKG_NAME,
1887: 'OKL_API.G_RET_STS_ERROR',
1883: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1884: (
1885: l_api_name,
1886: G_PKG_NAME,
1887: 'OKL_API.G_RET_STS_ERROR',
1888: x_msg_count,
1889: x_msg_data,
1890: '_PVT'
1891: );
1888: x_msg_count,
1889: x_msg_data,
1890: '_PVT'
1891: );
1892: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1893: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1894: (
1895: l_api_name,
1896: G_PKG_NAME,
1889: x_msg_data,
1890: '_PVT'
1891: );
1892: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1893: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1894: (
1895: l_api_name,
1896: G_PKG_NAME,
1897: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1893: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1894: (
1895: l_api_name,
1896: G_PKG_NAME,
1897: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1898: x_msg_count,
1899: x_msg_data,
1900: '_PVT'
1901: );
1899: x_msg_data,
1900: '_PVT'
1901: );
1902: WHEN OTHERS THEN
1903: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1904: (
1905: l_api_name,
1906: G_PKG_NAME,
1907: 'OTHERS',
1914: -- delete_row for:OKL_QUOTE_STRM_ELEMENTS --
1915: --------------------------------------------
1916: PROCEDURE delete_row(
1917: p_api_version IN NUMBER,
1918: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1919: x_return_status OUT NOCOPY VARCHAR2,
1920: x_msg_count OUT NOCOPY NUMBER,
1921: x_msg_data OUT NOCOPY VARCHAR2,
1922: p_qsl_rec IN qsl_rec_type) IS
1922: p_qsl_rec IN qsl_rec_type) IS
1923:
1924: l_api_version CONSTANT NUMBER := 1;
1925: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
1926: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1927: l_qsl_rec qsl_rec_type := p_qsl_rec;
1928: BEGIN
1929: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1930: G_PKG_NAME,
1925: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
1926: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1927: l_qsl_rec qsl_rec_type := p_qsl_rec;
1928: BEGIN
1929: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
1930: G_PKG_NAME,
1931: p_init_msg_list,
1932: l_api_version,
1933: p_api_version,
1932: l_api_version,
1933: p_api_version,
1934: '_PVT',
1935: x_return_status);
1936: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1937: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1938: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1939: RAISE OKL_API.G_EXCEPTION_ERROR;
1940: END IF;
1933: p_api_version,
1934: '_PVT',
1935: x_return_status);
1936: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1937: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1938: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1939: RAISE OKL_API.G_EXCEPTION_ERROR;
1940: END IF;
1941: -----------------------------------------
1934: '_PVT',
1935: x_return_status);
1936: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1937: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1938: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1939: RAISE OKL_API.G_EXCEPTION_ERROR;
1940: END IF;
1941: -----------------------------------------
1942: -- Move VIEW record to "Child" records --
1935: x_return_status);
1936: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1937: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1938: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1939: RAISE OKL_API.G_EXCEPTION_ERROR;
1940: END IF;
1941: -----------------------------------------
1942: -- Move VIEW record to "Child" records --
1943: -----------------------------------------
1950: x_msg_count,
1951: x_msg_data,
1952: l_qsl_rec
1953: );
1954: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1955: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1956: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1957: RAISE OKL_API.G_EXCEPTION_ERROR;
1958: END IF;
1951: x_msg_data,
1952: l_qsl_rec
1953: );
1954: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1955: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1956: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1957: RAISE OKL_API.G_EXCEPTION_ERROR;
1958: END IF;
1959: x_return_status := l_return_status;
1952: l_qsl_rec
1953: );
1954: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1955: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1956: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1957: RAISE OKL_API.G_EXCEPTION_ERROR;
1958: END IF;
1959: x_return_status := l_return_status;
1960: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1953: );
1954: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1955: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1956: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1957: RAISE OKL_API.G_EXCEPTION_ERROR;
1958: END IF;
1959: x_return_status := l_return_status;
1960: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1961: EXCEPTION
1956: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1957: RAISE OKL_API.G_EXCEPTION_ERROR;
1958: END IF;
1959: x_return_status := l_return_status;
1960: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1961: EXCEPTION
1962: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1963: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1964: (
1958: END IF;
1959: x_return_status := l_return_status;
1960: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1961: EXCEPTION
1962: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1963: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1964: (
1965: l_api_name,
1966: G_PKG_NAME,
1959: x_return_status := l_return_status;
1960: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1961: EXCEPTION
1962: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1963: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1964: (
1965: l_api_name,
1966: G_PKG_NAME,
1967: 'OKL_API.G_RET_STS_ERROR',
1963: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1964: (
1965: l_api_name,
1966: G_PKG_NAME,
1967: 'OKL_API.G_RET_STS_ERROR',
1968: x_msg_count,
1969: x_msg_data,
1970: '_PVT'
1971: );
1968: x_msg_count,
1969: x_msg_data,
1970: '_PVT'
1971: );
1972: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1973: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1974: (
1975: l_api_name,
1976: G_PKG_NAME,
1969: x_msg_data,
1970: '_PVT'
1971: );
1972: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1973: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1974: (
1975: l_api_name,
1976: G_PKG_NAME,
1977: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1973: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1974: (
1975: l_api_name,
1976: G_PKG_NAME,
1977: 'OKL_API.G_RET_STS_UNEXP_ERROR',
1978: x_msg_count,
1979: x_msg_data,
1980: '_PVT'
1981: );
1979: x_msg_data,
1980: '_PVT'
1981: );
1982: WHEN OTHERS THEN
1983: x_return_status := OKL_API.HANDLE_EXCEPTIONS
1984: (
1985: l_api_name,
1986: G_PKG_NAME,
1987: 'OTHERS',
1994: -- PL/SQL TBL delete_row for:OKL_QUOTE_STRM_ELEMENTS --
1995: -------------------------------------------------------
1996: PROCEDURE delete_row(
1997: p_api_version IN NUMBER,
1998: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1999: x_return_status OUT NOCOPY VARCHAR2,
2000: x_msg_count OUT NOCOPY NUMBER,
2001: x_msg_data OUT NOCOPY VARCHAR2,
2002: p_qsl_tbl IN qsl_tbl_type,
1999: x_return_status OUT NOCOPY VARCHAR2,
2000: x_msg_count OUT NOCOPY NUMBER,
2001: x_msg_data OUT NOCOPY VARCHAR2,
2002: p_qsl_tbl IN qsl_tbl_type,
2003: px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
2004:
2005: l_api_version CONSTANT NUMBER := 1;
2006: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2007: i NUMBER := 0;
2005: l_api_version CONSTANT NUMBER := 1;
2006: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2007: i NUMBER := 0;
2008: BEGIN
2009: OKL_API.init_msg_list(p_init_msg_list);
2010: -- Make sure PL/SQL table has records in it before passing
2011: IF (p_qsl_tbl.COUNT > 0) THEN
2012: i := p_qsl_tbl.FIRST;
2013: LOOP
2011: IF (p_qsl_tbl.COUNT > 0) THEN
2012: i := p_qsl_tbl.FIRST;
2013: LOOP
2014: DECLARE
2015: l_error_rec OKL_API.ERROR_REC_TYPE;
2016: BEGIN
2017: l_error_rec.api_name := l_api_name;
2018: l_error_rec.api_package := G_PKG_NAME;
2019: l_error_rec.idx := i;
2018: l_error_rec.api_package := G_PKG_NAME;
2019: l_error_rec.idx := i;
2020: delete_row (
2021: p_api_version => p_api_version,
2022: p_init_msg_list => OKL_API.G_FALSE,
2023: x_return_status => l_error_rec.error_type,
2024: x_msg_count => l_error_rec.msg_count,
2025: x_msg_data => l_error_rec.msg_data,
2026: p_qsl_rec => p_qsl_tbl(i));
2023: x_return_status => l_error_rec.error_type,
2024: x_msg_count => l_error_rec.msg_count,
2025: x_msg_data => l_error_rec.msg_data,
2026: p_qsl_rec => p_qsl_tbl(i));
2027: IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
2028: l_error_rec.sqlcode := SQLCODE;
2029: load_error_tbl(l_error_rec, px_error_tbl);
2030: ELSE
2031: x_msg_count := l_error_rec.msg_count;
2031: x_msg_count := l_error_rec.msg_count;
2032: x_msg_data := l_error_rec.msg_data;
2033: END IF;
2034: EXCEPTION
2035: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2036: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
2037: l_error_rec.sqlcode := SQLCODE;
2038: load_error_tbl(l_error_rec, px_error_tbl);
2039: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2032: x_msg_data := l_error_rec.msg_data;
2033: END IF;
2034: EXCEPTION
2035: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2036: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
2037: l_error_rec.sqlcode := SQLCODE;
2038: load_error_tbl(l_error_rec, px_error_tbl);
2039: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2040: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
2035: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2036: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
2037: l_error_rec.sqlcode := SQLCODE;
2038: load_error_tbl(l_error_rec, px_error_tbl);
2039: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2040: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
2041: l_error_rec.sqlcode := SQLCODE;
2042: load_error_tbl(l_error_rec, px_error_tbl);
2043: WHEN OTHERS THEN
2036: l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
2037: l_error_rec.sqlcode := SQLCODE;
2038: load_error_tbl(l_error_rec, px_error_tbl);
2039: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2040: l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
2041: l_error_rec.sqlcode := SQLCODE;
2042: load_error_tbl(l_error_rec, px_error_tbl);
2043: WHEN OTHERS THEN
2044: l_error_rec.error_type := 'OTHERS';
2051: END IF;
2052: -- Loop through the error_tbl to find the error with the highest severity
2053: -- and return it.
2054: x_return_status := find_highest_exception(px_error_tbl);
2055: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2056: EXCEPTION
2057: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2058: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2059: (
2053: -- and return it.
2054: x_return_status := find_highest_exception(px_error_tbl);
2055: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2056: EXCEPTION
2057: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2058: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2059: (
2060: l_api_name,
2061: G_PKG_NAME,
2054: x_return_status := find_highest_exception(px_error_tbl);
2055: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2056: EXCEPTION
2057: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2058: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2059: (
2060: l_api_name,
2061: G_PKG_NAME,
2062: 'OKL_API.G_RET_STS_ERROR',
2058: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2059: (
2060: l_api_name,
2061: G_PKG_NAME,
2062: 'OKL_API.G_RET_STS_ERROR',
2063: x_msg_count,
2064: x_msg_data,
2065: '_PVT'
2066: );
2063: x_msg_count,
2064: x_msg_data,
2065: '_PVT'
2066: );
2067: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2068: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2069: (
2070: l_api_name,
2071: G_PKG_NAME,
2064: x_msg_data,
2065: '_PVT'
2066: );
2067: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2068: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2069: (
2070: l_api_name,
2071: G_PKG_NAME,
2072: 'OKL_API.G_RET_STS_UNEXP_ERROR',
2068: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2069: (
2070: l_api_name,
2071: G_PKG_NAME,
2072: 'OKL_API.G_RET_STS_UNEXP_ERROR',
2073: x_msg_count,
2074: x_msg_data,
2075: '_PVT'
2076: );
2074: x_msg_data,
2075: '_PVT'
2076: );
2077: WHEN OTHERS THEN
2078: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2079: (
2080: l_api_name,
2081: G_PKG_NAME,
2082: 'OTHERS',
2090: -- PL/SQL TBL delete_row for:OKL_QUOTE_STRM_ELEMENTS --
2091: -------------------------------------------------------
2092: PROCEDURE delete_row(
2093: p_api_version IN NUMBER,
2094: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
2095: x_return_status OUT NOCOPY VARCHAR2,
2096: x_msg_count OUT NOCOPY NUMBER,
2097: x_msg_data OUT NOCOPY VARCHAR2,
2098: p_qsl_tbl IN qsl_tbl_type) IS
2098: p_qsl_tbl IN qsl_tbl_type) IS
2099:
2100: l_api_version CONSTANT NUMBER := 1;
2101: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2102: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2103: l_error_tbl OKL_API.ERROR_TBL_TYPE;
2104: BEGIN
2105: OKL_API.init_msg_list(p_init_msg_list);
2106: -- Make sure PL/SQL table has records in it before passing
2099:
2100: l_api_version CONSTANT NUMBER := 1;
2101: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2102: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2103: l_error_tbl OKL_API.ERROR_TBL_TYPE;
2104: BEGIN
2105: OKL_API.init_msg_list(p_init_msg_list);
2106: -- Make sure PL/SQL table has records in it before passing
2107: IF (p_qsl_tbl.COUNT > 0) THEN
2101: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2102: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2103: l_error_tbl OKL_API.ERROR_TBL_TYPE;
2104: BEGIN
2105: OKL_API.init_msg_list(p_init_msg_list);
2106: -- Make sure PL/SQL table has records in it before passing
2107: IF (p_qsl_tbl.COUNT > 0) THEN
2108: delete_row (
2109: p_api_version => p_api_version,
2106: -- Make sure PL/SQL table has records in it before passing
2107: IF (p_qsl_tbl.COUNT > 0) THEN
2108: delete_row (
2109: p_api_version => p_api_version,
2110: p_init_msg_list => OKL_API.G_FALSE,
2111: x_return_status => x_return_status,
2112: x_msg_count => x_msg_count,
2113: x_msg_data => x_msg_data,
2114: p_qsl_tbl => p_qsl_tbl,
2113: x_msg_data => x_msg_data,
2114: p_qsl_tbl => p_qsl_tbl,
2115: px_error_tbl => l_error_tbl);
2116: END IF;
2117: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2118: EXCEPTION
2119: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2120: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2121: (
2115: px_error_tbl => l_error_tbl);
2116: END IF;
2117: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2118: EXCEPTION
2119: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2120: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2121: (
2122: l_api_name,
2123: G_PKG_NAME,
2116: END IF;
2117: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2118: EXCEPTION
2119: WHEN OKL_API.G_EXCEPTION_ERROR THEN
2120: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2121: (
2122: l_api_name,
2123: G_PKG_NAME,
2124: 'OKL_API.G_RET_STS_ERROR',
2120: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2121: (
2122: l_api_name,
2123: G_PKG_NAME,
2124: 'OKL_API.G_RET_STS_ERROR',
2125: x_msg_count,
2126: x_msg_data,
2127: '_PVT'
2128: );
2125: x_msg_count,
2126: x_msg_data,
2127: '_PVT'
2128: );
2129: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2130: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2131: (
2132: l_api_name,
2133: G_PKG_NAME,
2126: x_msg_data,
2127: '_PVT'
2128: );
2129: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2130: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2131: (
2132: l_api_name,
2133: G_PKG_NAME,
2134: 'OKL_API.G_RET_STS_UNEXP_ERROR',
2130: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2131: (
2132: l_api_name,
2133: G_PKG_NAME,
2134: 'OKL_API.G_RET_STS_UNEXP_ERROR',
2135: x_msg_count,
2136: x_msg_data,
2137: '_PVT'
2138: );
2136: x_msg_data,
2137: '_PVT'
2138: );
2139: WHEN OTHERS THEN
2140: x_return_status := OKL_API.HANDLE_EXCEPTIONS
2141: (
2142: l_api_name,
2143: G_PKG_NAME,
2144: 'OTHERS',