3: ---------------------------------------------------------------------------
4: -- PROCEDURE load_error_tbl
5: ---------------------------------------------------------------------------
6: PROCEDURE load_error_tbl (
7: px_error_rec IN OUT NOCOPY OKC_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY OKC_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 OKC_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY OKC_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 OKC_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKC_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
38: ---------------------------------------------------------------------------
39: -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40: -- in a OKC_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKC_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
45: i INTEGER := 1;
46: BEGIN
40: -- in a OKC_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN OKC_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := OKC_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 <> OKC_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> OKC_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 <> OKC_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> OKC_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);
156: ) RETURN inhv_rec_type IS
157: l_inhv_rec inhv_rec_type;
158: l_row_notfound BOOLEAN := TRUE;
159: BEGIN
160: x_return_status := OKC_API.G_RET_STS_SUCCESS;
161: l_inhv_rec := get_rec(p_inhv_rec, l_row_notfound);
162: IF (l_row_notfound) THEN
163: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
164: x_return_status := OKC_API.G_RET_STS_ERROR;
159: BEGIN
160: x_return_status := OKC_API.G_RET_STS_SUCCESS;
161: l_inhv_rec := get_rec(p_inhv_rec, l_row_notfound);
162: IF (l_row_notfound) THEN
163: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
164: x_return_status := OKC_API.G_RET_STS_ERROR;
165: END IF;
166: RETURN(l_inhv_rec);
167: END get_rec;
160: x_return_status := OKC_API.G_RET_STS_SUCCESS;
161: l_inhv_rec := get_rec(p_inhv_rec, l_row_notfound);
162: IF (l_row_notfound) THEN
163: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
164: x_return_status := OKC_API.G_RET_STS_ERROR;
165: END IF;
166: RETURN(l_inhv_rec);
167: END get_rec;
168: -----------------------------------------------------------
241: ) RETURN inh_rec_type IS
242: l_inh_rec inh_rec_type;
243: l_row_notfound BOOLEAN := TRUE;
244: BEGIN
245: x_return_status := OKC_API.G_RET_STS_SUCCESS;
246: l_inh_rec := get_rec(p_inh_rec, l_row_notfound);
247: IF (l_row_notfound) THEN
248: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
249: x_return_status := OKC_API.G_RET_STS_ERROR;
244: BEGIN
245: x_return_status := OKC_API.G_RET_STS_SUCCESS;
246: l_inh_rec := get_rec(p_inh_rec, l_row_notfound);
247: IF (l_row_notfound) THEN
248: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
249: x_return_status := OKC_API.G_RET_STS_ERROR;
250: END IF;
251: RETURN(l_inh_rec);
252: END get_rec;
245: x_return_status := OKC_API.G_RET_STS_SUCCESS;
246: l_inh_rec := get_rec(p_inh_rec, l_row_notfound);
247: IF (l_row_notfound) THEN
248: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
249: x_return_status := OKC_API.G_RET_STS_ERROR;
250: END IF;
251: RETURN(l_inh_rec);
252: END get_rec;
253: -----------------------------------------------------------
267: p_inhv_rec IN inhv_rec_type
268: ) RETURN inhv_rec_type IS
269: l_inhv_rec inhv_rec_type := p_inhv_rec;
270: BEGIN
271: IF (l_inhv_rec.id = OKC_API.G_MISS_NUM ) THEN
272: l_inhv_rec.id := NULL;
273: END IF;
274: IF (l_inhv_rec.chr_id = OKC_API.G_MISS_NUM ) THEN
275: l_inhv_rec.chr_id := NULL;
270: BEGIN
271: IF (l_inhv_rec.id = OKC_API.G_MISS_NUM ) THEN
272: l_inhv_rec.id := NULL;
273: END IF;
274: IF (l_inhv_rec.chr_id = OKC_API.G_MISS_NUM ) THEN
275: l_inhv_rec.chr_id := NULL;
276: END IF;
277: IF (l_inhv_rec.contract_number = OKC_API.G_MISS_CHAR ) THEN
278: l_inhv_rec.contract_number := NULL;
273: END IF;
274: IF (l_inhv_rec.chr_id = OKC_API.G_MISS_NUM ) THEN
275: l_inhv_rec.chr_id := NULL;
276: END IF;
277: IF (l_inhv_rec.contract_number = OKC_API.G_MISS_CHAR ) THEN
278: l_inhv_rec.contract_number := NULL;
279: END IF;
280: IF (l_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR ) THEN
281: l_inhv_rec.contract_number_modifier := NULL;
276: END IF;
277: IF (l_inhv_rec.contract_number = OKC_API.G_MISS_CHAR ) THEN
278: l_inhv_rec.contract_number := NULL;
279: END IF;
280: IF (l_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR ) THEN
281: l_inhv_rec.contract_number_modifier := NULL;
282: END IF;
283: IF (l_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR ) THEN
284: l_inhv_rec.renewal_status := NULL;
279: END IF;
280: IF (l_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR ) THEN
281: l_inhv_rec.contract_number_modifier := NULL;
282: END IF;
283: IF (l_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR ) THEN
284: l_inhv_rec.renewal_status := NULL;
285: END IF;
286: IF (l_inhv_rec.party_id = OKC_API.G_MISS_NUM ) THEN
287: l_inhv_rec.party_id := NULL;
282: END IF;
283: IF (l_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR ) THEN
284: l_inhv_rec.renewal_status := NULL;
285: END IF;
286: IF (l_inhv_rec.party_id = OKC_API.G_MISS_NUM ) THEN
287: l_inhv_rec.party_id := NULL;
288: END IF;
289: IF (l_inhv_rec.user_id = OKC_API.G_MISS_NUM ) THEN
290: l_inhv_rec.user_id := NULL;
285: END IF;
286: IF (l_inhv_rec.party_id = OKC_API.G_MISS_NUM ) THEN
287: l_inhv_rec.party_id := NULL;
288: END IF;
289: IF (l_inhv_rec.user_id = OKC_API.G_MISS_NUM ) THEN
290: l_inhv_rec.user_id := NULL;
291: END IF;
292: IF (l_inhv_rec.description = OKC_API.G_MISS_CHAR ) THEN
293: l_inhv_rec.description := NULL;
288: END IF;
289: IF (l_inhv_rec.user_id = OKC_API.G_MISS_NUM ) THEN
290: l_inhv_rec.user_id := NULL;
291: END IF;
292: IF (l_inhv_rec.description = OKC_API.G_MISS_CHAR ) THEN
293: l_inhv_rec.description := NULL;
294: END IF;
295: IF (l_inhv_rec.status = OKC_API.G_MISS_CHAR ) THEN
296: l_inhv_rec.status := NULL;
291: END IF;
292: IF (l_inhv_rec.description = OKC_API.G_MISS_CHAR ) THEN
293: l_inhv_rec.description := NULL;
294: END IF;
295: IF (l_inhv_rec.status = OKC_API.G_MISS_CHAR ) THEN
296: l_inhv_rec.status := NULL;
297: END IF;
298: IF (l_inhv_rec.task_name = OKC_API.G_MISS_CHAR ) THEN
299: l_inhv_rec.task_name := NULL;
294: END IF;
295: IF (l_inhv_rec.status = OKC_API.G_MISS_CHAR ) THEN
296: l_inhv_rec.status := NULL;
297: END IF;
298: IF (l_inhv_rec.task_name = OKC_API.G_MISS_CHAR ) THEN
299: l_inhv_rec.task_name := NULL;
300: END IF;
301: IF (l_inhv_rec.task_result = OKC_API.G_MISS_CHAR ) THEN
302: l_inhv_rec.task_result := NULL;
297: END IF;
298: IF (l_inhv_rec.task_name = OKC_API.G_MISS_CHAR ) THEN
299: l_inhv_rec.task_name := NULL;
300: END IF;
301: IF (l_inhv_rec.task_result = OKC_API.G_MISS_CHAR ) THEN
302: l_inhv_rec.task_result := NULL;
303: END IF;
304: IF (l_inhv_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
305: l_inhv_rec.creation_date := NULL;
300: END IF;
301: IF (l_inhv_rec.task_result = OKC_API.G_MISS_CHAR ) THEN
302: l_inhv_rec.task_result := NULL;
303: END IF;
304: IF (l_inhv_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
305: l_inhv_rec.creation_date := NULL;
306: END IF;
307: IF (l_inhv_rec.created_by = OKC_API.G_MISS_NUM ) THEN
308: l_inhv_rec.created_by := NULL;
303: END IF;
304: IF (l_inhv_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
305: l_inhv_rec.creation_date := NULL;
306: END IF;
307: IF (l_inhv_rec.created_by = OKC_API.G_MISS_NUM ) THEN
308: l_inhv_rec.created_by := NULL;
309: END IF;
310: IF (l_inhv_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
311: l_inhv_rec.last_update_date := NULL;
306: END IF;
307: IF (l_inhv_rec.created_by = OKC_API.G_MISS_NUM ) THEN
308: l_inhv_rec.created_by := NULL;
309: END IF;
310: IF (l_inhv_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
311: l_inhv_rec.last_update_date := NULL;
312: END IF;
313: IF (l_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
314: l_inhv_rec.last_updated_by := NULL;
309: END IF;
310: IF (l_inhv_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
311: l_inhv_rec.last_update_date := NULL;
312: END IF;
313: IF (l_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
314: l_inhv_rec.last_updated_by := NULL;
315: END IF;
316: IF (l_inhv_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
317: l_inhv_rec.last_update_login := NULL;
312: END IF;
313: IF (l_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
314: l_inhv_rec.last_updated_by := NULL;
315: END IF;
316: IF (l_inhv_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
317: l_inhv_rec.last_update_login := NULL;
318: END IF;
319: IF (l_inhv_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
320: l_inhv_rec.object_version_number := NULL;
315: END IF;
316: IF (l_inhv_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
317: l_inhv_rec.last_update_login := NULL;
318: END IF;
319: IF (l_inhv_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
320: l_inhv_rec.object_version_number := NULL;
321: END IF;
322: RETURN(l_inhv_rec);
323: END null_out_defaults;
327: PROCEDURE validate_id(
328: x_return_status OUT NOCOPY VARCHAR2,
329: p_id IN NUMBER) IS
330: BEGIN
331: x_return_status := OKC_API.G_RET_STS_SUCCESS;
332: IF (p_id = OKC_API.G_MISS_NUM OR
333: p_id IS NULL)
334: THEN
335: OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'id');
328: x_return_status OUT NOCOPY VARCHAR2,
329: p_id IN NUMBER) IS
330: BEGIN
331: x_return_status := OKC_API.G_RET_STS_SUCCESS;
332: IF (p_id = OKC_API.G_MISS_NUM OR
333: p_id IS NULL)
334: THEN
335: OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'id');
336: x_return_status := OKC_API.G_RET_STS_ERROR;
331: x_return_status := OKC_API.G_RET_STS_SUCCESS;
332: IF (p_id = OKC_API.G_MISS_NUM OR
333: p_id IS NULL)
334: THEN
335: OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'id');
336: x_return_status := OKC_API.G_RET_STS_ERROR;
337: RAISE G_EXCEPTION_HALT_VALIDATION;
338: END IF;
339: EXCEPTION
332: IF (p_id = OKC_API.G_MISS_NUM OR
333: p_id IS NULL)
334: THEN
335: OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'id');
336: x_return_status := OKC_API.G_RET_STS_ERROR;
337: RAISE G_EXCEPTION_HALT_VALIDATION;
338: END IF;
339: EXCEPTION
340: WHEN G_EXCEPTION_HALT_VALIDATION THEN
339: EXCEPTION
340: WHEN G_EXCEPTION_HALT_VALIDATION THEN
341: null;
342: WHEN OTHERS THEN
343: OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
344: ,p_msg_name => G_UNEXPECTED_ERROR
345: ,p_token1 => G_SQLCODE_TOKEN
346: ,p_token1_value => SQLCODE
347: ,p_token2 => G_SQLERRM_TOKEN
345: ,p_token1 => G_SQLCODE_TOKEN
346: ,p_token1_value => SQLCODE
347: ,p_token2 => G_SQLERRM_TOKEN
348: ,p_token2_value => SQLERRM);
349: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
350: END validate_id;
351: ---------------------------------------------------------------------------
352: -- FUNCTION Validate_Attributes
353: ---------------------------------------------------------------------------
356: ----------------------------------------------------
357: FUNCTION Validate_Attributes (
358: p_inhv_rec IN inhv_rec_type
359: ) RETURN VARCHAR2 IS
360: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
361: x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
362: BEGIN
363: -----------------------------
364: -- Column Level Validation --
357: FUNCTION Validate_Attributes (
358: p_inhv_rec IN inhv_rec_type
359: ) RETURN VARCHAR2 IS
360: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
361: x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
362: BEGIN
363: -----------------------------
364: -- Column Level Validation --
365: -----------------------------
366: -- ***
367: -- id
368: -- ***
369: validate_id(x_return_status, p_inhv_rec.id);
370: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
371: l_return_status := x_return_status;
372: RAISE G_EXCEPTION_HALT_VALIDATION;
373: END IF;
374:
376: EXCEPTION
377: WHEN G_EXCEPTION_HALT_VALIDATION THEN
378: RETURN(l_return_status);
379: WHEN OTHERS THEN
380: OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
381: ,p_msg_name => G_UNEXPECTED_ERROR
382: ,p_token1 => G_SQLCODE_TOKEN
383: ,p_token1_value => SQLCODE
384: ,p_token2 => G_SQLERRM_TOKEN
382: ,p_token1 => G_SQLCODE_TOKEN
383: ,p_token1_value => SQLCODE
384: ,p_token2 => G_SQLERRM_TOKEN
385: ,p_token2_value => SQLERRM);
386: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
387: RETURN(l_return_status);
388: END Validate_Attributes;
389: ---------------------------------------------------------------------------
390: -- PROCEDURE Validate_Record
395: FUNCTION Validate_Record (
396: p_inhv_rec IN inhv_rec_type,
397: p_db_inhv_rec IN inhv_rec_type
398: ) RETURN VARCHAR2 IS
399: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
400: BEGIN
401: RETURN (l_return_status);
402: END Validate_Record;
403: FUNCTION Validate_Record (
402: END Validate_Record;
403: FUNCTION Validate_Record (
404: p_inhv_rec IN inhv_rec_type
405: ) RETURN VARCHAR2 IS
406: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
407: l_db_inhv_rec inhv_rec_type := get_rec(p_inhv_rec);
408: BEGIN
409: l_return_status := Validate_Record(p_inhv_rec => p_inhv_rec,
410: p_db_inhv_rec => l_db_inhv_rec);
467: -- validate_row for:OKS_INTERACTION_HIST_V --
468: ---------------------------------------------
469: PROCEDURE validate_row(
470: p_api_version IN NUMBER,
471: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
472: x_return_status OUT NOCOPY VARCHAR2,
473: x_msg_count OUT NOCOPY NUMBER,
474: x_msg_data OUT NOCOPY VARCHAR2,
475: p_inhv_rec IN inhv_rec_type) IS
475: p_inhv_rec IN inhv_rec_type) IS
476:
477: l_api_version CONSTANT NUMBER := 1;
478: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
479: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
480: l_inhv_rec inhv_rec_type := p_inhv_rec;
481: l_inh_rec inh_rec_type;
482: l_inh_rec inh_rec_type;
483: BEGIN
480: l_inhv_rec inhv_rec_type := p_inhv_rec;
481: l_inh_rec inh_rec_type;
482: l_inh_rec inh_rec_type;
483: BEGIN
484: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
485: G_PKG_NAME,
486: p_init_msg_list,
487: l_api_version,
488: p_api_version,
487: l_api_version,
488: p_api_version,
489: '_PVT',
490: x_return_status);
491: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
492: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
493: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
494: RAISE OKC_API.G_EXCEPTION_ERROR;
495: END IF;
488: p_api_version,
489: '_PVT',
490: x_return_status);
491: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
492: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
493: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
494: RAISE OKC_API.G_EXCEPTION_ERROR;
495: END IF;
496: --- Validate all non-missing attributes (Item Level Validation)
489: '_PVT',
490: x_return_status);
491: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
492: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
493: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
494: RAISE OKC_API.G_EXCEPTION_ERROR;
495: END IF;
496: --- Validate all non-missing attributes (Item Level Validation)
497: l_return_status := Validate_Attributes(l_inhv_rec);
490: x_return_status);
491: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
492: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
493: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
494: RAISE OKC_API.G_EXCEPTION_ERROR;
495: END IF;
496: --- Validate all non-missing attributes (Item Level Validation)
497: l_return_status := Validate_Attributes(l_inhv_rec);
498: --- If any errors happen abort API
495: END IF;
496: --- Validate all non-missing attributes (Item Level Validation)
497: l_return_status := Validate_Attributes(l_inhv_rec);
498: --- If any errors happen abort API
499: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
500: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
501: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
496: --- Validate all non-missing attributes (Item Level Validation)
497: l_return_status := Validate_Attributes(l_inhv_rec);
498: --- If any errors happen abort API
499: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
500: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
501: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
497: l_return_status := Validate_Attributes(l_inhv_rec);
498: --- If any errors happen abort API
499: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
500: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
501: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
498: --- If any errors happen abort API
499: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
500: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
501: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
501: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
507: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
508: RAISE OKC_API.G_EXCEPTION_ERROR;
509: END IF;
502: RAISE OKC_API.G_EXCEPTION_ERROR;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
507: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
508: RAISE OKC_API.G_EXCEPTION_ERROR;
509: END IF;
510: x_return_status := l_return_status;
503: END IF;
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
507: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
508: RAISE OKC_API.G_EXCEPTION_ERROR;
509: END IF;
510: x_return_status := l_return_status;
511: EXCEPTION
504: l_return_status := Validate_Record(l_inhv_rec);
505: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
507: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
508: RAISE OKC_API.G_EXCEPTION_ERROR;
509: END IF;
510: x_return_status := l_return_status;
511: EXCEPTION
512: WHEN OKC_API.G_EXCEPTION_ERROR THEN
508: RAISE OKC_API.G_EXCEPTION_ERROR;
509: END IF;
510: x_return_status := l_return_status;
511: EXCEPTION
512: WHEN OKC_API.G_EXCEPTION_ERROR THEN
513: x_return_status := OKC_API.HANDLE_EXCEPTIONS
514: (
515: l_api_name,
516: G_PKG_NAME,
509: END IF;
510: x_return_status := l_return_status;
511: EXCEPTION
512: WHEN OKC_API.G_EXCEPTION_ERROR THEN
513: x_return_status := OKC_API.HANDLE_EXCEPTIONS
514: (
515: l_api_name,
516: G_PKG_NAME,
517: 'OKC_API.G_RET_STS_ERROR',
513: x_return_status := OKC_API.HANDLE_EXCEPTIONS
514: (
515: l_api_name,
516: G_PKG_NAME,
517: 'OKC_API.G_RET_STS_ERROR',
518: x_msg_count,
519: x_msg_data,
520: '_PVT'
521: );
518: x_msg_count,
519: x_msg_data,
520: '_PVT'
521: );
522: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
523: x_return_status := OKC_API.HANDLE_EXCEPTIONS
524: (
525: l_api_name,
526: G_PKG_NAME,
519: x_msg_data,
520: '_PVT'
521: );
522: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
523: x_return_status := OKC_API.HANDLE_EXCEPTIONS
524: (
525: l_api_name,
526: G_PKG_NAME,
527: 'OKC_API.G_RET_STS_UNEXP_ERROR',
523: x_return_status := OKC_API.HANDLE_EXCEPTIONS
524: (
525: l_api_name,
526: G_PKG_NAME,
527: 'OKC_API.G_RET_STS_UNEXP_ERROR',
528: x_msg_count,
529: x_msg_data,
530: '_PVT'
531: );
529: x_msg_data,
530: '_PVT'
531: );
532: WHEN OTHERS THEN
533: x_return_status := OKC_API.HANDLE_EXCEPTIONS
534: (
535: l_api_name,
536: G_PKG_NAME,
537: 'OTHERS',
544: -- PL/SQL TBL validate_row for:OKS_INTERACTION_HIST_V --
545: --------------------------------------------------------
546: PROCEDURE validate_row(
547: p_api_version IN NUMBER,
548: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
549: x_return_status OUT NOCOPY VARCHAR2,
550: x_msg_count OUT NOCOPY NUMBER,
551: x_msg_data OUT NOCOPY VARCHAR2,
552: p_inhv_tbl IN inhv_tbl_type,
549: x_return_status OUT NOCOPY VARCHAR2,
550: x_msg_count OUT NOCOPY NUMBER,
551: x_msg_data OUT NOCOPY VARCHAR2,
552: p_inhv_tbl IN inhv_tbl_type,
553: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
554:
555: l_api_version CONSTANT NUMBER := 1;
556: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
557: i NUMBER := 0;
555: l_api_version CONSTANT NUMBER := 1;
556: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
557: i NUMBER := 0;
558: BEGIN
559: OKC_API.init_msg_list(p_init_msg_list);
560: -- Make sure PL/SQL table has records in it before passing
561: IF (p_inhv_tbl.COUNT > 0) THEN
562: i := p_inhv_tbl.FIRST;
563: LOOP
561: IF (p_inhv_tbl.COUNT > 0) THEN
562: i := p_inhv_tbl.FIRST;
563: LOOP
564: DECLARE
565: l_error_rec OKC_API.ERROR_REC_TYPE;
566: BEGIN
567: l_error_rec.api_name := l_api_name;
568: l_error_rec.api_package := G_PKG_NAME;
569: l_error_rec.idx := i;
568: l_error_rec.api_package := G_PKG_NAME;
569: l_error_rec.idx := i;
570: validate_row (
571: p_api_version => p_api_version,
572: p_init_msg_list => OKC_API.G_FALSE,
573: x_return_status => l_error_rec.error_type,
574: x_msg_count => l_error_rec.msg_count,
575: x_msg_data => l_error_rec.msg_data,
576: p_inhv_rec => p_inhv_tbl(i));
573: x_return_status => l_error_rec.error_type,
574: x_msg_count => l_error_rec.msg_count,
575: x_msg_data => l_error_rec.msg_data,
576: p_inhv_rec => p_inhv_tbl(i));
577: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
578: l_error_rec.sqlcode := SQLCODE;
579: load_error_tbl(l_error_rec, px_error_tbl);
580: ELSE
581: x_msg_count := l_error_rec.msg_count;
581: x_msg_count := l_error_rec.msg_count;
582: x_msg_data := l_error_rec.msg_data;
583: END IF;
584: EXCEPTION
585: WHEN OKC_API.G_EXCEPTION_ERROR THEN
586: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
587: l_error_rec.sqlcode := SQLCODE;
588: load_error_tbl(l_error_rec, px_error_tbl);
589: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
582: x_msg_data := l_error_rec.msg_data;
583: END IF;
584: EXCEPTION
585: WHEN OKC_API.G_EXCEPTION_ERROR THEN
586: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
587: l_error_rec.sqlcode := SQLCODE;
588: load_error_tbl(l_error_rec, px_error_tbl);
589: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
590: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
585: WHEN OKC_API.G_EXCEPTION_ERROR THEN
586: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
587: l_error_rec.sqlcode := SQLCODE;
588: load_error_tbl(l_error_rec, px_error_tbl);
589: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
590: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
591: l_error_rec.sqlcode := SQLCODE;
592: load_error_tbl(l_error_rec, px_error_tbl);
593: WHEN OTHERS THEN
586: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
587: l_error_rec.sqlcode := SQLCODE;
588: load_error_tbl(l_error_rec, px_error_tbl);
589: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
590: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
591: l_error_rec.sqlcode := SQLCODE;
592: load_error_tbl(l_error_rec, px_error_tbl);
593: WHEN OTHERS THEN
594: l_error_rec.error_type := 'OTHERS';
601: END IF;
602: -- Loop through the error_tbl to find the error with the highest severity
603: -- and return it.
604: x_return_status := find_highest_exception(px_error_tbl);
605: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
606: EXCEPTION
607: WHEN OKC_API.G_EXCEPTION_ERROR THEN
608: x_return_status := OKC_API.HANDLE_EXCEPTIONS
609: (
603: -- and return it.
604: x_return_status := find_highest_exception(px_error_tbl);
605: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
606: EXCEPTION
607: WHEN OKC_API.G_EXCEPTION_ERROR THEN
608: x_return_status := OKC_API.HANDLE_EXCEPTIONS
609: (
610: l_api_name,
611: G_PKG_NAME,
604: x_return_status := find_highest_exception(px_error_tbl);
605: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
606: EXCEPTION
607: WHEN OKC_API.G_EXCEPTION_ERROR THEN
608: x_return_status := OKC_API.HANDLE_EXCEPTIONS
609: (
610: l_api_name,
611: G_PKG_NAME,
612: 'OKC_API.G_RET_STS_ERROR',
608: x_return_status := OKC_API.HANDLE_EXCEPTIONS
609: (
610: l_api_name,
611: G_PKG_NAME,
612: 'OKC_API.G_RET_STS_ERROR',
613: x_msg_count,
614: x_msg_data,
615: '_PVT'
616: );
613: x_msg_count,
614: x_msg_data,
615: '_PVT'
616: );
617: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
618: x_return_status := OKC_API.HANDLE_EXCEPTIONS
619: (
620: l_api_name,
621: G_PKG_NAME,
614: x_msg_data,
615: '_PVT'
616: );
617: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
618: x_return_status := OKC_API.HANDLE_EXCEPTIONS
619: (
620: l_api_name,
621: G_PKG_NAME,
622: 'OKC_API.G_RET_STS_UNEXP_ERROR',
618: x_return_status := OKC_API.HANDLE_EXCEPTIONS
619: (
620: l_api_name,
621: G_PKG_NAME,
622: 'OKC_API.G_RET_STS_UNEXP_ERROR',
623: x_msg_count,
624: x_msg_data,
625: '_PVT'
626: );
624: x_msg_data,
625: '_PVT'
626: );
627: WHEN OTHERS THEN
628: x_return_status := OKC_API.HANDLE_EXCEPTIONS
629: (
630: l_api_name,
631: G_PKG_NAME,
632: 'OTHERS',
640: -- PL/SQL TBL validate_row for:OKS_INTERACTION_HIST_V --
641: --------------------------------------------------------
642: PROCEDURE validate_row(
643: p_api_version IN NUMBER,
644: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
645: x_return_status OUT NOCOPY VARCHAR2,
646: x_msg_count OUT NOCOPY NUMBER,
647: x_msg_data OUT NOCOPY VARCHAR2,
648: p_inhv_tbl IN inhv_tbl_type) IS
648: p_inhv_tbl IN inhv_tbl_type) IS
649:
650: l_api_version CONSTANT NUMBER := 1;
651: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
652: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
653: l_error_tbl OKC_API.ERROR_TBL_TYPE;
654: BEGIN
655: OKC_API.init_msg_list(p_init_msg_list);
656: -- Make sure PL/SQL table has records in it before passing
649:
650: l_api_version CONSTANT NUMBER := 1;
651: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
652: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
653: l_error_tbl OKC_API.ERROR_TBL_TYPE;
654: BEGIN
655: OKC_API.init_msg_list(p_init_msg_list);
656: -- Make sure PL/SQL table has records in it before passing
657: IF (p_inhv_tbl.COUNT > 0) THEN
651: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
652: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
653: l_error_tbl OKC_API.ERROR_TBL_TYPE;
654: BEGIN
655: OKC_API.init_msg_list(p_init_msg_list);
656: -- Make sure PL/SQL table has records in it before passing
657: IF (p_inhv_tbl.COUNT > 0) THEN
658: validate_row (
659: p_api_version => p_api_version,
656: -- Make sure PL/SQL table has records in it before passing
657: IF (p_inhv_tbl.COUNT > 0) THEN
658: validate_row (
659: p_api_version => p_api_version,
660: p_init_msg_list => OKC_API.G_FALSE,
661: x_return_status => x_return_status,
662: x_msg_count => x_msg_count,
663: x_msg_data => x_msg_data,
664: p_inhv_tbl => p_inhv_tbl,
663: x_msg_data => x_msg_data,
664: p_inhv_tbl => p_inhv_tbl,
665: px_error_tbl => l_error_tbl);
666: END IF;
667: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
668: EXCEPTION
669: WHEN OKC_API.G_EXCEPTION_ERROR THEN
670: x_return_status := OKC_API.HANDLE_EXCEPTIONS
671: (
665: px_error_tbl => l_error_tbl);
666: END IF;
667: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
668: EXCEPTION
669: WHEN OKC_API.G_EXCEPTION_ERROR THEN
670: x_return_status := OKC_API.HANDLE_EXCEPTIONS
671: (
672: l_api_name,
673: G_PKG_NAME,
666: END IF;
667: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
668: EXCEPTION
669: WHEN OKC_API.G_EXCEPTION_ERROR THEN
670: x_return_status := OKC_API.HANDLE_EXCEPTIONS
671: (
672: l_api_name,
673: G_PKG_NAME,
674: 'OKC_API.G_RET_STS_ERROR',
670: x_return_status := OKC_API.HANDLE_EXCEPTIONS
671: (
672: l_api_name,
673: G_PKG_NAME,
674: 'OKC_API.G_RET_STS_ERROR',
675: x_msg_count,
676: x_msg_data,
677: '_PVT'
678: );
675: x_msg_count,
676: x_msg_data,
677: '_PVT'
678: );
679: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
680: x_return_status := OKC_API.HANDLE_EXCEPTIONS
681: (
682: l_api_name,
683: G_PKG_NAME,
676: x_msg_data,
677: '_PVT'
678: );
679: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
680: x_return_status := OKC_API.HANDLE_EXCEPTIONS
681: (
682: l_api_name,
683: G_PKG_NAME,
684: 'OKC_API.G_RET_STS_UNEXP_ERROR',
680: x_return_status := OKC_API.HANDLE_EXCEPTIONS
681: (
682: l_api_name,
683: G_PKG_NAME,
684: 'OKC_API.G_RET_STS_UNEXP_ERROR',
685: x_msg_count,
686: x_msg_data,
687: '_PVT'
688: );
686: x_msg_data,
687: '_PVT'
688: );
689: WHEN OTHERS THEN
690: x_return_status := OKC_API.HANDLE_EXCEPTIONS
691: (
692: l_api_name,
693: G_PKG_NAME,
694: 'OTHERS',
704: --------------------------------------------
705: -- insert_row for:OKS_INTERACTION_HISTORY --
706: --------------------------------------------
707: PROCEDURE insert_row(
708: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
709: x_return_status OUT NOCOPY VARCHAR2,
710: x_msg_count OUT NOCOPY NUMBER,
711: x_msg_data OUT NOCOPY VARCHAR2,
712: p_inh_rec IN inh_rec_type,
713: x_inh_rec OUT NOCOPY inh_rec_type) IS
714:
715: l_api_version CONSTANT NUMBER := 1;
716: l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
717: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
718: l_inh_rec inh_rec_type := p_inh_rec;
719: l_def_inh_rec inh_rec_type;
720: ------------------------------------------------
721: -- Set_Attributes for:OKS_INTERACTION_HISTORY --
723: FUNCTION Set_Attributes (
724: p_inh_rec IN inh_rec_type,
725: x_inh_rec OUT NOCOPY inh_rec_type
726: ) RETURN VARCHAR2 IS
727: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
728: BEGIN
729: x_inh_rec := p_inh_rec;
730: RETURN(l_return_status);
731: END Set_Attributes;
729: x_inh_rec := p_inh_rec;
730: RETURN(l_return_status);
731: END Set_Attributes;
732: BEGIN
733: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
734: p_init_msg_list,
735: '_PVT',
736: x_return_status);
737: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
733: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
734: p_init_msg_list,
735: '_PVT',
736: x_return_status);
737: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
738: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
739: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
740: RAISE OKC_API.G_EXCEPTION_ERROR;
741: END IF;
734: p_init_msg_list,
735: '_PVT',
736: x_return_status);
737: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
738: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
739: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
740: RAISE OKC_API.G_EXCEPTION_ERROR;
741: END IF;
742: --- Setting item atributes
735: '_PVT',
736: x_return_status);
737: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
738: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
739: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
740: RAISE OKC_API.G_EXCEPTION_ERROR;
741: END IF;
742: --- Setting item atributes
743: l_return_status := Set_Attributes(
736: x_return_status);
737: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
738: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
739: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
740: RAISE OKC_API.G_EXCEPTION_ERROR;
741: END IF;
742: --- Setting item atributes
743: l_return_status := Set_Attributes(
744: p_inh_rec, -- IN
743: l_return_status := Set_Attributes(
744: p_inh_rec, -- IN
745: l_inh_rec); -- OUT
746: --- If any errors happen abort API
747: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
748: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
749: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
750: RAISE OKC_API.G_EXCEPTION_ERROR;
751: END IF;
744: p_inh_rec, -- IN
745: l_inh_rec); -- OUT
746: --- If any errors happen abort API
747: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
748: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
749: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
750: RAISE OKC_API.G_EXCEPTION_ERROR;
751: END IF;
752: INSERT INTO OKS_INTERACTION_HISTORY(
745: l_inh_rec); -- OUT
746: --- If any errors happen abort API
747: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
748: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
749: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
750: RAISE OKC_API.G_EXCEPTION_ERROR;
751: END IF;
752: INSERT INTO OKS_INTERACTION_HISTORY(
753: id,
746: --- If any errors happen abort API
747: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
748: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
749: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
750: RAISE OKC_API.G_EXCEPTION_ERROR;
751: END IF;
752: INSERT INTO OKS_INTERACTION_HISTORY(
753: id,
754: chr_id,
787: l_inh_rec.object_version_number);
788: -- Set OUT values
789: x_inh_rec := l_inh_rec;
790: x_return_status := l_return_status;
791: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
792: EXCEPTION
793: WHEN OKC_API.G_EXCEPTION_ERROR THEN
794: x_return_status := OKC_API.HANDLE_EXCEPTIONS
795: (
789: x_inh_rec := l_inh_rec;
790: x_return_status := l_return_status;
791: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
792: EXCEPTION
793: WHEN OKC_API.G_EXCEPTION_ERROR THEN
794: x_return_status := OKC_API.HANDLE_EXCEPTIONS
795: (
796: l_api_name,
797: G_PKG_NAME,
790: x_return_status := l_return_status;
791: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
792: EXCEPTION
793: WHEN OKC_API.G_EXCEPTION_ERROR THEN
794: x_return_status := OKC_API.HANDLE_EXCEPTIONS
795: (
796: l_api_name,
797: G_PKG_NAME,
798: 'OKC_API.G_RET_STS_ERROR',
794: x_return_status := OKC_API.HANDLE_EXCEPTIONS
795: (
796: l_api_name,
797: G_PKG_NAME,
798: 'OKC_API.G_RET_STS_ERROR',
799: x_msg_count,
800: x_msg_data,
801: '_PVT'
802: );
799: x_msg_count,
800: x_msg_data,
801: '_PVT'
802: );
803: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
804: x_return_status := OKC_API.HANDLE_EXCEPTIONS
805: (
806: l_api_name,
807: G_PKG_NAME,
800: x_msg_data,
801: '_PVT'
802: );
803: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
804: x_return_status := OKC_API.HANDLE_EXCEPTIONS
805: (
806: l_api_name,
807: G_PKG_NAME,
808: 'OKC_API.G_RET_STS_UNEXP_ERROR',
804: x_return_status := OKC_API.HANDLE_EXCEPTIONS
805: (
806: l_api_name,
807: G_PKG_NAME,
808: 'OKC_API.G_RET_STS_UNEXP_ERROR',
809: x_msg_count,
810: x_msg_data,
811: '_PVT'
812: );
810: x_msg_data,
811: '_PVT'
812: );
813: WHEN OTHERS THEN
814: x_return_status := OKC_API.HANDLE_EXCEPTIONS
815: (
816: l_api_name,
817: G_PKG_NAME,
818: 'OTHERS',
825: -- insert_row for :OKS_INTERACTION_HIST_V --
826: --------------------------------------------
827: PROCEDURE insert_row(
828: p_api_version IN NUMBER,
829: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
830: x_return_status OUT NOCOPY VARCHAR2,
831: x_msg_count OUT NOCOPY NUMBER,
832: x_msg_data OUT NOCOPY VARCHAR2,
833: p_inhv_rec IN inhv_rec_type,
834: x_inhv_rec OUT NOCOPY inhv_rec_type) IS
835:
836: l_api_version CONSTANT NUMBER := 1;
837: l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
838: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
839: l_inhv_rec inhv_rec_type := p_inhv_rec;
840: l_def_inhv_rec inhv_rec_type;
841: l_inh_rec inh_rec_type;
842: lx_inh_rec inh_rec_type;
861: FUNCTION Set_Attributes (
862: p_inhv_rec IN inhv_rec_type,
863: x_inhv_rec OUT NOCOPY inhv_rec_type
864: ) RETURN VARCHAR2 IS
865: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
866: BEGIN
867: x_inhv_rec := p_inhv_rec;
868: x_inhv_rec.OBJECT_VERSION_NUMBER := 1;
869: RETURN(l_return_status);
868: x_inhv_rec.OBJECT_VERSION_NUMBER := 1;
869: RETURN(l_return_status);
870: END Set_Attributes;
871: BEGIN
872: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
873: G_PKG_NAME,
874: p_init_msg_list,
875: l_api_version,
876: p_api_version,
875: l_api_version,
876: p_api_version,
877: '_PVT',
878: x_return_status);
879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
882: RAISE OKC_API.G_EXCEPTION_ERROR;
883: END IF;
876: p_api_version,
877: '_PVT',
878: x_return_status);
879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
882: RAISE OKC_API.G_EXCEPTION_ERROR;
883: END IF;
884: l_inhv_rec := null_out_defaults(p_inhv_rec);
877: '_PVT',
878: x_return_status);
879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
882: RAISE OKC_API.G_EXCEPTION_ERROR;
883: END IF;
884: l_inhv_rec := null_out_defaults(p_inhv_rec);
885: -- Set primary key value
878: x_return_status);
879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
882: RAISE OKC_API.G_EXCEPTION_ERROR;
883: END IF;
884: l_inhv_rec := null_out_defaults(p_inhv_rec);
885: -- Set primary key value
886: l_inhv_rec.ID := get_seq_id;
888: l_return_Status := Set_Attributes(
889: l_inhv_rec, -- IN
890: l_def_inhv_rec); -- OUT
891: --- If any errors happen abort API
892: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
893: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
894: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
895: RAISE OKC_API.G_EXCEPTION_ERROR;
896: END IF;
889: l_inhv_rec, -- IN
890: l_def_inhv_rec); -- OUT
891: --- If any errors happen abort API
892: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
893: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
894: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
895: RAISE OKC_API.G_EXCEPTION_ERROR;
896: END IF;
897: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
890: l_def_inhv_rec); -- OUT
891: --- If any errors happen abort API
892: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
893: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
894: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
895: RAISE OKC_API.G_EXCEPTION_ERROR;
896: END IF;
897: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
898: --- Validate all non-missing attributes (Item Level Validation)
891: --- If any errors happen abort API
892: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
893: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
894: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
895: RAISE OKC_API.G_EXCEPTION_ERROR;
896: END IF;
897: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
898: --- Validate all non-missing attributes (Item Level Validation)
899: l_return_status := Validate_Attributes(l_def_inhv_rec);
897: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
898: --- Validate all non-missing attributes (Item Level Validation)
899: l_return_status := Validate_Attributes(l_def_inhv_rec);
900: --- If any errors happen abort API
901: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
902: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
903: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
898: --- Validate all non-missing attributes (Item Level Validation)
899: l_return_status := Validate_Attributes(l_def_inhv_rec);
900: --- If any errors happen abort API
901: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
902: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
903: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
899: l_return_status := Validate_Attributes(l_def_inhv_rec);
900: --- If any errors happen abort API
901: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
902: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
903: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
900: --- If any errors happen abort API
901: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
902: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
903: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
908: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
903: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
908: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
909: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
910: RAISE OKC_API.G_EXCEPTION_ERROR;
911: END IF;
904: RAISE OKC_API.G_EXCEPTION_ERROR;
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
908: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
909: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
910: RAISE OKC_API.G_EXCEPTION_ERROR;
911: END IF;
912: -----------------------------------------
905: END IF;
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
908: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
909: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
910: RAISE OKC_API.G_EXCEPTION_ERROR;
911: END IF;
912: -----------------------------------------
913: -- Move VIEW record to "Child" records --
906: l_return_status := Validate_Record(l_def_inhv_rec);
907: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
908: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
909: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
910: RAISE OKC_API.G_EXCEPTION_ERROR;
911: END IF;
912: -----------------------------------------
913: -- Move VIEW record to "Child" records --
914: -----------------------------------------
923: x_msg_data,
924: l_inh_rec,
925: lx_inh_rec
926: );
927: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
928: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
929: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
930: RAISE OKC_API.G_EXCEPTION_ERROR;
931: END IF;
924: l_inh_rec,
925: lx_inh_rec
926: );
927: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
928: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
929: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
930: RAISE OKC_API.G_EXCEPTION_ERROR;
931: END IF;
932: migrate(lx_inh_rec, l_def_inhv_rec);
925: lx_inh_rec
926: );
927: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
928: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
929: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
930: RAISE OKC_API.G_EXCEPTION_ERROR;
931: END IF;
932: migrate(lx_inh_rec, l_def_inhv_rec);
933: -- Set OUT values
926: );
927: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
928: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
929: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
930: RAISE OKC_API.G_EXCEPTION_ERROR;
931: END IF;
932: migrate(lx_inh_rec, l_def_inhv_rec);
933: -- Set OUT values
934: x_inhv_rec := l_def_inhv_rec;
932: migrate(lx_inh_rec, l_def_inhv_rec);
933: -- Set OUT values
934: x_inhv_rec := l_def_inhv_rec;
935: x_return_status := l_return_status;
936: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
937: EXCEPTION
938: WHEN OKC_API.G_EXCEPTION_ERROR THEN
939: x_return_status := OKC_API.HANDLE_EXCEPTIONS
940: (
934: x_inhv_rec := l_def_inhv_rec;
935: x_return_status := l_return_status;
936: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
937: EXCEPTION
938: WHEN OKC_API.G_EXCEPTION_ERROR THEN
939: x_return_status := OKC_API.HANDLE_EXCEPTIONS
940: (
941: l_api_name,
942: G_PKG_NAME,
935: x_return_status := l_return_status;
936: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
937: EXCEPTION
938: WHEN OKC_API.G_EXCEPTION_ERROR THEN
939: x_return_status := OKC_API.HANDLE_EXCEPTIONS
940: (
941: l_api_name,
942: G_PKG_NAME,
943: 'OKC_API.G_RET_STS_ERROR',
939: x_return_status := OKC_API.HANDLE_EXCEPTIONS
940: (
941: l_api_name,
942: G_PKG_NAME,
943: 'OKC_API.G_RET_STS_ERROR',
944: x_msg_count,
945: x_msg_data,
946: '_PVT'
947: );
944: x_msg_count,
945: x_msg_data,
946: '_PVT'
947: );
948: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
949: x_return_status := OKC_API.HANDLE_EXCEPTIONS
950: (
951: l_api_name,
952: G_PKG_NAME,
945: x_msg_data,
946: '_PVT'
947: );
948: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
949: x_return_status := OKC_API.HANDLE_EXCEPTIONS
950: (
951: l_api_name,
952: G_PKG_NAME,
953: 'OKC_API.G_RET_STS_UNEXP_ERROR',
949: x_return_status := OKC_API.HANDLE_EXCEPTIONS
950: (
951: l_api_name,
952: G_PKG_NAME,
953: 'OKC_API.G_RET_STS_UNEXP_ERROR',
954: x_msg_count,
955: x_msg_data,
956: '_PVT'
957: );
955: x_msg_data,
956: '_PVT'
957: );
958: WHEN OTHERS THEN
959: x_return_status := OKC_API.HANDLE_EXCEPTIONS
960: (
961: l_api_name,
962: G_PKG_NAME,
963: 'OTHERS',
970: -- PL/SQL TBL insert_row for:INHV_TBL --
971: ----------------------------------------
972: PROCEDURE insert_row(
973: p_api_version IN NUMBER,
974: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
975: x_return_status OUT NOCOPY VARCHAR2,
976: x_msg_count OUT NOCOPY NUMBER,
977: x_msg_data OUT NOCOPY VARCHAR2,
978: p_inhv_tbl IN inhv_tbl_type,
976: x_msg_count OUT NOCOPY NUMBER,
977: x_msg_data OUT NOCOPY VARCHAR2,
978: p_inhv_tbl IN inhv_tbl_type,
979: x_inhv_tbl OUT NOCOPY inhv_tbl_type,
980: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
981:
982: l_api_version CONSTANT NUMBER := 1;
983: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_insert_row';
984: i NUMBER := 0;
982: l_api_version CONSTANT NUMBER := 1;
983: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_insert_row';
984: i NUMBER := 0;
985: BEGIN
986: OKC_API.init_msg_list(p_init_msg_list);
987: -- Make sure PL/SQL table has records in it before passing
988: IF (p_inhv_tbl.COUNT > 0) THEN
989: i := p_inhv_tbl.FIRST;
990: LOOP
988: IF (p_inhv_tbl.COUNT > 0) THEN
989: i := p_inhv_tbl.FIRST;
990: LOOP
991: DECLARE
992: l_error_rec OKC_API.ERROR_REC_TYPE;
993: BEGIN
994: l_error_rec.api_name := l_api_name;
995: l_error_rec.api_package := G_PKG_NAME;
996: l_error_rec.idx := i;
995: l_error_rec.api_package := G_PKG_NAME;
996: l_error_rec.idx := i;
997: insert_row (
998: p_api_version => p_api_version,
999: p_init_msg_list => OKC_API.G_FALSE,
1000: x_return_status => l_error_rec.error_type,
1001: x_msg_count => l_error_rec.msg_count,
1002: x_msg_data => l_error_rec.msg_data,
1003: p_inhv_rec => p_inhv_tbl(i),
1001: x_msg_count => l_error_rec.msg_count,
1002: x_msg_data => l_error_rec.msg_data,
1003: p_inhv_rec => p_inhv_tbl(i),
1004: x_inhv_rec => x_inhv_tbl(i));
1005: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1006: l_error_rec.sqlcode := SQLCODE;
1007: load_error_tbl(l_error_rec, px_error_tbl);
1008: ELSE
1009: x_msg_count := l_error_rec.msg_count;
1009: x_msg_count := l_error_rec.msg_count;
1010: x_msg_data := l_error_rec.msg_data;
1011: END IF;
1012: EXCEPTION
1013: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1014: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1015: l_error_rec.sqlcode := SQLCODE;
1016: load_error_tbl(l_error_rec, px_error_tbl);
1017: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1010: x_msg_data := l_error_rec.msg_data;
1011: END IF;
1012: EXCEPTION
1013: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1014: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1015: l_error_rec.sqlcode := SQLCODE;
1016: load_error_tbl(l_error_rec, px_error_tbl);
1017: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1018: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1013: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1014: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1015: l_error_rec.sqlcode := SQLCODE;
1016: load_error_tbl(l_error_rec, px_error_tbl);
1017: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1018: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1019: l_error_rec.sqlcode := SQLCODE;
1020: load_error_tbl(l_error_rec, px_error_tbl);
1021: WHEN OTHERS THEN
1014: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1015: l_error_rec.sqlcode := SQLCODE;
1016: load_error_tbl(l_error_rec, px_error_tbl);
1017: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1018: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1019: l_error_rec.sqlcode := SQLCODE;
1020: load_error_tbl(l_error_rec, px_error_tbl);
1021: WHEN OTHERS THEN
1022: l_error_rec.error_type := 'OTHERS';
1029: END IF;
1030: -- Loop through the error_tbl to find the error with the highest severity
1031: -- and return it.
1032: x_return_status := find_highest_exception(px_error_tbl);
1033: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1034: EXCEPTION
1035: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1036: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1037: (
1031: -- and return it.
1032: x_return_status := find_highest_exception(px_error_tbl);
1033: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1034: EXCEPTION
1035: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1036: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1037: (
1038: l_api_name,
1039: G_PKG_NAME,
1032: x_return_status := find_highest_exception(px_error_tbl);
1033: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1034: EXCEPTION
1035: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1036: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1037: (
1038: l_api_name,
1039: G_PKG_NAME,
1040: 'OKC_API.G_RET_STS_ERROR',
1036: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1037: (
1038: l_api_name,
1039: G_PKG_NAME,
1040: 'OKC_API.G_RET_STS_ERROR',
1041: x_msg_count,
1042: x_msg_data,
1043: '_PVT'
1044: );
1041: x_msg_count,
1042: x_msg_data,
1043: '_PVT'
1044: );
1045: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1046: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1047: (
1048: l_api_name,
1049: G_PKG_NAME,
1042: x_msg_data,
1043: '_PVT'
1044: );
1045: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1046: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1047: (
1048: l_api_name,
1049: G_PKG_NAME,
1050: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1046: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1047: (
1048: l_api_name,
1049: G_PKG_NAME,
1050: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1051: x_msg_count,
1052: x_msg_data,
1053: '_PVT'
1054: );
1052: x_msg_data,
1053: '_PVT'
1054: );
1055: WHEN OTHERS THEN
1056: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1057: (
1058: l_api_name,
1059: G_PKG_NAME,
1060: 'OTHERS',
1068: -- PL/SQL TBL insert_row for:INHV_TBL --
1069: ----------------------------------------
1070: PROCEDURE insert_row(
1071: p_api_version IN NUMBER,
1072: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1073: x_return_status OUT NOCOPY VARCHAR2,
1074: x_msg_count OUT NOCOPY NUMBER,
1075: x_msg_data OUT NOCOPY VARCHAR2,
1076: p_inhv_tbl IN inhv_tbl_type,
1077: x_inhv_tbl OUT NOCOPY inhv_tbl_type) IS
1078:
1079: l_api_version CONSTANT NUMBER := 1;
1080: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1081: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1082: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1083: BEGIN
1084: OKC_API.init_msg_list(p_init_msg_list);
1085: -- Make sure PL/SQL table has records in it before passing
1078:
1079: l_api_version CONSTANT NUMBER := 1;
1080: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1081: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1082: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1083: BEGIN
1084: OKC_API.init_msg_list(p_init_msg_list);
1085: -- Make sure PL/SQL table has records in it before passing
1086: IF (p_inhv_tbl.COUNT > 0) THEN
1080: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1081: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1082: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1083: BEGIN
1084: OKC_API.init_msg_list(p_init_msg_list);
1085: -- Make sure PL/SQL table has records in it before passing
1086: IF (p_inhv_tbl.COUNT > 0) THEN
1087: insert_row (
1088: p_api_version => p_api_version,
1085: -- Make sure PL/SQL table has records in it before passing
1086: IF (p_inhv_tbl.COUNT > 0) THEN
1087: insert_row (
1088: p_api_version => p_api_version,
1089: p_init_msg_list => OKC_API.G_FALSE,
1090: x_return_status => x_return_status,
1091: x_msg_count => x_msg_count,
1092: x_msg_data => x_msg_data,
1093: p_inhv_tbl => p_inhv_tbl,
1093: p_inhv_tbl => p_inhv_tbl,
1094: x_inhv_tbl => x_inhv_tbl,
1095: px_error_tbl => l_error_tbl);
1096: END IF;
1097: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1098: EXCEPTION
1099: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1100: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1101: (
1095: px_error_tbl => l_error_tbl);
1096: END IF;
1097: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1098: EXCEPTION
1099: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1100: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1101: (
1102: l_api_name,
1103: G_PKG_NAME,
1096: END IF;
1097: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1098: EXCEPTION
1099: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1100: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1101: (
1102: l_api_name,
1103: G_PKG_NAME,
1104: 'OKC_API.G_RET_STS_ERROR',
1100: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1101: (
1102: l_api_name,
1103: G_PKG_NAME,
1104: 'OKC_API.G_RET_STS_ERROR',
1105: x_msg_count,
1106: x_msg_data,
1107: '_PVT'
1108: );
1105: x_msg_count,
1106: x_msg_data,
1107: '_PVT'
1108: );
1109: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1110: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1111: (
1112: l_api_name,
1113: G_PKG_NAME,
1106: x_msg_data,
1107: '_PVT'
1108: );
1109: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1110: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1111: (
1112: l_api_name,
1113: G_PKG_NAME,
1114: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1110: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1111: (
1112: l_api_name,
1113: G_PKG_NAME,
1114: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1115: x_msg_count,
1116: x_msg_data,
1117: '_PVT'
1118: );
1116: x_msg_data,
1117: '_PVT'
1118: );
1119: WHEN OTHERS THEN
1120: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1121: (
1122: l_api_name,
1123: G_PKG_NAME,
1124: 'OTHERS',
1134: ------------------------------------------
1135: -- lock_row for:OKS_INTERACTION_HISTORY --
1136: ------------------------------------------
1137: PROCEDURE lock_row(
1138: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1139: x_return_status OUT NOCOPY VARCHAR2,
1140: x_msg_count OUT NOCOPY NUMBER,
1141: x_msg_data OUT NOCOPY VARCHAR2,
1142: p_inh_rec IN inh_rec_type) IS
1155: FROM OKS_INTERACTION_HISTORY
1156: WHERE ID = p_inh_rec.id;
1157: l_api_version CONSTANT NUMBER := 1;
1158: l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1159: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1160: l_object_version_number OKS_INTERACTION_HISTORY.OBJECT_VERSION_NUMBER%TYPE;
1161: lc_object_version_number OKS_INTERACTION_HISTORY.OBJECT_VERSION_NUMBER%TYPE;
1162: l_row_notfound BOOLEAN := FALSE;
1163: lc_row_notfound BOOLEAN := FALSE;
1161: lc_object_version_number OKS_INTERACTION_HISTORY.OBJECT_VERSION_NUMBER%TYPE;
1162: l_row_notfound BOOLEAN := FALSE;
1163: lc_row_notfound BOOLEAN := FALSE;
1164: BEGIN
1165: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1166: p_init_msg_list,
1167: '_PVT',
1168: x_return_status);
1169: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1165: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1166: p_init_msg_list,
1167: '_PVT',
1168: x_return_status);
1169: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1170: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1171: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1172: RAISE OKC_API.G_EXCEPTION_ERROR;
1173: END IF;
1166: p_init_msg_list,
1167: '_PVT',
1168: x_return_status);
1169: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1170: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1171: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1172: RAISE OKC_API.G_EXCEPTION_ERROR;
1173: END IF;
1174: BEGIN
1167: '_PVT',
1168: x_return_status);
1169: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1170: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1171: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1172: RAISE OKC_API.G_EXCEPTION_ERROR;
1173: END IF;
1174: BEGIN
1175: OPEN lock_csr(p_inh_rec);
1168: x_return_status);
1169: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1170: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1171: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1172: RAISE OKC_API.G_EXCEPTION_ERROR;
1173: END IF;
1174: BEGIN
1175: OPEN lock_csr(p_inh_rec);
1176: FETCH lock_csr INTO l_object_version_number;
1180: WHEN E_Resource_Busy THEN
1181: IF (lock_csr%ISOPEN) THEN
1182: CLOSE lock_csr;
1183: END IF;
1184: OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1185: RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1186: END;
1187:
1188: IF ( l_row_notfound ) THEN
1191: lc_row_notfound := lchk_csr%NOTFOUND;
1192: CLOSE lchk_csr;
1193: END IF;
1194: IF (lc_row_notfound) THEN
1195: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1196: RAISE OKC_API.G_EXCEPTION_ERROR;
1197: ELSIF lc_object_version_number > p_inh_rec.object_version_number THEN
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1192: CLOSE lchk_csr;
1193: END IF;
1194: IF (lc_row_notfound) THEN
1195: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1196: RAISE OKC_API.G_EXCEPTION_ERROR;
1197: ELSIF lc_object_version_number > p_inh_rec.object_version_number THEN
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1194: IF (lc_row_notfound) THEN
1195: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1196: RAISE OKC_API.G_EXCEPTION_ERROR;
1197: ELSIF lc_object_version_number > p_inh_rec.object_version_number THEN
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1195: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1196: RAISE OKC_API.G_EXCEPTION_ERROR;
1197: ELSIF lc_object_version_number > p_inh_rec.object_version_number THEN
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1203: ELSIF lc_object_version_number = -1 THEN
1197: ELSIF lc_object_version_number > p_inh_rec.object_version_number THEN
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1203: ELSIF lc_object_version_number = -1 THEN
1204: OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1205: RAISE OKC_API.G_EXCEPTION_ERROR;
1198: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1199: RAISE OKC_API.G_EXCEPTION_ERROR;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1203: ELSIF lc_object_version_number = -1 THEN
1204: OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1205: RAISE OKC_API.G_EXCEPTION_ERROR;
1206: END IF;
1200: ELSIF lc_object_version_number <> p_inh_rec.object_version_number THEN
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1203: ELSIF lc_object_version_number = -1 THEN
1204: OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1205: RAISE OKC_API.G_EXCEPTION_ERROR;
1206: END IF;
1207: x_return_status := l_return_status;
1208: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1201: OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1202: RAISE OKC_API.G_EXCEPTION_ERROR;
1203: ELSIF lc_object_version_number = -1 THEN
1204: OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1205: RAISE OKC_API.G_EXCEPTION_ERROR;
1206: END IF;
1207: x_return_status := l_return_status;
1208: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1209: EXCEPTION
1204: OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1205: RAISE OKC_API.G_EXCEPTION_ERROR;
1206: END IF;
1207: x_return_status := l_return_status;
1208: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1209: EXCEPTION
1210: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1211: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1212: (
1206: END IF;
1207: x_return_status := l_return_status;
1208: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1209: EXCEPTION
1210: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1211: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1212: (
1213: l_api_name,
1214: G_PKG_NAME,
1207: x_return_status := l_return_status;
1208: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1209: EXCEPTION
1210: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1211: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1212: (
1213: l_api_name,
1214: G_PKG_NAME,
1215: 'OKC_API.G_RET_STS_ERROR',
1211: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1212: (
1213: l_api_name,
1214: G_PKG_NAME,
1215: 'OKC_API.G_RET_STS_ERROR',
1216: x_msg_count,
1217: x_msg_data,
1218: '_PVT'
1219: );
1216: x_msg_count,
1217: x_msg_data,
1218: '_PVT'
1219: );
1220: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1221: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1222: (
1223: l_api_name,
1224: G_PKG_NAME,
1217: x_msg_data,
1218: '_PVT'
1219: );
1220: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1221: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1222: (
1223: l_api_name,
1224: G_PKG_NAME,
1225: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1221: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1222: (
1223: l_api_name,
1224: G_PKG_NAME,
1225: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1226: x_msg_count,
1227: x_msg_data,
1228: '_PVT'
1229: );
1227: x_msg_data,
1228: '_PVT'
1229: );
1230: WHEN OTHERS THEN
1231: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1232: (
1233: l_api_name,
1234: G_PKG_NAME,
1235: 'OTHERS',
1242: -- lock_row for: OKS_INTERACTION_HIST_V --
1243: ------------------------------------------
1244: PROCEDURE lock_row(
1245: p_api_version IN NUMBER,
1246: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1247: x_return_status OUT NOCOPY VARCHAR2,
1248: x_msg_count OUT NOCOPY NUMBER,
1249: x_msg_data OUT NOCOPY VARCHAR2,
1250: p_inhv_rec IN inhv_rec_type) IS
1250: p_inhv_rec IN inhv_rec_type) IS
1251:
1252: l_api_version CONSTANT NUMBER := 1;
1253: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1254: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1255: l_inh_rec inh_rec_type;
1256: BEGIN
1257: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1258: G_PKG_NAME,
1253: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1254: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1255: l_inh_rec inh_rec_type;
1256: BEGIN
1257: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1258: G_PKG_NAME,
1259: p_init_msg_list,
1260: l_api_version,
1261: p_api_version,
1260: l_api_version,
1261: p_api_version,
1262: '_PVT',
1263: x_return_status);
1264: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1265: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1266: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1267: RAISE OKC_API.G_EXCEPTION_ERROR;
1268: END IF;
1261: p_api_version,
1262: '_PVT',
1263: x_return_status);
1264: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1265: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1266: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1267: RAISE OKC_API.G_EXCEPTION_ERROR;
1268: END IF;
1269: -----------------------------------------
1262: '_PVT',
1263: x_return_status);
1264: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1265: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1266: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1267: RAISE OKC_API.G_EXCEPTION_ERROR;
1268: END IF;
1269: -----------------------------------------
1270: -- Move VIEW record to "Child" records --
1263: x_return_status);
1264: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1265: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1266: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1267: RAISE OKC_API.G_EXCEPTION_ERROR;
1268: END IF;
1269: -----------------------------------------
1270: -- Move VIEW record to "Child" records --
1271: -----------------------------------------
1279: x_msg_count,
1280: x_msg_data,
1281: l_inh_rec
1282: );
1283: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1284: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1285: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1286: RAISE OKC_API.G_EXCEPTION_ERROR;
1287: END IF;
1280: x_msg_data,
1281: l_inh_rec
1282: );
1283: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1284: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1285: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1286: RAISE OKC_API.G_EXCEPTION_ERROR;
1287: END IF;
1288: x_return_status := l_return_status;
1281: l_inh_rec
1282: );
1283: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1284: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1285: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1286: RAISE OKC_API.G_EXCEPTION_ERROR;
1287: END IF;
1288: x_return_status := l_return_status;
1289: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1282: );
1283: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1284: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1285: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1286: RAISE OKC_API.G_EXCEPTION_ERROR;
1287: END IF;
1288: x_return_status := l_return_status;
1289: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1290: EXCEPTION
1285: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1286: RAISE OKC_API.G_EXCEPTION_ERROR;
1287: END IF;
1288: x_return_status := l_return_status;
1289: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1290: EXCEPTION
1291: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1292: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1293: (
1287: END IF;
1288: x_return_status := l_return_status;
1289: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1290: EXCEPTION
1291: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1292: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1293: (
1294: l_api_name,
1295: G_PKG_NAME,
1288: x_return_status := l_return_status;
1289: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1290: EXCEPTION
1291: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1292: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1293: (
1294: l_api_name,
1295: G_PKG_NAME,
1296: 'OKC_API.G_RET_STS_ERROR',
1292: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1293: (
1294: l_api_name,
1295: G_PKG_NAME,
1296: 'OKC_API.G_RET_STS_ERROR',
1297: x_msg_count,
1298: x_msg_data,
1299: '_PVT'
1300: );
1297: x_msg_count,
1298: x_msg_data,
1299: '_PVT'
1300: );
1301: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1302: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1303: (
1304: l_api_name,
1305: G_PKG_NAME,
1298: x_msg_data,
1299: '_PVT'
1300: );
1301: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1302: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1303: (
1304: l_api_name,
1305: G_PKG_NAME,
1306: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1302: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1303: (
1304: l_api_name,
1305: G_PKG_NAME,
1306: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1307: x_msg_count,
1308: x_msg_data,
1309: '_PVT'
1310: );
1308: x_msg_data,
1309: '_PVT'
1310: );
1311: WHEN OTHERS THEN
1312: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1313: (
1314: l_api_name,
1315: G_PKG_NAME,
1316: 'OTHERS',
1323: -- PL/SQL TBL lock_row for:INHV_TBL --
1324: --------------------------------------
1325: PROCEDURE lock_row(
1326: p_api_version IN NUMBER,
1327: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1328: x_return_status OUT NOCOPY VARCHAR2,
1329: x_msg_count OUT NOCOPY NUMBER,
1330: x_msg_data OUT NOCOPY VARCHAR2,
1331: p_inhv_tbl IN inhv_tbl_type,
1328: x_return_status OUT NOCOPY VARCHAR2,
1329: x_msg_count OUT NOCOPY NUMBER,
1330: x_msg_data OUT NOCOPY VARCHAR2,
1331: p_inhv_tbl IN inhv_tbl_type,
1332: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
1333:
1334: l_api_version CONSTANT NUMBER := 1;
1335: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1336: i NUMBER := 0;
1334: l_api_version CONSTANT NUMBER := 1;
1335: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1336: i NUMBER := 0;
1337: BEGIN
1338: OKC_API.init_msg_list(p_init_msg_list);
1339: -- Make sure PL/SQL table has recrods in it before passing
1340: IF (p_inhv_tbl.COUNT > 0) THEN
1341: i := p_inhv_tbl.FIRST;
1342: LOOP
1340: IF (p_inhv_tbl.COUNT > 0) THEN
1341: i := p_inhv_tbl.FIRST;
1342: LOOP
1343: DECLARE
1344: l_error_rec OKC_API.ERROR_REC_TYPE;
1345: BEGIN
1346: l_error_rec.api_name := l_api_name;
1347: l_error_rec.api_package := G_PKG_NAME;
1348: l_error_rec.idx := i;
1347: l_error_rec.api_package := G_PKG_NAME;
1348: l_error_rec.idx := i;
1349: lock_row(
1350: p_api_version => p_api_version,
1351: p_init_msg_list => OKC_API.G_FALSE,
1352: x_return_status => l_error_rec.error_type,
1353: x_msg_count => l_error_rec.msg_count,
1354: x_msg_data => l_error_rec.msg_data,
1355: p_inhv_rec => p_inhv_tbl(i));
1352: x_return_status => l_error_rec.error_type,
1353: x_msg_count => l_error_rec.msg_count,
1354: x_msg_data => l_error_rec.msg_data,
1355: p_inhv_rec => p_inhv_tbl(i));
1356: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1357: l_error_rec.sqlcode := SQLCODE;
1358: load_error_tbl(l_error_rec, px_error_tbl);
1359: ELSE
1360: x_msg_count := l_error_rec.msg_count;
1360: x_msg_count := l_error_rec.msg_count;
1361: x_msg_data := l_error_rec.msg_data;
1362: END IF;
1363: EXCEPTION
1364: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1365: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1366: l_error_rec.sqlcode := SQLCODE;
1367: load_error_tbl(l_error_rec, px_error_tbl);
1368: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1361: x_msg_data := l_error_rec.msg_data;
1362: END IF;
1363: EXCEPTION
1364: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1365: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1366: l_error_rec.sqlcode := SQLCODE;
1367: load_error_tbl(l_error_rec, px_error_tbl);
1368: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1369: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1364: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1365: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1366: l_error_rec.sqlcode := SQLCODE;
1367: load_error_tbl(l_error_rec, px_error_tbl);
1368: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1369: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1370: l_error_rec.sqlcode := SQLCODE;
1371: load_error_tbl(l_error_rec, px_error_tbl);
1372: WHEN OTHERS THEN
1365: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1366: l_error_rec.sqlcode := SQLCODE;
1367: load_error_tbl(l_error_rec, px_error_tbl);
1368: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1369: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1370: l_error_rec.sqlcode := SQLCODE;
1371: load_error_tbl(l_error_rec, px_error_tbl);
1372: WHEN OTHERS THEN
1373: l_error_rec.error_type := 'OTHERS';
1380: END IF;
1381: -- Loop through the error_tbl to find the error with the highest severity
1382: -- and return it.
1383: x_return_status := find_highest_exception(px_error_tbl);
1384: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1385: EXCEPTION
1386: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1387: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1388: (
1382: -- and return it.
1383: x_return_status := find_highest_exception(px_error_tbl);
1384: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1385: EXCEPTION
1386: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1387: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1388: (
1389: l_api_name,
1390: G_PKG_NAME,
1383: x_return_status := find_highest_exception(px_error_tbl);
1384: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1385: EXCEPTION
1386: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1387: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1388: (
1389: l_api_name,
1390: G_PKG_NAME,
1391: 'OKC_API.G_RET_STS_ERROR',
1387: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1388: (
1389: l_api_name,
1390: G_PKG_NAME,
1391: 'OKC_API.G_RET_STS_ERROR',
1392: x_msg_count,
1393: x_msg_data,
1394: '_PVT'
1395: );
1392: x_msg_count,
1393: x_msg_data,
1394: '_PVT'
1395: );
1396: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1397: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1398: (
1399: l_api_name,
1400: G_PKG_NAME,
1393: x_msg_data,
1394: '_PVT'
1395: );
1396: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1397: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1398: (
1399: l_api_name,
1400: G_PKG_NAME,
1401: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1397: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1398: (
1399: l_api_name,
1400: G_PKG_NAME,
1401: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1402: x_msg_count,
1403: x_msg_data,
1404: '_PVT'
1405: );
1403: x_msg_data,
1404: '_PVT'
1405: );
1406: WHEN OTHERS THEN
1407: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1408: (
1409: l_api_name,
1410: G_PKG_NAME,
1411: 'OTHERS',
1418: -- PL/SQL TBL lock_row for:INHV_TBL --
1419: --------------------------------------
1420: PROCEDURE lock_row(
1421: p_api_version IN NUMBER,
1422: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1423: x_return_status OUT NOCOPY VARCHAR2,
1424: x_msg_count OUT NOCOPY NUMBER,
1425: x_msg_data OUT NOCOPY VARCHAR2,
1426: p_inhv_tbl IN inhv_tbl_type) IS
1426: p_inhv_tbl IN inhv_tbl_type) IS
1427:
1428: l_api_version CONSTANT NUMBER := 1;
1429: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1430: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1431: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1432: BEGIN
1433: OKC_API.init_msg_list(p_init_msg_list);
1434: -- Make sure PL/SQL table has recrods in it before passing
1427:
1428: l_api_version CONSTANT NUMBER := 1;
1429: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1430: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1431: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1432: BEGIN
1433: OKC_API.init_msg_list(p_init_msg_list);
1434: -- Make sure PL/SQL table has recrods in it before passing
1435: IF (p_inhv_tbl.COUNT > 0) THEN
1429: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1430: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1431: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1432: BEGIN
1433: OKC_API.init_msg_list(p_init_msg_list);
1434: -- Make sure PL/SQL table has recrods in it before passing
1435: IF (p_inhv_tbl.COUNT > 0) THEN
1436: lock_row(
1437: p_api_version => p_api_version,
1434: -- Make sure PL/SQL table has recrods in it before passing
1435: IF (p_inhv_tbl.COUNT > 0) THEN
1436: lock_row(
1437: p_api_version => p_api_version,
1438: p_init_msg_list => OKC_API.G_FALSE,
1439: x_return_status => x_return_status,
1440: x_msg_count => x_msg_count,
1441: x_msg_data => x_msg_data,
1442: p_inhv_tbl => p_inhv_tbl,
1441: x_msg_data => x_msg_data,
1442: p_inhv_tbl => p_inhv_tbl,
1443: px_error_tbl => l_error_tbl);
1444: END IF;
1445: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1446: EXCEPTION
1447: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1448: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1449: (
1443: px_error_tbl => l_error_tbl);
1444: END IF;
1445: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1446: EXCEPTION
1447: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1448: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1449: (
1450: l_api_name,
1451: G_PKG_NAME,
1444: END IF;
1445: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1446: EXCEPTION
1447: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1448: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1449: (
1450: l_api_name,
1451: G_PKG_NAME,
1452: 'OKC_API.G_RET_STS_ERROR',
1448: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1449: (
1450: l_api_name,
1451: G_PKG_NAME,
1452: 'OKC_API.G_RET_STS_ERROR',
1453: x_msg_count,
1454: x_msg_data,
1455: '_PVT'
1456: );
1453: x_msg_count,
1454: x_msg_data,
1455: '_PVT'
1456: );
1457: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1458: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1459: (
1460: l_api_name,
1461: G_PKG_NAME,
1454: x_msg_data,
1455: '_PVT'
1456: );
1457: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1458: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1459: (
1460: l_api_name,
1461: G_PKG_NAME,
1462: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1458: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1459: (
1460: l_api_name,
1461: G_PKG_NAME,
1462: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1463: x_msg_count,
1464: x_msg_data,
1465: '_PVT'
1466: );
1464: x_msg_data,
1465: '_PVT'
1466: );
1467: WHEN OTHERS THEN
1468: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1469: (
1470: l_api_name,
1471: G_PKG_NAME,
1472: 'OTHERS',
1481: --------------------------------------------
1482: -- update_row for:OKS_INTERACTION_HISTORY --
1483: --------------------------------------------
1484: PROCEDURE update_row(
1485: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1486: x_return_status OUT NOCOPY VARCHAR2,
1487: x_msg_count OUT NOCOPY NUMBER,
1488: x_msg_data OUT NOCOPY VARCHAR2,
1489: p_inh_rec IN inh_rec_type,
1490: x_inh_rec OUT NOCOPY inh_rec_type) IS
1491:
1492: l_api_version CONSTANT NUMBER := 1;
1493: l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
1494: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1495: l_inh_rec inh_rec_type := p_inh_rec;
1496: l_def_inh_rec inh_rec_type;
1497: l_row_notfound BOOLEAN := TRUE;
1498: ----------------------------------
1503: x_inh_rec OUT NOCOPY inh_rec_type
1504: ) RETURN VARCHAR2 IS
1505: l_inh_rec inh_rec_type;
1506: l_row_notfound BOOLEAN := TRUE;
1507: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1508: BEGIN
1509: x_inh_rec := p_inh_rec;
1510: -- Get current database values
1511: l_inh_rec := get_rec(p_inh_rec, l_return_status);
1508: BEGIN
1509: x_inh_rec := p_inh_rec;
1510: -- Get current database values
1511: l_inh_rec := get_rec(p_inh_rec, l_return_status);
1512: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
1513: IF (x_inh_rec.id = OKC_API.G_MISS_NUM)
1514: THEN
1515: x_inh_rec.id := l_inh_rec.id;
1516: END IF;
1509: x_inh_rec := p_inh_rec;
1510: -- Get current database values
1511: l_inh_rec := get_rec(p_inh_rec, l_return_status);
1512: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
1513: IF (x_inh_rec.id = OKC_API.G_MISS_NUM)
1514: THEN
1515: x_inh_rec.id := l_inh_rec.id;
1516: END IF;
1517: IF (x_inh_rec.chr_id = OKC_API.G_MISS_NUM)
1513: IF (x_inh_rec.id = OKC_API.G_MISS_NUM)
1514: THEN
1515: x_inh_rec.id := l_inh_rec.id;
1516: END IF;
1517: IF (x_inh_rec.chr_id = OKC_API.G_MISS_NUM)
1518: THEN
1519: x_inh_rec.chr_id := l_inh_rec.chr_id;
1520: END IF;
1521: IF (x_inh_rec.contract_number = OKC_API.G_MISS_CHAR)
1517: IF (x_inh_rec.chr_id = OKC_API.G_MISS_NUM)
1518: THEN
1519: x_inh_rec.chr_id := l_inh_rec.chr_id;
1520: END IF;
1521: IF (x_inh_rec.contract_number = OKC_API.G_MISS_CHAR)
1522: THEN
1523: x_inh_rec.contract_number := l_inh_rec.contract_number;
1524: END IF;
1525: IF (x_inh_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1521: IF (x_inh_rec.contract_number = OKC_API.G_MISS_CHAR)
1522: THEN
1523: x_inh_rec.contract_number := l_inh_rec.contract_number;
1524: END IF;
1525: IF (x_inh_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1526: THEN
1527: x_inh_rec.contract_number_modifier := l_inh_rec.contract_number_modifier;
1528: END IF;
1529: IF (x_inh_rec.renewal_status = OKC_API.G_MISS_CHAR)
1525: IF (x_inh_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1526: THEN
1527: x_inh_rec.contract_number_modifier := l_inh_rec.contract_number_modifier;
1528: END IF;
1529: IF (x_inh_rec.renewal_status = OKC_API.G_MISS_CHAR)
1530: THEN
1531: x_inh_rec.renewal_status := l_inh_rec.renewal_status;
1532: END IF;
1533: IF (x_inh_rec.party_id = OKC_API.G_MISS_NUM)
1529: IF (x_inh_rec.renewal_status = OKC_API.G_MISS_CHAR)
1530: THEN
1531: x_inh_rec.renewal_status := l_inh_rec.renewal_status;
1532: END IF;
1533: IF (x_inh_rec.party_id = OKC_API.G_MISS_NUM)
1534: THEN
1535: x_inh_rec.party_id := l_inh_rec.party_id;
1536: END IF;
1537: IF (x_inh_rec.user_id = OKC_API.G_MISS_NUM)
1533: IF (x_inh_rec.party_id = OKC_API.G_MISS_NUM)
1534: THEN
1535: x_inh_rec.party_id := l_inh_rec.party_id;
1536: END IF;
1537: IF (x_inh_rec.user_id = OKC_API.G_MISS_NUM)
1538: THEN
1539: x_inh_rec.user_id := l_inh_rec.user_id;
1540: END IF;
1541: IF (x_inh_rec.description = OKC_API.G_MISS_CHAR)
1537: IF (x_inh_rec.user_id = OKC_API.G_MISS_NUM)
1538: THEN
1539: x_inh_rec.user_id := l_inh_rec.user_id;
1540: END IF;
1541: IF (x_inh_rec.description = OKC_API.G_MISS_CHAR)
1542: THEN
1543: x_inh_rec.description := l_inh_rec.description;
1544: END IF;
1545: IF (x_inh_rec.status = OKC_API.G_MISS_CHAR)
1541: IF (x_inh_rec.description = OKC_API.G_MISS_CHAR)
1542: THEN
1543: x_inh_rec.description := l_inh_rec.description;
1544: END IF;
1545: IF (x_inh_rec.status = OKC_API.G_MISS_CHAR)
1546: THEN
1547: x_inh_rec.status := l_inh_rec.status;
1548: END IF;
1549: IF (x_inh_rec.task_name = OKC_API.G_MISS_CHAR)
1545: IF (x_inh_rec.status = OKC_API.G_MISS_CHAR)
1546: THEN
1547: x_inh_rec.status := l_inh_rec.status;
1548: END IF;
1549: IF (x_inh_rec.task_name = OKC_API.G_MISS_CHAR)
1550: THEN
1551: x_inh_rec.task_name := l_inh_rec.task_name;
1552: END IF;
1553: IF (x_inh_rec.task_result = OKC_API.G_MISS_CHAR)
1549: IF (x_inh_rec.task_name = OKC_API.G_MISS_CHAR)
1550: THEN
1551: x_inh_rec.task_name := l_inh_rec.task_name;
1552: END IF;
1553: IF (x_inh_rec.task_result = OKC_API.G_MISS_CHAR)
1554: THEN
1555: x_inh_rec.task_result := l_inh_rec.task_result;
1556: END IF;
1557: IF (x_inh_rec.creation_date = OKC_API.G_MISS_DATE)
1553: IF (x_inh_rec.task_result = OKC_API.G_MISS_CHAR)
1554: THEN
1555: x_inh_rec.task_result := l_inh_rec.task_result;
1556: END IF;
1557: IF (x_inh_rec.creation_date = OKC_API.G_MISS_DATE)
1558: THEN
1559: x_inh_rec.creation_date := l_inh_rec.creation_date;
1560: END IF;
1561: IF (x_inh_rec.created_by = OKC_API.G_MISS_NUM)
1557: IF (x_inh_rec.creation_date = OKC_API.G_MISS_DATE)
1558: THEN
1559: x_inh_rec.creation_date := l_inh_rec.creation_date;
1560: END IF;
1561: IF (x_inh_rec.created_by = OKC_API.G_MISS_NUM)
1562: THEN
1563: x_inh_rec.created_by := l_inh_rec.created_by;
1564: END IF;
1565: IF (x_inh_rec.last_update_date = OKC_API.G_MISS_DATE)
1561: IF (x_inh_rec.created_by = OKC_API.G_MISS_NUM)
1562: THEN
1563: x_inh_rec.created_by := l_inh_rec.created_by;
1564: END IF;
1565: IF (x_inh_rec.last_update_date = OKC_API.G_MISS_DATE)
1566: THEN
1567: x_inh_rec.last_update_date := l_inh_rec.last_update_date;
1568: END IF;
1569: IF (x_inh_rec.last_updated_by = OKC_API.G_MISS_NUM)
1565: IF (x_inh_rec.last_update_date = OKC_API.G_MISS_DATE)
1566: THEN
1567: x_inh_rec.last_update_date := l_inh_rec.last_update_date;
1568: END IF;
1569: IF (x_inh_rec.last_updated_by = OKC_API.G_MISS_NUM)
1570: THEN
1571: x_inh_rec.last_updated_by := l_inh_rec.last_updated_by;
1572: END IF;
1573: IF (x_inh_rec.last_update_login = OKC_API.G_MISS_NUM)
1569: IF (x_inh_rec.last_updated_by = OKC_API.G_MISS_NUM)
1570: THEN
1571: x_inh_rec.last_updated_by := l_inh_rec.last_updated_by;
1572: END IF;
1573: IF (x_inh_rec.last_update_login = OKC_API.G_MISS_NUM)
1574: THEN
1575: x_inh_rec.last_update_login := l_inh_rec.last_update_login;
1576: END IF;
1577: IF (x_inh_rec.object_version_number = OKC_API.G_MISS_NUM)
1573: IF (x_inh_rec.last_update_login = OKC_API.G_MISS_NUM)
1574: THEN
1575: x_inh_rec.last_update_login := l_inh_rec.last_update_login;
1576: END IF;
1577: IF (x_inh_rec.object_version_number = OKC_API.G_MISS_NUM)
1578: THEN
1579: x_inh_rec.object_version_number := l_inh_rec.object_version_number;
1580: END IF;
1581: END IF;
1587: FUNCTION Set_Attributes (
1588: p_inh_rec IN inh_rec_type,
1589: x_inh_rec OUT NOCOPY inh_rec_type
1590: ) RETURN VARCHAR2 IS
1591: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1592: BEGIN
1593: x_inh_rec := p_inh_rec;
1594: x_inh_rec.OBJECT_VERSION_NUMBER := p_inh_rec.OBJECT_VERSION_NUMBER + 1;
1595: RETURN(l_return_status);
1594: x_inh_rec.OBJECT_VERSION_NUMBER := p_inh_rec.OBJECT_VERSION_NUMBER + 1;
1595: RETURN(l_return_status);
1596: END Set_Attributes;
1597: BEGIN
1598: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1598: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1605: RAISE OKC_API.G_EXCEPTION_ERROR;
1606: END IF;
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1605: RAISE OKC_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1605: RAISE OKC_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1608: l_return_status := Set_Attributes(
1601: x_return_status);
1602: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1605: RAISE OKC_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1608: l_return_status := Set_Attributes(
1609: p_inh_rec, -- IN
1608: l_return_status := Set_Attributes(
1609: p_inh_rec, -- IN
1610: l_inh_rec); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1609: p_inh_rec, -- IN
1610: l_inh_rec); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1610: l_inh_rec); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1611: --- If any errors happen abort API
1612: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1621: RAISE OKC_API.G_EXCEPTION_ERROR;
1622: END IF;
1615: RAISE OKC_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1621: RAISE OKC_API.G_EXCEPTION_ERROR;
1622: END IF;
1623: UPDATE OKS_INTERACTION_HISTORY
1616: END IF;
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1621: RAISE OKC_API.G_EXCEPTION_ERROR;
1622: END IF;
1623: UPDATE OKS_INTERACTION_HISTORY
1624: SET CHR_ID = l_def_inh_rec.chr_id,
1617: l_return_status := populate_new_record(l_inh_rec, l_def_inh_rec);
1618: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1621: RAISE OKC_API.G_EXCEPTION_ERROR;
1622: END IF;
1623: UPDATE OKS_INTERACTION_HISTORY
1624: SET CHR_ID = l_def_inh_rec.chr_id,
1625: CONTRACT_NUMBER = l_def_inh_rec.contract_number,
1640: WHERE ID = l_def_inh_rec.id;
1641:
1642: x_inh_rec := l_inh_rec;
1643: x_return_status := l_return_status;
1644: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1645: EXCEPTION
1646: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1647: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1648: (
1642: x_inh_rec := l_inh_rec;
1643: x_return_status := l_return_status;
1644: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1645: EXCEPTION
1646: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1647: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1648: (
1649: l_api_name,
1650: G_PKG_NAME,
1643: x_return_status := l_return_status;
1644: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1645: EXCEPTION
1646: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1647: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1648: (
1649: l_api_name,
1650: G_PKG_NAME,
1651: 'OKC_API.G_RET_STS_ERROR',
1647: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1648: (
1649: l_api_name,
1650: G_PKG_NAME,
1651: 'OKC_API.G_RET_STS_ERROR',
1652: x_msg_count,
1653: x_msg_data,
1654: '_PVT'
1655: );
1652: x_msg_count,
1653: x_msg_data,
1654: '_PVT'
1655: );
1656: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1657: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1658: (
1659: l_api_name,
1660: G_PKG_NAME,
1653: x_msg_data,
1654: '_PVT'
1655: );
1656: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1657: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1658: (
1659: l_api_name,
1660: G_PKG_NAME,
1661: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1657: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1658: (
1659: l_api_name,
1660: G_PKG_NAME,
1661: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1662: x_msg_count,
1663: x_msg_data,
1664: '_PVT'
1665: );
1663: x_msg_data,
1664: '_PVT'
1665: );
1666: WHEN OTHERS THEN
1667: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1668: (
1669: l_api_name,
1670: G_PKG_NAME,
1671: 'OTHERS',
1678: -- update_row for:OKS_INTERACTION_HIST_V --
1679: -------------------------------------------
1680: PROCEDURE update_row(
1681: p_api_version IN NUMBER,
1682: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1683: x_return_status OUT NOCOPY VARCHAR2,
1684: x_msg_count OUT NOCOPY NUMBER,
1685: x_msg_data OUT NOCOPY VARCHAR2,
1686: p_inhv_rec IN inhv_rec_type,
1687: x_inhv_rec OUT NOCOPY inhv_rec_type) IS
1688:
1689: l_api_version CONSTANT NUMBER := 1;
1690: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
1691: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1692: l_inhv_rec inhv_rec_type := p_inhv_rec;
1693: l_def_inhv_rec inhv_rec_type;
1694: l_db_inhv_rec inhv_rec_type;
1695: l_inh_rec inh_rec_type;
1714: p_inhv_rec IN inhv_rec_type,
1715: x_inhv_rec OUT NOCOPY inhv_rec_type
1716: ) RETURN VARCHAR2 IS
1717: l_row_notfound BOOLEAN := TRUE;
1718: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1719: BEGIN
1720: x_inhv_rec := p_inhv_rec;
1721: -- Get current database values
1722: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1721: -- Get current database values
1722: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1723: -- so it may be verified through LOCK_ROW.
1724: l_db_inhv_rec := get_rec(p_inhv_rec, l_return_status);
1725: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
1726: IF (x_inhv_rec.id = OKC_API.G_MISS_NUM)
1727: THEN
1728: x_inhv_rec.id := l_db_inhv_rec.id;
1729: END IF;
1722: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1723: -- so it may be verified through LOCK_ROW.
1724: l_db_inhv_rec := get_rec(p_inhv_rec, l_return_status);
1725: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
1726: IF (x_inhv_rec.id = OKC_API.G_MISS_NUM)
1727: THEN
1728: x_inhv_rec.id := l_db_inhv_rec.id;
1729: END IF;
1730: IF (x_inhv_rec.chr_id = OKC_API.G_MISS_NUM)
1726: IF (x_inhv_rec.id = OKC_API.G_MISS_NUM)
1727: THEN
1728: x_inhv_rec.id := l_db_inhv_rec.id;
1729: END IF;
1730: IF (x_inhv_rec.chr_id = OKC_API.G_MISS_NUM)
1731: THEN
1732: x_inhv_rec.chr_id := l_db_inhv_rec.chr_id;
1733: END IF;
1734: IF (x_inhv_rec.contract_number = OKC_API.G_MISS_CHAR)
1730: IF (x_inhv_rec.chr_id = OKC_API.G_MISS_NUM)
1731: THEN
1732: x_inhv_rec.chr_id := l_db_inhv_rec.chr_id;
1733: END IF;
1734: IF (x_inhv_rec.contract_number = OKC_API.G_MISS_CHAR)
1735: THEN
1736: x_inhv_rec.contract_number := l_db_inhv_rec.contract_number;
1737: END IF;
1738: IF (x_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1734: IF (x_inhv_rec.contract_number = OKC_API.G_MISS_CHAR)
1735: THEN
1736: x_inhv_rec.contract_number := l_db_inhv_rec.contract_number;
1737: END IF;
1738: IF (x_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1739: THEN
1740: x_inhv_rec.contract_number_modifier := l_db_inhv_rec.contract_number_modifier;
1741: END IF;
1742: IF (x_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR)
1738: IF (x_inhv_rec.contract_number_modifier = OKC_API.G_MISS_CHAR)
1739: THEN
1740: x_inhv_rec.contract_number_modifier := l_db_inhv_rec.contract_number_modifier;
1741: END IF;
1742: IF (x_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR)
1743: THEN
1744: x_inhv_rec.renewal_status := l_db_inhv_rec.renewal_status;
1745: END IF;
1746: IF (x_inhv_rec.party_id = OKC_API.G_MISS_NUM)
1742: IF (x_inhv_rec.renewal_status = OKC_API.G_MISS_CHAR)
1743: THEN
1744: x_inhv_rec.renewal_status := l_db_inhv_rec.renewal_status;
1745: END IF;
1746: IF (x_inhv_rec.party_id = OKC_API.G_MISS_NUM)
1747: THEN
1748: x_inhv_rec.party_id := l_db_inhv_rec.party_id;
1749: END IF;
1750: IF (x_inhv_rec.user_id = OKC_API.G_MISS_NUM)
1746: IF (x_inhv_rec.party_id = OKC_API.G_MISS_NUM)
1747: THEN
1748: x_inhv_rec.party_id := l_db_inhv_rec.party_id;
1749: END IF;
1750: IF (x_inhv_rec.user_id = OKC_API.G_MISS_NUM)
1751: THEN
1752: x_inhv_rec.user_id := l_db_inhv_rec.user_id;
1753: END IF;
1754: IF (x_inhv_rec.description = OKC_API.G_MISS_CHAR)
1750: IF (x_inhv_rec.user_id = OKC_API.G_MISS_NUM)
1751: THEN
1752: x_inhv_rec.user_id := l_db_inhv_rec.user_id;
1753: END IF;
1754: IF (x_inhv_rec.description = OKC_API.G_MISS_CHAR)
1755: THEN
1756: x_inhv_rec.description := l_db_inhv_rec.description;
1757: END IF;
1758: IF (x_inhv_rec.status = OKC_API.G_MISS_CHAR)
1754: IF (x_inhv_rec.description = OKC_API.G_MISS_CHAR)
1755: THEN
1756: x_inhv_rec.description := l_db_inhv_rec.description;
1757: END IF;
1758: IF (x_inhv_rec.status = OKC_API.G_MISS_CHAR)
1759: THEN
1760: x_inhv_rec.status := l_db_inhv_rec.status;
1761: END IF;
1762: IF (x_inhv_rec.task_name = OKC_API.G_MISS_CHAR)
1758: IF (x_inhv_rec.status = OKC_API.G_MISS_CHAR)
1759: THEN
1760: x_inhv_rec.status := l_db_inhv_rec.status;
1761: END IF;
1762: IF (x_inhv_rec.task_name = OKC_API.G_MISS_CHAR)
1763: THEN
1764: x_inhv_rec.task_name := l_db_inhv_rec.task_name;
1765: END IF;
1766: IF (x_inhv_rec.task_result = OKC_API.G_MISS_CHAR)
1762: IF (x_inhv_rec.task_name = OKC_API.G_MISS_CHAR)
1763: THEN
1764: x_inhv_rec.task_name := l_db_inhv_rec.task_name;
1765: END IF;
1766: IF (x_inhv_rec.task_result = OKC_API.G_MISS_CHAR)
1767: THEN
1768: x_inhv_rec.task_result := l_db_inhv_rec.task_result;
1769: END IF;
1770: IF (x_inhv_rec.creation_date = OKC_API.G_MISS_DATE)
1766: IF (x_inhv_rec.task_result = OKC_API.G_MISS_CHAR)
1767: THEN
1768: x_inhv_rec.task_result := l_db_inhv_rec.task_result;
1769: END IF;
1770: IF (x_inhv_rec.creation_date = OKC_API.G_MISS_DATE)
1771: THEN
1772: x_inhv_rec.creation_date := l_db_inhv_rec.creation_date;
1773: END IF;
1774: IF (x_inhv_rec.created_by = OKC_API.G_MISS_NUM)
1770: IF (x_inhv_rec.creation_date = OKC_API.G_MISS_DATE)
1771: THEN
1772: x_inhv_rec.creation_date := l_db_inhv_rec.creation_date;
1773: END IF;
1774: IF (x_inhv_rec.created_by = OKC_API.G_MISS_NUM)
1775: THEN
1776: x_inhv_rec.created_by := l_db_inhv_rec.created_by;
1777: END IF;
1778: IF (x_inhv_rec.last_update_date = OKC_API.G_MISS_DATE)
1774: IF (x_inhv_rec.created_by = OKC_API.G_MISS_NUM)
1775: THEN
1776: x_inhv_rec.created_by := l_db_inhv_rec.created_by;
1777: END IF;
1778: IF (x_inhv_rec.last_update_date = OKC_API.G_MISS_DATE)
1779: THEN
1780: x_inhv_rec.last_update_date := l_db_inhv_rec.last_update_date;
1781: END IF;
1782: IF (x_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM)
1778: IF (x_inhv_rec.last_update_date = OKC_API.G_MISS_DATE)
1779: THEN
1780: x_inhv_rec.last_update_date := l_db_inhv_rec.last_update_date;
1781: END IF;
1782: IF (x_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM)
1783: THEN
1784: x_inhv_rec.last_updated_by := l_db_inhv_rec.last_updated_by;
1785: END IF;
1786: IF (x_inhv_rec.last_update_login = OKC_API.G_MISS_NUM)
1782: IF (x_inhv_rec.last_updated_by = OKC_API.G_MISS_NUM)
1783: THEN
1784: x_inhv_rec.last_updated_by := l_db_inhv_rec.last_updated_by;
1785: END IF;
1786: IF (x_inhv_rec.last_update_login = OKC_API.G_MISS_NUM)
1787: THEN
1788: x_inhv_rec.last_update_login := l_db_inhv_rec.last_update_login;
1789: END IF;
1790: END IF;
1796: FUNCTION Set_Attributes (
1797: p_inhv_rec IN inhv_rec_type,
1798: x_inhv_rec OUT NOCOPY inhv_rec_type
1799: ) RETURN VARCHAR2 IS
1800: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1801: BEGIN
1802: x_inhv_rec := p_inhv_rec;
1803: RETURN(l_return_status);
1804: END Set_Attributes;
1802: x_inhv_rec := p_inhv_rec;
1803: RETURN(l_return_status);
1804: END Set_Attributes;
1805: BEGIN
1806: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1807: G_PKG_NAME,
1808: p_init_msg_list,
1809: l_api_version,
1810: p_api_version,
1809: l_api_version,
1810: p_api_version,
1811: '_PVT',
1812: x_return_status);
1813: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1814: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1815: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1816: RAISE OKC_API.G_EXCEPTION_ERROR;
1817: END IF;
1810: p_api_version,
1811: '_PVT',
1812: x_return_status);
1813: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1814: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1815: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1816: RAISE OKC_API.G_EXCEPTION_ERROR;
1817: END IF;
1818: --- Setting item attributes
1811: '_PVT',
1812: x_return_status);
1813: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1814: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1815: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1816: RAISE OKC_API.G_EXCEPTION_ERROR;
1817: END IF;
1818: --- Setting item attributes
1819: l_return_status := Set_Attributes(
1812: x_return_status);
1813: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1814: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1815: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1816: RAISE OKC_API.G_EXCEPTION_ERROR;
1817: END IF;
1818: --- Setting item attributes
1819: l_return_status := Set_Attributes(
1820: p_inhv_rec, -- IN
1819: l_return_status := Set_Attributes(
1820: p_inhv_rec, -- IN
1821: x_inhv_rec); -- OUT
1822: --- If any errors happen abort API
1823: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1824: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1825: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1820: p_inhv_rec, -- IN
1821: x_inhv_rec); -- OUT
1822: --- If any errors happen abort API
1823: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1824: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1825: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1821: x_inhv_rec); -- OUT
1822: --- If any errors happen abort API
1823: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1824: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1825: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1822: --- If any errors happen abort API
1823: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1824: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1825: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1830: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1825: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1830: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1831: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1832: RAISE OKC_API.G_EXCEPTION_ERROR;
1833: END IF;
1826: RAISE OKC_API.G_EXCEPTION_ERROR;
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1830: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1831: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1832: RAISE OKC_API.G_EXCEPTION_ERROR;
1833: END IF;
1834: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
1827: END IF;
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1830: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1831: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1832: RAISE OKC_API.G_EXCEPTION_ERROR;
1833: END IF;
1834: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
1835: --- Validate all non-missing attributes (Item Level Validation)
1828: l_return_status := populate_new_record(l_inhv_rec, l_def_inhv_rec);
1829: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1830: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1831: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1832: RAISE OKC_API.G_EXCEPTION_ERROR;
1833: END IF;
1834: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
1835: --- Validate all non-missing attributes (Item Level Validation)
1836: l_return_status := Validate_Attributes(l_def_inhv_rec);
1834: l_def_inhv_rec := fill_who_columns(l_def_inhv_rec);
1835: --- Validate all non-missing attributes (Item Level Validation)
1836: l_return_status := Validate_Attributes(l_def_inhv_rec);
1837: --- If any errors happen abort API
1838: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1839: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1835: --- Validate all non-missing attributes (Item Level Validation)
1836: l_return_status := Validate_Attributes(l_def_inhv_rec);
1837: --- If any errors happen abort API
1838: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1839: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1836: l_return_status := Validate_Attributes(l_def_inhv_rec);
1837: --- If any errors happen abort API
1838: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1839: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1837: --- If any errors happen abort API
1838: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1839: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1845: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1845: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1846: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1847: RAISE OKC_API.G_EXCEPTION_ERROR;
1848: END IF;
1841: RAISE OKC_API.G_EXCEPTION_ERROR;
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1845: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1846: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1847: RAISE OKC_API.G_EXCEPTION_ERROR;
1848: END IF;
1849:
1842: END IF;
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1845: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1846: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1847: RAISE OKC_API.G_EXCEPTION_ERROR;
1848: END IF;
1849:
1850: -- Lock the Record
1843: l_return_status := Validate_Record(l_def_inhv_rec, l_db_inhv_rec);
1844: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1845: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1846: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1847: RAISE OKC_API.G_EXCEPTION_ERROR;
1848: END IF;
1849:
1850: -- Lock the Record
1851: lock_row(
1854: x_return_status => l_return_status,
1855: x_msg_count => x_msg_count,
1856: x_msg_data => x_msg_data,
1857: p_inhv_rec => p_inhv_rec);
1858: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1859: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1860: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1861: RAISE OKC_API.G_EXCEPTION_ERROR;
1862: END IF;
1855: x_msg_count => x_msg_count,
1856: x_msg_data => x_msg_data,
1857: p_inhv_rec => p_inhv_rec);
1858: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1859: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1860: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1861: RAISE OKC_API.G_EXCEPTION_ERROR;
1862: END IF;
1863:
1856: x_msg_data => x_msg_data,
1857: p_inhv_rec => p_inhv_rec);
1858: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1859: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1860: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1861: RAISE OKC_API.G_EXCEPTION_ERROR;
1862: END IF;
1863:
1864: -----------------------------------------
1857: p_inhv_rec => p_inhv_rec);
1858: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1859: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1860: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1861: RAISE OKC_API.G_EXCEPTION_ERROR;
1862: END IF;
1863:
1864: -----------------------------------------
1865: -- Move VIEW record to "Child" records --
1875: x_msg_data,
1876: l_inh_rec,
1877: lx_inh_rec
1878: );
1879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1882: RAISE OKC_API.G_EXCEPTION_ERROR;
1883: END IF;
1876: l_inh_rec,
1877: lx_inh_rec
1878: );
1879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1882: RAISE OKC_API.G_EXCEPTION_ERROR;
1883: END IF;
1884: migrate(lx_inh_rec, l_def_inhv_rec);
1877: lx_inh_rec
1878: );
1879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1882: RAISE OKC_API.G_EXCEPTION_ERROR;
1883: END IF;
1884: migrate(lx_inh_rec, l_def_inhv_rec);
1885: x_inhv_rec := l_def_inhv_rec;
1878: );
1879: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1880: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1881: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1882: RAISE OKC_API.G_EXCEPTION_ERROR;
1883: END IF;
1884: migrate(lx_inh_rec, l_def_inhv_rec);
1885: x_inhv_rec := l_def_inhv_rec;
1886: x_return_status := l_return_status;
1883: END IF;
1884: migrate(lx_inh_rec, l_def_inhv_rec);
1885: x_inhv_rec := l_def_inhv_rec;
1886: x_return_status := l_return_status;
1887: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1888: EXCEPTION
1889: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1890: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1891: (
1885: x_inhv_rec := l_def_inhv_rec;
1886: x_return_status := l_return_status;
1887: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1888: EXCEPTION
1889: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1890: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1891: (
1892: l_api_name,
1893: G_PKG_NAME,
1886: x_return_status := l_return_status;
1887: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1888: EXCEPTION
1889: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1890: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1891: (
1892: l_api_name,
1893: G_PKG_NAME,
1894: 'OKC_API.G_RET_STS_ERROR',
1890: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1891: (
1892: l_api_name,
1893: G_PKG_NAME,
1894: 'OKC_API.G_RET_STS_ERROR',
1895: x_msg_count,
1896: x_msg_data,
1897: '_PVT'
1898: );
1895: x_msg_count,
1896: x_msg_data,
1897: '_PVT'
1898: );
1899: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1900: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1901: (
1902: l_api_name,
1903: G_PKG_NAME,
1896: x_msg_data,
1897: '_PVT'
1898: );
1899: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1900: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1901: (
1902: l_api_name,
1903: G_PKG_NAME,
1904: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1900: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1901: (
1902: l_api_name,
1903: G_PKG_NAME,
1904: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1905: x_msg_count,
1906: x_msg_data,
1907: '_PVT'
1908: );
1906: x_msg_data,
1907: '_PVT'
1908: );
1909: WHEN OTHERS THEN
1910: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1911: (
1912: l_api_name,
1913: G_PKG_NAME,
1914: 'OTHERS',
1921: -- PL/SQL TBL update_row for:inhv_tbl --
1922: ----------------------------------------
1923: PROCEDURE update_row(
1924: p_api_version IN NUMBER,
1925: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1926: x_return_status OUT NOCOPY VARCHAR2,
1927: x_msg_count OUT NOCOPY NUMBER,
1928: x_msg_data OUT NOCOPY VARCHAR2,
1929: p_inhv_tbl IN inhv_tbl_type,
1927: x_msg_count OUT NOCOPY NUMBER,
1928: x_msg_data OUT NOCOPY VARCHAR2,
1929: p_inhv_tbl IN inhv_tbl_type,
1930: x_inhv_tbl OUT NOCOPY inhv_tbl_type,
1931: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
1932:
1933: l_api_version CONSTANT NUMBER := 1;
1934: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1935: i NUMBER := 0;
1933: l_api_version CONSTANT NUMBER := 1;
1934: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1935: i NUMBER := 0;
1936: BEGIN
1937: OKC_API.init_msg_list(p_init_msg_list);
1938: -- Make sure PL/SQL table has records in it before passing
1939: IF (p_inhv_tbl.COUNT > 0) THEN
1940: i := p_inhv_tbl.FIRST;
1941: LOOP
1939: IF (p_inhv_tbl.COUNT > 0) THEN
1940: i := p_inhv_tbl.FIRST;
1941: LOOP
1942: DECLARE
1943: l_error_rec OKC_API.ERROR_REC_TYPE;
1944: BEGIN
1945: l_error_rec.api_name := l_api_name;
1946: l_error_rec.api_package := G_PKG_NAME;
1947: l_error_rec.idx := i;
1946: l_error_rec.api_package := G_PKG_NAME;
1947: l_error_rec.idx := i;
1948: update_row (
1949: p_api_version => p_api_version,
1950: p_init_msg_list => OKC_API.G_FALSE,
1951: x_return_status => l_error_rec.error_type,
1952: x_msg_count => l_error_rec.msg_count,
1953: x_msg_data => l_error_rec.msg_data,
1954: p_inhv_rec => p_inhv_tbl(i),
1952: x_msg_count => l_error_rec.msg_count,
1953: x_msg_data => l_error_rec.msg_data,
1954: p_inhv_rec => p_inhv_tbl(i),
1955: x_inhv_rec => x_inhv_tbl(i));
1956: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1957: l_error_rec.sqlcode := SQLCODE;
1958: load_error_tbl(l_error_rec, px_error_tbl);
1959: ELSE
1960: x_msg_count := l_error_rec.msg_count;
1960: x_msg_count := l_error_rec.msg_count;
1961: x_msg_data := l_error_rec.msg_data;
1962: END IF;
1963: EXCEPTION
1964: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1965: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1966: l_error_rec.sqlcode := SQLCODE;
1967: load_error_tbl(l_error_rec, px_error_tbl);
1968: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1961: x_msg_data := l_error_rec.msg_data;
1962: END IF;
1963: EXCEPTION
1964: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1965: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1966: l_error_rec.sqlcode := SQLCODE;
1967: load_error_tbl(l_error_rec, px_error_tbl);
1968: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1969: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1964: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1965: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1966: l_error_rec.sqlcode := SQLCODE;
1967: load_error_tbl(l_error_rec, px_error_tbl);
1968: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1969: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1970: l_error_rec.sqlcode := SQLCODE;
1971: load_error_tbl(l_error_rec, px_error_tbl);
1972: WHEN OTHERS THEN
1965: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
1966: l_error_rec.sqlcode := SQLCODE;
1967: load_error_tbl(l_error_rec, px_error_tbl);
1968: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1969: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
1970: l_error_rec.sqlcode := SQLCODE;
1971: load_error_tbl(l_error_rec, px_error_tbl);
1972: WHEN OTHERS THEN
1973: l_error_rec.error_type := 'OTHERS';
1980: END IF;
1981: -- Loop through the error_tbl to find the error with the highest severity
1982: -- and return it.
1983: x_return_status := find_highest_exception(px_error_tbl);
1984: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1985: EXCEPTION
1986: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1987: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1988: (
1982: -- and return it.
1983: x_return_status := find_highest_exception(px_error_tbl);
1984: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1985: EXCEPTION
1986: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1987: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1988: (
1989: l_api_name,
1990: G_PKG_NAME,
1983: x_return_status := find_highest_exception(px_error_tbl);
1984: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1985: EXCEPTION
1986: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1987: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1988: (
1989: l_api_name,
1990: G_PKG_NAME,
1991: 'OKC_API.G_RET_STS_ERROR',
1987: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1988: (
1989: l_api_name,
1990: G_PKG_NAME,
1991: 'OKC_API.G_RET_STS_ERROR',
1992: x_msg_count,
1993: x_msg_data,
1994: '_PVT'
1995: );
1992: x_msg_count,
1993: x_msg_data,
1994: '_PVT'
1995: );
1996: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1997: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1998: (
1999: l_api_name,
2000: G_PKG_NAME,
1993: x_msg_data,
1994: '_PVT'
1995: );
1996: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1997: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1998: (
1999: l_api_name,
2000: G_PKG_NAME,
2001: 'OKC_API.G_RET_STS_UNEXP_ERROR',
1997: x_return_status := OKC_API.HANDLE_EXCEPTIONS
1998: (
1999: l_api_name,
2000: G_PKG_NAME,
2001: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2002: x_msg_count,
2003: x_msg_data,
2004: '_PVT'
2005: );
2003: x_msg_data,
2004: '_PVT'
2005: );
2006: WHEN OTHERS THEN
2007: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2008: (
2009: l_api_name,
2010: G_PKG_NAME,
2011: 'OTHERS',
2019: -- PL/SQL TBL update_row for:INHV_TBL --
2020: ----------------------------------------
2021: PROCEDURE update_row(
2022: p_api_version IN NUMBER,
2023: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2024: x_return_status OUT NOCOPY VARCHAR2,
2025: x_msg_count OUT NOCOPY NUMBER,
2026: x_msg_data OUT NOCOPY VARCHAR2,
2027: p_inhv_tbl IN inhv_tbl_type,
2028: x_inhv_tbl OUT NOCOPY inhv_tbl_type) IS
2029:
2030: l_api_version CONSTANT NUMBER := 1;
2031: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2032: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2033: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2034: BEGIN
2035: OKC_API.init_msg_list(p_init_msg_list);
2036: -- Make sure PL/SQL table has records in it before passing
2029:
2030: l_api_version CONSTANT NUMBER := 1;
2031: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2032: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2033: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2034: BEGIN
2035: OKC_API.init_msg_list(p_init_msg_list);
2036: -- Make sure PL/SQL table has records in it before passing
2037: IF (p_inhv_tbl.COUNT > 0) THEN
2031: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2032: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2033: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2034: BEGIN
2035: OKC_API.init_msg_list(p_init_msg_list);
2036: -- Make sure PL/SQL table has records in it before passing
2037: IF (p_inhv_tbl.COUNT > 0) THEN
2038: update_row (
2039: p_api_version => p_api_version,
2036: -- Make sure PL/SQL table has records in it before passing
2037: IF (p_inhv_tbl.COUNT > 0) THEN
2038: update_row (
2039: p_api_version => p_api_version,
2040: p_init_msg_list => OKC_API.G_FALSE,
2041: x_return_status => x_return_status,
2042: x_msg_count => x_msg_count,
2043: x_msg_data => x_msg_data,
2044: p_inhv_tbl => p_inhv_tbl,
2044: p_inhv_tbl => p_inhv_tbl,
2045: x_inhv_tbl => x_inhv_tbl,
2046: px_error_tbl => l_error_tbl);
2047: END IF;
2048: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2049: EXCEPTION
2050: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2051: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2052: (
2046: px_error_tbl => l_error_tbl);
2047: END IF;
2048: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2049: EXCEPTION
2050: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2051: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2052: (
2053: l_api_name,
2054: G_PKG_NAME,
2047: END IF;
2048: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2049: EXCEPTION
2050: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2051: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2052: (
2053: l_api_name,
2054: G_PKG_NAME,
2055: 'OKC_API.G_RET_STS_ERROR',
2051: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2052: (
2053: l_api_name,
2054: G_PKG_NAME,
2055: 'OKC_API.G_RET_STS_ERROR',
2056: x_msg_count,
2057: x_msg_data,
2058: '_PVT'
2059: );
2056: x_msg_count,
2057: x_msg_data,
2058: '_PVT'
2059: );
2060: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2061: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2062: (
2063: l_api_name,
2064: G_PKG_NAME,
2057: x_msg_data,
2058: '_PVT'
2059: );
2060: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2061: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2062: (
2063: l_api_name,
2064: G_PKG_NAME,
2065: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2061: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2062: (
2063: l_api_name,
2064: G_PKG_NAME,
2065: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2066: x_msg_count,
2067: x_msg_data,
2068: '_PVT'
2069: );
2067: x_msg_data,
2068: '_PVT'
2069: );
2070: WHEN OTHERS THEN
2071: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2072: (
2073: l_api_name,
2074: G_PKG_NAME,
2075: 'OTHERS',
2085: --------------------------------------------
2086: -- delete_row for:OKS_INTERACTION_HISTORY --
2087: --------------------------------------------
2088: PROCEDURE delete_row(
2089: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2090: x_return_status OUT NOCOPY VARCHAR2,
2091: x_msg_count OUT NOCOPY NUMBER,
2092: x_msg_data OUT NOCOPY VARCHAR2,
2093: p_inh_rec IN inh_rec_type) IS
2093: p_inh_rec IN inh_rec_type) IS
2094:
2095: l_api_version CONSTANT NUMBER := 1;
2096: l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
2097: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2098: l_inh_rec inh_rec_type := p_inh_rec;
2099: l_row_notfound BOOLEAN := TRUE;
2100: BEGIN
2101: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2097: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2098: l_inh_rec inh_rec_type := p_inh_rec;
2099: l_row_notfound BOOLEAN := TRUE;
2100: BEGIN
2101: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2102: p_init_msg_list,
2103: '_PVT',
2104: x_return_status);
2105: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2101: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2102: p_init_msg_list,
2103: '_PVT',
2104: x_return_status);
2105: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2106: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2107: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2108: RAISE OKC_API.G_EXCEPTION_ERROR;
2109: END IF;
2102: p_init_msg_list,
2103: '_PVT',
2104: x_return_status);
2105: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2106: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2107: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2108: RAISE OKC_API.G_EXCEPTION_ERROR;
2109: END IF;
2110:
2103: '_PVT',
2104: x_return_status);
2105: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2106: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2107: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2108: RAISE OKC_API.G_EXCEPTION_ERROR;
2109: END IF;
2110:
2111: DELETE FROM OKS_INTERACTION_HISTORY
2104: x_return_status);
2105: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2106: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2107: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2108: RAISE OKC_API.G_EXCEPTION_ERROR;
2109: END IF;
2110:
2111: DELETE FROM OKS_INTERACTION_HISTORY
2112: WHERE ID = p_inh_rec.id;
2111: DELETE FROM OKS_INTERACTION_HISTORY
2112: WHERE ID = p_inh_rec.id;
2113:
2114: x_return_status := l_return_status;
2115: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2116: EXCEPTION
2117: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2118: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2119: (
2113:
2114: x_return_status := l_return_status;
2115: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2116: EXCEPTION
2117: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2118: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2119: (
2120: l_api_name,
2121: G_PKG_NAME,
2114: x_return_status := l_return_status;
2115: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2116: EXCEPTION
2117: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2118: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2119: (
2120: l_api_name,
2121: G_PKG_NAME,
2122: 'OKC_API.G_RET_STS_ERROR',
2118: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2119: (
2120: l_api_name,
2121: G_PKG_NAME,
2122: 'OKC_API.G_RET_STS_ERROR',
2123: x_msg_count,
2124: x_msg_data,
2125: '_PVT'
2126: );
2123: x_msg_count,
2124: x_msg_data,
2125: '_PVT'
2126: );
2127: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2128: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2129: (
2130: l_api_name,
2131: G_PKG_NAME,
2124: x_msg_data,
2125: '_PVT'
2126: );
2127: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2128: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2129: (
2130: l_api_name,
2131: G_PKG_NAME,
2132: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2128: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2129: (
2130: l_api_name,
2131: G_PKG_NAME,
2132: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2133: x_msg_count,
2134: x_msg_data,
2135: '_PVT'
2136: );
2134: x_msg_data,
2135: '_PVT'
2136: );
2137: WHEN OTHERS THEN
2138: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2139: (
2140: l_api_name,
2141: G_PKG_NAME,
2142: 'OTHERS',
2149: -- delete_row for:OKS_INTERACTION_HIST_V --
2150: -------------------------------------------
2151: PROCEDURE delete_row(
2152: p_api_version IN NUMBER,
2153: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2154: x_return_status OUT NOCOPY VARCHAR2,
2155: x_msg_count OUT NOCOPY NUMBER,
2156: x_msg_data OUT NOCOPY VARCHAR2,
2157: p_inhv_rec IN inhv_rec_type) IS
2157: p_inhv_rec IN inhv_rec_type) IS
2158:
2159: l_api_version CONSTANT NUMBER := 1;
2160: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
2161: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2162: l_inhv_rec inhv_rec_type := p_inhv_rec;
2163: l_inh_rec inh_rec_type;
2164: BEGIN
2165: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2161: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2162: l_inhv_rec inhv_rec_type := p_inhv_rec;
2163: l_inh_rec inh_rec_type;
2164: BEGIN
2165: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2166: G_PKG_NAME,
2167: p_init_msg_list,
2168: l_api_version,
2169: p_api_version,
2168: l_api_version,
2169: p_api_version,
2170: '_PVT',
2171: x_return_status);
2172: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2173: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2174: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2175: RAISE OKC_API.G_EXCEPTION_ERROR;
2176: END IF;
2169: p_api_version,
2170: '_PVT',
2171: x_return_status);
2172: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2173: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2174: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2175: RAISE OKC_API.G_EXCEPTION_ERROR;
2176: END IF;
2177: -----------------------------------------
2170: '_PVT',
2171: x_return_status);
2172: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2173: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2174: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2175: RAISE OKC_API.G_EXCEPTION_ERROR;
2176: END IF;
2177: -----------------------------------------
2178: -- Move VIEW record to "Child" records --
2171: x_return_status);
2172: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2173: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2174: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2175: RAISE OKC_API.G_EXCEPTION_ERROR;
2176: END IF;
2177: -----------------------------------------
2178: -- Move VIEW record to "Child" records --
2179: -----------------------------------------
2187: x_msg_count,
2188: x_msg_data,
2189: l_inh_rec
2190: );
2191: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2192: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2193: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2194: RAISE OKC_API.G_EXCEPTION_ERROR;
2195: END IF;
2188: x_msg_data,
2189: l_inh_rec
2190: );
2191: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2192: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2193: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2194: RAISE OKC_API.G_EXCEPTION_ERROR;
2195: END IF;
2196: x_return_status := l_return_status;
2189: l_inh_rec
2190: );
2191: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2192: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2193: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2194: RAISE OKC_API.G_EXCEPTION_ERROR;
2195: END IF;
2196: x_return_status := l_return_status;
2197: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2190: );
2191: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2192: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2193: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2194: RAISE OKC_API.G_EXCEPTION_ERROR;
2195: END IF;
2196: x_return_status := l_return_status;
2197: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2198: EXCEPTION
2193: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2194: RAISE OKC_API.G_EXCEPTION_ERROR;
2195: END IF;
2196: x_return_status := l_return_status;
2197: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2198: EXCEPTION
2199: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2200: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2201: (
2195: END IF;
2196: x_return_status := l_return_status;
2197: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2198: EXCEPTION
2199: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2200: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2201: (
2202: l_api_name,
2203: G_PKG_NAME,
2196: x_return_status := l_return_status;
2197: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2198: EXCEPTION
2199: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2200: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2201: (
2202: l_api_name,
2203: G_PKG_NAME,
2204: 'OKC_API.G_RET_STS_ERROR',
2200: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2201: (
2202: l_api_name,
2203: G_PKG_NAME,
2204: 'OKC_API.G_RET_STS_ERROR',
2205: x_msg_count,
2206: x_msg_data,
2207: '_PVT'
2208: );
2205: x_msg_count,
2206: x_msg_data,
2207: '_PVT'
2208: );
2209: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2210: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2211: (
2212: l_api_name,
2213: G_PKG_NAME,
2206: x_msg_data,
2207: '_PVT'
2208: );
2209: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2210: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2211: (
2212: l_api_name,
2213: G_PKG_NAME,
2214: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2210: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2211: (
2212: l_api_name,
2213: G_PKG_NAME,
2214: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2215: x_msg_count,
2216: x_msg_data,
2217: '_PVT'
2218: );
2216: x_msg_data,
2217: '_PVT'
2218: );
2219: WHEN OTHERS THEN
2220: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2221: (
2222: l_api_name,
2223: G_PKG_NAME,
2224: 'OTHERS',
2231: -- PL/SQL TBL delete_row for:OKS_INTERACTION_HIST_V --
2232: ------------------------------------------------------
2233: PROCEDURE delete_row(
2234: p_api_version IN NUMBER,
2235: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2236: x_return_status OUT NOCOPY VARCHAR2,
2237: x_msg_count OUT NOCOPY NUMBER,
2238: x_msg_data OUT NOCOPY VARCHAR2,
2239: p_inhv_tbl IN inhv_tbl_type,
2236: x_return_status OUT NOCOPY VARCHAR2,
2237: x_msg_count OUT NOCOPY NUMBER,
2238: x_msg_data OUT NOCOPY VARCHAR2,
2239: p_inhv_tbl IN inhv_tbl_type,
2240: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
2241:
2242: l_api_version CONSTANT NUMBER := 1;
2243: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2244: i NUMBER := 0;
2242: l_api_version CONSTANT NUMBER := 1;
2243: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2244: i NUMBER := 0;
2245: BEGIN
2246: OKC_API.init_msg_list(p_init_msg_list);
2247: -- Make sure PL/SQL table has records in it before passing
2248: IF (p_inhv_tbl.COUNT > 0) THEN
2249: i := p_inhv_tbl.FIRST;
2250: LOOP
2248: IF (p_inhv_tbl.COUNT > 0) THEN
2249: i := p_inhv_tbl.FIRST;
2250: LOOP
2251: DECLARE
2252: l_error_rec OKC_API.ERROR_REC_TYPE;
2253: BEGIN
2254: l_error_rec.api_name := l_api_name;
2255: l_error_rec.api_package := G_PKG_NAME;
2256: l_error_rec.idx := i;
2255: l_error_rec.api_package := G_PKG_NAME;
2256: l_error_rec.idx := i;
2257: delete_row (
2258: p_api_version => p_api_version,
2259: p_init_msg_list => OKC_API.G_FALSE,
2260: x_return_status => l_error_rec.error_type,
2261: x_msg_count => l_error_rec.msg_count,
2262: x_msg_data => l_error_rec.msg_data,
2263: p_inhv_rec => p_inhv_tbl(i));
2260: x_return_status => l_error_rec.error_type,
2261: x_msg_count => l_error_rec.msg_count,
2262: x_msg_data => l_error_rec.msg_data,
2263: p_inhv_rec => p_inhv_tbl(i));
2264: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
2265: l_error_rec.sqlcode := SQLCODE;
2266: load_error_tbl(l_error_rec, px_error_tbl);
2267: ELSE
2268: x_msg_count := l_error_rec.msg_count;
2268: x_msg_count := l_error_rec.msg_count;
2269: x_msg_data := l_error_rec.msg_data;
2270: END IF;
2271: EXCEPTION
2272: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2273: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
2274: l_error_rec.sqlcode := SQLCODE;
2275: load_error_tbl(l_error_rec, px_error_tbl);
2276: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2269: x_msg_data := l_error_rec.msg_data;
2270: END IF;
2271: EXCEPTION
2272: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2273: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
2274: l_error_rec.sqlcode := SQLCODE;
2275: load_error_tbl(l_error_rec, px_error_tbl);
2276: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2277: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
2272: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2273: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
2274: l_error_rec.sqlcode := SQLCODE;
2275: load_error_tbl(l_error_rec, px_error_tbl);
2276: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2277: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
2278: l_error_rec.sqlcode := SQLCODE;
2279: load_error_tbl(l_error_rec, px_error_tbl);
2280: WHEN OTHERS THEN
2273: l_error_rec.error_type := OKC_API.G_RET_STS_ERROR;
2274: l_error_rec.sqlcode := SQLCODE;
2275: load_error_tbl(l_error_rec, px_error_tbl);
2276: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2277: l_error_rec.error_type := OKC_API.G_RET_STS_UNEXP_ERROR;
2278: l_error_rec.sqlcode := SQLCODE;
2279: load_error_tbl(l_error_rec, px_error_tbl);
2280: WHEN OTHERS THEN
2281: l_error_rec.error_type := 'OTHERS';
2288: END IF;
2289: -- Loop through the error_tbl to find the error with the highest severity
2290: -- and return it.
2291: x_return_status := find_highest_exception(px_error_tbl);
2292: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2293: EXCEPTION
2294: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2295: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2296: (
2290: -- and return it.
2291: x_return_status := find_highest_exception(px_error_tbl);
2292: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2293: EXCEPTION
2294: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2295: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2296: (
2297: l_api_name,
2298: G_PKG_NAME,
2291: x_return_status := find_highest_exception(px_error_tbl);
2292: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2293: EXCEPTION
2294: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2295: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2296: (
2297: l_api_name,
2298: G_PKG_NAME,
2299: 'OKC_API.G_RET_STS_ERROR',
2295: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2296: (
2297: l_api_name,
2298: G_PKG_NAME,
2299: 'OKC_API.G_RET_STS_ERROR',
2300: x_msg_count,
2301: x_msg_data,
2302: '_PVT'
2303: );
2300: x_msg_count,
2301: x_msg_data,
2302: '_PVT'
2303: );
2304: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2305: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2306: (
2307: l_api_name,
2308: G_PKG_NAME,
2301: x_msg_data,
2302: '_PVT'
2303: );
2304: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2305: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2306: (
2307: l_api_name,
2308: G_PKG_NAME,
2309: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2305: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2306: (
2307: l_api_name,
2308: G_PKG_NAME,
2309: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2310: x_msg_count,
2311: x_msg_data,
2312: '_PVT'
2313: );
2311: x_msg_data,
2312: '_PVT'
2313: );
2314: WHEN OTHERS THEN
2315: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2316: (
2317: l_api_name,
2318: G_PKG_NAME,
2319: 'OTHERS',
2327: -- PL/SQL TBL delete_row for:OKS_INTERACTION_HIST_V --
2328: ------------------------------------------------------
2329: PROCEDURE delete_row(
2330: p_api_version IN NUMBER,
2331: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2332: x_return_status OUT NOCOPY VARCHAR2,
2333: x_msg_count OUT NOCOPY NUMBER,
2334: x_msg_data OUT NOCOPY VARCHAR2,
2335: p_inhv_tbl IN inhv_tbl_type) IS
2335: p_inhv_tbl IN inhv_tbl_type) IS
2336:
2337: l_api_version CONSTANT NUMBER := 1;
2338: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2339: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2340: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2341: BEGIN
2342: OKC_API.init_msg_list(p_init_msg_list);
2343: -- Make sure PL/SQL table has records in it before passing
2336:
2337: l_api_version CONSTANT NUMBER := 1;
2338: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2339: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2340: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2341: BEGIN
2342: OKC_API.init_msg_list(p_init_msg_list);
2343: -- Make sure PL/SQL table has records in it before passing
2344: IF (p_inhv_tbl.COUNT > 0) THEN
2338: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2339: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2340: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2341: BEGIN
2342: OKC_API.init_msg_list(p_init_msg_list);
2343: -- Make sure PL/SQL table has records in it before passing
2344: IF (p_inhv_tbl.COUNT > 0) THEN
2345: delete_row (
2346: p_api_version => p_api_version,
2343: -- Make sure PL/SQL table has records in it before passing
2344: IF (p_inhv_tbl.COUNT > 0) THEN
2345: delete_row (
2346: p_api_version => p_api_version,
2347: p_init_msg_list => OKC_API.G_FALSE,
2348: x_return_status => x_return_status,
2349: x_msg_count => x_msg_count,
2350: x_msg_data => x_msg_data,
2351: p_inhv_tbl => p_inhv_tbl,
2350: x_msg_data => x_msg_data,
2351: p_inhv_tbl => p_inhv_tbl,
2352: px_error_tbl => l_error_tbl);
2353: END IF;
2354: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2355: EXCEPTION
2356: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2357: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2358: (
2352: px_error_tbl => l_error_tbl);
2353: END IF;
2354: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2355: EXCEPTION
2356: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2357: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2358: (
2359: l_api_name,
2360: G_PKG_NAME,
2353: END IF;
2354: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2355: EXCEPTION
2356: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2357: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2358: (
2359: l_api_name,
2360: G_PKG_NAME,
2361: 'OKC_API.G_RET_STS_ERROR',
2357: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2358: (
2359: l_api_name,
2360: G_PKG_NAME,
2361: 'OKC_API.G_RET_STS_ERROR',
2362: x_msg_count,
2363: x_msg_data,
2364: '_PVT'
2365: );
2362: x_msg_count,
2363: x_msg_data,
2364: '_PVT'
2365: );
2366: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2367: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2368: (
2369: l_api_name,
2370: G_PKG_NAME,
2363: x_msg_data,
2364: '_PVT'
2365: );
2366: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2367: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2368: (
2369: l_api_name,
2370: G_PKG_NAME,
2371: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2367: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2368: (
2369: l_api_name,
2370: G_PKG_NAME,
2371: 'OKC_API.G_RET_STS_UNEXP_ERROR',
2372: x_msg_count,
2373: x_msg_data,
2374: '_PVT'
2375: );
2373: x_msg_data,
2374: '_PVT'
2375: );
2376: WHEN OTHERS THEN
2377: x_return_status := OKC_API.HANDLE_EXCEPTIONS
2378: (
2379: l_api_name,
2380: G_PKG_NAME,
2381: 'OTHERS',