34: ID,
35: OBJECT_VERSION_NUMBER,
36: NAME,
37: VERSION,
38: NVL(DESCRIPTION,Okl_Api.G_MISS_CHAR) DESCRIPTION,
39: AES_ID,
40: PTL_ID,
41: REPORTING_PDT_ID,
42: NVL(LEGACY_PRODUCT_YN, Okl_Api.G_MISS_CHAR) LEGACY_PRODUCT_YN,
38: NVL(DESCRIPTION,Okl_Api.G_MISS_CHAR) DESCRIPTION,
39: AES_ID,
40: PTL_ID,
41: REPORTING_PDT_ID,
42: NVL(LEGACY_PRODUCT_YN, Okl_Api.G_MISS_CHAR) LEGACY_PRODUCT_YN,
43: FROM_DATE,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
40: PTL_ID,
41: REPORTING_PDT_ID,
42: NVL(LEGACY_PRODUCT_YN, Okl_Api.G_MISS_CHAR) LEGACY_PRODUCT_YN,
43: FROM_DATE,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
41: REPORTING_PDT_ID,
42: NVL(LEGACY_PRODUCT_YN, Okl_Api.G_MISS_CHAR) LEGACY_PRODUCT_YN,
43: FROM_DATE,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
42: NVL(LEGACY_PRODUCT_YN, Okl_Api.G_MISS_CHAR) LEGACY_PRODUCT_YN,
43: FROM_DATE,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
43: FROM_DATE,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
44: NVL(TO_DATE,Okl_Api.G_MISS_DATE) TO_DATE,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
45: NVL(product_status_code, Okl_Api.G_MISS_CHAR) product_status_code,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
46: NVL(ATTRIBUTE_CATEGORY, Okl_Api.G_MISS_CHAR) ATTRIBUTE_CATEGORY,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
47: NVL(ATTRIBUTE1, Okl_Api.G_MISS_CHAR) ATTRIBUTE1,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
48: NVL(ATTRIBUTE2, Okl_Api.G_MISS_CHAR) ATTRIBUTE2,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
49: NVL(ATTRIBUTE3, Okl_Api.G_MISS_CHAR) ATTRIBUTE3,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
50: NVL(ATTRIBUTE4, Okl_Api.G_MISS_CHAR) ATTRIBUTE4,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
51: NVL(ATTRIBUTE5, Okl_Api.G_MISS_CHAR) ATTRIBUTE5,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
52: NVL(ATTRIBUTE6, Okl_Api.G_MISS_CHAR) ATTRIBUTE6,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
53: NVL(ATTRIBUTE7, Okl_Api.G_MISS_CHAR) ATTRIBUTE7,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
61: NVL(ATTRIBUTE15, Okl_Api.G_MISS_CHAR) ATTRIBUTE15,
54: NVL(ATTRIBUTE8, Okl_Api.G_MISS_CHAR) ATTRIBUTE8,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
61: NVL(ATTRIBUTE15, Okl_Api.G_MISS_CHAR) ATTRIBUTE15,
62: CREATED_BY,
55: NVL(ATTRIBUTE9, Okl_Api.G_MISS_CHAR) ATTRIBUTE9,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
61: NVL(ATTRIBUTE15, Okl_Api.G_MISS_CHAR) ATTRIBUTE15,
62: CREATED_BY,
63: CREATION_DATE,
56: NVL(ATTRIBUTE10, Okl_Api.G_MISS_CHAR) ATTRIBUTE10,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
61: NVL(ATTRIBUTE15, Okl_Api.G_MISS_CHAR) ATTRIBUTE15,
62: CREATED_BY,
63: CREATION_DATE,
64: LAST_UPDATED_BY,
57: NVL(ATTRIBUTE11, Okl_Api.G_MISS_CHAR) ATTRIBUTE11,
58: NVL(ATTRIBUTE12, Okl_Api.G_MISS_CHAR) ATTRIBUTE12,
59: NVL(ATTRIBUTE13, Okl_Api.G_MISS_CHAR) ATTRIBUTE13,
60: NVL(ATTRIBUTE14, Okl_Api.G_MISS_CHAR) ATTRIBUTE14,
61: NVL(ATTRIBUTE15, Okl_Api.G_MISS_CHAR) ATTRIBUTE15,
62: CREATED_BY,
63: CREATION_DATE,
64: LAST_UPDATED_BY,
65: LAST_UPDATE_DATE,
62: CREATED_BY,
63: CREATION_DATE,
64: LAST_UPDATED_BY,
65: LAST_UPDATE_DATE,
66: NVL(LAST_UPDATE_LOGIN, Okl_Api.G_MISS_NUM) LAST_UPDATE_LOGIN
67: FROM Okl_Products_V
68: WHERE okl_products_v.id = p_id;
69: l_okl_pdtv_pk okl_pdtv_pk_csr%ROWTYPE;
70: l_pdtv_rec pdtv_rec_type;
68: WHERE okl_products_v.id = p_id;
69: l_okl_pdtv_pk okl_pdtv_pk_csr%ROWTYPE;
70: l_pdtv_rec pdtv_rec_type;
71: BEGIN
72: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
73: x_no_data_found := TRUE;
74:
75: -- Get current database values
76: OPEN okl_pdtv_pk_csr (p_pdtv_rec.id);
116: x_pdtv_rec := l_pdtv_rec;
117: EXCEPTION
118: WHEN OTHERS THEN
119: -- store SQL error message on message stack
120: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
121: p_msg_name => G_UNEXPECTED_ERROR,
122: p_token1 => G_SQLCODE_TOKEN,
123: p_token1_value => SQLCODE,
124: p_token2 => G_SQLERRM_TOKEN,
123: p_token1_value => SQLCODE,
124: p_token2 => G_SQLERRM_TOKEN,
125: p_token2_value => SQLERRM);
126: -- notify UNEXPECTED error for calling API.
127: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
128:
129: IF (okl_pdtv_pk_csr%ISOPEN) THEN
130: CLOSE okl_pdtv_pk_csr;
131: END IF;
138: ---------------------------------------------------------------------------
139:
140: PROCEDURE delete_pdt_pqy_vals(
141: p_api_version IN NUMBER
142: ,p_init_msg_list IN VARCHAR2 DEFAULT okl_api.G_FALSE
143: ,x_return_status OUT NOCOPY VARCHAR2
144: ,x_msg_count OUT NOCOPY NUMBER
145: ,x_msg_data OUT NOCOPY VARCHAR2
146: ,p_pdtv_rec IN pdtv_rec_type) IS
144: ,x_msg_count OUT NOCOPY NUMBER
145: ,x_msg_data OUT NOCOPY VARCHAR2
146: ,p_pdtv_rec IN pdtv_rec_type) IS
147: i PLS_INTEGER :=0;
148: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
149: l_del_pqvv_tbl OKL_PQY_VALUES_PUB.pqvv_tbl_type;
150:
151: CURSOR pqv_csr IS
152: SELECT pqvv.id
185: END IF;
186:
187: -- End of wraper code generated automatically by Debug code generator for OKL_PQY_VALUES_PUB.delete_pqy_values
188:
189: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
190: RAISE G_EXCEPTION_HALT_PROCESSING;
191: ELSE
192:
193: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
189: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
190: RAISE G_EXCEPTION_HALT_PROCESSING;
191: ELSE
192:
193: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
194:
195: l_return_status := x_return_status;
196:
197: END IF;
201: EXCEPTION
202: WHEN G_EXCEPTION_HALT_PROCESSING THEN
203: NULL;
204: WHEN OTHERS THEN
205: Okl_Api.SET_MESSAGE(p_app_name => g_app_name
206: ,p_msg_name => g_unexpected_error
207: ,p_token1 => g_sqlcode_token
208: ,p_token1_value => SQLCODE
209: ,p_token2 => g_sqlerrm_token
208: ,p_token1_value => SQLCODE
209: ,p_token2 => g_sqlerrm_token
210: ,p_token2_value => SQLERRM);
211:
212: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
213: END delete_pdt_pqy_vals;
214:
215: ---------------------------------------------------------------------------
216: -- PROCEDURE delete_pdt_psy_vals for: OKL_PDT_PQY_VALS
218: ---------------------------------------------------------------------------
219:
220: PROCEDURE delete_pdt_psys(
221: p_api_version IN NUMBER
222: ,p_init_msg_list IN VARCHAR2 DEFAULT okl_api.G_FALSE
223: ,x_return_status OUT NOCOPY VARCHAR2
224: ,x_msg_count OUT NOCOPY NUMBER
225: ,x_msg_data OUT NOCOPY VARCHAR2
226: ,p_pdtv_rec IN pdtv_rec_type) IS
224: ,x_msg_count OUT NOCOPY NUMBER
225: ,x_msg_data OUT NOCOPY VARCHAR2
226: ,p_pdtv_rec IN pdtv_rec_type) IS
227: i PLS_INTEGER :=0;
228: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
229: l_del_psyv_tbl Okl_Pdt_Stys_Pub.psyv_tbl_type;
230:
231: CURSOR psy_csr IS
232: SELECT psyv.id
250: x_msg_data => x_msg_data,
251: p_psyv_tbl => l_del_psyv_tbl);
252:
253:
254: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
255: RAISE G_EXCEPTION_HALT_PROCESSING;
256: ELSE
257: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
258: l_return_status := x_return_status;
253:
254: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
255: RAISE G_EXCEPTION_HALT_PROCESSING;
256: ELSE
257: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
258: l_return_status := x_return_status;
259: END IF;
260: END IF;
261: END IF;
263: EXCEPTION
264: WHEN G_EXCEPTION_HALT_PROCESSING THEN
265: NULL;
266: WHEN OTHERS THEN
267: Okl_Api.SET_MESSAGE(p_app_name => g_app_name
268: ,p_msg_name => g_unexpected_error
269: ,p_token1 => g_sqlcode_token
270: ,p_token1_value => SQLCODE
271: ,p_token2 => g_sqlerrm_token
270: ,p_token1_value => SQLCODE
271: ,p_token2 => g_sqlerrm_token
272: ,p_token2_value => SQLERRM);
273:
274: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
275: END delete_pdt_psys;
276:
277:
278: ---------------------------------------------------------------------------
285: ---------------------------------------------------------------------------
286:
287: PROCEDURE Check_Constraints (
288: p_api_version IN NUMBER,
289: p_init_msg_list IN VARCHAR2 DEFAULT okl_api.G_FALSE,
290: x_msg_count OUT NOCOPY NUMBER,
291: x_msg_data OUT NOCOPY VARCHAR2,
292: p_upd_pdtv_rec IN pdtv_rec_type,
293: p_pdtv_rec IN pdtv_rec_type,
419: l_lease_values_miss_cnt NUMBER(4):=0;
420: l_taxown_values_miss_cnt NUMBER(4):=0;
421: l_sec_values_miss_cnt NUMBER(4):=0;
422: l_invalid_product_cnt NUMBER(4):=0;
423: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
424: l_row_found BOOLEAN := FALSE;
425: l_check VARCHAR2(1) := '?';
426: l_row_not_found BOOLEAN := FALSE;
427: l_name okl_products_v.name%TYPE;
427: l_name okl_products_v.name%TYPE;
428: l_to_date okl_products_v.TO_DATE%TYPE;
429: BEGIN
430: x_valid := TRUE;
431: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
432:
433: l_token_1 := Okl_Accounting_Util.Get_Message_Token(p_region_code => 'OKL_LP_PRODUCT_SERCH',
434: p_attribute_code => 'OKL_PRODUCTS');
435:
458: l_token_10 := Okl_Accounting_Util.Get_Message_Token(p_region_code => 'OKL_LP_PRODUCT_CRUPD',
459: p_attribute_code => 'OKL_PRODUCT');
460:
461: -- Halt the processing if the Product is active(used by a contract).
462: IF p_pdtv_rec.id <> Okl_Api.G_MISS_NUM THEN
463: OPEN okl_pdtv_chk(p_upd_pdtv_rec.id);
464:
465:
466: FETCH okl_pdtv_chk INTO l_check;
468: CLOSE okl_pdtv_chk;
469:
470: IF l_row_not_found = FALSE THEN
471:
472: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
473: p_msg_name => G_IN_USE,
474: p_token1 => G_PARENT_TABLE_TOKEN,
475: p_token1_value => l_token_10,
476: p_token2 => G_CHILD_TABLE_TOKEN,
476: p_token2 => G_CHILD_TABLE_TOKEN,
477: p_token2_value => l_token_9);
478:
479:
480: x_return_status := OKL_API.G_RET_STS_ERROR;
481: RAISE G_EXCEPTION_HALT_PROCESSING;
482: END IF;
483: END IF;
484:
484:
485:
486:
487: -- Fix for g_miss_date
488: IF p_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE THEN
489: l_to_date := NULL;
490: ELSE
491: l_to_date := p_pdtv_rec.TO_DATE;
492: END IF;
490: ELSE
491: l_to_date := p_pdtv_rec.TO_DATE;
492: END IF;
493:
494: IF p_pdtv_rec.id = Okl_Api.G_MISS_NUM THEN
495: l_name := Okl_Accounting_Util.okl_upper(p_pdtv_rec.name);
496:
497: OPEN c1(l_name,
498: p_pdtv_rec.version);
502: IF l_row_found THEN
503:
504:
505:
506: Okl_Api.set_message('OKL',G_UNQS, G_TABLE_TOKEN, l_token_1);
507: x_return_status := Okl_Api.G_RET_STS_ERROR;
508: x_valid := FALSE;
509: RAISE G_EXCEPTION_HALT_PROCESSING;
510: END IF;
503:
504:
505:
506: Okl_Api.set_message('OKL',G_UNQS, G_TABLE_TOKEN, l_token_1);
507: x_return_status := Okl_Api.G_RET_STS_ERROR;
508: x_valid := FALSE;
509: RAISE G_EXCEPTION_HALT_PROCESSING;
510: END IF;
511: END IF;
510: END IF;
511: END IF;
512:
513:
514: IF p_pdtv_rec.id <> Okl_Api.G_MISS_NUM AND
515: p_db_pdtv_rec.aes_id <> p_pdtv_rec.aes_id THEN
516: SELECT COUNT(aes.id)
517: INTO l_pdt_psy_changed
518: FROM
530: x_msg_count => x_msg_count,
531: x_msg_data => x_msg_data,
532: p_pdtv_rec => p_pdtv_rec);
533:
534: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
535:
536:
537: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
538: RAISE G_EXCEPTION_HALT_PROCESSING;
533:
534: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
535:
536:
537: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
538: RAISE G_EXCEPTION_HALT_PROCESSING;
539: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
540:
541:
535:
536:
537: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
538: RAISE G_EXCEPTION_HALT_PROCESSING;
539: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
540:
541:
542: x_return_status := Okl_Api.G_RET_STS_ERROR;
543: RAISE G_EXCEPTION_HALT_PROCESSING;
538: RAISE G_EXCEPTION_HALT_PROCESSING;
539: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
540:
541:
542: x_return_status := Okl_Api.G_RET_STS_ERROR;
543: RAISE G_EXCEPTION_HALT_PROCESSING;
544:
545: END IF;
546:
562: AND pdq.ptl_id = p_pdtv_rec.ptl_id
563: AND pqy.name = 'INVESTOR';
564:
565: IF l_invalid_product_cnt > 0 AND (p_upd_pdtv_rec.reporting_pdt_id IS NOT NULL AND
566: p_upd_pdtv_rec.reporting_pdt_id <> OKL_API.G_MISS_NUM) THEN
567:
568:
569: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
570: p_msg_name => G_INVALID_PDT);
565: IF l_invalid_product_cnt > 0 AND (p_upd_pdtv_rec.reporting_pdt_id IS NOT NULL AND
566: p_upd_pdtv_rec.reporting_pdt_id <> OKL_API.G_MISS_NUM) THEN
567:
568:
569: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
570: p_msg_name => G_INVALID_PDT);
571: x_valid := FALSE;
572: x_return_status := Okl_Api.G_RET_STS_ERROR;
573: RAISE G_EXCEPTION_HALT_PROCESSING;
568:
569: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
570: p_msg_name => G_INVALID_PDT);
571: x_valid := FALSE;
572: x_return_status := Okl_Api.G_RET_STS_ERROR;
573: RAISE G_EXCEPTION_HALT_PROCESSING;
574: END IF;
575:
576: -- CHECK TO verify if atlease one quality LEASE BOOK CLASSIFICATION /TAX OWNER oR
587:
588: IF l_quality_miss_cnt = 0 THEN
589:
590:
591: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
592: p_msg_name => G_LEASE_SEC_TAXOWN_MISS);
593: x_valid := FALSE;
594: x_return_status := Okl_Api.G_RET_STS_ERROR;
595: RAISE G_EXCEPTION_HALT_PROCESSING;
590:
591: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
592: p_msg_name => G_LEASE_SEC_TAXOWN_MISS);
593: x_valid := FALSE;
594: x_return_status := Okl_Api.G_RET_STS_ERROR;
595: RAISE G_EXCEPTION_HALT_PROCESSING;
596: ELSE
597: -- CHECK TO verify if all the quality attached to the product have values defined
598: FOR csr_rec in choose_qlty_csr(p_pdtv_rec.ptl_id)
597: -- CHECK TO verify if all the quality attached to the product have values defined
598: FOR csr_rec in choose_qlty_csr(p_pdtv_rec.ptl_id)
599: LOOP
600:
601: IF p_pdtv_rec.id <> Okl_Api.G_MISS_NUM AND
602: p_db_pdtv_rec.ptl_id <> p_pdtv_rec.ptl_id THEN
603: SELECT COUNT(pqv.id)
604:
605: INTO l_pdt_ptl_changed
621: x_msg_count => x_msg_count,
622: x_msg_data => x_msg_data,
623: p_pdtv_rec => p_pdtv_rec);
624:
625: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
626: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
627: RAISE G_EXCEPTION_HALT_PROCESSING;
628: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
629: x_return_status := Okl_Api.G_RET_STS_ERROR;
622: x_msg_data => x_msg_data,
623: p_pdtv_rec => p_pdtv_rec);
624:
625: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
626: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
627: RAISE G_EXCEPTION_HALT_PROCESSING;
628: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
629: x_return_status := Okl_Api.G_RET_STS_ERROR;
630: RAISE G_EXCEPTION_HALT_PROCESSING;
624:
625: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
626: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
627: RAISE G_EXCEPTION_HALT_PROCESSING;
628: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
629: x_return_status := Okl_Api.G_RET_STS_ERROR;
630: RAISE G_EXCEPTION_HALT_PROCESSING;
631: END IF;
632:
625: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
626: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
627: RAISE G_EXCEPTION_HALT_PROCESSING;
628: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR)THEN
629: x_return_status := Okl_Api.G_RET_STS_ERROR;
630: RAISE G_EXCEPTION_HALT_PROCESSING;
631: END IF;
632:
633: END IF;
644: IF l_lease_values_miss_cnt <> 5 THEN
645:
646:
647:
648: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
649: p_msg_name => G_LEASE_VALUES_MISS);
650: x_valid := FALSE;
651: x_return_status := Okl_Api.G_RET_STS_ERROR;
652: RAISE G_EXCEPTION_HALT_PROCESSING;
647:
648: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
649: p_msg_name => G_LEASE_VALUES_MISS);
650: x_valid := FALSE;
651: x_return_status := Okl_Api.G_RET_STS_ERROR;
652: RAISE G_EXCEPTION_HALT_PROCESSING;
653: END IF;
654:
655: END IF;
663:
664: IF l_taxown_values_miss_cnt <> 2 THEN
665:
666:
667: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
668: p_msg_name => G_TAXOWN_VALUES_MISS);
669: x_valid := FALSE;
670: x_return_status := Okl_Api.G_RET_STS_ERROR;
671: RAISE G_EXCEPTION_HALT_PROCESSING;
666:
667: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
668: p_msg_name => G_TAXOWN_VALUES_MISS);
669: x_valid := FALSE;
670: x_return_status := Okl_Api.G_RET_STS_ERROR;
671: RAISE G_EXCEPTION_HALT_PROCESSING;
672: END IF;
673: END IF;
674:
684: IF l_sec_values_miss_cnt <> 2 THEN
685:
686:
687:
688: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
689: p_msg_name => G_SEC_VALUES_MISS);
690: x_valid := FALSE;
691: x_return_status := Okl_Api.G_RET_STS_ERROR;
692: RAISE G_EXCEPTION_HALT_PROCESSING;
687:
688: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
689: p_msg_name => G_SEC_VALUES_MISS);
690: x_valid := FALSE;
691: x_return_status := Okl_Api.G_RET_STS_ERROR;
692: RAISE G_EXCEPTION_HALT_PROCESSING;
693: END IF;
694: END IF;
695: END LOOP;
702: =================================*/
703:
704: -- Check for contract dates
705:
706: IF p_pdtv_rec.id <> Okl_Api.G_MISS_NUM THEN
707: OPEN okl_contracts_csr (p_pdtv_rec.id,
708: p_pdtv_rec.from_date,
709: l_to_date);
710: FETCH okl_contracts_csr INTO l_check;
713:
714: IF l_row_not_found = FALSE THEN
715:
716:
717: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
718: p_msg_name => G_DATES_MISMATCH,
719: p_token1 => G_PARENT_TABLE_TOKEN,
720: p_token1_value => l_token_9,
721: p_token2 => G_CHILD_TABLE_TOKEN,
720: p_token1_value => l_token_9,
721: p_token2 => G_CHILD_TABLE_TOKEN,
722: p_token2_value => l_token_1);
723: x_valid := FALSE;
724: x_return_status := Okl_Api.G_RET_STS_ERROR;
725: RAISE G_EXCEPTION_HALT_PROCESSING;
726: END IF;
727: END IF;
728:
726: END IF;
727: END IF;
728:
729: -- Check for constraints dates in the case of update only
730: IF p_upd_pdtv_rec.id <> Okl_Api.G_MISS_NUM THEN
731: OPEN okl_pdt_constraints_csr (p_upd_pdtv_rec.id,
732: p_pdtv_rec.from_date,
733: l_to_date);
734: FETCH okl_pdt_constraints_csr INTO l_check;
738:
739: IF l_row_not_found = FALSE THEN
740:
741:
742: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
743: p_msg_name => G_DATES_MISMATCH,
744: p_token1 => G_PARENT_TABLE_TOKEN,
745: p_token1_value => l_token_8,
746: p_token2 => G_CHILD_TABLE_TOKEN,
746: p_token2 => G_CHILD_TABLE_TOKEN,
747: p_token2_value => l_token_1);
748:
749: x_valid := FALSE;
750: x_return_status := Okl_Api.G_RET_STS_ERROR;
751: RAISE G_EXCEPTION_HALT_PROCESSING;
752: END IF;
753:
754:
764: CLOSE okl_pdt_aes_ptl_csr;
765:
766: IF l_row_not_found = FALSE THEN
767:
768: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
769: p_msg_name => G_DATES_MISMATCH,
770: p_token1 => G_PARENT_TABLE_TOKEN,
771: p_token1_value => l_token_4,
772: p_token2 => G_CHILD_TABLE_TOKEN,
771: p_token1_value => l_token_4,
772: p_token2 => G_CHILD_TABLE_TOKEN,
773: p_token2_value => l_token_1);
774: x_valid := FALSE;
775: x_return_status := Okl_Api.G_RET_STS_ERROR;
776: RAISE G_EXCEPTION_HALT_PROCESSING;
777: END IF;
778:
779:
787: -- with the next column
788: NULL;
789: WHEN OTHERS THEN
790: -- store SQL error message on message stack
791: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
792: p_msg_name => G_UNEXPECTED_ERROR,
793: p_token1 => G_SQLCODE_TOKEN,
794: p_token1_value => SQLCODE,
795: p_token2 => G_SQLERRM_TOKEN,
794: p_token1_value => SQLCODE,
795: p_token2 => G_SQLERRM_TOKEN,
796: p_token2_value => SQLERRM);
797: x_valid := FALSE;
798: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
799:
800: IF (okl_contracts_csr%ISOPEN) THEN
801: CLOSE okl_contracts_csr;
802: END IF;
833: -- End of comments
834: ---------------------------------------------------------------------------
835: PROCEDURE Getpdt_parameters(
836: p_api_version IN NUMBER,
837: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
838: x_return_status OUT NOCOPY VARCHAR2,
839: x_no_data_found OUT NOCOPY BOOLEAN,
840: x_msg_count OUT NOCOPY NUMBER,
841: x_msg_data OUT NOCOPY VARCHAR2,
863:
864: BEGIN
865:
866: -- initialize return status
867: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
868: x_no_data_found := TRUE;
869:
870: -- Get current database values
871: OPEN okl_pdt_parameters_cur (p_pdtv_rec.id);
881: x_no_data_found := okl_pdt_parameters_cur%NOTFOUND;
882: CLOSE okl_pdt_parameters_cur;
883:
884: IF x_no_data_found = TRUE THEN
885: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
886:
887: p_msg_name => G_PRODUCT_SETUP_INCOMPLETE);
888: x_return_status := Okl_Api.G_RET_STS_ERROR;
889: END IF;
884: IF x_no_data_found = TRUE THEN
885: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
886:
887: p_msg_name => G_PRODUCT_SETUP_INCOMPLETE);
888: x_return_status := Okl_Api.G_RET_STS_ERROR;
889: END IF;
890:
891: p_pdt_parameter_rec := l_pdt_parameters_rec;
892:
892:
893: EXCEPTION
894: WHEN OTHERS THEN
895: -- store SQL error message on message stack for caller
896: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
897: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
898: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
899: p_token1_value => SQLCODE,
900: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
900: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
901: p_token2_value => SQLERRM);
902:
903: -- notify caller of an UNEXPECTED error
904: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
905:
906: IF (okl_pdt_parameters_cur%ISOPEN) THEN
907: CLOSE okl_pdt_parameters_cur;
908: END IF;
962: ---------------------------------------------------------------------------
963:
964: PROCEDURE product_approval_process
965: ( p_api_version IN NUMBER,
966: p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
967: x_return_status OUT NOCOPY VARCHAR2,
968: x_msg_count OUT NOCOPY NUMBER,
969: x_msg_data OUT NOCOPY VARCHAR2,
970: p_pdtv_rec IN pdtv_rec_type)
1001:
1002: l_seq NUMBER ;
1003: l_status OKL_PRODUCTS_V.product_status_code%TYPE;
1004: l_pdt_id OKL_PRODUCTS_V.ID%TYPE;
1005: l_return_status VARCHAR2(3) := OKL_API.G_RET_STS_SUCCESS;
1006: l_api_version NUMBER := 1.0;
1007: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1008: l_api_name CONSTANT VARCHAR2(30) := 'product_approval_process';
1009: l_no_data_found BOOLEAN := TRUE;
1003: l_status OKL_PRODUCTS_V.product_status_code%TYPE;
1004: l_pdt_id OKL_PRODUCTS_V.ID%TYPE;
1005: l_return_status VARCHAR2(3) := OKL_API.G_RET_STS_SUCCESS;
1006: l_api_version NUMBER := 1.0;
1007: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1008: l_api_name CONSTANT VARCHAR2(30) := 'product_approval_process';
1009: l_no_data_found BOOLEAN := TRUE;
1010: l_pdtv_rec pdtv_rec_type;
1011: x_pdtv_rec pdtv_rec_type;
1014: BEGIN
1015:
1016: -- SAVEPOINT product_approval_process;
1017: -- initialize return status
1018: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
1019:
1020: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
1021: p_pkg_name => G_PKG_NAME,
1022: p_init_msg_list => p_init_msg_list,
1016: -- SAVEPOINT product_approval_process;
1017: -- initialize return status
1018: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
1019:
1020: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
1021: p_pkg_name => G_PKG_NAME,
1022: p_init_msg_list => p_init_msg_list,
1023: l_api_version => l_api_version,
1024:
1024:
1025: p_api_version => p_api_version,
1026: p_api_type => '_PVT',
1027: x_return_status => l_return_status);
1028: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1029: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1030: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1031: RAISE Okl_Api.G_EXCEPTION_ERROR;
1032: END IF;
1025: p_api_version => p_api_version,
1026: p_api_type => '_PVT',
1027: x_return_status => l_return_status);
1028: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1029: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1030: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1031: RAISE Okl_Api.G_EXCEPTION_ERROR;
1032: END IF;
1033:
1026: p_api_type => '_PVT',
1027: x_return_status => l_return_status);
1028: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1029: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1030: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1031: RAISE Okl_Api.G_EXCEPTION_ERROR;
1032: END IF;
1033:
1034: l_UPD_pdtv_rec.id := p_pdtv_rec.id;
1027: x_return_status => l_return_status);
1028: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1029: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1030: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1031: RAISE Okl_Api.G_EXCEPTION_ERROR;
1032: END IF;
1033:
1034: l_UPD_pdtv_rec.id := p_pdtv_rec.id;
1035:
1037: OPEN c_fetch_pdt_dtls(p_pdtv_rec.id);
1038: FETCH c_fetch_pdt_dtls INTO l_status;
1039:
1040: IF c_fetch_pdt_dtls%NOTFOUND THEN
1041: OKL_API.set_message(p_app_name => G_APP_NAME,
1042: p_msg_name => G_NO_MATCHING_RECORD,
1043: p_token1 => G_COL_NAME_TOKEN,
1044: p_token1_value => 'OKC_PRODUCTS_V.ID');
1045: RAISE G_EXCEPTION_HALT_PROCESSING;
1047: CLOSE c_fetch_pdt_dtls;
1048:
1049: IF l_status = 'PENDING APPROVAL' THEN
1050: --This product has been already submitted for approval.
1051: OKL_API.set_message(p_app_name => G_APP_NAME,
1052: p_msg_name => G_PDT_IN_PEND_APPROVAL);
1053: RAISE OKL_API.G_EXCEPTION_ERROR;
1054: ELSIF l_status = 'APPROVED' THEN
1055: --This product has been approved.
1049: IF l_status = 'PENDING APPROVAL' THEN
1050: --This product has been already submitted for approval.
1051: OKL_API.set_message(p_app_name => G_APP_NAME,
1052: p_msg_name => G_PDT_IN_PEND_APPROVAL);
1053: RAISE OKL_API.G_EXCEPTION_ERROR;
1054: ELSIF l_status = 'APPROVED' THEN
1055: --This product has been approved.
1056: OKL_API.set_message(p_app_name => G_APP_NAME,
1057: p_msg_name => G_PDT_APPROVED);
1052: p_msg_name => G_PDT_IN_PEND_APPROVAL);
1053: RAISE OKL_API.G_EXCEPTION_ERROR;
1054: ELSIF l_status = 'APPROVED' THEN
1055: --This product has been approved.
1056: OKL_API.set_message(p_app_name => G_APP_NAME,
1057: p_msg_name => G_PDT_APPROVED);
1058: RAISE OKL_API.G_EXCEPTION_ERROR;
1059: ELSIF l_status = 'PASSED' THEN
1060: -- normal processing
1054: ELSIF l_status = 'APPROVED' THEN
1055: --This product has been approved.
1056: OKL_API.set_message(p_app_name => G_APP_NAME,
1057: p_msg_name => G_PDT_APPROVED);
1058: RAISE OKL_API.G_EXCEPTION_ERROR;
1059: ELSIF l_status = 'PASSED' THEN
1060: -- normal processing
1061: NULL;
1062: ELSE
1059: ELSIF l_status = 'PASSED' THEN
1060: -- normal processing
1061: NULL;
1062: ELSE
1063: OKL_API.set_message(p_app_name => G_APP_NAME,
1064: p_msg_name => G_PDT_NOT_VALIDATED);
1065: --RAISE G_EXCEPTION_HALT_PROCESSING;
1066: RAISE OKL_API.G_EXCEPTION_ERROR;
1067: END IF;
1062: ELSE
1063: OKL_API.set_message(p_app_name => G_APP_NAME,
1064: p_msg_name => G_PDT_NOT_VALIDATED);
1065: --RAISE G_EXCEPTION_HALT_PROCESSING;
1066: RAISE OKL_API.G_EXCEPTION_ERROR;
1067: END IF;
1068:
1069: -- Test if there are any active subscritions
1070: -- if it is the case then execute the subscriptions
1084:
1085: CLOSE c_get_ou_for_aes_id_csr;
1086:
1087: IF l_org_id IS NULL THEN
1088: OKL_API.set_message(p_app_name => G_APP_NAME,
1089: p_msg_name => G_NO_MATCHING_RECORD,
1090: p_token1 => G_COL_NAME_TOKEN,
1091: p_token1_value => 'OKC_PRODUCTS_V.AES_ID');
1092: RAISE G_EXCEPTION_HALT_PROCESSING;
1108: p_pdt_status => G_PDT_STS_PENDING_APPROVAL,
1109: p_pdt_id => p_pdtv_rec.ID);
1110:
1111:
1112: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1113:
1114: RAISE G_EXCEPTION_HALT_PROCESSING;
1115: ELSE
1116: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
1112: IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1113:
1114: RAISE G_EXCEPTION_HALT_PROCESSING;
1115: ELSE
1116: IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
1117: l_return_status := x_return_status;
1118: END IF;
1119: END IF;
1120:
1128: l_parameter_list.DELETE;
1129: ELSE
1130: FND_MESSAGE.SET_NAME('OKL', 'OKL_NO_EVENT');
1131: FND_MSG_PUB.ADD;
1132: x_return_status := OKL_API.G_RET_STS_ERROR ;
1133: END IF;
1134:
1135: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
1136: x_msg_data => x_msg_data);
1131: FND_MSG_PUB.ADD;
1132: x_return_status := OKL_API.G_RET_STS_ERROR ;
1133: END IF;
1134:
1135: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
1136: x_msg_data => x_msg_data);
1137:
1138: EXCEPTION
1139: WHEN G_EXCEPTION_HALT_PROCESSING THEN
1140:
1141: -- no processing necessary; validation can continue
1142: -- with the next column
1143: NULL;
1144: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1145: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1146: p_pkg_name => G_PKG_NAME,
1147: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1148: x_msg_count => x_msg_count,
1141: -- no processing necessary; validation can continue
1142: -- with the next column
1143: NULL;
1144: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1145: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1146: p_pkg_name => G_PKG_NAME,
1147: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1148: x_msg_count => x_msg_count,
1149: x_msg_data => x_msg_data,
1143: NULL;
1144: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1145: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1146: p_pkg_name => G_PKG_NAME,
1147: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1148: x_msg_count => x_msg_count,
1149: x_msg_data => x_msg_data,
1150: p_api_type => '_PVT');
1151:
1158: END IF;
1159: WHEN OTHERS THEN
1160: --ROLLBACK TO product_approval_process;
1161: -- store SQL error message on message stack for caller
1162: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
1163: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
1164: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
1165: p_token1_value => SQLCODE,
1166: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
1166: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
1167: p_token2_value => SQLERRM);
1168:
1169: -- notify caller of an UNEXPECTED error
1170: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
1171:
1172:
1173:
1174: IF okl_key_csr%ISOPEN THEN
1213:
1214: FROM FND_USER
1215: WHERE user_id = c_user_id;
1216: BEGIN
1217: x_return_status := OKL_API.G_RET_STS_SUCCESS;
1218: OPEN wf_users_csr(p_user_id);
1219: FETCH wf_users_csr INTO x_name, x_description;
1220: CLOSE wf_users_csr;
1221: IF x_name IS NULL THEN
1228: END IF;
1229: END IF;
1230: EXCEPTION
1231: WHEN OTHERS THEN
1232: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1233: END get_agent;
1234:
1235:
1236:
1274: CURSOR l_wf_item_key_csr IS
1275: SELECT okl_wf_item_s.NEXTVAL item_key
1276: FROM dual;
1277:
1278: l_return_status VARCHAR2(3) := OKL_API.G_RET_STS_SUCCESS;
1279: l_api_version NUMBER := 1.0;
1280: l_api_name CONSTANT VARCHAR2(30) := 'set_additionalparameters';
1281:
1282: l_msg_count NUMBER;
1279: l_api_version NUMBER := 1.0;
1280: l_api_name CONSTANT VARCHAR2(30) := 'set_additionalparameters';
1281:
1282: l_msg_count NUMBER;
1283: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1284: l_msg_data VARCHAR2(2000);
1285:
1286: l_parameter_list wf_parameter_list_t;
1287: l_key VARCHAR2(240);
1295: l_requester VARCHAR2(200);
1296: l_name VARCHAR2(200);
1297: l_requester_id VARCHAR2(200);
1298: l_message VARCHAR2(30000);
1299: X_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1300:
1301: BEGIN
1302:
1303: -- Create Internal Transaction
1319: -- Get the Application ID
1320: OPEN c_get_app_id_csr;
1321: FETCH c_get_app_id_csr INTO l_application_id;
1322: IF c_get_app_id_csr%NOTFOUND THEN
1323: RAISE OKL_API.G_EXCEPTION_ERROR;
1324: END IF;
1325: CLOSE c_get_app_id_csr;
1326:
1327: -- Get the Transaction Type ID
1328: OPEN c_get_trx_type_csr(G_TRANS_APP_NAME);
1329: FETCH c_get_trx_type_csr INTO l_trans_type_id,
1330: l_trans_appl_id;
1331: IF c_get_trx_type_csr%NOTFOUND THEN
1332: RAISE OKL_API.G_EXCEPTION_ERROR;
1333: END IF;
1334: CLOSE c_get_trx_type_csr;
1335:
1336: IF l_application_id = l_trans_appl_id THEN
1374:
1375: END IF; -- l_application_id
1376:
1377: EXCEPTION
1378: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1379: IF c_get_app_id_csr%ISOPEN THEN
1380: CLOSE c_get_app_id_csr;
1381: END IF;
1382: IF c_get_trx_type_csr%ISOPEN THEN
1391: TO_CHAR(actid),
1392: funcmode);
1393: RAISE;
1394:
1395: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1396: IF c_get_app_id_csr%ISOPEN THEN
1397: CLOSE c_get_app_id_csr;
1398: END IF;
1399: IF c_get_trx_type_csr%ISOPEN THEN
1452: p_pdt_id IN VARCHAR2) IS
1453:
1454: l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_PRODUCT_STATUS';
1455: l_api_version CONSTANT NUMBER := 1;
1456: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1457: l_pdtv_rec pdtv_rec_type;
1458: l_upd_pdtv_rec pdtv_rec_type;
1459: x_pdtv_rec pdtv_rec_type;
1460: l_no_data_found BOOLEAN := TRUE;
1459: x_pdtv_rec pdtv_rec_type;
1460: l_no_data_found BOOLEAN := TRUE;
1461:
1462: BEGIN
1463: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
1464:
1465: l_UPD_pdtv_rec.id := p_pdt_id;
1466: l_upd_pdtv_rec.product_status_code := p_pdt_status;
1467:
1478: x_pdtv_rec => x_pdtv_rec);
1479:
1480: */
1481:
1482: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
1483: RAISE Okl_Api.G_EXCEPTION_ERROR;
1484: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1485: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1486: END IF;
1479:
1480: */
1481:
1482: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
1483: RAISE Okl_Api.G_EXCEPTION_ERROR;
1484: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1485: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1486: END IF;
1487:
1480: */
1481:
1482: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
1483: RAISE Okl_Api.G_EXCEPTION_ERROR;
1484: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1485: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1486: END IF;
1487:
1488: EXCEPTION
1481:
1482: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
1483: RAISE Okl_Api.G_EXCEPTION_ERROR;
1484: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1485: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1486: END IF;
1487:
1488: EXCEPTION
1489: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1485: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1486: END IF;
1487:
1488: EXCEPTION
1489: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1490:
1491: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1492: p_pkg_name => G_PKG_NAME,
1493: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1487:
1488: EXCEPTION
1489: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1490:
1491: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1492: p_pkg_name => G_PKG_NAME,
1493: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1494: x_msg_count => x_msg_count,
1495: x_msg_data => x_msg_data,
1489: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1490:
1491: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1492: p_pkg_name => G_PKG_NAME,
1493: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1494: x_msg_count => x_msg_count,
1495: x_msg_data => x_msg_data,
1496: p_api_type => '_PVT');
1497: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1493: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1494: x_msg_count => x_msg_count,
1495: x_msg_data => x_msg_data,
1496: p_api_type => '_PVT');
1497: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1498: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1499: p_pkg_name => G_PKG_NAME,
1500: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
1501: x_msg_count => x_msg_count,
1494: x_msg_count => x_msg_count,
1495: x_msg_data => x_msg_data,
1496: p_api_type => '_PVT');
1497: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1498: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1499: p_pkg_name => G_PKG_NAME,
1500: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
1501: x_msg_count => x_msg_count,
1502: x_msg_data => x_msg_data,
1496: p_api_type => '_PVT');
1497: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1498: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1499: p_pkg_name => G_PKG_NAME,
1500: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
1501: x_msg_count => x_msg_count,
1502: x_msg_data => x_msg_data,
1503: p_api_type => '_PVT');
1504: WHEN OTHERS THEN
1501: x_msg_count => x_msg_count,
1502: x_msg_data => x_msg_data,
1503: p_api_type => '_PVT');
1504: WHEN OTHERS THEN
1505: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
1506: p_pkg_name => G_PKG_NAME,
1507: p_exc_name => 'OTHERS',
1508: x_msg_count => x_msg_count,
1509: x_msg_data => x_msg_data,
1532: funcmode IN VARCHAR2,
1533: resultout OUT NOCOPY VARCHAR2)
1534: IS
1535:
1536: l_return_status VARCHAR2(3) := OKL_API.G_RET_STS_SUCCESS;
1537: l_api_version NUMBER := 1.0;
1538: l_msg_count NUMBER;
1539: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1540: l_msg_data VARCHAR2(2000);
1535:
1536: l_return_status VARCHAR2(3) := OKL_API.G_RET_STS_SUCCESS;
1537: l_api_version NUMBER := 1.0;
1538: l_msg_count NUMBER;
1539: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1540: l_msg_data VARCHAR2(2000);
1541: l_api_name VARCHAR2(30) := 'get_approval_status';
1542:
1543: l_pdt_id OKC_K_HEADERS_V.ID%TYPE;
1566: p_pdt_status => G_PDT_STS_APPROVED,
1567: p_pdt_id => l_pdt_id);
1568:
1569:
1570: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1571: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1572: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1573: RAISE OKL_API.G_EXCEPTION_ERROR;
1574: END IF;
1567: p_pdt_id => l_pdt_id);
1568:
1569:
1570: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1571: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1572: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1573: RAISE OKL_API.G_EXCEPTION_ERROR;
1574: END IF;
1575:
1568:
1569:
1570: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1571: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1572: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1573: RAISE OKL_API.G_EXCEPTION_ERROR;
1574: END IF;
1575:
1576: ELSE
1569:
1570: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1571: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1572: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1573: RAISE OKL_API.G_EXCEPTION_ERROR;
1574: END IF;
1575:
1576: ELSE
1577:
1583: p_pdt_status => G_PDT_STS_INVALID,
1584: p_pdt_id => l_pdt_id);
1585:
1586:
1587: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1588: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1589: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_ERROR;
1591:
1584: p_pdt_id => l_pdt_id);
1585:
1586:
1587: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1588: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1589: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_ERROR;
1591:
1592:
1585:
1586:
1587: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1588: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1589: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_ERROR;
1591:
1592:
1593: END IF;
1586:
1587: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1588: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1589: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
1590: RAISE OKL_API.G_EXCEPTION_ERROR;
1591:
1592:
1593: END IF;
1594:
1615: RETURN;
1616: END IF;
1617:
1618: EXCEPTION
1619: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1620:
1621: wf_core.context(G_PKG_NAME,
1622: l_api_name,
1623: itemtype,
1624: itemkey,
1625: TO_CHAR(actid),
1626: funcmode);
1627: RAISE;
1628: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1629: wf_core.context(G_PKG_NAME,
1630: l_api_name,
1631: itemtype,
1632: itemkey,
1660: PROCEDURE Validate_book_class(p_pdtv_rec IN OUT NOCOPY pdtv_rec_type
1661: ,x_return_status OUT NOCOPY VARCHAR2 )
1662: IS
1663:
1664: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1665: l_token_1 VARCHAR2(1999);
1666:
1667:
1668: CURSOR c2(p_pdt_id NUMBER) IS
1720:
1721:
1722: BEGIN
1723: -- initialize return status
1724: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
1725:
1726: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PRODUCT_CRUPD','OKL_NAME');
1727:
1728: OPEN c2(p_pdtv_rec.id);
1732:
1733: OPEN c1(p_pdtv_rec.id);
1734: FETCH c1 INTO l_row_found;
1735: IF (c1%NOTFOUND) THEN
1736: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
1737: p_msg_name => G_BOOK_CLASS_MISMATCH);
1738: x_return_status := Okl_Api.G_RET_STS_ERROR;
1739: RAISE G_EXCEPTION_HALT_PROCESSING;
1740:
1734: FETCH c1 INTO l_row_found;
1735: IF (c1%NOTFOUND) THEN
1736: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
1737: p_msg_name => G_BOOK_CLASS_MISMATCH);
1738: x_return_status := Okl_Api.G_RET_STS_ERROR;
1739: RAISE G_EXCEPTION_HALT_PROCESSING;
1740:
1741: END IF;
1742: CLOSE c1;
1752:
1753:
1754: WHEN OTHERS THEN
1755: -- store SQL error message on message stack for caller
1756: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
1757: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
1758:
1759: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
1760: p_token1_value => SQLCODE,
1761: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
1762: p_token2_value => SQLERRM);
1763:
1764: -- notify caller of an UNEXPECTED error
1765: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
1766:
1767: END Validate_book_class;
1768:
1769:
1782: PROCEDURE check_accrual_streams(p_pdtv_rec IN OUT NOCOPY pdtv_rec_type
1783: ,x_return_status OUT NOCOPY VARCHAR2 )
1784: IS
1785:
1786: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1787: l_token_1 VARCHAR2(1999);
1788: /*
1789: CURSOR c1(p_pdt_id NUMBER) IS
1790: SELECT name
1800: BEGIN
1801: null;
1802: /*
1803: -- initialize return status
1804: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
1805:
1806: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PDT_TMPL_CREATE_UPDATE','OKL_PRODUCT_TEMPLATE');
1807:
1808: OPEN c1(p_pdtv_rec.id);
1807:
1808: OPEN c1(p_pdtv_rec.id);
1809: FETCH c1 INTO l_row_found;
1810: IF (c1%NOTFOUND) THEN
1811: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
1812: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
1813: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
1814: ,p_token1_value => l_token_1);
1815:
1812: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
1813: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
1814: ,p_token1_value => l_token_1);
1815:
1816: x_return_status := Okl_Api.G_RET_STS_ERROR;
1817: RAISE G_EXCEPTION_HALT_PROCESSING;
1818:
1819: END IF;
1820:
1827: NULL;
1828:
1829: WHEN OTHERS THEN
1830: -- store SQL error message on message stack for caller
1831: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
1832: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
1833:
1834: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
1835: p_token1_value => SQLCODE,
1836: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
1837: p_token2_value => SQLERRM);
1838:
1839: -- notify caller of an UNEXPECTED error
1840: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
1841:
1842: END check_accrual_streams;
1843:
1844: ---------------------------------------------------------------------------------
1863: x_pdtv_rec OUT NOCOPY pdtv_rec_type
1864: ) is
1865: l_api_name CONSTANT VARCHAR2(30) := 'VALIDATE_PRODUCT';
1866: l_api_version CONSTANT NUMBER := 1;
1867: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1868: l_valid BOOLEAN;
1869: l_pdtv_rec pdtv_rec_type := p_pdtv_rec;
1870: l_upd_pdtv_rec pdtv_rec_type := p_pdtv_rec;
1871: l_db_pdtv_rec pdtv_rec_type;
1869: l_pdtv_rec pdtv_rec_type := p_pdtv_rec;
1870: l_upd_pdtv_rec pdtv_rec_type := p_pdtv_rec;
1871: l_db_pdtv_rec pdtv_rec_type;
1872: l_no_data_found BOOLEAN := TRUE;
1873: l_init_msg_list VARCHAR2(10) := OKL_API.G_FALSE;
1874: l_msg_count NUMBER;
1875: l_msg_data VARCHAR2(2000);
1876: l_check_dt VARCHAR2(1) := '?';
1877: --rkuttiya added for Multi GAAP Project
2013: l_rpt_pricing_engine VARCHAR2(30);
2014: l_check VARCHAR2(1);
2015: BEGIN
2016:
2017: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2018:
2019: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
2020: p_pkg_name => G_PKG_NAME,
2021: p_init_msg_list => p_init_msg_list,
2015: BEGIN
2016:
2017: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2018:
2019: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
2020: p_pkg_name => G_PKG_NAME,
2021: p_init_msg_list => p_init_msg_list,
2022: l_api_version => l_api_version,
2023: p_api_version => p_api_version,
2022: l_api_version => l_api_version,
2023: p_api_version => p_api_version,
2024: p_api_type => '_PVT',
2025: x_return_status => l_return_status);
2026: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2027: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2028: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2029: RAISE Okl_Api.G_EXCEPTION_ERROR;
2030: END IF;
2023: p_api_version => p_api_version,
2024: p_api_type => '_PVT',
2025: x_return_status => l_return_status);
2026: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2027: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2028: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2029: RAISE Okl_Api.G_EXCEPTION_ERROR;
2030: END IF;
2031:
2024: p_api_type => '_PVT',
2025: x_return_status => l_return_status);
2026: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2027: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2028: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2029: RAISE Okl_Api.G_EXCEPTION_ERROR;
2030: END IF;
2031:
2032:
2025: x_return_status => l_return_status);
2026: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2027: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2028: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2029: RAISE Okl_Api.G_EXCEPTION_ERROR;
2030: END IF;
2031:
2032:
2033: -- Validation process is kicked only when the product is in invalid or new status.
2045: CLOSE chk_ptl_aes_bc;
2046:
2047: IF (l_chk_bc IS NULL) THEN
2048:
2049: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2050: p_msg_name => G_PTL_AES_BC_MISMATCH);
2051: x_return_status := Okl_Api.G_RET_STS_ERROR;
2052: RAISE OKL_API.G_EXCEPTION_ERROR;
2053: END IF;
2047: IF (l_chk_bc IS NULL) THEN
2048:
2049: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2050: p_msg_name => G_PTL_AES_BC_MISMATCH);
2051: x_return_status := Okl_Api.G_RET_STS_ERROR;
2052: RAISE OKL_API.G_EXCEPTION_ERROR;
2053: END IF;
2054:
2055: /*mansrini Tax enhancement proj: If the product is of financial type, check upfront tax id matches*/
2048:
2049: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2050: p_msg_name => G_PTL_AES_BC_MISMATCH);
2051: x_return_status := Okl_Api.G_RET_STS_ERROR;
2052: RAISE OKL_API.G_EXCEPTION_ERROR;
2053: END IF;
2054:
2055: /*mansrini Tax enhancement proj: If the product is of financial type, check upfront tax id matches*/
2056:
2071: OPEN c_stream_name(l_tax_upfront_sty_id);
2072: FETCH c_stream_name INTO l_stream_name;
2073: CLOSE c_stream_name;
2074:
2075: OKL_API.SET_MESSAGE (p_app_name => G_APP_NAME,
2076: p_msg_name => G_TAX_STYID_MISMATCH,
2077: p_token1 => 'SGT_NAME',
2078: p_token1_value => r_st_gen_templates_rec.name,
2079: p_token2 => 'SGT_VERSION',
2081: p_token3 => 'STRM_NAME',
2082: p_token3_value => l_stream_name);
2083:
2084:
2085: x_return_status := Okl_Api.G_RET_STS_ERROR;
2086: RAISE OKL_API.G_EXCEPTION_ERROR;
2087:
2088: END IF;
2089:
2082: p_token3_value => l_stream_name);
2083:
2084:
2085: x_return_status := Okl_Api.G_RET_STS_ERROR;
2086: RAISE OKL_API.G_EXCEPTION_ERROR;
2087:
2088: END IF;
2089:
2090: IF c_st_gen_template_lns_cur%ISOPEN THEN
2121: l_inv_deal_type := sgt_rec.deal_type;
2122: END IF;
2123: IF pdt_rec.deal_type <> l_inv_deal_type
2124: THEN
2125: OKL_API.SET_MESSAGE(
2126: p_app_name => G_APP_NAME,
2127: p_msg_name => 'OKL_NEW_INVESTOR_MISMATCH',
2128: p_token1 => 'PQVALUE',
2129: p_token1_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_SECURITIZATION_TYPE', pdt_rec.deal_type ),
2128: p_token1 => 'PQVALUE',
2129: p_token1_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_SECURITIZATION_TYPE', pdt_rec.deal_type ),
2130: p_token2 => 'SGTVALUE',
2131: p_token2_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_STREAM_INV_BOOK_CLASS', sgt_rec.deal_type) );
2132: x_return_status := Okl_Api.G_RET_STS_ERROR;
2133: RAISE OKL_API.G_EXCEPTION_ERROR;
2134: END IF;
2135: ELSIF pdt_rec.product_subclass = 'LEASE'
2136: THEN
2129: p_token1_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_SECURITIZATION_TYPE', pdt_rec.deal_type ),
2130: p_token2 => 'SGTVALUE',
2131: p_token2_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_STREAM_INV_BOOK_CLASS', sgt_rec.deal_type) );
2132: x_return_status := Okl_Api.G_RET_STS_ERROR;
2133: RAISE OKL_API.G_EXCEPTION_ERROR;
2134: END IF;
2135: ELSIF pdt_rec.product_subclass = 'LEASE'
2136: THEN
2137: -- Deal Type, Tax Owner, Interest Calculation Basis, Revenue Recognition Basis
2140: pdt_rec.tax_owner <> sgt_rec.tax_owner OR
2141: pdt_rec.interest_calculation_basis <> sgt_rec.interest_calc_meth_code OR
2142: pdt_rec.revenue_recognition_method <> sgt_rec.revenue_recog_meth_code
2143: THEN
2144: Okl_Api.SET_MESSAGE(
2145: p_app_name => G_APP_NAME,
2146: p_msg_name => 'OKL_NEW_PDT_QUAL_MISMATCH',
2147: p_token1 => 'SGTDEALTYPE',
2148: p_token1_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_STREAM_ALL_BOOK_CLASS',sgt_rec.deal_type ),
2152: p_token3_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_INTEREST_CALCULATION_BASIS',sgt_rec.interest_calc_meth_code ),
2153: p_token4 => 'SGTRRB',
2154: p_token4_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_REVENUE_RECOGNITION_METHOD',sgt_rec.revenue_recog_meth_code)
2155: );
2156: x_return_status := Okl_Api.G_RET_STS_ERROR;
2157: RAISE OKL_API.G_EXCEPTION_ERROR;
2158: END IF;
2159:
2160: END IF; -- IF pdt_rec.product_subclass
2153: p_token4 => 'SGTRRB',
2154: p_token4_value => OKL_ACCOUNTING_UTIL.GET_LOOKUP_MEANING( 'OKL_REVENUE_RECOGNITION_METHOD',sgt_rec.revenue_recog_meth_code)
2155: );
2156: x_return_status := Okl_Api.G_RET_STS_ERROR;
2157: RAISE OKL_API.G_EXCEPTION_ERROR;
2158: END IF;
2159:
2160: END IF; -- IF pdt_rec.product_subclass
2161: /* rkuttiya commented out following code for bug 7385171
2162: * remove validation for variable rate
2163: --Bug 4728496 dpsingh start
2164: IF ( (pdt_rec.interest_calculation_basis IN ('FLOAT_FACTORS','CATCHUP/CLEANUP') OR pdt_rec.revenue_recognition_method IN ('ESTIMATED_AND_BILLED','ACTUAL')) AND l_pdtv_rec.reporting_pdt_id IS NOT NULL)
2165: THEN
2166: Okl_Api.SET_MESSAGE(
2167: p_app_name => G_APP_NAME,
2168: p_msg_name => 'OKL_REP_PDT_ATT_VAR_PDT'
2169: );
2170: RAISE OKL_API.G_EXCEPTION_ERROR;
2166: Okl_Api.SET_MESSAGE(
2167: p_app_name => G_APP_NAME,
2168: p_msg_name => 'OKL_REP_PDT_ATT_VAR_PDT'
2169: );
2170: RAISE OKL_API.G_EXCEPTION_ERROR;
2171: END IF;
2172: --Bug 4728496 dpsingh end*/
2173:
2174: END LOOP; -- FOR sgt_rec
2176: IF l_qv_found = FALSE
2177: THEN
2178: -- Show the error message saying that user should enter all the
2179: -- Quality values.
2180: OKL_API.SET_MESSAGE(
2181: p_app_name => G_APP_NAME,
2182: p_msg_name => 'OKL_PDT_QVALS_UNDEFINED');
2183: x_return_status := Okl_Api.G_RET_STS_ERROR;
2184: RAISE OKL_API.G_EXCEPTION_ERROR;
2179: -- Quality values.
2180: OKL_API.SET_MESSAGE(
2181: p_app_name => G_APP_NAME,
2182: p_msg_name => 'OKL_PDT_QVALS_UNDEFINED');
2183: x_return_status := Okl_Api.G_RET_STS_ERROR;
2184: RAISE OKL_API.G_EXCEPTION_ERROR;
2185: END IF;
2186: /*=======================================
2187: -- user defined streams validations END
2180: OKL_API.SET_MESSAGE(
2181: p_app_name => G_APP_NAME,
2182: p_msg_name => 'OKL_PDT_QVALS_UNDEFINED');
2183: x_return_status := Okl_Api.G_RET_STS_ERROR;
2184: RAISE OKL_API.G_EXCEPTION_ERROR;
2185: END IF;
2186: /*=======================================
2187: -- user defined streams validations END
2188: ========================================*/
2200: END LOOP;
2201: IF l_rp_pdt_sts_code <> 'APPROVED'
2202: THEN
2203: -- Raise an Exception and return x_valid as FALSE
2204: OKL_API.set_message(
2205: p_app_name => G_APP_NAME
2206: ,p_msg_name => 'OKL_REP_PDT_NOT_APPROVED'
2207: ,p_token1 => 'REPPRODUCT'
2208: ,p_token1_value => l_rp_pdt_name
2206: ,p_msg_name => 'OKL_REP_PDT_NOT_APPROVED'
2207: ,p_token1 => 'REPPRODUCT'
2208: ,p_token1_value => l_rp_pdt_name
2209: );
2210: x_return_status := Okl_Api.G_RET_STS_ERROR;
2211: RAISE OKL_API.G_EXCEPTION_ERROR;
2212: END IF; -- IF l_rp_pdt_sts_code
2213:
2214: -- Bug 7134895
2207: ,p_token1 => 'REPPRODUCT'
2208: ,p_token1_value => l_rp_pdt_name
2209: );
2210: x_return_status := Okl_Api.G_RET_STS_ERROR;
2211: RAISE OKL_API.G_EXCEPTION_ERROR;
2212: END IF; -- IF l_rp_pdt_sts_code
2213:
2214: -- Bug 7134895
2215: l_raise_exception := FALSE;
2212: END IF; -- IF l_rp_pdt_sts_code
2213:
2214: -- Bug 7134895
2215: l_raise_exception := FALSE;
2216: IF (l_rpt_pdt_id IS NOT NULL AND l_rpt_pdt_id <> OKL_API.G_MISS_NUM) THEN
2217: -- Get rev_rec_method and int_calc_basis for reporting product and
2218: -- compare against the base product if they are same
2219: FOR rpt_pdt_rec IN get_pp_csr(l_rpt_pdt_id)
2220: LOOP
2233: FETCH okl_rpt_pdtv_chk INTO l_check;
2234: CLOSE okl_rpt_pdtv_chk;
2235:
2236: IF l_check IS NOT NULL THEN
2237: Okl_Api.SET_MESSAGE(
2238: p_app_name => G_APP_NAME,
2239: p_msg_name => 'OKL_PDT_RPT_KHR_ASSOC'
2240: );
2241: x_return_status := Okl_Api.G_RET_STS_ERROR;
2237: Okl_Api.SET_MESSAGE(
2238: p_app_name => G_APP_NAME,
2239: p_msg_name => 'OKL_PDT_RPT_KHR_ASSOC'
2240: );
2241: x_return_status := Okl_Api.G_RET_STS_ERROR;
2242: RAISE OKL_API.G_EXCEPTION_ERROR;
2243: END IF; */
2244:
2245: IF (l_rpt_rev_rec_method <> l_rev_rec_method) THEN
2238: p_app_name => G_APP_NAME,
2239: p_msg_name => 'OKL_PDT_RPT_KHR_ASSOC'
2240: );
2241: x_return_status := Okl_Api.G_RET_STS_ERROR;
2242: RAISE OKL_API.G_EXCEPTION_ERROR;
2243: END IF; */
2244:
2245: IF (l_rpt_rev_rec_method <> l_rev_rec_method) THEN
2246: Okl_Api.SET_MESSAGE(
2242: RAISE OKL_API.G_EXCEPTION_ERROR;
2243: END IF; */
2244:
2245: IF (l_rpt_rev_rec_method <> l_rev_rec_method) THEN
2246: Okl_Api.SET_MESSAGE(
2247: p_app_name => G_APP_NAME,
2248: p_msg_name => 'OKL_PDT_RPT_RRM_MISMATCH'
2249: );
2250: x_return_status := Okl_Api.G_RET_STS_ERROR;
2246: Okl_Api.SET_MESSAGE(
2247: p_app_name => G_APP_NAME,
2248: p_msg_name => 'OKL_PDT_RPT_RRM_MISMATCH'
2249: );
2250: x_return_status := Okl_Api.G_RET_STS_ERROR;
2251: l_raise_exception := TRUE;
2252: END IF;
2253:
2254: IF (l_rpt_int_calc_basis <> l_int_calc_basis) THEN
2251: l_raise_exception := TRUE;
2252: END IF;
2253:
2254: IF (l_rpt_int_calc_basis <> l_int_calc_basis) THEN
2255: Okl_Api.SET_MESSAGE(
2256: p_app_name => G_APP_NAME,
2257: p_msg_name => 'OKL_PDT_RPT_ICB_MISMATCH'
2258: );
2259: x_return_status := Okl_Api.G_RET_STS_ERROR;
2255: Okl_Api.SET_MESSAGE(
2256: p_app_name => G_APP_NAME,
2257: p_msg_name => 'OKL_PDT_RPT_ICB_MISMATCH'
2258: );
2259: x_return_status := Okl_Api.G_RET_STS_ERROR;
2260: RAISE OKL_API.G_EXCEPTION_ERROR;
2261: END IF;
2262:
2263: --rkuttiya added for 12.1.1 Multi GAAP project
2256: p_app_name => G_APP_NAME,
2257: p_msg_name => 'OKL_PDT_RPT_ICB_MISMATCH'
2258: );
2259: x_return_status := Okl_Api.G_RET_STS_ERROR;
2260: RAISE OKL_API.G_EXCEPTION_ERROR;
2261: END IF;
2262:
2263: --rkuttiya added for 12.1.1 Multi GAAP project
2264: IF (l_deal_type = 'LOAN') AND (l_rpt_deal_type <> 'LOAN') THEN
2261: END IF;
2262:
2263: --rkuttiya added for 12.1.1 Multi GAAP project
2264: IF (l_deal_type = 'LOAN') AND (l_rpt_deal_type <> 'LOAN') THEN
2265: Okl_Api.SET_MESSAGE(
2266: p_app_name => G_APP_NAME,
2267: p_msg_name => 'OKL_PDT_RPT_SELECT_LOAN'
2268: );
2269: x_return_status := Okl_Api.G_RET_STS_ERROR;
2265: Okl_Api.SET_MESSAGE(
2266: p_app_name => G_APP_NAME,
2267: p_msg_name => 'OKL_PDT_RPT_SELECT_LOAN'
2268: );
2269: x_return_status := Okl_Api.G_RET_STS_ERROR;
2270: RAISE OKL_API.G_EXCEPTION_ERROR;
2271: END IF;
2272:
2273: IF (l_deal_type = 'LOAN-REVOLVING') AND (l_rpt_deal_type <>
2266: p_app_name => G_APP_NAME,
2267: p_msg_name => 'OKL_PDT_RPT_SELECT_LOAN'
2268: );
2269: x_return_status := Okl_Api.G_RET_STS_ERROR;
2270: RAISE OKL_API.G_EXCEPTION_ERROR;
2271: END IF;
2272:
2273: IF (l_deal_type = 'LOAN-REVOLVING') AND (l_rpt_deal_type <>
2274: 'LOAN-REVOLVING') THEN
2271: END IF;
2272:
2273: IF (l_deal_type = 'LOAN-REVOLVING') AND (l_rpt_deal_type <>
2274: 'LOAN-REVOLVING') THEN
2275: Okl_Api.SET_MESSAGE(
2276: p_app_name => G_APP_NAME,
2277: p_msg_name => 'OKL_PDT_RPT_SELECT_REVLOAN'
2278: );
2279: x_return_status := Okl_Api.G_RET_STS_ERROR;
2275: Okl_Api.SET_MESSAGE(
2276: p_app_name => G_APP_NAME,
2277: p_msg_name => 'OKL_PDT_RPT_SELECT_REVLOAN'
2278: );
2279: x_return_status := Okl_Api.G_RET_STS_ERROR;
2280: RAISE OKL_API.G_EXCEPTION_ERROR;
2281: END IF;
2282:
2283: IF (l_deal_type IN ('LEASEDF','LEASEOP','LEASEST')) AND
2276: p_app_name => G_APP_NAME,
2277: p_msg_name => 'OKL_PDT_RPT_SELECT_REVLOAN'
2278: );
2279: x_return_status := Okl_Api.G_RET_STS_ERROR;
2280: RAISE OKL_API.G_EXCEPTION_ERROR;
2281: END IF;
2282:
2283: IF (l_deal_type IN ('LEASEDF','LEASEOP','LEASEST')) AND
2284: (l_rpt_deal_type NOT IN ('LEASEDF','LEASEOP','LEASEST')) THEN
2281: END IF;
2282:
2283: IF (l_deal_type IN ('LEASEDF','LEASEOP','LEASEST')) AND
2284: (l_rpt_deal_type NOT IN ('LEASEDF','LEASEOP','LEASEST')) THEN
2285: Okl_Api.SET_MESSAGE(
2286: p_app_name => G_APP_NAME,
2287: p_msg_name => 'OKL_PDT_RPT_SELECT_LEASE'
2288: );
2289: x_return_status := Okl_Api.G_RET_STS_ERROR;
2285: Okl_Api.SET_MESSAGE(
2286: p_app_name => G_APP_NAME,
2287: p_msg_name => 'OKL_PDT_RPT_SELECT_LEASE'
2288: );
2289: x_return_status := Okl_Api.G_RET_STS_ERROR;
2290: RAISE OKL_API.G_EXCEPTION_ERROR;
2291: END IF;
2292:
2293: IF l_pricing_engine <> l_rpt_pricing_engine THEN
2286: p_app_name => G_APP_NAME,
2287: p_msg_name => 'OKL_PDT_RPT_SELECT_LEASE'
2288: );
2289: x_return_status := Okl_Api.G_RET_STS_ERROR;
2290: RAISE OKL_API.G_EXCEPTION_ERROR;
2291: END IF;
2292:
2293: IF l_pricing_engine <> l_rpt_pricing_engine THEN
2294: Okl_Api.SET_MESSAGE(
2290: RAISE OKL_API.G_EXCEPTION_ERROR;
2291: END IF;
2292:
2293: IF l_pricing_engine <> l_rpt_pricing_engine THEN
2294: Okl_Api.SET_MESSAGE(
2295: p_app_name => G_APP_NAME,
2296: p_msg_name => 'OKL_PDT_RPT_SELECT_SGT',
2297: p_token1 => 'PRICINGENG',
2298: p_token1_value => l_pricing_engine
2296: p_msg_name => 'OKL_PDT_RPT_SELECT_SGT',
2297: p_token1 => 'PRICINGENG',
2298: p_token1_value => l_pricing_engine
2299: );
2300: x_return_status := Okl_Api.G_RET_STS_ERROR;
2301: RAISE OKL_API.G_EXCEPTION_ERROR;
2302: END IF;
2303: --rkuttiya end validations for Multi GAAP
2304: END IF;
2297: p_token1 => 'PRICINGENG',
2298: p_token1_value => l_pricing_engine
2299: );
2300: x_return_status := Okl_Api.G_RET_STS_ERROR;
2301: RAISE OKL_API.G_EXCEPTION_ERROR;
2302: END IF;
2303: --rkuttiya end validations for Multi GAAP
2304: END IF;
2305:
2303: --rkuttiya end validations for Multi GAAP
2304: END IF;
2305:
2306: IF (l_raise_exception) THEN
2307: RAISE OKL_API.G_EXCEPTION_ERROR;
2308: END IF;
2309:
2310: -- update the product for any user changes.
2311: update_products(p_api_version => l_api_version,
2318:
2319:
2320:
2321:
2322: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2323: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2324: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2325: RAISE OKL_API.G_EXCEPTION_ERROR;
2326: END IF;
2319:
2320:
2321:
2322: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2323: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2324: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2325: RAISE OKL_API.G_EXCEPTION_ERROR;
2326: END IF;
2327:
2320:
2321:
2322: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2323: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2324: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2325: RAISE OKL_API.G_EXCEPTION_ERROR;
2326: END IF;
2327:
2328:
2321:
2322: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2323: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2324: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2325: RAISE OKL_API.G_EXCEPTION_ERROR;
2326: END IF;
2327:
2328:
2329: -- update the product status to 'passed' if the changes are valid and all the
2339: p_pdt_status => l_pdtv_rec.product_status_code,
2340: p_pdt_id => l_pdtv_rec.id);
2341:
2342:
2343: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2344:
2345: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2346:
2347: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2341:
2342:
2343: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2344:
2345: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2346:
2347: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2348: RAISE OKL_API.G_EXCEPTION_ERROR;
2349: END IF;
2343: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2344:
2345: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2346:
2347: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2348: RAISE OKL_API.G_EXCEPTION_ERROR;
2349: END IF;
2350: ELSE
2351: -- product cannot be validated while pending approval status/approved/passed status.
2344:
2345: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2346:
2347: ELSIF (l_return_Status = OKL_API.G_RET_STS_ERROR) THEN
2348: RAISE OKL_API.G_EXCEPTION_ERROR;
2349: END IF;
2350: ELSE
2351: -- product cannot be validated while pending approval status/approved/passed status.
2352:
2349: END IF;
2350: ELSE
2351: -- product cannot be validated while pending approval status/approved/passed status.
2352:
2353: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2354: p_msg_name => G_PDT_VALDTION_NOT_VALID);
2355: x_return_status := Okl_Api.G_RET_STS_ERROR;
2356: RAISE OKL_API.G_EXCEPTION_ERROR;
2357: END IF;
2351: -- product cannot be validated while pending approval status/approved/passed status.
2352:
2353: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2354: p_msg_name => G_PDT_VALDTION_NOT_VALID);
2355: x_return_status := Okl_Api.G_RET_STS_ERROR;
2356: RAISE OKL_API.G_EXCEPTION_ERROR;
2357: END IF;
2358:
2359:
2352:
2353: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
2354: p_msg_name => G_PDT_VALDTION_NOT_VALID);
2355: x_return_status := Okl_Api.G_RET_STS_ERROR;
2356: RAISE OKL_API.G_EXCEPTION_ERROR;
2357: END IF;
2358:
2359:
2360: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
2356: RAISE OKL_API.G_EXCEPTION_ERROR;
2357: END IF;
2358:
2359:
2360: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
2361: x_msg_data => x_msg_data);
2362:
2363: EXCEPTION
2364: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2360: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
2361: x_msg_data => x_msg_data);
2362:
2363: EXCEPTION
2364: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2365: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2366: p_pkg_name => G_PKG_NAME,
2367: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
2368: x_msg_count => x_msg_count,
2361: x_msg_data => x_msg_data);
2362:
2363: EXCEPTION
2364: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2365: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2366: p_pkg_name => G_PKG_NAME,
2367: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
2368: x_msg_count => x_msg_count,
2369: x_msg_data => x_msg_data,
2363: EXCEPTION
2364: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2365: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2366: p_pkg_name => G_PKG_NAME,
2367: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
2368: x_msg_count => x_msg_count,
2369: x_msg_data => x_msg_data,
2370: p_api_type => '_PVT');
2371: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2367: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
2368: x_msg_count => x_msg_count,
2369: x_msg_data => x_msg_data,
2370: p_api_type => '_PVT');
2371: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2372: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2373: p_pkg_name => G_PKG_NAME,
2374: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
2375: x_msg_count => x_msg_count,
2368: x_msg_count => x_msg_count,
2369: x_msg_data => x_msg_data,
2370: p_api_type => '_PVT');
2371: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2372: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2373: p_pkg_name => G_PKG_NAME,
2374: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
2375: x_msg_count => x_msg_count,
2376:
2370: p_api_type => '_PVT');
2371: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2372: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2373: p_pkg_name => G_PKG_NAME,
2374: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
2375: x_msg_count => x_msg_count,
2376:
2377: x_msg_data => x_msg_data,
2378: p_api_type => '_PVT');
2376:
2377: x_msg_data => x_msg_data,
2378: p_api_type => '_PVT');
2379: WHEN OTHERS THEN
2380: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
2381: p_pkg_name => G_PKG_NAME,
2382: p_exc_name => 'OTHERS',
2383: x_msg_count => x_msg_count,
2384: x_msg_data => x_msg_data,
2410: PROCEDURE Validate_Aes_Id(p_pdtv_rec IN pdtv_rec_type
2411: ,x_return_status OUT NOCOPY VARCHAR2 )
2412: IS
2413:
2414: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2415: l_aes_status VARCHAR2(1);
2416: l_row_notfound BOOLEAN := TRUE;
2417: l_token_1 VARCHAR2(1999);
2418: CURSOR okl_aesv_pk_csr (p_id IN NUMBER) IS
2422: WHERE okl_ae_tmpt_sets_v.id = p_id;
2423:
2424: BEGIN
2425: -- initialize return status
2426: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2427: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_TEMPLATE_SETS','OKL_TEMPLATE_SET');
2428:
2429: -- check for data before processing
2430: IF (p_pdtv_rec.aes_id IS NULL) OR
2427: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_TEMPLATE_SETS','OKL_TEMPLATE_SET');
2428:
2429: -- check for data before processing
2430: IF (p_pdtv_rec.aes_id IS NULL) OR
2431: (p_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM) THEN
2432: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2433: IF(L_DEBUG_ENABLED='Y') THEN
2434:
2435: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2428:
2429: -- check for data before processing
2430: IF (p_pdtv_rec.aes_id IS NULL) OR
2431: (p_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM) THEN
2432: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2433: IF(L_DEBUG_ENABLED='Y') THEN
2434:
2435: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2436: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2436: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2437: END IF;
2438: IF(IS_DEBUG_PROCEDURE_ON) THEN
2439: BEGIN
2440: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2441: END;
2442: END IF;
2443: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2444: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2439: BEGIN
2440: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2441: END;
2442: END IF;
2443: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2444: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2445: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2446: ,p_token1_value => l_token_1);
2447: IF(IS_DEBUG_PROCEDURE_ON) THEN
2445: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2446: ,p_token1_value => l_token_1);
2447: IF(IS_DEBUG_PROCEDURE_ON) THEN
2448: BEGIN
2449: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2450: END;
2451: END IF;
2452: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2453: x_return_status := Okl_Api.G_RET_STS_ERROR;
2448: BEGIN
2449: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2450: END;
2451: END IF;
2452: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2453: x_return_status := Okl_Api.G_RET_STS_ERROR;
2454: RAISE G_EXCEPTION_HALT_PROCESSING;
2455: END IF;
2456:
2449: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2450: END;
2451: END IF;
2452: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2453: x_return_status := Okl_Api.G_RET_STS_ERROR;
2454: RAISE G_EXCEPTION_HALT_PROCESSING;
2455: END IF;
2456:
2457: IF (p_pdtv_rec.AES_ID IS NOT NULL) THEN
2459: FETCH okl_aesv_pk_csr INTO l_aes_status;
2460: l_row_notfound := okl_aesv_pk_csr%NOTFOUND;
2461: CLOSE okl_aesv_pk_csr;
2462: IF (l_row_notfound) THEN
2463: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2464: IF(IS_DEBUG_PROCEDURE_ON) THEN
2465: BEGIN
2466: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2467: END;
2462: IF (l_row_notfound) THEN
2463: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2464: IF(IS_DEBUG_PROCEDURE_ON) THEN
2465: BEGIN
2466: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2467: END;
2468: END IF;
2469: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2470: IF(IS_DEBUG_PROCEDURE_ON) THEN
2465: BEGIN
2466: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2467: END;
2468: END IF;
2469: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2470: IF(IS_DEBUG_PROCEDURE_ON) THEN
2471:
2472: BEGIN
2473: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2469: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2470: IF(IS_DEBUG_PROCEDURE_ON) THEN
2471:
2472: BEGIN
2473: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2474: END;
2475: END IF;
2476: -- End of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2477: RAISE G_EXCEPTION_HALT_PROCESSING;
2472: BEGIN
2473: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2474: END;
2475: END IF;
2476: -- End of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2477: RAISE G_EXCEPTION_HALT_PROCESSING;
2478: END IF;
2479: END IF;
2480:
2484: -- with the next column
2485: NULL;
2486: WHEN OTHERS THEN
2487: -- store SQL error message on message stack for caller
2488: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
2489: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
2490: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
2491: p_token1_value => SQLCODE,
2492: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
2493: p_token2_value => SQLERRM);
2494:
2495:
2496: -- notify caller of an UNEXPECTED error
2497: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2498:
2499: END Validate_Aes_Id;
2500:
2501: ---------------------------------------------------------------------------
2513: PROCEDURE Validate_Ptl_Id(p_pdtv_rec IN pdtv_rec_type
2514: ,x_return_status OUT NOCOPY VARCHAR2 )
2515: IS
2516:
2517: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2518: l_ptl_status VARCHAR2(1);
2519: l_row_notfound BOOLEAN := TRUE;
2520: l_token_1 VARCHAR2(1999);
2521:
2525: WHERE okl_pdt_templates_v.id = p_id;
2526:
2527: BEGIN
2528: -- initialize return status
2529: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2530:
2531: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PDT_TMPL_CREATE_UPDATE','OKL_PRODUCT_TEMPLATE');
2532:
2533: -- check for data before processing
2531: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PDT_TMPL_CREATE_UPDATE','OKL_PRODUCT_TEMPLATE');
2532:
2533: -- check for data before processing
2534: IF (p_pdtv_rec.ptl_id IS NULL) OR
2535: (p_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM) THEN
2536: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2537:
2538: IF(L_DEBUG_ENABLED='Y') THEN
2539: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2532:
2533: -- check for data before processing
2534: IF (p_pdtv_rec.ptl_id IS NULL) OR
2535: (p_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM) THEN
2536: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2537:
2538: IF(L_DEBUG_ENABLED='Y') THEN
2539: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2540: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2540: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2541: END IF;
2542: IF(IS_DEBUG_PROCEDURE_ON) THEN
2543: BEGIN
2544: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2545: END;
2546: END IF;
2547: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2548: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2543: BEGIN
2544: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2545: END;
2546: END IF;
2547: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2548: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2549: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2550: ,p_token1_value => l_token_1);
2551: IF(IS_DEBUG_PROCEDURE_ON) THEN
2549: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2550: ,p_token1_value => l_token_1);
2551: IF(IS_DEBUG_PROCEDURE_ON) THEN
2552: BEGIN
2553: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2554: END;
2555: END IF;
2556: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2557: x_return_status := Okl_Api.G_RET_STS_ERROR;
2552: BEGIN
2553: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2554: END;
2555: END IF;
2556: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2557: x_return_status := Okl_Api.G_RET_STS_ERROR;
2558: RAISE G_EXCEPTION_HALT_PROCESSING;
2559: END IF;
2560:
2553: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2554: END;
2555: END IF;
2556: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2557: x_return_status := Okl_Api.G_RET_STS_ERROR;
2558: RAISE G_EXCEPTION_HALT_PROCESSING;
2559: END IF;
2560:
2561: IF (p_pdtv_rec.PTL_ID IS NOT NULL) THEN
2563: FETCH okl_ptlv_pk_csr INTO l_ptl_status;
2564: l_row_notfound := okl_ptlv_pk_csr%NOTFOUND;
2565: CLOSE okl_ptlv_pk_csr;
2566: IF (l_row_notfound) THEN
2567: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2568: IF(IS_DEBUG_PROCEDURE_ON) THEN
2569: BEGIN
2570: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2571:
2566: IF (l_row_notfound) THEN
2567: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2568: IF(IS_DEBUG_PROCEDURE_ON) THEN
2569: BEGIN
2570: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2571:
2572: END;
2573: END IF;
2574: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2570: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.set_message ');
2571:
2572: END;
2573: END IF;
2574: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2575: IF(IS_DEBUG_PROCEDURE_ON) THEN
2576: BEGIN
2577: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2578: END;
2573: END IF;
2574: Okl_Api.set_message(Okl_Pdt_Pvt.G_APP_NAME, Okl_Pdt_Pvt.G_INVALID_VALUE,Okl_Pdt_Pvt.G_COL_NAME_TOKEN,l_token_1);
2575: IF(IS_DEBUG_PROCEDURE_ON) THEN
2576: BEGIN
2577: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2578: END;
2579: END IF;
2580: -- End of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2581: RAISE G_EXCEPTION_HALT_PROCESSING;
2576: BEGIN
2577: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.set_message ');
2578: END;
2579: END IF;
2580: -- End of wraper code generated automatically by Debug code generator for Okl_Api.set_message
2581: RAISE G_EXCEPTION_HALT_PROCESSING;
2582: END IF;
2583: END IF;
2584:
2588: -- with the next column
2589: NULL;
2590: WHEN OTHERS THEN
2591: -- store SQL error message on message stack for caller
2592: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
2593: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
2594: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
2595: p_token1_value => SQLCODE,
2596:
2597: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
2598: p_token2_value => SQLERRM);
2599:
2600: -- notify caller of an UNEXPECTED error
2601: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2602:
2603: END Validate_Ptl_Id;
2604:
2605: ---------------------------------------------------------------------------
2617: PROCEDURE Validate_From_Date(p_pdtv_rec IN pdtv_rec_type
2618: ,x_return_status OUT NOCOPY VARCHAR2 )
2619: IS
2620:
2621: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2622: l_token_1 VARCHAR2(1999);
2623:
2624:
2625: BEGIN
2623:
2624:
2625: BEGIN
2626: -- initialize return status
2627: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2628:
2629: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PRODUCT_CRUPD','OKL_EFFECTIVE_FROM');
2630:
2631: -- check for data before processing
2629: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PRODUCT_CRUPD','OKL_EFFECTIVE_FROM');
2630:
2631: -- check for data before processing
2632: IF (p_pdtv_rec.from_date IS NULL) OR
2633: (p_pdtv_rec.from_date = Okl_Api.G_MISS_DATE) THEN
2634: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2635: IF(L_DEBUG_ENABLED='Y') THEN
2636: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2637: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2630:
2631: -- check for data before processing
2632: IF (p_pdtv_rec.from_date IS NULL) OR
2633: (p_pdtv_rec.from_date = Okl_Api.G_MISS_DATE) THEN
2634: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2635: IF(L_DEBUG_ENABLED='Y') THEN
2636: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2637: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2638: END IF;
2638: END IF;
2639: IF(IS_DEBUG_PROCEDURE_ON) THEN
2640:
2641: BEGIN
2642: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2643: END;
2644: END IF;
2645: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2646: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2641: BEGIN
2642: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2643: END;
2644: END IF;
2645: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2646: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2647: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2648: ,p_token1_value => l_token_1);
2649: IF(IS_DEBUG_PROCEDURE_ON) THEN
2647: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2648: ,p_token1_value => l_token_1);
2649: IF(IS_DEBUG_PROCEDURE_ON) THEN
2650: BEGIN
2651: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2652: END;
2653: END IF;
2654: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2655: x_return_status := Okl_Api.G_RET_STS_ERROR;
2650: BEGIN
2651: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2652: END;
2653: END IF;
2654: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2655: x_return_status := Okl_Api.G_RET_STS_ERROR;
2656: RAISE G_EXCEPTION_HALT_PROCESSING;
2657: END IF;
2658:
2651: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2652: END;
2653: END IF;
2654: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2655: x_return_status := Okl_Api.G_RET_STS_ERROR;
2656: RAISE G_EXCEPTION_HALT_PROCESSING;
2657: END IF;
2658:
2659: EXCEPTION
2663: NULL;
2664:
2665: WHEN OTHERS THEN
2666: -- store SQL error message on message stack for caller
2667: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
2668: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
2669: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
2670: p_token1_value => SQLCODE,
2671:
2672: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
2673: p_token2_value => SQLERRM);
2674:
2675: -- notify caller of an UNEXPECTED error
2676: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2677:
2678: END Validate_From_Date;
2679:
2680: ---------------------------------------------------------------------------
2692: PROCEDURE Validate_Name(p_pdtv_rec IN OUT NOCOPY pdtv_rec_type
2693: ,x_return_status OUT NOCOPY VARCHAR2 )
2694: IS
2695:
2696: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2697:
2698: l_token_1 VARCHAR2(1999);
2699:
2700: BEGIN
2698: l_token_1 VARCHAR2(1999);
2699:
2700: BEGIN
2701: -- initialize return status
2702: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
2703: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PRODUCT_CRUPD','OKL_NAME');
2704:
2705: -- check for data before processing
2706: IF (p_pdtv_rec.name IS NULL) OR
2703: l_token_1 := Okl_Accounting_Util.Get_Message_Token('OKL_LP_PRODUCT_CRUPD','OKL_NAME');
2704:
2705: -- check for data before processing
2706: IF (p_pdtv_rec.name IS NULL) OR
2707: (p_pdtv_rec.name = Okl_Api.G_MISS_CHAR) THEN
2708: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2709: IF(L_DEBUG_ENABLED='Y') THEN
2710: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2711: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2704:
2705: -- check for data before processing
2706: IF (p_pdtv_rec.name IS NULL) OR
2707: (p_pdtv_rec.name = Okl_Api.G_MISS_CHAR) THEN
2708: -- Start of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2709: IF(L_DEBUG_ENABLED='Y') THEN
2710: L_LEVEL_PROCEDURE :=FND_LOG.LEVEL_PROCEDURE;
2711: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2712: END IF;
2711: IS_DEBUG_PROCEDURE_ON := OKL_DEBUG_PUB.Check_Log_On(L_MODULE, L_LEVEL_PROCEDURE);
2712: END IF;
2713: IF(IS_DEBUG_PROCEDURE_ON) THEN
2714: BEGIN
2715: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2716: END;
2717: END IF;
2718: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2719: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2714: BEGIN
2715: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'Begin Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2716: END;
2717: END IF;
2718: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name
2719: ,p_msg_name => Okl_Pdt_Pvt.g_required_value
2720: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2721: ,p_token1_value => l_token_1);
2722: IF(IS_DEBUG_PROCEDURE_ON) THEN
2720: ,p_token1 => Okl_Pdt_Pvt.g_col_name_token
2721: ,p_token1_value => l_token_1);
2722: IF(IS_DEBUG_PROCEDURE_ON) THEN
2723: BEGIN
2724: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2725:
2726: END;
2727: END IF;
2728: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2724: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Api.SET_MESSAGE ');
2725:
2726: END;
2727: END IF;
2728: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2729: x_return_status := Okl_Api.G_RET_STS_ERROR;
2730: RAISE G_EXCEPTION_HALT_PROCESSING;
2731: END IF;
2732: p_pdtv_rec.name := Okl_Accounting_Util.okl_upper(p_pdtv_rec.name);
2725:
2726: END;
2727: END IF;
2728: -- End of wraper code generated automatically by Debug code generator for Okl_Api.SET_MESSAGE
2729: x_return_status := Okl_Api.G_RET_STS_ERROR;
2730: RAISE G_EXCEPTION_HALT_PROCESSING;
2731: END IF;
2732: p_pdtv_rec.name := Okl_Accounting_Util.okl_upper(p_pdtv_rec.name);
2733: EXCEPTION
2737: NULL;
2738:
2739: WHEN OTHERS THEN
2740: -- store SQL error message on message stack for caller
2741: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
2742: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
2743:
2744: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
2745: p_token1_value => SQLCODE,
2746: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
2747: p_token2_value => SQLERRM);
2748:
2749: -- notify caller of an UNEXPECTED error
2750: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2751:
2752: END Validate_Name;
2753:
2754:
2768: FUNCTION Validate_Attributes (
2769: p_pdtv_rec IN OUT NOCOPY pdtv_rec_type
2770: ) RETURN VARCHAR2 IS
2771:
2772: x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2773: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2774: l_pdtv_rec pdtv_rec_type := p_pdtv_rec;
2775: BEGIN
2776:
2769: p_pdtv_rec IN OUT NOCOPY pdtv_rec_type
2770: ) RETURN VARCHAR2 IS
2771:
2772: x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2773: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2774: l_pdtv_rec pdtv_rec_type := p_pdtv_rec;
2775: BEGIN
2776:
2777: -- Validate_Name
2775: BEGIN
2776:
2777: -- Validate_Name
2778: Validate_Name(l_pdtv_rec, x_return_status);
2779: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2780: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2781: -- need to leave
2782: l_return_status := x_return_status;
2783: RAISE G_EXCEPTION_HALT_PROCESSING;
2776:
2777: -- Validate_Name
2778: Validate_Name(l_pdtv_rec, x_return_status);
2779: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2780: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2781: -- need to leave
2782: l_return_status := x_return_status;
2783: RAISE G_EXCEPTION_HALT_PROCESSING;
2784: ELSE
2788: END IF;
2789:
2790: -- Validate_Aes_Id
2791: Validate_Aes_Id(l_pdtv_rec, x_return_status);
2792: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2793: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2794: -- need to leave
2795: l_return_status := x_return_status;
2796: RAISE G_EXCEPTION_HALT_PROCESSING;
2789:
2790: -- Validate_Aes_Id
2791: Validate_Aes_Id(l_pdtv_rec, x_return_status);
2792: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2793: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2794: -- need to leave
2795: l_return_status := x_return_status;
2796: RAISE G_EXCEPTION_HALT_PROCESSING;
2797: ELSE
2802: END IF;
2803:
2804: -- Validate_Ptl_Id
2805: Validate_Ptl_Id(l_pdtv_rec, x_return_status);
2806: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2807: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2808: -- need to leave
2809: l_return_status := x_return_status;
2810: RAISE G_EXCEPTION_HALT_PROCESSING;
2803:
2804: -- Validate_Ptl_Id
2805: Validate_Ptl_Id(l_pdtv_rec, x_return_status);
2806: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2807: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2808: -- need to leave
2809: l_return_status := x_return_status;
2810: RAISE G_EXCEPTION_HALT_PROCESSING;
2811: ELSE
2815: END IF;
2816:
2817: -- Validate_From_Date
2818: Validate_From_Date(l_pdtv_rec, x_return_status);
2819: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2820: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2821: -- need to leave
2822: l_return_status := x_return_status;
2823: RAISE G_EXCEPTION_HALT_PROCESSING;
2816:
2817: -- Validate_From_Date
2818: Validate_From_Date(l_pdtv_rec, x_return_status);
2819: IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
2820: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2821: -- need to leave
2822: l_return_status := x_return_status;
2823: RAISE G_EXCEPTION_HALT_PROCESSING;
2824: ELSE
2838: RETURN (l_return_status);
2839:
2840: WHEN OTHERS THEN
2841: -- store SQL error message on message stack for caller
2842: Okl_Api.SET_MESSAGE(p_app_name => Okl_Pdt_Pvt.g_app_name,
2843: p_msg_name => Okl_Pdt_Pvt.g_unexpected_error,
2844: p_token1 => Okl_Pdt_Pvt.g_sqlcode_token,
2845: p_token1_value => SQLCODE,
2846:
2846:
2847: p_token2 => Okl_Pdt_Pvt.g_sqlerrm_token,
2848: p_token2_value => SQLERRM);
2849: -- notify caller of an UNEXPECTED error
2850: l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2851: RETURN(l_return_status);
2852:
2853: END Validate_Attributes;
2854:
2872: l_db_pdtv_rec := p_db_pdtv_rec;
2873:
2874: IF l_upd_pdtv_rec.product_status_code = l_db_pdtv_rec.product_status_code THEN
2875:
2876: l_upd_pdtv_rec.product_status_code := Okl_Api.G_MISS_CHAR;
2877: END IF;
2878:
2879: IF l_upd_pdtv_rec.description = l_db_pdtv_rec.description THEN
2880:
2877: END IF;
2878:
2879: IF l_upd_pdtv_rec.description = l_db_pdtv_rec.description THEN
2880:
2881: l_upd_pdtv_rec.description := Okl_Api.G_MISS_CHAR;
2882: END IF;
2883:
2884: IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') = to_date(to_char(l_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') THEN
2885: l_upd_pdtv_rec.from_date := Okl_Api.G_MISS_DATE;
2881: l_upd_pdtv_rec.description := Okl_Api.G_MISS_CHAR;
2882: END IF;
2883:
2884: IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') = to_date(to_char(l_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') THEN
2885: l_upd_pdtv_rec.from_date := Okl_Api.G_MISS_DATE;
2886: END IF;
2887:
2888: IF to_date(to_char(l_upd_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') = to_date(to_char(l_db_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') THEN
2889: l_upd_pdtv_rec.TO_DATE := Okl_Api.G_MISS_DATE;
2885: l_upd_pdtv_rec.from_date := Okl_Api.G_MISS_DATE;
2886: END IF;
2887:
2888: IF to_date(to_char(l_upd_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') = to_date(to_char(l_db_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') THEN
2889: l_upd_pdtv_rec.TO_DATE := Okl_Api.G_MISS_DATE;
2890: END IF;
2891:
2892: IF l_upd_pdtv_rec.legacy_product_yn = l_db_pdtv_rec.legacy_product_yn THEN
2893: l_upd_pdtv_rec.legacy_product_yn := Okl_Api.G_MISS_CHAR;
2889: l_upd_pdtv_rec.TO_DATE := Okl_Api.G_MISS_DATE;
2890: END IF;
2891:
2892: IF l_upd_pdtv_rec.legacy_product_yn = l_db_pdtv_rec.legacy_product_yn THEN
2893: l_upd_pdtv_rec.legacy_product_yn := Okl_Api.G_MISS_CHAR;
2894: END IF;
2895:
2896: IF l_upd_pdtv_rec.aes_id = l_db_pdtv_rec.aes_id THEN
2897:
2894: END IF;
2895:
2896: IF l_upd_pdtv_rec.aes_id = l_db_pdtv_rec.aes_id THEN
2897:
2898: l_upd_pdtv_rec.aes_id := Okl_Api.G_MISS_NUM;
2899:
2900: END IF;
2901:
2902: IF l_upd_pdtv_rec.ptl_id = l_db_pdtv_rec.ptl_id THEN
2899:
2900: END IF;
2901:
2902: IF l_upd_pdtv_rec.ptl_id = l_db_pdtv_rec.ptl_id THEN
2903: l_upd_pdtv_rec.ptl_id := Okl_Api.G_MISS_NUM;
2904: END IF;
2905:
2906: IF l_upd_pdtv_rec.reporting_pdt_id = l_db_pdtv_rec.reporting_pdt_id THEN
2907: l_upd_pdtv_rec.reporting_pdt_id := Okl_Api.G_MISS_NUM;
2903: l_upd_pdtv_rec.ptl_id := Okl_Api.G_MISS_NUM;
2904: END IF;
2905:
2906: IF l_upd_pdtv_rec.reporting_pdt_id = l_db_pdtv_rec.reporting_pdt_id THEN
2907: l_upd_pdtv_rec.reporting_pdt_id := Okl_Api.G_MISS_NUM;
2908: END IF;
2909:
2910: IF l_upd_pdtv_rec.attribute_category = l_db_pdtv_rec.attribute_category THEN
2911: l_upd_pdtv_rec.attribute_category := Okl_Api.G_MISS_CHAR;
2907: l_upd_pdtv_rec.reporting_pdt_id := Okl_Api.G_MISS_NUM;
2908: END IF;
2909:
2910: IF l_upd_pdtv_rec.attribute_category = l_db_pdtv_rec.attribute_category THEN
2911: l_upd_pdtv_rec.attribute_category := Okl_Api.G_MISS_CHAR;
2912: END IF;
2913:
2914: IF l_upd_pdtv_rec.attribute1 = l_db_pdtv_rec.attribute1 THEN
2915: l_upd_pdtv_rec.attribute1 := Okl_Api.G_MISS_CHAR;
2911: l_upd_pdtv_rec.attribute_category := Okl_Api.G_MISS_CHAR;
2912: END IF;
2913:
2914: IF l_upd_pdtv_rec.attribute1 = l_db_pdtv_rec.attribute1 THEN
2915: l_upd_pdtv_rec.attribute1 := Okl_Api.G_MISS_CHAR;
2916: END IF;
2917:
2918: IF l_upd_pdtv_rec.attribute2 = l_db_pdtv_rec.attribute2 THEN
2919: l_upd_pdtv_rec.attribute2 := Okl_Api.G_MISS_CHAR;
2915: l_upd_pdtv_rec.attribute1 := Okl_Api.G_MISS_CHAR;
2916: END IF;
2917:
2918: IF l_upd_pdtv_rec.attribute2 = l_db_pdtv_rec.attribute2 THEN
2919: l_upd_pdtv_rec.attribute2 := Okl_Api.G_MISS_CHAR;
2920: END IF;
2921:
2922: IF l_upd_pdtv_rec.attribute3 = l_db_pdtv_rec.attribute3 THEN
2923: l_upd_pdtv_rec.attribute3 := Okl_Api.G_MISS_CHAR;
2919: l_upd_pdtv_rec.attribute2 := Okl_Api.G_MISS_CHAR;
2920: END IF;
2921:
2922: IF l_upd_pdtv_rec.attribute3 = l_db_pdtv_rec.attribute3 THEN
2923: l_upd_pdtv_rec.attribute3 := Okl_Api.G_MISS_CHAR;
2924: END IF;
2925:
2926: IF l_upd_pdtv_rec.attribute4 = l_db_pdtv_rec.attribute4 THEN
2927: l_upd_pdtv_rec.attribute4 := Okl_Api.G_MISS_CHAR;
2923: l_upd_pdtv_rec.attribute3 := Okl_Api.G_MISS_CHAR;
2924: END IF;
2925:
2926: IF l_upd_pdtv_rec.attribute4 = l_db_pdtv_rec.attribute4 THEN
2927: l_upd_pdtv_rec.attribute4 := Okl_Api.G_MISS_CHAR;
2928: END IF;
2929:
2930:
2931: IF l_upd_pdtv_rec.attribute5 = l_db_pdtv_rec.attribute5 THEN
2928: END IF;
2929:
2930:
2931: IF l_upd_pdtv_rec.attribute5 = l_db_pdtv_rec.attribute5 THEN
2932: l_upd_pdtv_rec.attribute5 := Okl_Api.G_MISS_CHAR;
2933: END IF;
2934:
2935: IF l_upd_pdtv_rec.attribute6 = l_db_pdtv_rec.attribute6 THEN
2936: l_upd_pdtv_rec.attribute6 := Okl_Api.G_MISS_CHAR;
2932: l_upd_pdtv_rec.attribute5 := Okl_Api.G_MISS_CHAR;
2933: END IF;
2934:
2935: IF l_upd_pdtv_rec.attribute6 = l_db_pdtv_rec.attribute6 THEN
2936: l_upd_pdtv_rec.attribute6 := Okl_Api.G_MISS_CHAR;
2937: END IF;
2938:
2939: IF l_upd_pdtv_rec.attribute7 = l_db_pdtv_rec.attribute7 THEN
2940: l_upd_pdtv_rec.attribute7 := Okl_Api.G_MISS_CHAR;
2936: l_upd_pdtv_rec.attribute6 := Okl_Api.G_MISS_CHAR;
2937: END IF;
2938:
2939: IF l_upd_pdtv_rec.attribute7 = l_db_pdtv_rec.attribute7 THEN
2940: l_upd_pdtv_rec.attribute7 := Okl_Api.G_MISS_CHAR;
2941: END IF;
2942:
2943: IF l_upd_pdtv_rec.attribute8 = l_db_pdtv_rec.attribute8 THEN
2944: l_upd_pdtv_rec.attribute8 := Okl_Api.G_MISS_CHAR;
2940: l_upd_pdtv_rec.attribute7 := Okl_Api.G_MISS_CHAR;
2941: END IF;
2942:
2943: IF l_upd_pdtv_rec.attribute8 = l_db_pdtv_rec.attribute8 THEN
2944: l_upd_pdtv_rec.attribute8 := Okl_Api.G_MISS_CHAR;
2945: END IF;
2946:
2947: IF l_upd_pdtv_rec.attribute9 = l_db_pdtv_rec.attribute9 THEN
2948: l_upd_pdtv_rec.attribute9 := Okl_Api.G_MISS_CHAR;
2944: l_upd_pdtv_rec.attribute8 := Okl_Api.G_MISS_CHAR;
2945: END IF;
2946:
2947: IF l_upd_pdtv_rec.attribute9 = l_db_pdtv_rec.attribute9 THEN
2948: l_upd_pdtv_rec.attribute9 := Okl_Api.G_MISS_CHAR;
2949: END IF;
2950:
2951: IF l_upd_pdtv_rec.attribute10 = l_db_pdtv_rec.attribute10 THEN
2952: l_upd_pdtv_rec.attribute10 := Okl_Api.G_MISS_CHAR;
2948: l_upd_pdtv_rec.attribute9 := Okl_Api.G_MISS_CHAR;
2949: END IF;
2950:
2951: IF l_upd_pdtv_rec.attribute10 = l_db_pdtv_rec.attribute10 THEN
2952: l_upd_pdtv_rec.attribute10 := Okl_Api.G_MISS_CHAR;
2953: END IF;
2954:
2955: IF l_upd_pdtv_rec.attribute11 = l_db_pdtv_rec.attribute11 THEN
2956: l_upd_pdtv_rec.attribute11 := Okl_Api.G_MISS_CHAR;
2952: l_upd_pdtv_rec.attribute10 := Okl_Api.G_MISS_CHAR;
2953: END IF;
2954:
2955: IF l_upd_pdtv_rec.attribute11 = l_db_pdtv_rec.attribute11 THEN
2956: l_upd_pdtv_rec.attribute11 := Okl_Api.G_MISS_CHAR;
2957:
2958: END IF;
2959:
2960: IF l_upd_pdtv_rec.attribute12 = l_db_pdtv_rec.attribute12 THEN
2957:
2958: END IF;
2959:
2960: IF l_upd_pdtv_rec.attribute12 = l_db_pdtv_rec.attribute12 THEN
2961: l_upd_pdtv_rec.attribute12 := Okl_Api.G_MISS_CHAR;
2962: END IF;
2963:
2964: IF l_upd_pdtv_rec.attribute13 = l_db_pdtv_rec.attribute13 THEN
2965: l_upd_pdtv_rec.attribute13 := Okl_Api.G_MISS_CHAR;
2961: l_upd_pdtv_rec.attribute12 := Okl_Api.G_MISS_CHAR;
2962: END IF;
2963:
2964: IF l_upd_pdtv_rec.attribute13 = l_db_pdtv_rec.attribute13 THEN
2965: l_upd_pdtv_rec.attribute13 := Okl_Api.G_MISS_CHAR;
2966: END IF;
2967:
2968: IF l_upd_pdtv_rec.attribute14 = l_db_pdtv_rec.attribute14 THEN
2969: l_upd_pdtv_rec.attribute14 := Okl_Api.G_MISS_CHAR;
2965: l_upd_pdtv_rec.attribute13 := Okl_Api.G_MISS_CHAR;
2966: END IF;
2967:
2968: IF l_upd_pdtv_rec.attribute14 = l_db_pdtv_rec.attribute14 THEN
2969: l_upd_pdtv_rec.attribute14 := Okl_Api.G_MISS_CHAR;
2970: END IF;
2971:
2972:
2973: IF l_upd_pdtv_rec.attribute15 = l_db_pdtv_rec.attribute15 THEN
2970: END IF;
2971:
2972:
2973: IF l_upd_pdtv_rec.attribute15 = l_db_pdtv_rec.attribute15 THEN
2974: l_upd_pdtv_rec.attribute15 := Okl_Api.G_MISS_CHAR;
2975: END IF;
2976:
2977: p_upd_pdtv_rec := l_upd_pdtv_rec;
2978:
2991: BEGIN
2992: /* create a temporary record with all relevant details from db and upd records */
2993: l_pdtv_rec := p_db_pdtv_rec;
2994:
2995: IF p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM THEN
2996: l_pdtv_rec.aes_id := p_upd_pdtv_rec.aes_id;
2997: END IF;
2998:
2999: IF p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM THEN
2995: IF p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM THEN
2996: l_pdtv_rec.aes_id := p_upd_pdtv_rec.aes_id;
2997: END IF;
2998:
2999: IF p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM THEN
3000:
3001: l_pdtv_rec.ptl_id := p_upd_pdtv_rec.ptl_id;
3002: END IF;
3003:
3000:
3001: l_pdtv_rec.ptl_id := p_upd_pdtv_rec.ptl_id;
3002: END IF;
3003:
3004: IF p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM THEN
3005: l_pdtv_rec.reporting_pdt_id := p_upd_pdtv_rec.reporting_pdt_id;
3006: END IF;
3007:
3008: IF p_upd_pdtv_rec.description <> Okl_Api.G_MISS_CHAR THEN
3004: IF p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM THEN
3005: l_pdtv_rec.reporting_pdt_id := p_upd_pdtv_rec.reporting_pdt_id;
3006: END IF;
3007:
3008: IF p_upd_pdtv_rec.description <> Okl_Api.G_MISS_CHAR THEN
3009: l_pdtv_rec.description := p_upd_pdtv_rec.description;
3010: END IF;
3011:
3012:
3009: l_pdtv_rec.description := p_upd_pdtv_rec.description;
3010: END IF;
3011:
3012:
3013: IF p_upd_pdtv_rec.product_status_code <> Okl_Api.G_MISS_CHAR THEN
3014: l_pdtv_rec.product_status_code := p_upd_pdtv_rec.product_status_code;
3015: END IF;
3016:
3017:
3014: l_pdtv_rec.product_status_code := p_upd_pdtv_rec.product_status_code;
3015: END IF;
3016:
3017:
3018: IF p_upd_pdtv_rec.legacy_product_yn <> Okl_Api.G_MISS_CHAR THEN
3019: l_pdtv_rec.legacy_product_yn := p_upd_pdtv_rec.legacy_product_yn;
3020: END IF;
3021:
3022: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3018: IF p_upd_pdtv_rec.legacy_product_yn <> Okl_Api.G_MISS_CHAR THEN
3019: l_pdtv_rec.legacy_product_yn := p_upd_pdtv_rec.legacy_product_yn;
3020: END IF;
3021:
3022: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3023: l_pdtv_rec.from_date := p_upd_pdtv_rec.from_date;
3024: END IF;
3025:
3026: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3022: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3023: l_pdtv_rec.from_date := p_upd_pdtv_rec.from_date;
3024: END IF;
3025:
3026: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3027: l_pdtv_rec.TO_DATE := p_upd_pdtv_rec.TO_DATE;
3028: END IF;
3029:
3030: IF p_upd_pdtv_rec.attribute_category <> Okl_Api.G_MISS_CHAR THEN
3026: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3027: l_pdtv_rec.TO_DATE := p_upd_pdtv_rec.TO_DATE;
3028: END IF;
3029:
3030: IF p_upd_pdtv_rec.attribute_category <> Okl_Api.G_MISS_CHAR THEN
3031:
3032: l_pdtv_rec.attribute_category := p_upd_pdtv_rec.attribute_category;
3033: END IF;
3034:
3031:
3032: l_pdtv_rec.attribute_category := p_upd_pdtv_rec.attribute_category;
3033: END IF;
3034:
3035: IF p_upd_pdtv_rec.attribute1 <> Okl_Api.G_MISS_CHAR THEN
3036: l_pdtv_rec.attribute1 := p_upd_pdtv_rec.attribute1;
3037: END IF;
3038:
3039: IF p_upd_pdtv_rec.attribute2 <> Okl_Api.G_MISS_CHAR THEN
3035: IF p_upd_pdtv_rec.attribute1 <> Okl_Api.G_MISS_CHAR THEN
3036: l_pdtv_rec.attribute1 := p_upd_pdtv_rec.attribute1;
3037: END IF;
3038:
3039: IF p_upd_pdtv_rec.attribute2 <> Okl_Api.G_MISS_CHAR THEN
3040: l_pdtv_rec.attribute2 := p_upd_pdtv_rec.attribute2;
3041: END IF;
3042:
3043: IF p_upd_pdtv_rec.attribute3 <> Okl_Api.G_MISS_CHAR THEN
3039: IF p_upd_pdtv_rec.attribute2 <> Okl_Api.G_MISS_CHAR THEN
3040: l_pdtv_rec.attribute2 := p_upd_pdtv_rec.attribute2;
3041: END IF;
3042:
3043: IF p_upd_pdtv_rec.attribute3 <> Okl_Api.G_MISS_CHAR THEN
3044: l_pdtv_rec.attribute3 := p_upd_pdtv_rec.attribute3;
3045: END IF;
3046:
3047: IF p_upd_pdtv_rec.attribute4 <> Okl_Api.G_MISS_CHAR THEN
3043: IF p_upd_pdtv_rec.attribute3 <> Okl_Api.G_MISS_CHAR THEN
3044: l_pdtv_rec.attribute3 := p_upd_pdtv_rec.attribute3;
3045: END IF;
3046:
3047: IF p_upd_pdtv_rec.attribute4 <> Okl_Api.G_MISS_CHAR THEN
3048: l_pdtv_rec.attribute4 := p_upd_pdtv_rec.attribute4;
3049: END IF;
3050:
3051: IF p_upd_pdtv_rec.attribute5 <> Okl_Api.G_MISS_CHAR THEN
3047: IF p_upd_pdtv_rec.attribute4 <> Okl_Api.G_MISS_CHAR THEN
3048: l_pdtv_rec.attribute4 := p_upd_pdtv_rec.attribute4;
3049: END IF;
3050:
3051: IF p_upd_pdtv_rec.attribute5 <> Okl_Api.G_MISS_CHAR THEN
3052: l_pdtv_rec.attribute5 := p_upd_pdtv_rec.attribute5;
3053: END IF;
3054:
3055: IF p_upd_pdtv_rec.attribute6 <> Okl_Api.G_MISS_CHAR THEN
3051: IF p_upd_pdtv_rec.attribute5 <> Okl_Api.G_MISS_CHAR THEN
3052: l_pdtv_rec.attribute5 := p_upd_pdtv_rec.attribute5;
3053: END IF;
3054:
3055: IF p_upd_pdtv_rec.attribute6 <> Okl_Api.G_MISS_CHAR THEN
3056: l_pdtv_rec.attribute6 := p_upd_pdtv_rec.attribute6;
3057: END IF;
3058:
3059: IF p_upd_pdtv_rec.attribute7 <> Okl_Api.G_MISS_CHAR THEN
3055: IF p_upd_pdtv_rec.attribute6 <> Okl_Api.G_MISS_CHAR THEN
3056: l_pdtv_rec.attribute6 := p_upd_pdtv_rec.attribute6;
3057: END IF;
3058:
3059: IF p_upd_pdtv_rec.attribute7 <> Okl_Api.G_MISS_CHAR THEN
3060: l_pdtv_rec.attribute7 := p_upd_pdtv_rec.attribute7;
3061: END IF;
3062:
3063: IF p_upd_pdtv_rec.attribute8 <> Okl_Api.G_MISS_CHAR THEN
3059: IF p_upd_pdtv_rec.attribute7 <> Okl_Api.G_MISS_CHAR THEN
3060: l_pdtv_rec.attribute7 := p_upd_pdtv_rec.attribute7;
3061: END IF;
3062:
3063: IF p_upd_pdtv_rec.attribute8 <> Okl_Api.G_MISS_CHAR THEN
3064: l_pdtv_rec.attribute8 := p_upd_pdtv_rec.attribute8;
3065: END IF;
3066:
3067:
3064: l_pdtv_rec.attribute8 := p_upd_pdtv_rec.attribute8;
3065: END IF;
3066:
3067:
3068: IF p_upd_pdtv_rec.attribute9 <> Okl_Api.G_MISS_CHAR THEN
3069: l_pdtv_rec.attribute9 := p_upd_pdtv_rec.attribute9;
3070: END IF;
3071:
3072:
3069: l_pdtv_rec.attribute9 := p_upd_pdtv_rec.attribute9;
3070: END IF;
3071:
3072:
3073: IF p_upd_pdtv_rec.attribute10 <> Okl_Api.G_MISS_CHAR THEN
3074: l_pdtv_rec.attribute10 := p_upd_pdtv_rec.attribute10;
3075: END IF;
3076:
3077: IF p_upd_pdtv_rec.attribute11 <> Okl_Api.G_MISS_CHAR THEN
3073: IF p_upd_pdtv_rec.attribute10 <> Okl_Api.G_MISS_CHAR THEN
3074: l_pdtv_rec.attribute10 := p_upd_pdtv_rec.attribute10;
3075: END IF;
3076:
3077: IF p_upd_pdtv_rec.attribute11 <> Okl_Api.G_MISS_CHAR THEN
3078: l_pdtv_rec.attribute11 := p_upd_pdtv_rec.attribute11;
3079: END IF;
3080:
3081: IF p_upd_pdtv_rec.attribute12 <> Okl_Api.G_MISS_CHAR THEN
3077: IF p_upd_pdtv_rec.attribute11 <> Okl_Api.G_MISS_CHAR THEN
3078: l_pdtv_rec.attribute11 := p_upd_pdtv_rec.attribute11;
3079: END IF;
3080:
3081: IF p_upd_pdtv_rec.attribute12 <> Okl_Api.G_MISS_CHAR THEN
3082: l_pdtv_rec.attribute12 := p_upd_pdtv_rec.attribute12;
3083: END IF;
3084:
3085: IF p_upd_pdtv_rec.attribute13 <> Okl_Api.G_MISS_CHAR THEN
3081: IF p_upd_pdtv_rec.attribute12 <> Okl_Api.G_MISS_CHAR THEN
3082: l_pdtv_rec.attribute12 := p_upd_pdtv_rec.attribute12;
3083: END IF;
3084:
3085: IF p_upd_pdtv_rec.attribute13 <> Okl_Api.G_MISS_CHAR THEN
3086: l_pdtv_rec.attribute13 := p_upd_pdtv_rec.attribute13;
3087: END IF;
3088:
3089: IF p_upd_pdtv_rec.attribute14 <> Okl_Api.G_MISS_CHAR THEN
3085: IF p_upd_pdtv_rec.attribute13 <> Okl_Api.G_MISS_CHAR THEN
3086: l_pdtv_rec.attribute13 := p_upd_pdtv_rec.attribute13;
3087: END IF;
3088:
3089: IF p_upd_pdtv_rec.attribute14 <> Okl_Api.G_MISS_CHAR THEN
3090: l_pdtv_rec.attribute14 := p_upd_pdtv_rec.attribute14;
3091: END IF;
3092:
3093: IF p_upd_pdtv_rec.attribute15 <> Okl_Api.G_MISS_CHAR THEN
3089: IF p_upd_pdtv_rec.attribute14 <> Okl_Api.G_MISS_CHAR THEN
3090: l_pdtv_rec.attribute14 := p_upd_pdtv_rec.attribute14;
3091: END IF;
3092:
3093: IF p_upd_pdtv_rec.attribute15 <> Okl_Api.G_MISS_CHAR THEN
3094: l_pdtv_rec.attribute15 := p_upd_pdtv_rec.attribute15;
3095: END IF;
3096:
3097: RETURN l_pdtv_rec;
3103: -- To verify whether the requested changes from the screen are valid or not
3104: ---------------------------------------------------------------------------
3105: PROCEDURE check_updates (
3106: p_api_version IN NUMBER,
3107: p_init_msg_list IN VARCHAR2 DEFAULT okl_api.G_FALSE,
3108: x_msg_count OUT NOCOPY NUMBER,
3109: x_msg_data OUT NOCOPY VARCHAR2,
3110: p_upd_pdtv_rec IN pdtv_rec_type,
3111: p_db_pdtv_rec IN pdtv_rec_type,
3114: ) IS
3115: l_upd_pdtv_rec pdtv_rec_type;
3116: l_pdtv_rec pdtv_rec_type;
3117: l_db_pdtv_rec pdtv_rec_type;
3118: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3119: l_valid BOOLEAN;
3120: l_sysdate DATE := to_date(to_char(SYSDATE, 'DD/MM/YYYY'), 'DD/MM/YYYY');
3121: BEGIN
3122:
3119: l_valid BOOLEAN;
3120: l_sysdate DATE := to_date(to_char(SYSDATE, 'DD/MM/YYYY'), 'DD/MM/YYYY');
3121: BEGIN
3122:
3123: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3124: l_pdtv_rec := p_pdtv_rec;
3125: l_upd_pdtv_rec := p_upd_pdtv_rec;
3126: l_db_pdtv_rec := p_db_pdtv_rec;
3127:
3125: l_upd_pdtv_rec := p_upd_pdtv_rec;
3126: l_db_pdtv_rec := p_db_pdtv_rec;
3127:
3128: /* check for start date greater than sysdate */
3129: /*IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
3130: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3131: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3132: p_msg_name => G_START_DATE);
3133:
3127:
3128: /* check for start date greater than sysdate */
3129: /*IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
3130: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3131: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3132: p_msg_name => G_START_DATE);
3133:
3134: x_return_status := OKL_API.G_RET_STS_ERROR;
3135: RAISE G_EXCEPTION_HALT_PROCESSING;
3130: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3131: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3132: p_msg_name => G_START_DATE);
3133:
3134: x_return_status := OKL_API.G_RET_STS_ERROR;
3135: RAISE G_EXCEPTION_HALT_PROCESSING;
3136: END IF; */
3137:
3138: /* check for the records with from and to dates less than sysdate */
3137:
3138: /* check for the records with from and to dates less than sysdate */
3139:
3140: /* IF to_date(to_char(l_upd_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3141: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3142: p_msg_name => G_PAST_RECORDS);
3143: x_return_status := OKL_API.G_RET_STS_ERROR;
3144: RAISE G_EXCEPTION_HALT_PROCESSING;
3145: END IF;*/
3139:
3140: /* IF to_date(to_char(l_upd_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3141: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3142: p_msg_name => G_PAST_RECORDS);
3143: x_return_status := OKL_API.G_RET_STS_ERROR;
3144: RAISE G_EXCEPTION_HALT_PROCESSING;
3145: END IF;*/
3146:
3147: /* if the start date is in the past, the start date cannot be
3145: END IF;*/
3146:
3147: /* if the start date is in the past, the start date cannot be
3148: modified */
3149: /* IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
3150: to_date(to_char(P_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <= l_sysdate THEN
3151: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3152: p_msg_name => 'OKL_NOT_ALLOWED',
3153: p_token1 => G_COL_NAME_TOKEN,
3147: /* if the start date is in the past, the start date cannot be
3148: modified */
3149: /* IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
3150: to_date(to_char(P_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <= l_sysdate THEN
3151: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3152: p_msg_name => 'OKL_NOT_ALLOWED',
3153: p_token1 => G_COL_NAME_TOKEN,
3154: p_token1_value => 'START_DATE');
3155: x_return_status := OKL_API.G_RET_STS_ERROR;
3151: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3152: p_msg_name => 'OKL_NOT_ALLOWED',
3153: p_token1 => G_COL_NAME_TOKEN,
3154: p_token1_value => 'START_DATE');
3155: x_return_status := OKL_API.G_RET_STS_ERROR;
3156: RAISE G_EXCEPTION_HALT_PROCESSING;
3157: END IF; */
3158:
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3155: x_return_status := OKL_API.G_RET_STS_ERROR;
3156: RAISE G_EXCEPTION_HALT_PROCESSING;
3157: END IF; */
3158:
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3160: p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE OR
3161: p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM OR
3162: p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM OR
3163: p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM OR
3156: RAISE G_EXCEPTION_HALT_PROCESSING;
3157: END IF; */
3158:
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3160: p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE OR
3161: p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM OR
3162: p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM OR
3163: p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM OR
3164: -- Handle the condition when the Reporting product is being passed as NULL where as the DB has it
3157: END IF; */
3158:
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3160: p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE OR
3161: p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM OR
3162: p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM OR
3163: p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM OR
3164: -- Handle the condition when the Reporting product is being passed as NULL where as the DB has it
3165: ( p_upd_pdtv_rec.reporting_pdt_id IS NULL AND l_db_pdtv_rec.reporting_pdt_id IS NOT NULL )
3158:
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3160: p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE OR
3161: p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM OR
3162: p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM OR
3163: p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM OR
3164: -- Handle the condition when the Reporting product is being passed as NULL where as the DB has it
3165: ( p_upd_pdtv_rec.reporting_pdt_id IS NULL AND l_db_pdtv_rec.reporting_pdt_id IS NOT NULL )
3166: THEN
3159: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE OR
3160: p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE OR
3161: p_upd_pdtv_rec.reporting_pdt_id <> Okl_Api.G_MISS_NUM OR
3162: p_upd_pdtv_rec.aes_id <> Okl_Api.G_MISS_NUM OR
3163: p_upd_pdtv_rec.ptl_id <> Okl_Api.G_MISS_NUM OR
3164: -- Handle the condition when the Reporting product is being passed as NULL where as the DB has it
3165: ( p_upd_pdtv_rec.reporting_pdt_id IS NULL AND l_db_pdtv_rec.reporting_pdt_id IS NOT NULL )
3166: THEN
3167:
3175:
3176: p_table => 'Okl_Products_V',
3177: x_return_status => l_return_status,
3178: x_valid => l_valid);
3179: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3180: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
3181: RAISE G_EXCEPTION_HALT_PROCESSING;
3182: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) OR
3183: (l_return_status = OKL_API.G_RET_STS_SUCCESS AND
3176: p_table => 'Okl_Products_V',
3177: x_return_status => l_return_status,
3178: x_valid => l_valid);
3179: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3180: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
3181: RAISE G_EXCEPTION_HALT_PROCESSING;
3182: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) OR
3183: (l_return_status = OKL_API.G_RET_STS_SUCCESS AND
3184: l_valid <> TRUE) THEN
3178: x_valid => l_valid);
3179: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3180: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
3181: RAISE G_EXCEPTION_HALT_PROCESSING;
3182: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) OR
3183: (l_return_status = OKL_API.G_RET_STS_SUCCESS AND
3184: l_valid <> TRUE) THEN
3185: x_return_status := OKL_API.G_RET_STS_ERROR;
3186: RAISE G_EXCEPTION_HALT_PROCESSING;
3179: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3180: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
3181: RAISE G_EXCEPTION_HALT_PROCESSING;
3182: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) OR
3183: (l_return_status = OKL_API.G_RET_STS_SUCCESS AND
3184: l_valid <> TRUE) THEN
3185: x_return_status := OKL_API.G_RET_STS_ERROR;
3186: RAISE G_EXCEPTION_HALT_PROCESSING;
3187: END IF;*/
3181: RAISE G_EXCEPTION_HALT_PROCESSING;
3182: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) OR
3183: (l_return_status = OKL_API.G_RET_STS_SUCCESS AND
3184: l_valid <> TRUE) THEN
3185: x_return_status := OKL_API.G_RET_STS_ERROR;
3186: RAISE G_EXCEPTION_HALT_PROCESSING;
3187: END IF;*/
3188:
3189: /* call check_constraints */
3196: p_db_pdtv_rec => l_db_pdtv_rec,
3197: x_return_status => l_return_status,
3198: x_valid => l_valid);
3199:
3200: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3201: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3202: RAISE G_EXCEPTION_HALT_PROCESSING;
3203: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
3204: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
3197: x_return_status => l_return_status,
3198: x_valid => l_valid);
3199:
3200: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3201: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3202: RAISE G_EXCEPTION_HALT_PROCESSING;
3203: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
3204: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
3205:
3199:
3200: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3201: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3202: RAISE G_EXCEPTION_HALT_PROCESSING;
3203: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
3204: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
3205:
3206: l_valid <> TRUE) THEN
3207: x_return_status := Okl_Api.G_RET_STS_ERROR;
3200: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3201: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3202: RAISE G_EXCEPTION_HALT_PROCESSING;
3203: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
3204: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
3205:
3206: l_valid <> TRUE) THEN
3207: x_return_status := Okl_Api.G_RET_STS_ERROR;
3208: RAISE G_EXCEPTION_HALT_PROCESSING;
3203: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
3204: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
3205:
3206: l_valid <> TRUE) THEN
3207: x_return_status := Okl_Api.G_RET_STS_ERROR;
3208: RAISE G_EXCEPTION_HALT_PROCESSING;
3209: END IF;
3210:
3211:
3209: END IF;
3210:
3211:
3212: IF l_valid <> TRUE THEN
3213: x_return_status := Okl_Api.G_RET_STS_ERROR;
3214: RAISE G_EXCEPTION_HALT_PROCESSING;
3215: END IF;
3216:
3217: END IF;
3223: NULL;
3224:
3225: WHEN OTHERS THEN
3226: -- store SQL error message on message stack for caller
3227: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3228: p_msg_name => G_UNEXPECTED_ERROR,
3229: p_token1 => G_SQLCODE_TOKEN,
3230: p_token1_value => SQLCODE,
3231: p_token2 => G_SQLERRM_TOKEN,
3230: p_token1_value => SQLCODE,
3231: p_token2 => G_SQLERRM_TOKEN,
3232: p_token2_value => SQLERRM );
3233: -- notify caller of an UNEXPECTED error
3234: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3235:
3236: END check_updates;
3237:
3238:
3251: l_sysdate DATE := to_date(to_char(SYSDATE, 'DD/MM/YYYY'), 'DD/MM/YYYY');
3252: BEGIN
3253: /* Scenario 1: Only description and/or descriptive flexfield changes */
3254:
3255: IF (p_upd_pdtv_rec.from_date = Okl_Api.G_MISS_DATE AND
3256: p_upd_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE AND
3257: p_upd_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM AND
3258: p_upd_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM AND
3259: p_upd_pdtv_rec.reporting_pdt_id = Okl_Api.G_MISS_NUM) THEN
3252: BEGIN
3253: /* Scenario 1: Only description and/or descriptive flexfield changes */
3254:
3255: IF (p_upd_pdtv_rec.from_date = Okl_Api.G_MISS_DATE AND
3256: p_upd_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE AND
3257: p_upd_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM AND
3258: p_upd_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM AND
3259: p_upd_pdtv_rec.reporting_pdt_id = Okl_Api.G_MISS_NUM) THEN
3260: --p_db_pdtv_rec.from_date = l_sysdate THEN
3253: /* Scenario 1: Only description and/or descriptive flexfield changes */
3254:
3255: IF (p_upd_pdtv_rec.from_date = Okl_Api.G_MISS_DATE AND
3256: p_upd_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE AND
3257: p_upd_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM AND
3258: p_upd_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM AND
3259: p_upd_pdtv_rec.reporting_pdt_id = Okl_Api.G_MISS_NUM) THEN
3260: --p_db_pdtv_rec.from_date = l_sysdate THEN
3261: l_action := '1';
3254:
3255: IF (p_upd_pdtv_rec.from_date = Okl_Api.G_MISS_DATE AND
3256: p_upd_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE AND
3257: p_upd_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM AND
3258: p_upd_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM AND
3259: p_upd_pdtv_rec.reporting_pdt_id = Okl_Api.G_MISS_NUM) THEN
3260: --p_db_pdtv_rec.from_date = l_sysdate THEN
3261: l_action := '1';
3262: /* Scenario 2: only changing description/descriptive flexfield changes
3255: IF (p_upd_pdtv_rec.from_date = Okl_Api.G_MISS_DATE AND
3256: p_upd_pdtv_rec.TO_DATE = Okl_Api.G_MISS_DATE AND
3257: p_upd_pdtv_rec.aes_id = Okl_Api.G_MISS_NUM AND
3258: p_upd_pdtv_rec.ptl_id = Okl_Api.G_MISS_NUM AND
3259: p_upd_pdtv_rec.reporting_pdt_id = Okl_Api.G_MISS_NUM) THEN
3260: --p_db_pdtv_rec.from_date = l_sysdate THEN
3261: l_action := '1';
3262: /* Scenario 2: only changing description/descriptive flexfield changes
3263: and end date for all records or changing anything for a future record other
3292: TO_DATE
3293: FROM Okl_prod_strm_types_V psy
3294: WHERE psy.PDT_ID = p_pdt_id;
3295:
3296: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3297: l_count NUMBER := 0;
3298: l_psyv_tbl psyv_tbl_type;
3299:
3300: BEGIN
3297: l_count NUMBER := 0;
3298: l_psyv_tbl psyv_tbl_type;
3299:
3300: BEGIN
3301: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3302:
3303: -- Get current database values
3304: FOR okl_psy_rec IN okl_psyv_fk_csr(p_upd_pdtv_rec.id)
3305: LOOP
3309: END IF;
3310: l_psyv_tbl(l_count).PDT_ID := p_pdtv_rec.ID;
3311: l_psyv_tbl(l_count).STY_ID := okl_psy_rec.STY_ID;
3312: l_psyv_tbl(l_count).ACCRUAL_YN := okl_psy_rec.ACCRUAL_YN;
3313: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3314: l_psyv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3315: ELSE
3316: l_psyv_tbl(l_count).from_date := okl_psy_rec.from_date;
3317: END IF;
3314: l_psyv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3315: ELSE
3316: l_psyv_tbl(l_count).from_date := okl_psy_rec.from_date;
3317: END IF;
3318: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3319: l_psyv_tbl(l_count).TO_DATE := p_upd_pdtv_rec.TO_DATE;
3320: ELSE
3321: l_psyv_tbl(l_count).TO_DATE := okl_psy_rec.TO_DATE;
3322: END IF;
3328:
3329: EXCEPTION
3330: WHEN OTHERS THEN
3331: -- store SQL error message on message stack
3332: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3333: p_msg_name => G_UNEXPECTED_ERROR,
3334: p_token1 => G_SQLCODE_TOKEN,
3335: p_token1_value => SQLCODE,
3336: p_token2 => G_SQLERRM_TOKEN,
3335: p_token1_value => SQLCODE,
3336: p_token2 => G_SQLERRM_TOKEN,
3337: p_token2_value => SQLERRM );
3338: -- notify UNEXPECTED error for calling API.
3339: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3340:
3341:
3342: IF (okl_psyv_fk_csr%ISOPEN) THEN
3343: CLOSE okl_psyv_fk_csr;
3365: TO_DATE
3366: FROM Okl_pdt_pqy_vals_V pqv
3367: WHERE pqv.PDT_ID = p_pdt_id;
3368:
3369: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3370: l_count NUMBER := 0;
3371: l_pqvv_tbl pqvv_tbl_type;
3372:
3373: BEGIN
3371: l_pqvv_tbl pqvv_tbl_type;
3372:
3373: BEGIN
3374:
3375: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3376:
3377: -- Get current database values
3378: FOR okl_pqv_rec IN okl_pqvv_fk_csr(p_upd_pdtv_rec.id)
3379: LOOP
3383:
3384: l_pqvv_tbl(l_count).PDT_ID := p_pdtv_rec.ID;
3385: l_pqvv_tbl(l_count).PDQ_ID := okl_pqv_rec.PDQ_ID;
3386: l_pqvv_tbl(l_count).QVE_ID := okl_pqv_rec.QVE_ID;
3387: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3388: l_pqvv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3389: ELSE
3390: l_pqvv_tbl(l_count).from_date := okl_pqv_rec.from_date;
3391: END IF;
3388: l_pqvv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3389: ELSE
3390: l_pqvv_tbl(l_count).from_date := okl_pqv_rec.from_date;
3391: END IF;
3392: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3393: l_pqvv_tbl(l_count).TO_DATE := p_upd_pdtv_rec.TO_DATE;
3394: ELSE
3395: l_pqvv_tbl(l_count).TO_DATE := okl_pqv_rec.TO_DATE;
3396: END IF;
3402:
3403: EXCEPTION
3404: WHEN OTHERS THEN
3405: -- store SQL error message on message stack
3406: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3407:
3408: p_msg_name => G_UNEXPECTED_ERROR,
3409: p_token1 => G_SQLCODE_TOKEN,
3410: p_token1_value => SQLCODE,
3410: p_token1_value => SQLCODE,
3411: p_token2 => G_SQLERRM_TOKEN,
3412: p_token2_value => SQLERRM );
3413: -- notify UNEXPECTED error for calling API.
3414: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3415:
3416: IF (okl_pqvv_fk_csr%ISOPEN) THEN
3417: CLOSE okl_pqvv_fk_csr;
3418: END IF;
3440: FROM Okl_Pdt_Opts_V pon
3441: WHERE pon.PDT_ID = p_pdt_id;
3442:
3443:
3444: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3445: l_count NUMBER := 0;
3446: l_ponv_tbl ponv_tbl_type;
3447:
3448: BEGIN
3445: l_count NUMBER := 0;
3446: l_ponv_tbl ponv_tbl_type;
3447:
3448: BEGIN
3449: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3450:
3451: -- Get current database values
3452: FOR okl_pon_rec IN okl_ponv_fk_csr(p_upd_pdtv_rec.id)
3453: LOOP
3456: END IF;
3457: l_ponv_tbl(l_count).PDT_ID := p_pdtv_rec.ID;
3458: l_ponv_tbl(l_count).OPT_ID := okl_pon_rec.OPT_ID;
3459: l_ponv_tbl(l_count).OPTIONAL_YN := okl_pon_rec.OPTIONAL_YN;
3460: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3461: l_ponv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3462: ELSE
3463: l_ponv_tbl(l_count).from_date := okl_pon_rec.from_date;
3464: END IF;
3461: l_ponv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3462: ELSE
3463: l_ponv_tbl(l_count).from_date := okl_pon_rec.from_date;
3464: END IF;
3465: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3466: l_ponv_tbl(l_count).TO_DATE := p_upd_pdtv_rec.TO_DATE;
3467: ELSE
3468: l_ponv_tbl(l_count).TO_DATE := okl_pon_rec.TO_DATE;
3469: END IF;
3476:
3477: EXCEPTION
3478: WHEN OTHERS THEN
3479: -- store SQL error message on message stack
3480: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3481: p_msg_name => G_UNEXPECTED_ERROR,
3482: p_token1 => G_SQLCODE_TOKEN,
3483: p_token1_value => SQLCODE,
3484: p_token2 => G_SQLERRM_TOKEN,
3484: p_token2 => G_SQLERRM_TOKEN,
3485: p_token2_value => SQLERRM );
3486:
3487: -- notify UNEXPECTED error for calling API.
3488: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3489:
3490: IF (okl_ponv_fk_csr%ISOPEN) THEN
3491: CLOSE okl_ponv_fk_csr;
3492: END IF;
3519: WHERE pon.PDT_ID = p_pdt_id
3520: AND pov.PON_ID = pon.ID
3521: AND ove.ID = pov.OVE_ID;
3522:
3523: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3524: l_count NUMBER := 0;
3525: l_povv_tbl povv_tbl_type;
3526: i NUMBER := 0;
3527:
3525: l_povv_tbl povv_tbl_type;
3526: i NUMBER := 0;
3527:
3528: BEGIN
3529: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3530:
3531: -- Get current database values
3532: FOR okl_pov_rec IN okl_povv_fk_csr(p_upd_pdtv_rec.id)
3533: LOOP
3541: l_povv_tbl(l_count).pon_id := p_ponv_tbl(i).id;
3542: END IF;
3543: END LOOP;
3544:
3545: IF p_upd_pdtv_rec.from_date <> Okl_Api.G_MISS_DATE THEN
3546: l_povv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3547: ELSE
3548: l_povv_tbl(l_count).from_date := okl_pov_rec.from_date;
3549: END IF;
3546: l_povv_tbl(l_count).from_date := p_upd_pdtv_rec.from_date;
3547: ELSE
3548: l_povv_tbl(l_count).from_date := okl_pov_rec.from_date;
3549: END IF;
3550: IF p_upd_pdtv_rec.TO_DATE <> Okl_Api.G_MISS_DATE THEN
3551: l_povv_tbl(l_count).TO_DATE := p_upd_pdtv_rec.TO_DATE;
3552: ELSE
3553: l_povv_tbl(l_count).TO_DATE := okl_pov_rec.TO_DATE;
3554: END IF;
3560:
3561: EXCEPTION
3562: WHEN OTHERS THEN
3563: -- store SQL error message on message stack
3564: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3565: p_msg_name => G_UNEXPECTED_ERROR,
3566: p_token1 => G_SQLCODE_TOKEN,
3567: p_token1_value => SQLCODE,
3568: p_token2 => G_SQLERRM_TOKEN,
3567: p_token1_value => SQLCODE,
3568: p_token2 => G_SQLERRM_TOKEN,
3569: p_token2_value => SQLERRM );
3570: -- notify UNEXPECTED error for calling API.
3571: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3572:
3573: IF (okl_povv_fk_csr%ISOPEN) THEN
3574:
3575: CLOSE okl_povv_fk_csr;
3581: -- PROCEDURE copy_update_constraints for: OKL_PRODUCTS_V
3582: -- To copy constraints data from one version to the other
3583: ---------------------------------------------------------------------------
3584: PROCEDURE copy_update_constraints (p_api_version IN NUMBER,
3585: p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3586: p_upd_pdtv_rec IN pdtv_rec_type,
3587: p_db_pdtv_rec IN pdtv_rec_type,
3588: p_pdtv_rec IN pdtv_rec_type,
3589:
3594: ) IS
3595: l_upd_pdtv_rec pdtv_rec_type; /* input copy */
3596: l_pdtv_rec pdtv_rec_type; /* latest with the retained changes */
3597: l_db_pdtv_rec pdtv_rec_type; /* for db copy */
3598: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3599: l_pqv_count NUMBER := 0;
3600: l_pon_count NUMBER := 0;
3601: l_pov_count NUMBER := 0;
3602: l_psy_count NUMBER := 0;
3610: l_psyv_tbl psyv_tbl_type;
3611: l_out_psyv_tbl psyv_tbl_type;
3612:
3613: BEGIN
3614: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3615: l_upd_pdtv_rec := p_pdtv_rec;
3616: l_pdtv_rec := p_pdtv_rec;
3617: l_db_pdtv_rec := p_db_pdtv_rec;
3618:
3622: p_flag => p_flag,
3623: x_return_status => l_return_status,
3624: x_count => l_psy_count,
3625: x_psyv_tbl => l_psyv_tbl);
3626: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3627: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3628: RAISE G_EXCEPTION_HALT_PROCESSING;
3629: END IF;
3630:
3623: x_return_status => l_return_status,
3624: x_count => l_psy_count,
3625: x_psyv_tbl => l_psyv_tbl);
3626: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3627: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3628: RAISE G_EXCEPTION_HALT_PROCESSING;
3629: END IF;
3630:
3631: IF l_pqv_count > 0 THEN
3675: END;
3676: END IF;
3677: -- End of wraper code generated automatically by Debug code generator for Okl_Pdt_Stys_Pub.insert_pdt_stys
3678: END IF;
3679: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3680: x_return_status := Okl_Api.G_RET_STS_ERROR;
3681: RAISE G_EXCEPTION_HALT_PROCESSING;
3682: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3683: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3676: END IF;
3677: -- End of wraper code generated automatically by Debug code generator for Okl_Pdt_Stys_Pub.insert_pdt_stys
3678: END IF;
3679: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3680: x_return_status := Okl_Api.G_RET_STS_ERROR;
3681: RAISE G_EXCEPTION_HALT_PROCESSING;
3682: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3683: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3684: RAISE G_EXCEPTION_HALT_PROCESSING;
3678: END IF;
3679: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3680: x_return_status := Okl_Api.G_RET_STS_ERROR;
3681: RAISE G_EXCEPTION_HALT_PROCESSING;
3682: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3683: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3684: RAISE G_EXCEPTION_HALT_PROCESSING;
3685: END IF;
3686: END IF;
3679: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3680: x_return_status := Okl_Api.G_RET_STS_ERROR;
3681: RAISE G_EXCEPTION_HALT_PROCESSING;
3682: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3683: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3684: RAISE G_EXCEPTION_HALT_PROCESSING;
3685: END IF;
3686: END IF;
3687:
3692:
3693: x_return_status => l_return_status,
3694: x_count => l_pqv_count,
3695: x_pqvv_tbl => l_pqvv_tbl);
3696: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3697: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3698: RAISE G_EXCEPTION_HALT_PROCESSING;
3699: END IF;
3700:
3693: x_return_status => l_return_status,
3694: x_count => l_pqv_count,
3695: x_pqvv_tbl => l_pqvv_tbl);
3696: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3697: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3698: RAISE G_EXCEPTION_HALT_PROCESSING;
3699: END IF;
3700:
3701: IF l_pqv_count > 0 THEN
3740: END;
3741: END IF;
3742: -- End of wraper code generated automatically by Debug code generator for Okl_Pqy_Values_Pub.insert_pqy_values
3743: END IF;
3744: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3745: x_return_status := Okl_Api.G_RET_STS_ERROR;
3746: RAISE G_EXCEPTION_HALT_PROCESSING;
3747: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3748:
3741: END IF;
3742: -- End of wraper code generated automatically by Debug code generator for Okl_Pqy_Values_Pub.insert_pqy_values
3743: END IF;
3744: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3745: x_return_status := Okl_Api.G_RET_STS_ERROR;
3746: RAISE G_EXCEPTION_HALT_PROCESSING;
3747: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3748:
3749: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3743: END IF;
3744: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3745: x_return_status := Okl_Api.G_RET_STS_ERROR;
3746: RAISE G_EXCEPTION_HALT_PROCESSING;
3747: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3748:
3749: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3750: RAISE G_EXCEPTION_HALT_PROCESSING;
3751: END IF;
3745: x_return_status := Okl_Api.G_RET_STS_ERROR;
3746: RAISE G_EXCEPTION_HALT_PROCESSING;
3747: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3748:
3749: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3750: RAISE G_EXCEPTION_HALT_PROCESSING;
3751: END IF;
3752: END IF;
3753:
3757: p_flag => p_flag,
3758: x_return_status => l_return_status,
3759: x_count => l_pon_count,
3760: x_ponv_tbl => l_ponv_tbl);
3761: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3762: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3763: RAISE G_EXCEPTION_HALT_PROCESSING;
3764: END IF;
3765:
3758: x_return_status => l_return_status,
3759: x_count => l_pon_count,
3760: x_ponv_tbl => l_ponv_tbl);
3761: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3762: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3763: RAISE G_EXCEPTION_HALT_PROCESSING;
3764: END IF;
3765:
3766: IF l_pon_count > 0 THEN
3806: END;
3807: END IF;
3808: -- End of wraper code generated automatically by Debug code generator for Okl_Product_Options_Pub.insert_product_options
3809: END IF;
3810: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3811:
3812: x_return_status := Okl_Api.G_RET_STS_ERROR;
3813: RAISE G_EXCEPTION_HALT_PROCESSING;
3814: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3808: -- End of wraper code generated automatically by Debug code generator for Okl_Product_Options_Pub.insert_product_options
3809: END IF;
3810: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3811:
3812: x_return_status := Okl_Api.G_RET_STS_ERROR;
3813: RAISE G_EXCEPTION_HALT_PROCESSING;
3814: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3815: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3816: RAISE G_EXCEPTION_HALT_PROCESSING;
3810: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3811:
3812: x_return_status := Okl_Api.G_RET_STS_ERROR;
3813: RAISE G_EXCEPTION_HALT_PROCESSING;
3814: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3815: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3816: RAISE G_EXCEPTION_HALT_PROCESSING;
3817: END IF;
3818:
3811:
3812: x_return_status := Okl_Api.G_RET_STS_ERROR;
3813: RAISE G_EXCEPTION_HALT_PROCESSING;
3814: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3815: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3816: RAISE G_EXCEPTION_HALT_PROCESSING;
3817: END IF;
3818:
3819: END IF;
3825: p_flag => p_flag,
3826: x_return_status => l_return_status,
3827: x_count => l_pov_count,
3828: x_povv_tbl => l_povv_tbl);
3829: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3830: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3831: RAISE G_EXCEPTION_HALT_PROCESSING;
3832: END IF;
3833:
3826: x_return_status => l_return_status,
3827: x_count => l_pov_count,
3828: x_povv_tbl => l_povv_tbl);
3829: IF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3830: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3831: RAISE G_EXCEPTION_HALT_PROCESSING;
3832: END IF;
3833:
3834: IF l_pov_count > 0 THEN
3874:
3875: END IF;
3876: -- End of wraper code generated automatically by Debug code generator for Okl_Pdt_Opt_Vals_Pub.insert_pdt_opt_vals
3877: END IF;
3878: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3879: x_return_status := Okl_Api.G_RET_STS_ERROR;
3880: RAISE G_EXCEPTION_HALT_PROCESSING;
3881: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3882: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3875: END IF;
3876: -- End of wraper code generated automatically by Debug code generator for Okl_Pdt_Opt_Vals_Pub.insert_pdt_opt_vals
3877: END IF;
3878: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3879: x_return_status := Okl_Api.G_RET_STS_ERROR;
3880: RAISE G_EXCEPTION_HALT_PROCESSING;
3881: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3882: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3883: RAISE G_EXCEPTION_HALT_PROCESSING;
3877: END IF;
3878: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3879: x_return_status := Okl_Api.G_RET_STS_ERROR;
3880: RAISE G_EXCEPTION_HALT_PROCESSING;
3881: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3882: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3883: RAISE G_EXCEPTION_HALT_PROCESSING;
3884: END IF;
3885:
3878: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
3879: x_return_status := Okl_Api.G_RET_STS_ERROR;
3880: RAISE G_EXCEPTION_HALT_PROCESSING;
3881: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3882: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3883: RAISE G_EXCEPTION_HALT_PROCESSING;
3884: END IF;
3885:
3886: END IF;
3893: NULL;
3894:
3895: WHEN OTHERS THEN
3896: -- store SQL error message on message stack
3897: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3898:
3899: p_msg_name => G_UNEXPECTED_ERROR,
3900: p_token1 => G_SQLCODE_TOKEN,
3901: p_token1_value => SQLCODE,
3901: p_token1_value => SQLCODE,
3902: p_token2 => G_SQLERRM_TOKEN,
3903: p_token2_value => SQLERRM );
3904: -- notify UNEXPECTED error for calling API.
3905: x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3906:
3907: END copy_update_constraints;
3908:
3909: ---------------------------------------------------------------------------
3910: -- PROCEDURE insert_products for: OKL_PRODUCTS_V
3911: ---------------------------------------------------------------------------
3912:
3913: PROCEDURE insert_products(p_api_version IN NUMBER,
3914: p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3915: x_return_status OUT NOCOPY VARCHAR2,
3916: x_msg_count OUT NOCOPY NUMBER,
3917: x_msg_data OUT NOCOPY VARCHAR2,
3918: p_pdtv_rec IN pdtv_rec_type,
3920: ) IS
3921: l_api_version CONSTANT NUMBER := 1;
3922: l_api_name CONSTANT VARCHAR2(30) := 'insert_products';
3923: l_valid BOOLEAN := TRUE;
3924: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3925: --return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3926: l_pdtv_rec pdtv_rec_type;
3927: l_db_pdtv_rec pdtv_rec_type;
3928: l_sysdate DATE := to_date(to_char(SYSDATE, 'DD/MM/YYYY'), 'DD/MM/YYYY');
3921: l_api_version CONSTANT NUMBER := 1;
3922: l_api_name CONSTANT VARCHAR2(30) := 'insert_products';
3923: l_valid BOOLEAN := TRUE;
3924: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3925: --return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3926: l_pdtv_rec pdtv_rec_type;
3927: l_db_pdtv_rec pdtv_rec_type;
3928: l_sysdate DATE := to_date(to_char(SYSDATE, 'DD/MM/YYYY'), 'DD/MM/YYYY');
3929:
3948: l_chk_bc VARCHAR2(100);
3949:
3950:
3951: BEGIN
3952: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3953:
3954: l_pdtv_rec := p_pdtv_rec;
3955:
3956: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
3952: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
3953:
3954: l_pdtv_rec := p_pdtv_rec;
3955:
3956: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
3957: p_pkg_name => G_PKG_NAME,
3958: p_init_msg_list => p_init_msg_list,
3959: l_api_version => l_api_version,
3960: p_api_version => p_api_version,
3959: l_api_version => l_api_version,
3960: p_api_version => p_api_version,
3961: p_api_type => '_PVT',
3962: x_return_status => l_return_status);
3963: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3964: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3965: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3966: RAISE Okl_Api.G_EXCEPTION_ERROR;
3967: END IF;
3960: p_api_version => p_api_version,
3961: p_api_type => '_PVT',
3962: x_return_status => l_return_status);
3963: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3964: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3965: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3966: RAISE Okl_Api.G_EXCEPTION_ERROR;
3967: END IF;
3968:
3961: p_api_type => '_PVT',
3962: x_return_status => l_return_status);
3963: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3964: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3965: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3966: RAISE Okl_Api.G_EXCEPTION_ERROR;
3967: END IF;
3968:
3969:
3962: x_return_status => l_return_status);
3963: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3964: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3965: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3966: RAISE Okl_Api.G_EXCEPTION_ERROR;
3967: END IF;
3968:
3969:
3970: l_return_status := Validate_Attributes(l_pdtv_rec);
3968:
3969:
3970: l_return_status := Validate_Attributes(l_pdtv_rec);
3971: --- If any errors happen abort API
3972: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3973: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3974:
3975: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3976: RAISE Okl_Api.G_EXCEPTION_ERROR;
3969:
3970: l_return_status := Validate_Attributes(l_pdtv_rec);
3971: --- If any errors happen abort API
3972: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3973: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3974:
3975: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3976: RAISE Okl_Api.G_EXCEPTION_ERROR;
3977: END IF;
3971: --- If any errors happen abort API
3972: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3973: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3974:
3975: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3976: RAISE Okl_Api.G_EXCEPTION_ERROR;
3977: END IF;
3978:
3979: OPEN chk_ptl_aes_bc(l_pdtv_rec.aes_id,l_pdtv_rec.ptl_id,l_pdtv_rec.id);
3972: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3973: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3974:
3975: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3976: RAISE Okl_Api.G_EXCEPTION_ERROR;
3977: END IF;
3978:
3979: OPEN chk_ptl_aes_bc(l_pdtv_rec.aes_id,l_pdtv_rec.ptl_id,l_pdtv_rec.id);
3980: FETCH chk_ptl_aes_bc INTO l_chk_bc;
3981: CLOSE chk_ptl_aes_bc;
3982:
3983: IF l_chk_bc IS NULL THEN
3984:
3985: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3986: p_msg_name => G_PTL_AES_BC_MISMATCH);
3987: x_return_status := Okl_Api.G_RET_STS_ERROR;
3988: RAISE OKL_API.G_EXCEPTION_ERROR;
3989: END IF;
3983: IF l_chk_bc IS NULL THEN
3984:
3985: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3986: p_msg_name => G_PTL_AES_BC_MISMATCH);
3987: x_return_status := Okl_Api.G_RET_STS_ERROR;
3988: RAISE OKL_API.G_EXCEPTION_ERROR;
3989: END IF;
3990:
3991:
3984:
3985: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
3986: p_msg_name => G_PTL_AES_BC_MISMATCH);
3987: x_return_status := Okl_Api.G_RET_STS_ERROR;
3988: RAISE OKL_API.G_EXCEPTION_ERROR;
3989: END IF;
3990:
3991:
3992:
3992:
3993: /* check for the records with from and to dates less than sysdate */
3994: /* IF to_date(to_char(l_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate OR
3995: to_date(to_char(l_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3996: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3997: p_msg_name => G_PAST_RECORDS);
3998: RAISE OKL_API.G_EXCEPTION_ERROR;
3999: END IF;
4000: */
3994: /* IF to_date(to_char(l_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate OR
3995: to_date(to_char(l_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
3996: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
3997: p_msg_name => G_PAST_RECORDS);
3998: RAISE OKL_API.G_EXCEPTION_ERROR;
3999: END IF;
4000: */
4001: /* call check_constraints */
4002: Check_Constraints(p_api_version => p_api_version,
4008: p_db_pdtv_rec => l_db_pdtv_rec,
4009: x_return_status => l_return_status,
4010: x_valid => l_valid);
4011:
4012: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4013:
4014: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4015: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
4016: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
4010: x_valid => l_valid);
4011:
4012: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4013:
4014: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4015: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
4016: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
4017: l_valid <> TRUE) THEN
4018: RAISE Okl_Api.G_EXCEPTION_ERROR;
4011:
4012: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4013:
4014: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4015: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
4016: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
4017: l_valid <> TRUE) THEN
4018: RAISE Okl_Api.G_EXCEPTION_ERROR;
4019: END IF;
4012: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4013:
4014: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4015: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
4016: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
4017: l_valid <> TRUE) THEN
4018: RAISE Okl_Api.G_EXCEPTION_ERROR;
4019: END IF;
4020:
4014: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4015: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) OR
4016: (l_return_status = Okl_Api.G_RET_STS_SUCCESS AND
4017: l_valid <> TRUE) THEN
4018: RAISE Okl_Api.G_EXCEPTION_ERROR;
4019: END IF;
4020:
4021: /* public api to insert products */
4022: -- Start of wraper code generated automatically by Debug code generator for Okl_Products_Pub.insert_products
4049: END;
4050: END IF;
4051: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.insert_products
4052:
4053: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4054: RAISE Okl_Api.G_EXCEPTION_ERROR;
4055:
4056: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4057: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4050: END IF;
4051: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.insert_products
4052:
4053: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4054: RAISE Okl_Api.G_EXCEPTION_ERROR;
4055:
4056: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4057: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4058: END IF;
4052:
4053: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4054: RAISE Okl_Api.G_EXCEPTION_ERROR;
4055:
4056: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4057: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4058: END IF;
4059: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4060: x_msg_data => x_msg_data);
4053: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4054: RAISE Okl_Api.G_EXCEPTION_ERROR;
4055:
4056: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4057: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4058: END IF;
4059: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4060: x_msg_data => x_msg_data);
4061: EXCEPTION
4055:
4056: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4057: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4058: END IF;
4059: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4060: x_msg_data => x_msg_data);
4061: EXCEPTION
4062: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4063: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4058: END IF;
4059: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4060: x_msg_data => x_msg_data);
4061: EXCEPTION
4062: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4063: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4064: p_pkg_name => G_PKG_NAME,
4065: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4066: x_msg_count => x_msg_count,
4059: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4060: x_msg_data => x_msg_data);
4061: EXCEPTION
4062: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4063: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4064: p_pkg_name => G_PKG_NAME,
4065: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4066: x_msg_count => x_msg_count,
4067: x_msg_data => x_msg_data,
4061: EXCEPTION
4062: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4063: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4064: p_pkg_name => G_PKG_NAME,
4065: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4066: x_msg_count => x_msg_count,
4067: x_msg_data => x_msg_data,
4068: p_api_type => '_PVT');
4069: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4065: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4066: x_msg_count => x_msg_count,
4067: x_msg_data => x_msg_data,
4068: p_api_type => '_PVT');
4069: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4070: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4071: p_pkg_name => G_PKG_NAME,
4072: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4073: x_msg_count => x_msg_count,
4066: x_msg_count => x_msg_count,
4067: x_msg_data => x_msg_data,
4068: p_api_type => '_PVT');
4069: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4070: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4071: p_pkg_name => G_PKG_NAME,
4072: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4073: x_msg_count => x_msg_count,
4074:
4068: p_api_type => '_PVT');
4069: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4070: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4071: p_pkg_name => G_PKG_NAME,
4072: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4073: x_msg_count => x_msg_count,
4074:
4075: x_msg_data => x_msg_data,
4076: p_api_type => '_PVT');
4074:
4075: x_msg_data => x_msg_data,
4076: p_api_type => '_PVT');
4077: WHEN OTHERS THEN
4078: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4079: p_pkg_name => G_PKG_NAME,
4080: p_exc_name => 'OTHERS',
4081: x_msg_count => x_msg_count,
4082: x_msg_data => x_msg_data,
4088: ---------------------------------------------------------------------------
4089: -- PROCEDURE update_products for: OKL_PRODUCTS_V
4090: ---------------------------------------------------------------------------
4091: PROCEDURE update_products(p_api_version IN NUMBER,
4092: p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
4093: x_return_status OUT NOCOPY VARCHAR2,
4094: x_msg_count OUT NOCOPY NUMBER,
4095: x_msg_data OUT NOCOPY VARCHAR2,
4096: p_pdtv_rec IN pdtv_rec_type,
4106: l_db_pdtv_rec pdtv_rec_type; /* database copy */
4107: l_upd_pdtv_rec pdtv_rec_type; /* input copy */
4108: l_pdtv_rec pdtv_rec_type; /* latest with the retained changes */
4109: l_tmp_pdtv_rec pdtv_rec_type; /* for any other purposes */
4110: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4111: -- x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4112: l_action VARCHAR2(1);
4113: l_new_version VARCHAR2(100);
4114:
4107: l_upd_pdtv_rec pdtv_rec_type; /* input copy */
4108: l_pdtv_rec pdtv_rec_type; /* latest with the retained changes */
4109: l_tmp_pdtv_rec pdtv_rec_type; /* for any other purposes */
4110: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4111: -- x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4112: l_action VARCHAR2(1);
4113: l_new_version VARCHAR2(100);
4114:
4115: l_pqv_count NUMBER := 0;
4144: AND pqy.name IN('LEASE','INVESTOR');
4145:
4146: BEGIN
4147:
4148: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
4149: l_upd_pdtv_rec := p_pdtv_rec;
4150:
4151:
4152: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
4148: x_return_status := Okl_Api.G_RET_STS_SUCCESS;
4149: l_upd_pdtv_rec := p_pdtv_rec;
4150:
4151:
4152: l_return_status := Okl_Api.START_ACTIVITY(p_api_name => l_api_name,
4153: p_pkg_name => G_PKG_NAME,
4154: p_init_msg_list => p_init_msg_list,
4155: l_api_version => l_api_version,
4156: p_api_version => p_api_version,
4156: p_api_version => p_api_version,
4157:
4158: p_api_type => '_PVT',
4159: x_return_status => l_return_status);
4160: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4161: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4162: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4163: RAISE Okl_Api.G_EXCEPTION_ERROR;
4164: END IF;
4157:
4158: p_api_type => '_PVT',
4159: x_return_status => l_return_status);
4160: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4161: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4162: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4163: RAISE Okl_Api.G_EXCEPTION_ERROR;
4164: END IF;
4165:
4158: p_api_type => '_PVT',
4159: x_return_status => l_return_status);
4160: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4161: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4162: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4163: RAISE Okl_Api.G_EXCEPTION_ERROR;
4164: END IF;
4165:
4166:
4159: x_return_status => l_return_status);
4160: IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4161: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4162: ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4163: RAISE Okl_Api.G_EXCEPTION_ERROR;
4164: END IF;
4165:
4166:
4167:
4169: get_rec(p_pdtv_rec => l_upd_pdtv_rec,
4170: x_return_status => l_return_status,
4171: x_no_data_found => l_no_data_found,
4172: x_pdtv_rec => l_db_pdtv_rec);
4173: IF l_return_status <> Okl_Api.G_RET_STS_SUCCESS OR
4174:
4175: l_no_data_found = TRUE THEN
4176: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4177: END IF;
4172: x_pdtv_rec => l_db_pdtv_rec);
4173: IF l_return_status <> Okl_Api.G_RET_STS_SUCCESS OR
4174:
4175: l_no_data_found = TRUE THEN
4176: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4177: END IF;
4178:
4179: -- updates not allowed when the product is in pending approval status.
4180: --IF l_db_pdtv_rec.product_status_code IN ('PENDING APPROVAL') THEN
4177: END IF;
4178:
4179: -- updates not allowed when the product is in pending approval status.
4180: --IF l_db_pdtv_rec.product_status_code IN ('PENDING APPROVAL') THEN
4181: -- Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4182: -- p_msg_name => G_PDT_SUBMTD_FOR_APPROVAL);
4183: -- x_return_status := Okl_Api.G_RET_STS_ERROR;
4184: -- RAISE OKL_API.G_EXCEPTION_ERROR;
4185: --END IF;
4179: -- updates not allowed when the product is in pending approval status.
4180: --IF l_db_pdtv_rec.product_status_code IN ('PENDING APPROVAL') THEN
4181: -- Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4182: -- p_msg_name => G_PDT_SUBMTD_FOR_APPROVAL);
4183: -- x_return_status := Okl_Api.G_RET_STS_ERROR;
4184: -- RAISE OKL_API.G_EXCEPTION_ERROR;
4185: --END IF;
4186:
4187: OPEN chk_ptl_aes_bc(l_upd_pdtv_rec.aes_id,l_upd_pdtv_rec.ptl_id,l_upd_pdtv_rec.id);
4180: --IF l_db_pdtv_rec.product_status_code IN ('PENDING APPROVAL') THEN
4181: -- Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4182: -- p_msg_name => G_PDT_SUBMTD_FOR_APPROVAL);
4183: -- x_return_status := Okl_Api.G_RET_STS_ERROR;
4184: -- RAISE OKL_API.G_EXCEPTION_ERROR;
4185: --END IF;
4186:
4187: OPEN chk_ptl_aes_bc(l_upd_pdtv_rec.aes_id,l_upd_pdtv_rec.ptl_id,l_upd_pdtv_rec.id);
4188: FETCH chk_ptl_aes_bc INTO l_chk_bc;
4189: CLOSE chk_ptl_aes_bc;
4190:
4191: IF l_chk_bc IS NULL THEN
4192:
4193: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4194: p_msg_name => G_PTL_AES_BC_MISMATCH);
4195: x_return_status := Okl_Api.G_RET_STS_ERROR;
4196: RAISE OKL_API.G_EXCEPTION_ERROR;
4197: END IF;
4191: IF l_chk_bc IS NULL THEN
4192:
4193: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4194: p_msg_name => G_PTL_AES_BC_MISMATCH);
4195: x_return_status := Okl_Api.G_RET_STS_ERROR;
4196: RAISE OKL_API.G_EXCEPTION_ERROR;
4197: END IF;
4198:
4199:
4192:
4193: Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
4194: p_msg_name => G_PTL_AES_BC_MISMATCH);
4195: x_return_status := Okl_Api.G_RET_STS_ERROR;
4196: RAISE OKL_API.G_EXCEPTION_ERROR;
4197: END IF;
4198:
4199:
4200: /* to reorganize the input accordingly */
4201: reorganize_inputs(p_upd_pdtv_rec => l_upd_pdtv_rec,
4202: p_db_pdtv_rec => l_db_pdtv_rec);
4203:
4204: /* check for start date greater than sysdate */
4205: /*IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
4206: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
4207: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
4208: p_msg_name => G_START_DATE);
4209: RAISE OKL_API.G_EXCEPTION_ERROR;
4203:
4204: /* check for start date greater than sysdate */
4205: /*IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
4206: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
4207: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
4208: p_msg_name => G_START_DATE);
4209: RAISE OKL_API.G_EXCEPTION_ERROR;
4210: END IF; */
4211:
4205: /*IF to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') <> to_date(to_char(OKL_API.G_MISS_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') AND
4206: to_date(to_char(l_upd_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
4207: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
4208: p_msg_name => G_START_DATE);
4209: RAISE OKL_API.G_EXCEPTION_ERROR;
4210: END IF; */
4211:
4212: /* check for the records with start and end dates less than sysdate */
4213: /* IF to_date(to_char(l_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate AND
4212: /* check for the records with start and end dates less than sysdate */
4213: /* IF to_date(to_char(l_db_pdtv_rec.from_date, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate AND
4214: to_date(to_char(l_db_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
4215:
4216: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
4217: p_msg_name => G_PAST_RECORDS);
4218: RAISE OKL_API.G_EXCEPTION_ERROR;
4219: END IF;
4220: */
4214: to_date(to_char(l_db_pdtv_rec.TO_DATE, 'DD/MM/YYYY'), 'DD/MM/YYYY') < l_sysdate THEN
4215:
4216: OKL_API.SET_MESSAGE(p_app_name => G_APP_NAME,
4217: p_msg_name => G_PAST_RECORDS);
4218: RAISE OKL_API.G_EXCEPTION_ERROR;
4219: END IF;
4220: */
4221: /* determine how the processing to be done */
4222: l_action := determine_action(p_upd_pdtv_rec => l_upd_pdtv_rec,
4260: END;
4261: END IF;
4262: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4263:
4264: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4265:
4266: RAISE Okl_Api.G_EXCEPTION_ERROR;
4267: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4268:
4262: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4263:
4264: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4265:
4266: RAISE Okl_Api.G_EXCEPTION_ERROR;
4267: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4268:
4269: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4270: END IF;
4263:
4264: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4265:
4266: RAISE Okl_Api.G_EXCEPTION_ERROR;
4267: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4268:
4269: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4270: END IF;
4271:
4265:
4266: RAISE Okl_Api.G_EXCEPTION_ERROR;
4267: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4268:
4269: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4270: END IF;
4271:
4272: /* Scenario 2: only changing description and end date for all records
4273: or modified start date is less than existing start date for a future record */
4286: p_db_pdtv_rec => l_db_pdtv_rec,
4287: p_pdtv_rec => l_pdtv_rec,
4288: x_return_status => l_return_status);
4289:
4290: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4291:
4292: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4293: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4288: x_return_status => l_return_status);
4289:
4290: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4291:
4292: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4293: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4295: RAISE Okl_Api.G_EXCEPTION_ERROR;
4296: END IF;
4289:
4290: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4291:
4292: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4293: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4295: RAISE Okl_Api.G_EXCEPTION_ERROR;
4296: END IF;
4297:
4290: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4291:
4292: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4293: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4295: RAISE Okl_Api.G_EXCEPTION_ERROR;
4296: END IF;
4297:
4298: RAISE Okl_Api.G_EXCEPTION_ERROR;
4291:
4292: IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4293: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4295: RAISE Okl_Api.G_EXCEPTION_ERROR;
4296: END IF;
4297:
4298: RAISE Okl_Api.G_EXCEPTION_ERROR;
4299:
4294: ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4295: RAISE Okl_Api.G_EXCEPTION_ERROR;
4296: END IF;
4297:
4298: RAISE Okl_Api.G_EXCEPTION_ERROR;
4299:
4300: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4301: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4302: END IF;
4296: END IF;
4297:
4298: RAISE Okl_Api.G_EXCEPTION_ERROR;
4299:
4300: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4301: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4302: END IF;
4303:
4304:
4297:
4298: RAISE Okl_Api.G_EXCEPTION_ERROR;
4299:
4300: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4301: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4302: END IF;
4303:
4304:
4305:
4327: END;
4328:
4329: END IF;
4330: -- End of wraper code generated automatically by Debug code generator for Okl_Setup_Prd_Prctempl_Pub.check_product_constraints
4331: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4332: RAISE Okl_Api.G_EXCEPTION_ERROR;
4333: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4334: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4335: END IF;
4328:
4329: END IF;
4330: -- End of wraper code generated automatically by Debug code generator for Okl_Setup_Prd_Prctempl_Pub.check_product_constraints
4331: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4332: RAISE Okl_Api.G_EXCEPTION_ERROR;
4333: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4334: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4335: END IF;
4336:
4329: END IF;
4330: -- End of wraper code generated automatically by Debug code generator for Okl_Setup_Prd_Prctempl_Pub.check_product_constraints
4331: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4332: RAISE Okl_Api.G_EXCEPTION_ERROR;
4333: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4334: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4335: END IF;
4336:
4337:
4330: -- End of wraper code generated automatically by Debug code generator for Okl_Setup_Prd_Prctempl_Pub.check_product_constraints
4331: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4332: RAISE Okl_Api.G_EXCEPTION_ERROR;
4333: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4334: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4335: END IF;
4336:
4337:
4338:
4344: END;
4345: END IF;
4346:
4347:
4348: IF nvl(l_upd_pdtv_rec.ptl_id,Okl_Api.G_MISS_num) = Okl_Api.G_MISS_num THEN
4349: l_upd_pdtv_rec.ptl_id := l_db_pdtv_rec.ptl_id;
4350: end if;
4351:
4352: IF nvl(l_upd_pdtv_rec.aes_id,Okl_Api.G_MISS_num) = Okl_Api.G_MISS_num THEN
4348: IF nvl(l_upd_pdtv_rec.ptl_id,Okl_Api.G_MISS_num) = Okl_Api.G_MISS_num THEN
4349: l_upd_pdtv_rec.ptl_id := l_db_pdtv_rec.ptl_id;
4350: end if;
4351:
4352: IF nvl(l_upd_pdtv_rec.aes_id,Okl_Api.G_MISS_num) = Okl_Api.G_MISS_num THEN
4353: l_upd_pdtv_rec.aes_id := l_db_pdtv_rec.aes_id;
4354: end if;
4355:
4356: --rkuttiya added condition for reporting product id
4356: --rkuttiya added condition for reporting product id
4357: /* Following is not required as user should be able to unassign reporting product.
4358: -- racheruv .. bug 7159594
4359: -- 12.1.1. Multi GAAP Project
4360: IF nvl(l_upd_pdtv_rec.reporting_pdt_id,Okl_Api.G_MISS_num) = Okl_Api.G_MISS_num
4361: THEN
4362: l_upd_pdtv_rec.reporting_pdt_id := l_db_pdtv_rec.reporting_pdt_id;
4363: END IF;
4364: --
4390: OKL_DEBUG_PUB.LOG_DEBUG(L_LEVEL_PROCEDURE,L_MODULE,'End Debug OKLRSPDB.pls call Okl_Products_Pub.update_products ');
4391: END;
4392: END IF;
4393: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4394: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4395: RAISE Okl_Api.G_EXCEPTION_ERROR;
4396: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4397: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4398: END IF;
4391: END;
4392: END IF;
4393: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4394: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4395: RAISE Okl_Api.G_EXCEPTION_ERROR;
4396: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4397: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4398: END IF;
4399:
4392: END IF;
4393: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4394: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4395: RAISE Okl_Api.G_EXCEPTION_ERROR;
4396: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4397: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4398: END IF;
4399:
4400: /* update constraints */
4393: -- End of wraper code generated automatically by Debug code generator for Okl_Products_Pub.update_products
4394: IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
4395: RAISE Okl_Api.G_EXCEPTION_ERROR;
4396: ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4397: RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4398: END IF;
4399:
4400: /* update constraints */
4401: /*copy_update_constraints(p_api_version => p_api_version,
4406: p_flag => G_UPDATE,
4407: x_return_status => l_return_status,
4408: x_msg_count => x_msg_count,
4409: x_msg_data => x_msg_data);
4410: IF l_return_status = OKL_API.G_RET_STS_ERROR THEN
4411: RAISE OKL_API.G_EXCEPTION_ERROR;
4412: ELSIF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
4413: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4414: END IF;*/
4407: x_return_status => l_return_status,
4408: x_msg_count => x_msg_count,
4409: x_msg_data => x_msg_data);
4410: IF l_return_status = OKL_API.G_RET_STS_ERROR THEN
4411: RAISE OKL_API.G_EXCEPTION_ERROR;
4412: ELSIF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
4413: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4414: END IF;*/
4415:
4408: x_msg_count => x_msg_count,
4409: x_msg_data => x_msg_data);
4410: IF l_return_status = OKL_API.G_RET_STS_ERROR THEN
4411: RAISE OKL_API.G_EXCEPTION_ERROR;
4412: ELSIF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
4413: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4414: END IF;*/
4415:
4416: END IF;
4409: x_msg_data => x_msg_data);
4410: IF l_return_status = OKL_API.G_RET_STS_ERROR THEN
4411: RAISE OKL_API.G_EXCEPTION_ERROR;
4412: ELSIF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
4413: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4414: END IF;*/
4415:
4416: END IF;
4417:
4414: END IF;*/
4415:
4416: END IF;
4417:
4418: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4419: x_msg_data => x_msg_data);
4420: EXCEPTION
4421: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4422: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4417:
4418: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4419: x_msg_data => x_msg_data);
4420: EXCEPTION
4421: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4422: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4423: p_pkg_name => G_PKG_NAME,
4424: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4425: x_msg_count => x_msg_count,
4418: Okl_Api.END_ACTIVITY(x_msg_count => x_msg_count,
4419: x_msg_data => x_msg_data);
4420: EXCEPTION
4421: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4422: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4423: p_pkg_name => G_PKG_NAME,
4424: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4425: x_msg_count => x_msg_count,
4426: x_msg_data => x_msg_data,
4420: EXCEPTION
4421: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4422: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4423: p_pkg_name => G_PKG_NAME,
4424: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4425: x_msg_count => x_msg_count,
4426: x_msg_data => x_msg_data,
4427: p_api_type => '_PVT');
4428: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4424: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
4425: x_msg_count => x_msg_count,
4426: x_msg_data => x_msg_data,
4427: p_api_type => '_PVT');
4428: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4429:
4430: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4431: p_pkg_name => G_PKG_NAME,
4432: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4426: x_msg_data => x_msg_data,
4427: p_api_type => '_PVT');
4428: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4429:
4430: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4431: p_pkg_name => G_PKG_NAME,
4432: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4433: x_msg_count => x_msg_count,
4434: x_msg_data => x_msg_data,
4428: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4429:
4430: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4431: p_pkg_name => G_PKG_NAME,
4432: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
4433: x_msg_count => x_msg_count,
4434: x_msg_data => x_msg_data,
4435: p_api_type => '_PVT');
4436: WHEN OTHERS THEN
4433: x_msg_count => x_msg_count,
4434: x_msg_data => x_msg_data,
4435: p_api_type => '_PVT');
4436: WHEN OTHERS THEN
4437: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(p_api_name => l_api_name,
4438: p_pkg_name => G_PKG_NAME,
4439: p_exc_name => 'OTHERS',
4440: x_msg_count => x_msg_count,
4441: x_msg_data => x_msg_data,