6: p_rule_code OKC_RULE_DEFS_B.rule_code%TYPE;
7: p_appl_id OKC_RULE_DEFS_B.application_id%TYPE;
8: p_dff_name OKC_RULE_DEFS_B.descriptive_flexfield_name%TYPE;
9:
10: FUNCTION Validate_dff(p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type) RETURN VARCHAR2;
11:
12: ---------------------------------------------------------------------------
13: -- PROCEDURE load_error_tbl
14: ---------------------------------------------------------------------------
168: );
169: END add_language;
170:
171: ---------------------------------------------------------------------------
172: -- FUNCTION get_rec for: OKC_RULE_DEFS_V
173: ---------------------------------------------------------------------------
174: FUNCTION get_rec (
175: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
176: x_no_data_found OUT NOCOPY BOOLEAN
171: ---------------------------------------------------------------------------
172: -- FUNCTION get_rec for: OKC_RULE_DEFS_V
173: ---------------------------------------------------------------------------
174: FUNCTION get_rec (
175: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
176: x_no_data_found OUT NOCOPY BOOLEAN
177: ) RETURN okc_rule_defs_v_rec_type IS
178: CURSOR okc_rule_defs_pk_csr (p_rule_code IN VARCHAR2) IS
179: SELECT
173: ---------------------------------------------------------------------------
174: FUNCTION get_rec (
175: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
176: x_no_data_found OUT NOCOPY BOOLEAN
177: ) RETURN okc_rule_defs_v_rec_type IS
178: CURSOR okc_rule_defs_pk_csr (p_rule_code IN VARCHAR2) IS
179: SELECT
180: APPLICATION_ID,
181: APPLICATION_NAME,
189: CREATION_DATE,
190: LAST_UPDATED_BY,
191: LAST_UPDATE_DATE,
192: LAST_UPDATE_LOGIN
193: FROM Okc_Rule_Defs_V
194: WHERE okc_rule_defs_v.rule_code = p_rule_code;
195: l_okc_rule_defs_pk okc_rule_defs_pk_csr%ROWTYPE;
196: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
197: BEGIN
190: LAST_UPDATED_BY,
191: LAST_UPDATE_DATE,
192: LAST_UPDATE_LOGIN
193: FROM Okc_Rule_Defs_V
194: WHERE okc_rule_defs_v.rule_code = p_rule_code;
195: l_okc_rule_defs_pk okc_rule_defs_pk_csr%ROWTYPE;
196: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
197: BEGIN
198: x_no_data_found := TRUE;
192: LAST_UPDATE_LOGIN
193: FROM Okc_Rule_Defs_V
194: WHERE okc_rule_defs_v.rule_code = p_rule_code;
195: l_okc_rule_defs_pk okc_rule_defs_pk_csr%ROWTYPE;
196: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
197: BEGIN
198: x_no_data_found := TRUE;
199: -- Get current database values
200: OPEN okc_rule_defs_pk_csr (p_okc_rule_defs_v_rec.rule_code);
196: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
197: BEGIN
198: x_no_data_found := TRUE;
199: -- Get current database values
200: OPEN okc_rule_defs_pk_csr (p_okc_rule_defs_v_rec.rule_code);
201: FETCH okc_rule_defs_pk_csr INTO
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
198: x_no_data_found := TRUE;
199: -- Get current database values
200: OPEN okc_rule_defs_pk_csr (p_okc_rule_defs_v_rec.rule_code);
201: FETCH okc_rule_defs_pk_csr INTO
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
199: -- Get current database values
200: OPEN okc_rule_defs_pk_csr (p_okc_rule_defs_v_rec.rule_code);
201: FETCH okc_rule_defs_pk_csr INTO
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
200: OPEN okc_rule_defs_pk_csr (p_okc_rule_defs_v_rec.rule_code);
201: FETCH okc_rule_defs_pk_csr INTO
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
201: FETCH okc_rule_defs_pk_csr INTO
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
202: l_okc_rule_defs_v_rec.application_id,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
203: l_okc_rule_defs_v_rec.application_name,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
204: l_okc_rule_defs_v_rec.rule_code,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
205: l_okc_rule_defs_v_rec.descriptive_flexfield_name,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
206: l_okc_rule_defs_v_rec.meaning,
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
207: l_okc_rule_defs_v_rec.description,
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
215: x_no_data_found := okc_rule_defs_pk_csr%NOTFOUND;
208: l_okc_rule_defs_v_rec.sfwt_flag,
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
215: x_no_data_found := okc_rule_defs_pk_csr%NOTFOUND;
216: CLOSE okc_rule_defs_pk_csr;
209: l_okc_rule_defs_v_rec.object_version_number,
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
215: x_no_data_found := okc_rule_defs_pk_csr%NOTFOUND;
216: CLOSE okc_rule_defs_pk_csr;
217: RETURN(l_okc_rule_defs_v_rec);
210: l_okc_rule_defs_v_rec.created_by,
211: l_okc_rule_defs_v_rec.creation_date,
212: l_okc_rule_defs_v_rec.last_updated_by,
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
215: x_no_data_found := okc_rule_defs_pk_csr%NOTFOUND;
216: CLOSE okc_rule_defs_pk_csr;
217: RETURN(l_okc_rule_defs_v_rec);
218: END get_rec;
213: l_okc_rule_defs_v_rec.last_update_date,
214: l_okc_rule_defs_v_rec.last_update_login;
215: x_no_data_found := okc_rule_defs_pk_csr%NOTFOUND;
216: CLOSE okc_rule_defs_pk_csr;
217: RETURN(l_okc_rule_defs_v_rec);
218: END get_rec;
219:
220: ------------------------------------------------------------------
221: -- This version of get_rec sets error messages if no data found --
220: ------------------------------------------------------------------
221: -- This version of get_rec sets error messages if no data found --
222: ------------------------------------------------------------------
223: FUNCTION get_rec (
224: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
225: x_return_status OUT NOCOPY VARCHAR2
226: ) RETURN okc_rule_defs_v_rec_type IS
227: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
228: l_row_notfound BOOLEAN := TRUE;
222: ------------------------------------------------------------------
223: FUNCTION get_rec (
224: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
225: x_return_status OUT NOCOPY VARCHAR2
226: ) RETURN okc_rule_defs_v_rec_type IS
227: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
228: l_row_notfound BOOLEAN := TRUE;
229: BEGIN
230: x_return_status := OKC_API.G_RET_STS_SUCCESS;
223: FUNCTION get_rec (
224: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
225: x_return_status OUT NOCOPY VARCHAR2
226: ) RETURN okc_rule_defs_v_rec_type IS
227: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
228: l_row_notfound BOOLEAN := TRUE;
229: BEGIN
230: x_return_status := OKC_API.G_RET_STS_SUCCESS;
231: l_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_row_notfound);
227: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
228: l_row_notfound BOOLEAN := TRUE;
229: BEGIN
230: x_return_status := OKC_API.G_RET_STS_SUCCESS;
231: l_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_row_notfound);
232: IF (l_row_notfound) THEN
233: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'RULE_CODE');
234: x_return_status := OKC_API.G_RET_STS_ERROR;
235: END IF;
232: IF (l_row_notfound) THEN
233: OKC_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'RULE_CODE');
234: x_return_status := OKC_API.G_RET_STS_ERROR;
235: END IF;
236: RETURN(l_okc_rule_defs_v_rec);
237: END get_rec;
238: -----------------------------------------------------------
239: -- So we don't have to pass an "l_row_notfound" variable --
240: -----------------------------------------------------------
238: -----------------------------------------------------------
239: -- So we don't have to pass an "l_row_notfound" variable --
240: -----------------------------------------------------------
241: FUNCTION get_rec (
242: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
243: ) RETURN okc_rule_defs_v_rec_type IS
244: l_row_not_found BOOLEAN := TRUE;
245: BEGIN
246: RETURN(get_rec(p_okc_rule_defs_v_rec, l_row_not_found));
239: -- So we don't have to pass an "l_row_notfound" variable --
240: -----------------------------------------------------------
241: FUNCTION get_rec (
242: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
243: ) RETURN okc_rule_defs_v_rec_type IS
244: l_row_not_found BOOLEAN := TRUE;
245: BEGIN
246: RETURN(get_rec(p_okc_rule_defs_v_rec, l_row_not_found));
247: END get_rec;
242: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
243: ) RETURN okc_rule_defs_v_rec_type IS
244: l_row_not_found BOOLEAN := TRUE;
245: BEGIN
246: RETURN(get_rec(p_okc_rule_defs_v_rec, l_row_not_found));
247: END get_rec;
248: ---------------------------------------------------------------------------
249: -- FUNCTION get_rec for: OKC_RULE_DEFS_B
250: ---------------------------------------------------------------------------
391: BEGIN
392: RETURN(get_rec(p_okc_rule_defs_tl_rec, l_row_not_found));
393: END get_rec;
394: ---------------------------------------------------------------------------
395: -- FUNCTION null_out_defaults for: OKC_RULE_DEFS_V
396: ---------------------------------------------------------------------------
397: FUNCTION null_out_defaults (
398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
399: ) RETURN okc_rule_defs_v_rec_type IS
394: ---------------------------------------------------------------------------
395: -- FUNCTION null_out_defaults for: OKC_RULE_DEFS_V
396: ---------------------------------------------------------------------------
397: FUNCTION null_out_defaults (
398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
399: ) RETURN okc_rule_defs_v_rec_type IS
400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
395: -- FUNCTION null_out_defaults for: OKC_RULE_DEFS_V
396: ---------------------------------------------------------------------------
397: FUNCTION null_out_defaults (
398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
399: ) RETURN okc_rule_defs_v_rec_type IS
400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
396: ---------------------------------------------------------------------------
397: FUNCTION null_out_defaults (
398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
399: ) RETURN okc_rule_defs_v_rec_type IS
400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
404: END IF;
398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
399: ) RETURN okc_rule_defs_v_rec_type IS
400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
404: END IF;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
399: ) RETURN okc_rule_defs_v_rec_type IS
400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
404: END IF;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
407: END IF;
401: BEGIN
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
404: END IF;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
407: END IF;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
402: IF (l_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM ) THEN
403: l_okc_rule_defs_v_rec.application_id := NULL;
404: END IF;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
407: END IF;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
410: END IF;
404: END IF;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
407: END IF;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
410: END IF;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
405: IF (l_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR ) THEN
406: l_okc_rule_defs_v_rec.application_name := NULL;
407: END IF;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
410: END IF;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
413: END IF;
407: END IF;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
410: END IF;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
413: END IF;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
408: IF (l_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR ) THEN
409: l_okc_rule_defs_v_rec.rule_code := NULL;
410: END IF;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
413: END IF;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
416: END IF;
410: END IF;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
413: END IF;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
416: END IF;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
411: IF (l_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR ) THEN
412: l_okc_rule_defs_v_rec.descriptive_flexfield_name := NULL;
413: END IF;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
416: END IF;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
419: END IF;
413: END IF;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
416: END IF;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
419: END IF;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
414: IF (l_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR ) THEN
415: l_okc_rule_defs_v_rec.meaning := NULL;
416: END IF;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
419: END IF;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
422: END IF;
416: END IF;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
419: END IF;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
422: END IF;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
417: IF (l_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR ) THEN
418: l_okc_rule_defs_v_rec.description := NULL;
419: END IF;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
422: END IF;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
425: END IF;
419: END IF;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
422: END IF;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
425: END IF;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
420: IF (l_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR ) THEN
421: l_okc_rule_defs_v_rec.sfwt_flag := NULL;
422: END IF;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
425: END IF;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
428: END IF;
422: END IF;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
425: END IF;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
428: END IF;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
423: IF (l_okc_rule_defs_v_rec.object_version_number = OKC_API.G_MISS_NUM ) THEN
424: l_okc_rule_defs_v_rec.object_version_number := NULL;
425: END IF;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
428: END IF;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
431: END IF;
425: END IF;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
428: END IF;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
431: END IF;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
426: IF (l_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM ) THEN
427: l_okc_rule_defs_v_rec.created_by := NULL;
428: END IF;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
431: END IF;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
434: END IF;
428: END IF;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
431: END IF;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
434: END IF;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
429: IF (l_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE ) THEN
430: l_okc_rule_defs_v_rec.creation_date := NULL;
431: END IF;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
434: END IF;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
437: END IF;
431: END IF;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
434: END IF;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
437: END IF;
438: IF (l_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
439: l_okc_rule_defs_v_rec.last_update_login := NULL;
432: IF (l_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM ) THEN
433: l_okc_rule_defs_v_rec.last_updated_by := NULL;
434: END IF;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
437: END IF;
438: IF (l_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
439: l_okc_rule_defs_v_rec.last_update_login := NULL;
440: END IF;
434: END IF;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
437: END IF;
438: IF (l_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
439: l_okc_rule_defs_v_rec.last_update_login := NULL;
440: END IF;
441: RETURN(l_okc_rule_defs_v_rec);
442: END null_out_defaults;
435: IF (l_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE ) THEN
436: l_okc_rule_defs_v_rec.last_update_date := NULL;
437: END IF;
438: IF (l_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
439: l_okc_rule_defs_v_rec.last_update_login := NULL;
440: END IF;
441: RETURN(l_okc_rule_defs_v_rec);
442: END null_out_defaults;
443: ---------------------------------------------
437: END IF;
438: IF (l_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM ) THEN
439: l_okc_rule_defs_v_rec.last_update_login := NULL;
440: END IF;
441: RETURN(l_okc_rule_defs_v_rec);
442: END null_out_defaults;
443: ---------------------------------------------
444: -- Validate_Attributes for: APPLICATION_ID --
445: ---------------------------------------------
717: ---------------------------------------------------------------------------
718: -- FUNCTION Validate_Attributes
719: ---------------------------------------------------------------------------
720: ---------------------------------------------
721: -- Validate_Attributes for:OKC_RULE_DEFS_V --
722: ---------------------------------------------
723: FUNCTION Validate_Attributes (
724: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
725: ) RETURN VARCHAR2 IS
720: ---------------------------------------------
721: -- Validate_Attributes for:OKC_RULE_DEFS_V --
722: ---------------------------------------------
723: FUNCTION Validate_Attributes (
724: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
725: ) RETURN VARCHAR2 IS
726: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
727: x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
728: BEGIN
732: -----------------------------
733: -- ***
734: -- application_id
735: -- ***
736: validate_application_id(x_return_status, p_okc_rule_defs_v_rec.application_id);
737: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
738: l_return_status := x_return_status;
739: RAISE G_EXCEPTION_HALT_VALIDATION;
740: END IF;
741:
742: -- ***
743: -- application_name
744: -- ***
745: validate_application_name(x_return_status, p_okc_rule_defs_v_rec.application_name);
746: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
747: l_return_status := x_return_status;
748: RAISE G_EXCEPTION_HALT_VALIDATION;
749: END IF;
750:
751: -- ***
752: -- rule_code
753: -- ***
754: validate_rule_code(x_return_status, p_okc_rule_defs_v_rec.rule_code);
755: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
756: l_return_status := x_return_status;
757: RAISE G_EXCEPTION_HALT_VALIDATION;
758: END IF;
759:
760: -- ***
761: -- descriptive_flexfield_name
762: -- ***
763: validate_dff_name(x_return_status, p_okc_rule_defs_v_rec.descriptive_flexfield_name);
764: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
765: l_return_status := x_return_status;
766: RAISE G_EXCEPTION_HALT_VALIDATION;
767: END IF;
769: -- ***
770: -- application_id, rule_code, descriptive_flexfield_name
771: -- ***
772: validate_appl_rule_dff(x_return_status,
773: p_okc_rule_defs_v_rec.application_id,
774: p_okc_rule_defs_v_rec.rule_code,
775: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
776: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
777: l_return_status := x_return_status;
770: -- application_id, rule_code, descriptive_flexfield_name
771: -- ***
772: validate_appl_rule_dff(x_return_status,
773: p_okc_rule_defs_v_rec.application_id,
774: p_okc_rule_defs_v_rec.rule_code,
775: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
776: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
777: l_return_status := x_return_status;
778: RAISE G_EXCEPTION_HALT_VALIDATION;
771: -- ***
772: validate_appl_rule_dff(x_return_status,
773: p_okc_rule_defs_v_rec.application_id,
774: p_okc_rule_defs_v_rec.rule_code,
775: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
776: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
777: l_return_status := x_return_status;
778: RAISE G_EXCEPTION_HALT_VALIDATION;
779: END IF;
780:
781: -- ***
782: -- meaning
783: -- ***
784: validate_meaning(x_return_status, p_okc_rule_defs_v_rec.meaning);
785: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
786: l_return_status := x_return_status;
787: RAISE G_EXCEPTION_HALT_VALIDATION;
788: END IF;
789:
790: -- ***
791: -- sfwt_flag
792: -- ***
793: validate_sfwt_flag(x_return_status, p_okc_rule_defs_v_rec.sfwt_flag);
794: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
795: l_return_status := x_return_status;
796: RAISE G_EXCEPTION_HALT_VALIDATION;
797: END IF;
798:
799: -- ***
800: -- object_version_number
801: -- ***
802: validate_object_version_number(x_return_status, p_okc_rule_defs_v_rec.object_version_number);
803: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
804: l_return_status := x_return_status;
805: RAISE G_EXCEPTION_HALT_VALIDATION;
806: END IF;
822: ---------------------------------------------------------------------------
823: -- PROCEDURE Validate_Record
824: ---------------------------------------------------------------------------
825: -----------------------------------------
826: -- Validate Record for:OKC_RULE_DEFS_V --
827: -----------------------------------------
828: FUNCTION Validate_Record (
829: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
830: p_db_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
825: -----------------------------------------
826: -- Validate Record for:OKC_RULE_DEFS_V --
827: -----------------------------------------
828: FUNCTION Validate_Record (
829: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
830: p_db_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
831: ) RETURN VARCHAR2 IS
832: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
833: BEGIN
826: -- Validate Record for:OKC_RULE_DEFS_V --
827: -----------------------------------------
828: FUNCTION Validate_Record (
829: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
830: p_db_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
831: ) RETURN VARCHAR2 IS
832: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
833: BEGIN
834: RETURN (l_return_status);
834: RETURN (l_return_status);
835: END Validate_Record;
836:
837: FUNCTION Validate_Record (
838: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
839: ) RETURN VARCHAR2 IS
840: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
841: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := get_rec(p_okc_rule_defs_v_rec);
842: BEGIN
837: FUNCTION Validate_Record (
838: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
839: ) RETURN VARCHAR2 IS
840: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
841: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := get_rec(p_okc_rule_defs_v_rec);
842: BEGIN
843: l_return_status := Validate_Record(p_okc_rule_defs_v_rec => p_okc_rule_defs_v_rec,
844: p_db_okc_rule_defs_v_rec => l_db_okc_rule_defs_v_rec);
845: RETURN (l_return_status);
839: ) RETURN VARCHAR2 IS
840: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
841: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := get_rec(p_okc_rule_defs_v_rec);
842: BEGIN
843: l_return_status := Validate_Record(p_okc_rule_defs_v_rec => p_okc_rule_defs_v_rec,
844: p_db_okc_rule_defs_v_rec => l_db_okc_rule_defs_v_rec);
845: RETURN (l_return_status);
846: END Validate_Record;
847:
840: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
841: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := get_rec(p_okc_rule_defs_v_rec);
842: BEGIN
843: l_return_status := Validate_Record(p_okc_rule_defs_v_rec => p_okc_rule_defs_v_rec,
844: p_db_okc_rule_defs_v_rec => l_db_okc_rule_defs_v_rec);
845: RETURN (l_return_status);
846: END Validate_Record;
847:
848: ---------------------------------------------------------------------------
848: ---------------------------------------------------------------------------
849: -- PROCEDURE Migrate
850: ---------------------------------------------------------------------------
851: PROCEDURE migrate (
852: p_from IN okc_rule_defs_v_rec_type,
853: p_to IN OUT NOCOPY okc_rule_defs_b_rec_type
854: ) IS
855: BEGIN
856: p_to.rule_code := p_from.rule_code;
864: p_to.last_update_login := p_from.last_update_login;
865: END migrate;
866: PROCEDURE migrate (
867: p_from IN okc_rule_defs_b_rec_type,
868: p_to IN OUT NOCOPY okc_rule_defs_v_rec_type
869: ) IS
870: BEGIN
871: p_to.application_id := p_from.application_id;
872: p_to.rule_code := p_from.rule_code;
878: p_to.last_update_date := p_from.last_update_date;
879: p_to.last_update_login := p_from.last_update_login;
880: END migrate;
881: PROCEDURE migrate (
882: p_from IN okc_rule_defs_v_rec_type,
883: p_to IN OUT NOCOPY okc_rule_defs_tl_rec_type
884: ) IS
885: BEGIN
886: p_to.rule_code := p_from.rule_code;
894: p_to.last_update_login := p_from.last_update_login;
895: END migrate;
896: PROCEDURE migrate (
897: p_from IN okc_rule_defs_tl_rec_type,
898: p_to IN OUT NOCOPY okc_rule_defs_v_rec_type
899: ) IS
900: BEGIN
901: p_to.rule_code := p_from.rule_code;
902: p_to.meaning := p_from.meaning;
911: ---------------------------------------------------------------------------
912: -- PROCEDURE validate_row
913: ---------------------------------------------------------------------------
914: --------------------------------------
915: -- validate_row for:OKC_RULE_DEFS_V --
916: --------------------------------------
917: PROCEDURE validate_row(
918: p_api_version IN NUMBER,
919: p_init_msg_list IN VARCHAR2,
919: p_init_msg_list IN VARCHAR2,
920: x_return_status OUT NOCOPY VARCHAR2,
921: x_msg_count OUT NOCOPY NUMBER,
922: x_msg_data OUT NOCOPY VARCHAR2,
923: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type) IS
924:
925: l_api_version CONSTANT NUMBER := 1;
926: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
927: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
924:
925: l_api_version CONSTANT NUMBER := 1;
926: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
927: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
928: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
929: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
930: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
931: BEGIN
932: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
941: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
942: RAISE OKC_API.G_EXCEPTION_ERROR;
943: END IF;
944: --- Validate all non-missing attributes (Item Level Validation)
945: l_return_status := Validate_Attributes(l_okc_rule_defs_v_rec);
946: --- If any errors happen abort API
947: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
948: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
949: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
948: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
949: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
950: RAISE OKC_API.G_EXCEPTION_ERROR;
951: END IF;
952: l_return_status := Validate_Record(l_okc_rule_defs_v_rec);
953: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
954: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
955: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
956: RAISE OKC_API.G_EXCEPTION_ERROR;
988: '_PVT'
989: );
990: END validate_row;
991: -------------------------------------------------
992: -- PL/SQL TBL validate_row for:OKC_RULE_DEFS_V --
993: -------------------------------------------------
994: PROCEDURE validate_row(
995: p_api_version IN NUMBER,
996: p_init_msg_list IN VARCHAR2,
996: p_init_msg_list IN VARCHAR2,
997: x_return_status OUT NOCOPY VARCHAR2,
998: x_msg_count OUT NOCOPY NUMBER,
999: x_msg_data OUT NOCOPY VARCHAR2,
1000: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
1001: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
1002:
1003: l_api_version CONSTANT NUMBER := 1;
1004: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
1005: i NUMBER := 0;
1006: BEGIN
1007: OKC_API.init_msg_list(p_init_msg_list);
1008: -- Make sure PL/SQL table has records in it before passing
1009: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1010: i := p_okc_rule_defs_v_tbl.FIRST;
1011: LOOP
1012: DECLARE
1013: l_error_rec OKC_API.ERROR_REC_TYPE;
1006: BEGIN
1007: OKC_API.init_msg_list(p_init_msg_list);
1008: -- Make sure PL/SQL table has records in it before passing
1009: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1010: i := p_okc_rule_defs_v_tbl.FIRST;
1011: LOOP
1012: DECLARE
1013: l_error_rec OKC_API.ERROR_REC_TYPE;
1014: BEGIN
1020: p_init_msg_list => OKC_API.G_FALSE,
1021: x_return_status => l_error_rec.error_type,
1022: x_msg_count => l_error_rec.msg_count,
1023: x_msg_data => l_error_rec.msg_data,
1024: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i));
1025: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1026: l_error_rec.sqlcode := SQLCODE;
1027: load_error_tbl(l_error_rec, px_error_tbl);
1028: ELSE
1042: l_error_rec.error_type := 'OTHERS';
1043: l_error_rec.sqlcode := SQLCODE;
1044: load_error_tbl(l_error_rec, px_error_tbl);
1045: END;
1046: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
1047: i := p_okc_rule_defs_v_tbl.NEXT(i);
1048: END LOOP;
1049: END IF;
1050: -- Loop through the error_tbl to find the error with the highest severity
1043: l_error_rec.sqlcode := SQLCODE;
1044: load_error_tbl(l_error_rec, px_error_tbl);
1045: END;
1046: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
1047: i := p_okc_rule_defs_v_tbl.NEXT(i);
1048: END LOOP;
1049: END IF;
1050: -- Loop through the error_tbl to find the error with the highest severity
1051: -- and return it.
1084: );
1085: END validate_row;
1086:
1087: -------------------------------------------------
1088: -- PL/SQL TBL validate_row for:OKC_RULE_DEFS_V --
1089: -------------------------------------------------
1090: PROCEDURE validate_row(
1091: p_api_version IN NUMBER,
1092: p_init_msg_list IN VARCHAR2,
1092: p_init_msg_list IN VARCHAR2,
1093: x_return_status OUT NOCOPY VARCHAR2,
1094: x_msg_count OUT NOCOPY NUMBER,
1095: x_msg_data OUT NOCOPY VARCHAR2,
1096: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type) IS
1097:
1098: l_api_version CONSTANT NUMBER := 1;
1099: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
1100: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1101: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1102: BEGIN
1103: OKC_API.init_msg_list(p_init_msg_list);
1104: -- Make sure PL/SQL table has records in it before passing
1105: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1106: validate_row (
1107: p_api_version => p_api_version,
1108: p_init_msg_list => OKC_API.G_FALSE,
1109: x_return_status => x_return_status,
1108: p_init_msg_list => OKC_API.G_FALSE,
1109: x_return_status => x_return_status,
1110: x_msg_count => x_msg_count,
1111: x_msg_data => x_msg_data,
1112: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
1113: px_error_tbl => l_error_tbl);
1114: END IF;
1115: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1116: EXCEPTION
1370: '_PVT'
1371: );
1372: END insert_row;
1373: -------------------------------------
1374: -- insert_row for :OKC_RULE_DEFS_V --
1375: -------------------------------------
1376: PROCEDURE insert_row(
1377: p_api_version IN NUMBER,
1378: p_init_msg_list IN VARCHAR2,
1378: p_init_msg_list IN VARCHAR2,
1379: x_return_status OUT NOCOPY VARCHAR2,
1380: x_msg_count OUT NOCOPY NUMBER,
1381: x_msg_data OUT NOCOPY VARCHAR2,
1382: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
1383: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type) IS
1384:
1385: l_api_version CONSTANT NUMBER := 1;
1386: l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1379: x_return_status OUT NOCOPY VARCHAR2,
1380: x_msg_count OUT NOCOPY NUMBER,
1381: x_msg_data OUT NOCOPY VARCHAR2,
1382: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
1383: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type) IS
1384:
1385: l_api_version CONSTANT NUMBER := 1;
1386: l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1387: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1384:
1385: l_api_version CONSTANT NUMBER := 1;
1386: l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1387: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1388: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1389: l_def_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
1390: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
1391: lx_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
1392: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
1385: l_api_version CONSTANT NUMBER := 1;
1386: l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1387: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1388: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1389: l_def_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
1390: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
1391: lx_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
1392: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
1393: lx_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
1394: -------------------------------
1395: -- FUNCTION fill_who_columns --
1396: -------------------------------
1397: FUNCTION fill_who_columns (
1398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
1399: ) RETURN okc_rule_defs_v_rec_type IS
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1395: -- FUNCTION fill_who_columns --
1396: -------------------------------
1397: FUNCTION fill_who_columns (
1398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
1399: ) RETURN okc_rule_defs_v_rec_type IS
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1396: -------------------------------
1397: FUNCTION fill_who_columns (
1398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
1399: ) RETURN okc_rule_defs_v_rec_type IS
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1398: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
1399: ) RETURN okc_rule_defs_v_rec_type IS
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1399: ) RETURN okc_rule_defs_v_rec_type IS
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1400: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1408: END fill_who_columns;
1401: BEGIN
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1408: END fill_who_columns;
1409: ----------------------------------------
1402: l_okc_rule_defs_v_rec.CREATION_DATE := SYSDATE;
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1408: END fill_who_columns;
1409: ----------------------------------------
1410: -- Set_Attributes for:OKC_RULE_DEFS_V --
1403: l_okc_rule_defs_v_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1404: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := l_okc_rule_defs_v_rec.CREATION_DATE;
1405: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1408: END fill_who_columns;
1409: ----------------------------------------
1410: -- Set_Attributes for:OKC_RULE_DEFS_V --
1411: ----------------------------------------
1406: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1407: RETURN(l_okc_rule_defs_v_rec);
1408: END fill_who_columns;
1409: ----------------------------------------
1410: -- Set_Attributes for:OKC_RULE_DEFS_V --
1411: ----------------------------------------
1412: FUNCTION Set_Attributes (
1413: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
1414: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
1409: ----------------------------------------
1410: -- Set_Attributes for:OKC_RULE_DEFS_V --
1411: ----------------------------------------
1412: FUNCTION Set_Attributes (
1413: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
1414: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
1415: ) RETURN VARCHAR2 IS
1416: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1417: BEGIN
1410: -- Set_Attributes for:OKC_RULE_DEFS_V --
1411: ----------------------------------------
1412: FUNCTION Set_Attributes (
1413: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
1414: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
1415: ) RETURN VARCHAR2 IS
1416: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1417: BEGIN
1418: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
1414: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
1415: ) RETURN VARCHAR2 IS
1416: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1417: BEGIN
1418: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
1419: x_okc_rule_defs_v_rec.OBJECT_VERSION_NUMBER := 1;
1420: x_okc_rule_defs_v_rec.SFWT_FLAG := 'N';
1421: RETURN(l_return_status);
1422: END Set_Attributes;
1415: ) RETURN VARCHAR2 IS
1416: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1417: BEGIN
1418: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
1419: x_okc_rule_defs_v_rec.OBJECT_VERSION_NUMBER := 1;
1420: x_okc_rule_defs_v_rec.SFWT_FLAG := 'N';
1421: RETURN(l_return_status);
1422: END Set_Attributes;
1423: BEGIN
1416: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1417: BEGIN
1418: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
1419: x_okc_rule_defs_v_rec.OBJECT_VERSION_NUMBER := 1;
1420: x_okc_rule_defs_v_rec.SFWT_FLAG := 'N';
1421: RETURN(l_return_status);
1422: END Set_Attributes;
1423: BEGIN
1424: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1432: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1433: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1434: RAISE OKC_API.G_EXCEPTION_ERROR;
1435: END IF;
1436: l_okc_rule_defs_v_rec := null_out_defaults(p_okc_rule_defs_v_rec);
1437: -- Set primary key value
1438: -- Error: Primary Key Column "RULE_CODE"
1439: -- Does not have a NUMBER datatype, cannot assign get_seq_id
1440: -- Setting item attributes
1438: -- Error: Primary Key Column "RULE_CODE"
1439: -- Does not have a NUMBER datatype, cannot assign get_seq_id
1440: -- Setting item attributes
1441: l_return_Status := Set_Attributes(
1442: l_okc_rule_defs_v_rec, -- IN
1443: l_def_okc_rule_defs_v_rec); -- OUT
1444: --- If any errors happen abort API
1445: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1446: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1439: -- Does not have a NUMBER datatype, cannot assign get_seq_id
1440: -- Setting item attributes
1441: l_return_Status := Set_Attributes(
1442: l_okc_rule_defs_v_rec, -- IN
1443: l_def_okc_rule_defs_v_rec); -- OUT
1444: --- If any errors happen abort API
1445: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1446: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1447: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1446: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1447: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1448: RAISE OKC_API.G_EXCEPTION_ERROR;
1449: END IF;
1450: l_def_okc_rule_defs_v_rec := fill_who_columns(l_def_okc_rule_defs_v_rec);
1451: --- Validate all non-missing attributes (Item Level Validation)
1452: l_return_status := Validate_Attributes(l_def_okc_rule_defs_v_rec);
1453: --- If any errors happen abort API
1454: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1448: RAISE OKC_API.G_EXCEPTION_ERROR;
1449: END IF;
1450: l_def_okc_rule_defs_v_rec := fill_who_columns(l_def_okc_rule_defs_v_rec);
1451: --- Validate all non-missing attributes (Item Level Validation)
1452: l_return_status := Validate_Attributes(l_def_okc_rule_defs_v_rec);
1453: --- If any errors happen abort API
1454: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1455: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1456: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1455: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1456: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1457: RAISE OKC_API.G_EXCEPTION_ERROR;
1458: END IF;
1459: l_return_status := Validate_Record(l_def_okc_rule_defs_v_rec);
1460: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1461: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1462: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1463: RAISE OKC_API.G_EXCEPTION_ERROR;
1464: END IF;
1465: -----------------------------------------
1466: -- Move VIEW record to "Child" records --
1467: -----------------------------------------
1468: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
1469: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
1470: -----------------------------------------------
1471: -- Call the INSERT_ROW for each child record --
1472: -----------------------------------------------
1465: -----------------------------------------
1466: -- Move VIEW record to "Child" records --
1467: -----------------------------------------
1468: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
1469: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
1470: -----------------------------------------------
1471: -- Call the INSERT_ROW for each child record --
1472: -----------------------------------------------
1473: insert_row(
1482: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1483: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1484: RAISE OKC_API.G_EXCEPTION_ERROR;
1485: END IF;
1486: migrate(lx_okc_rule_defs_b_rec, l_def_okc_rule_defs_v_rec);
1487: insert_row(
1488: p_init_msg_list,
1489: l_return_status,
1490: x_msg_count,
1496: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1497: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1498: RAISE OKC_API.G_EXCEPTION_ERROR;
1499: END IF;
1500: migrate(lx_okc_rule_defs_tl_rec, l_def_okc_rule_defs_v_rec);
1501: -- Set OUT values
1502: x_okc_rule_defs_v_rec := l_def_okc_rule_defs_v_rec;
1503: x_return_status := l_return_status;
1504: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1498: RAISE OKC_API.G_EXCEPTION_ERROR;
1499: END IF;
1500: migrate(lx_okc_rule_defs_tl_rec, l_def_okc_rule_defs_v_rec);
1501: -- Set OUT values
1502: x_okc_rule_defs_v_rec := l_def_okc_rule_defs_v_rec;
1503: x_return_status := l_return_status;
1504: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1505: EXCEPTION
1506: WHEN OKC_API.G_EXCEPTION_ERROR THEN
1534: '_PVT'
1535: );
1536: END insert_row;
1537: ---------------------------------------------------
1538: -- PL/SQL TBL insert_row for:OKC_RULE_DEFS_V_TBL --
1539: ---------------------------------------------------
1540: PROCEDURE insert_row(
1541: p_api_version IN NUMBER,
1542: p_init_msg_list IN VARCHAR2,
1542: p_init_msg_list IN VARCHAR2,
1543: x_return_status OUT NOCOPY VARCHAR2,
1544: x_msg_count OUT NOCOPY NUMBER,
1545: x_msg_data OUT NOCOPY VARCHAR2,
1546: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
1547: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type,
1548: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
1549:
1550: l_api_version CONSTANT NUMBER := 1;
1543: x_return_status OUT NOCOPY VARCHAR2,
1544: x_msg_count OUT NOCOPY NUMBER,
1545: x_msg_data OUT NOCOPY VARCHAR2,
1546: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
1547: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type,
1548: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
1549:
1550: l_api_version CONSTANT NUMBER := 1;
1551: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_insert_row';
1552: i NUMBER := 0;
1553: BEGIN
1554: OKC_API.init_msg_list(p_init_msg_list);
1555: -- Make sure PL/SQL table has records in it before passing
1556: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1557: i := p_okc_rule_defs_v_tbl.FIRST;
1558: LOOP
1559: DECLARE
1560: l_error_rec OKC_API.ERROR_REC_TYPE;
1553: BEGIN
1554: OKC_API.init_msg_list(p_init_msg_list);
1555: -- Make sure PL/SQL table has records in it before passing
1556: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1557: i := p_okc_rule_defs_v_tbl.FIRST;
1558: LOOP
1559: DECLARE
1560: l_error_rec OKC_API.ERROR_REC_TYPE;
1561: BEGIN
1567: p_init_msg_list => OKC_API.G_FALSE,
1568: x_return_status => l_error_rec.error_type,
1569: x_msg_count => l_error_rec.msg_count,
1570: x_msg_data => l_error_rec.msg_data,
1571: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i),
1572: x_okc_rule_defs_v_rec => x_okc_rule_defs_v_tbl(i));
1573: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1574: l_error_rec.sqlcode := SQLCODE;
1575: load_error_tbl(l_error_rec, px_error_tbl);
1568: x_return_status => l_error_rec.error_type,
1569: x_msg_count => l_error_rec.msg_count,
1570: x_msg_data => l_error_rec.msg_data,
1571: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i),
1572: x_okc_rule_defs_v_rec => x_okc_rule_defs_v_tbl(i));
1573: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
1574: l_error_rec.sqlcode := SQLCODE;
1575: load_error_tbl(l_error_rec, px_error_tbl);
1576: ELSE
1590: l_error_rec.error_type := 'OTHERS';
1591: l_error_rec.sqlcode := SQLCODE;
1592: load_error_tbl(l_error_rec, px_error_tbl);
1593: END;
1594: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
1595: i := p_okc_rule_defs_v_tbl.NEXT(i);
1596: END LOOP;
1597: END IF;
1598: -- Loop through the error_tbl to find the error with the highest severity
1591: l_error_rec.sqlcode := SQLCODE;
1592: load_error_tbl(l_error_rec, px_error_tbl);
1593: END;
1594: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
1595: i := p_okc_rule_defs_v_tbl.NEXT(i);
1596: END LOOP;
1597: END IF;
1598: -- Loop through the error_tbl to find the error with the highest severity
1599: -- and return it.
1632: );
1633: END insert_row;
1634:
1635: ---------------------------------------------------
1636: -- PL/SQL TBL insert_row for:OKC_RULE_DEFS_V_TBL --
1637: ---------------------------------------------------
1638: PROCEDURE insert_row(
1639: p_api_version IN NUMBER,
1640: p_init_msg_list IN VARCHAR2,
1640: p_init_msg_list IN VARCHAR2,
1641: x_return_status OUT NOCOPY VARCHAR2,
1642: x_msg_count OUT NOCOPY NUMBER,
1643: x_msg_data OUT NOCOPY VARCHAR2,
1644: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
1645: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type) IS
1646:
1647: l_api_version CONSTANT NUMBER := 1;
1648: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1641: x_return_status OUT NOCOPY VARCHAR2,
1642: x_msg_count OUT NOCOPY NUMBER,
1643: x_msg_data OUT NOCOPY VARCHAR2,
1644: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
1645: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type) IS
1646:
1647: l_api_version CONSTANT NUMBER := 1;
1648: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1649: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1650: l_error_tbl OKC_API.ERROR_TBL_TYPE;
1651: BEGIN
1652: OKC_API.init_msg_list(p_init_msg_list);
1653: -- Make sure PL/SQL table has records in it before passing
1654: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
1655: insert_row (
1656: p_api_version => p_api_version,
1657: p_init_msg_list => OKC_API.G_FALSE,
1658: x_return_status => x_return_status,
1657: p_init_msg_list => OKC_API.G_FALSE,
1658: x_return_status => x_return_status,
1659: x_msg_count => x_msg_count,
1660: x_msg_data => x_msg_data,
1661: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
1662: x_okc_rule_defs_v_tbl => x_okc_rule_defs_v_tbl,
1663: px_error_tbl => l_error_tbl);
1664: END IF;
1665: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1658: x_return_status => x_return_status,
1659: x_msg_count => x_msg_count,
1660: x_msg_data => x_msg_data,
1661: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
1662: x_okc_rule_defs_v_tbl => x_okc_rule_defs_v_tbl,
1663: px_error_tbl => l_error_tbl);
1664: END IF;
1665: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1666: EXCEPTION
1892: '_PVT'
1893: );
1894: END lock_row;
1895: -----------------------------------
1896: -- lock_row for: OKC_RULE_DEFS_V --
1897: -----------------------------------
1898: PROCEDURE lock_row(
1899: p_api_version IN NUMBER,
1900: p_init_msg_list IN VARCHAR2,
1900: p_init_msg_list IN VARCHAR2,
1901: x_return_status OUT NOCOPY VARCHAR2,
1902: x_msg_count OUT NOCOPY NUMBER,
1903: x_msg_data OUT NOCOPY VARCHAR2,
1904: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type) IS
1905:
1906: l_api_version CONSTANT NUMBER := 1;
1907: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1908: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1923: END IF;
1924: -----------------------------------------
1925: -- Move VIEW record to "Child" records --
1926: -----------------------------------------
1927: migrate(p_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
1928: migrate(p_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
1929: ---------------------------------------------
1930: -- Call the LOCK_ROW for each child record --
1931: ---------------------------------------------
1924: -----------------------------------------
1925: -- Move VIEW record to "Child" records --
1926: -----------------------------------------
1927: migrate(p_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
1928: migrate(p_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
1929: ---------------------------------------------
1930: -- Call the LOCK_ROW for each child record --
1931: ---------------------------------------------
1932: lock_row(
1987: '_PVT'
1988: );
1989: END lock_row;
1990: -------------------------------------------------
1991: -- PL/SQL TBL lock_row for:OKC_RULE_DEFS_V_TBL --
1992: -------------------------------------------------
1993: PROCEDURE lock_row(
1994: p_api_version IN NUMBER,
1995: p_init_msg_list IN VARCHAR2,
1995: p_init_msg_list IN VARCHAR2,
1996: x_return_status OUT NOCOPY VARCHAR2,
1997: x_msg_count OUT NOCOPY NUMBER,
1998: x_msg_data OUT NOCOPY VARCHAR2,
1999: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
2000: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
2001:
2002: l_api_version CONSTANT NUMBER := 1;
2003: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
2004: i NUMBER := 0;
2005: BEGIN
2006: OKC_API.init_msg_list(p_init_msg_list);
2007: -- Make sure PL/SQL table has recrods in it before passing
2008: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2009: i := p_okc_rule_defs_v_tbl.FIRST;
2010: LOOP
2011: DECLARE
2012: l_error_rec OKC_API.ERROR_REC_TYPE;
2005: BEGIN
2006: OKC_API.init_msg_list(p_init_msg_list);
2007: -- Make sure PL/SQL table has recrods in it before passing
2008: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2009: i := p_okc_rule_defs_v_tbl.FIRST;
2010: LOOP
2011: DECLARE
2012: l_error_rec OKC_API.ERROR_REC_TYPE;
2013: BEGIN
2019: p_init_msg_list => OKC_API.G_FALSE,
2020: x_return_status => l_error_rec.error_type,
2021: x_msg_count => l_error_rec.msg_count,
2022: x_msg_data => l_error_rec.msg_data,
2023: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i));
2024: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
2025: l_error_rec.sqlcode := SQLCODE;
2026: load_error_tbl(l_error_rec, px_error_tbl);
2027: ELSE
2041: l_error_rec.error_type := 'OTHERS';
2042: l_error_rec.sqlcode := SQLCODE;
2043: load_error_tbl(l_error_rec, px_error_tbl);
2044: END;
2045: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
2046: i := p_okc_rule_defs_v_tbl.NEXT(i);
2047: END LOOP;
2048: END IF;
2049: -- Loop through the error_tbl to find the error with the highest severity
2042: l_error_rec.sqlcode := SQLCODE;
2043: load_error_tbl(l_error_rec, px_error_tbl);
2044: END;
2045: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
2046: i := p_okc_rule_defs_v_tbl.NEXT(i);
2047: END LOOP;
2048: END IF;
2049: -- Loop through the error_tbl to find the error with the highest severity
2050: -- and return it.
2082: '_PVT'
2083: );
2084: END lock_row;
2085: -------------------------------------------------
2086: -- PL/SQL TBL lock_row for:OKC_RULE_DEFS_V_TBL --
2087: -------------------------------------------------
2088: PROCEDURE lock_row(
2089: p_api_version IN NUMBER,
2090: p_init_msg_list IN VARCHAR2,
2090: p_init_msg_list IN VARCHAR2,
2091: x_return_status OUT NOCOPY VARCHAR2,
2092: x_msg_count OUT NOCOPY NUMBER,
2093: x_msg_data OUT NOCOPY VARCHAR2,
2094: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type) IS
2095:
2096: l_api_version CONSTANT NUMBER := 1;
2097: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
2098: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2099: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2100: BEGIN
2101: OKC_API.init_msg_list(p_init_msg_list);
2102: -- Make sure PL/SQL table has recrods in it before passing
2103: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2104: lock_row(
2105: p_api_version => p_api_version,
2106: p_init_msg_list => OKC_API.G_FALSE,
2107: x_return_status => x_return_status,
2106: p_init_msg_list => OKC_API.G_FALSE,
2107: x_return_status => x_return_status,
2108: x_msg_count => x_msg_count,
2109: x_msg_data => x_msg_data,
2110: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
2111: px_error_tbl => l_error_tbl);
2112: END IF;
2113: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2114: EXCEPTION
2472: '_PVT'
2473: );
2474: END update_row;
2475: ------------------------------------
2476: -- update_row for:OKC_RULE_DEFS_V --
2477: ------------------------------------
2478: PROCEDURE update_row(
2479: p_api_version IN NUMBER,
2480: p_init_msg_list IN VARCHAR2,
2480: p_init_msg_list IN VARCHAR2,
2481: x_return_status OUT NOCOPY VARCHAR2,
2482: x_msg_count OUT NOCOPY NUMBER,
2483: x_msg_data OUT NOCOPY VARCHAR2,
2484: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2485: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type) IS
2486:
2487: l_api_version CONSTANT NUMBER := 1;
2488: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2481: x_return_status OUT NOCOPY VARCHAR2,
2482: x_msg_count OUT NOCOPY NUMBER,
2483: x_msg_data OUT NOCOPY VARCHAR2,
2484: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2485: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type) IS
2486:
2487: l_api_version CONSTANT NUMBER := 1;
2488: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2489: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2486:
2487: l_api_version CONSTANT NUMBER := 1;
2488: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2489: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2490: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2491: l_def_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2492: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2493: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2494: lx_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2487: l_api_version CONSTANT NUMBER := 1;
2488: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2489: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2490: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2491: l_def_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2492: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2493: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2494: lx_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2495: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
2488: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2489: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2490: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2491: l_def_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2492: l_db_okc_rule_defs_v_rec okc_rule_defs_v_rec_type;
2493: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2494: lx_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
2495: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
2496: lx_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
2497: -------------------------------
2498: -- FUNCTION fill_who_columns --
2499: -------------------------------
2500: FUNCTION fill_who_columns (
2501: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
2502: ) RETURN okc_rule_defs_v_rec_type IS
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2498: -- FUNCTION fill_who_columns --
2499: -------------------------------
2500: FUNCTION fill_who_columns (
2501: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
2502: ) RETURN okc_rule_defs_v_rec_type IS
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2499: -------------------------------
2500: FUNCTION fill_who_columns (
2501: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
2502: ) RETURN okc_rule_defs_v_rec_type IS
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2507: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2501: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
2502: ) RETURN okc_rule_defs_v_rec_type IS
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2507: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2508: RETURN(l_okc_rule_defs_v_rec);
2509: END fill_who_columns;
2502: ) RETURN okc_rule_defs_v_rec_type IS
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2507: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2508: RETURN(l_okc_rule_defs_v_rec);
2509: END fill_who_columns;
2510: ----------------------------------
2503: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2507: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2508: RETURN(l_okc_rule_defs_v_rec);
2509: END fill_who_columns;
2510: ----------------------------------
2511: -- FUNCTION populate_new_record --
2504: BEGIN
2505: l_okc_rule_defs_v_rec.LAST_UPDATE_DATE := SYSDATE;
2506: l_okc_rule_defs_v_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2507: l_okc_rule_defs_v_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2508: RETURN(l_okc_rule_defs_v_rec);
2509: END fill_who_columns;
2510: ----------------------------------
2511: -- FUNCTION populate_new_record --
2512: ----------------------------------
2510: ----------------------------------
2511: -- FUNCTION populate_new_record --
2512: ----------------------------------
2513: FUNCTION populate_new_record (
2514: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2515: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2516: ) RETURN VARCHAR2 IS
2517: l_row_notfound BOOLEAN := TRUE;
2518: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2511: -- FUNCTION populate_new_record --
2512: ----------------------------------
2513: FUNCTION populate_new_record (
2514: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2515: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2516: ) RETURN VARCHAR2 IS
2517: l_row_notfound BOOLEAN := TRUE;
2518: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2519: BEGIN
2516: ) RETURN VARCHAR2 IS
2517: l_row_notfound BOOLEAN := TRUE;
2518: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2519: BEGIN
2520: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
2521: -- Get current database values
2522: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
2523: -- so it may be verified through LOCK_ROW.
2524: l_db_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_return_status);
2520: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
2521: -- Get current database values
2522: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
2523: -- so it may be verified through LOCK_ROW.
2524: l_db_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_return_status);
2525: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
2526: IF (x_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM)
2527: THEN
2528: x_okc_rule_defs_v_rec.application_id := l_db_okc_rule_defs_v_rec.application_id;
2522: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
2523: -- so it may be verified through LOCK_ROW.
2524: l_db_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_return_status);
2525: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
2526: IF (x_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM)
2527: THEN
2528: x_okc_rule_defs_v_rec.application_id := l_db_okc_rule_defs_v_rec.application_id;
2529: END IF;
2530: IF (x_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR)
2524: l_db_okc_rule_defs_v_rec := get_rec(p_okc_rule_defs_v_rec, l_return_status);
2525: IF (l_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
2526: IF (x_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM)
2527: THEN
2528: x_okc_rule_defs_v_rec.application_id := l_db_okc_rule_defs_v_rec.application_id;
2529: END IF;
2530: IF (x_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR)
2531: THEN
2532: x_okc_rule_defs_v_rec.application_name := l_db_okc_rule_defs_v_rec.application_name;
2526: IF (x_okc_rule_defs_v_rec.application_id = OKC_API.G_MISS_NUM)
2527: THEN
2528: x_okc_rule_defs_v_rec.application_id := l_db_okc_rule_defs_v_rec.application_id;
2529: END IF;
2530: IF (x_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR)
2531: THEN
2532: x_okc_rule_defs_v_rec.application_name := l_db_okc_rule_defs_v_rec.application_name;
2533: END IF;
2534: IF (x_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR)
2528: x_okc_rule_defs_v_rec.application_id := l_db_okc_rule_defs_v_rec.application_id;
2529: END IF;
2530: IF (x_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR)
2531: THEN
2532: x_okc_rule_defs_v_rec.application_name := l_db_okc_rule_defs_v_rec.application_name;
2533: END IF;
2534: IF (x_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR)
2535: THEN
2536: x_okc_rule_defs_v_rec.rule_code := l_db_okc_rule_defs_v_rec.rule_code;
2530: IF (x_okc_rule_defs_v_rec.application_name = OKC_API.G_MISS_CHAR)
2531: THEN
2532: x_okc_rule_defs_v_rec.application_name := l_db_okc_rule_defs_v_rec.application_name;
2533: END IF;
2534: IF (x_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR)
2535: THEN
2536: x_okc_rule_defs_v_rec.rule_code := l_db_okc_rule_defs_v_rec.rule_code;
2537: END IF;
2538: IF (x_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR)
2532: x_okc_rule_defs_v_rec.application_name := l_db_okc_rule_defs_v_rec.application_name;
2533: END IF;
2534: IF (x_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR)
2535: THEN
2536: x_okc_rule_defs_v_rec.rule_code := l_db_okc_rule_defs_v_rec.rule_code;
2537: END IF;
2538: IF (x_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR)
2539: THEN
2540: x_okc_rule_defs_v_rec.descriptive_flexfield_name := l_db_okc_rule_defs_v_rec.descriptive_flexfield_name;
2534: IF (x_okc_rule_defs_v_rec.rule_code = OKC_API.G_MISS_CHAR)
2535: THEN
2536: x_okc_rule_defs_v_rec.rule_code := l_db_okc_rule_defs_v_rec.rule_code;
2537: END IF;
2538: IF (x_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR)
2539: THEN
2540: x_okc_rule_defs_v_rec.descriptive_flexfield_name := l_db_okc_rule_defs_v_rec.descriptive_flexfield_name;
2541: END IF;
2542: IF (x_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR)
2536: x_okc_rule_defs_v_rec.rule_code := l_db_okc_rule_defs_v_rec.rule_code;
2537: END IF;
2538: IF (x_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR)
2539: THEN
2540: x_okc_rule_defs_v_rec.descriptive_flexfield_name := l_db_okc_rule_defs_v_rec.descriptive_flexfield_name;
2541: END IF;
2542: IF (x_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR)
2543: THEN
2544: x_okc_rule_defs_v_rec.meaning := l_db_okc_rule_defs_v_rec.meaning;
2538: IF (x_okc_rule_defs_v_rec.descriptive_flexfield_name = OKC_API.G_MISS_CHAR)
2539: THEN
2540: x_okc_rule_defs_v_rec.descriptive_flexfield_name := l_db_okc_rule_defs_v_rec.descriptive_flexfield_name;
2541: END IF;
2542: IF (x_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR)
2543: THEN
2544: x_okc_rule_defs_v_rec.meaning := l_db_okc_rule_defs_v_rec.meaning;
2545: END IF;
2546: IF (x_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR)
2540: x_okc_rule_defs_v_rec.descriptive_flexfield_name := l_db_okc_rule_defs_v_rec.descriptive_flexfield_name;
2541: END IF;
2542: IF (x_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR)
2543: THEN
2544: x_okc_rule_defs_v_rec.meaning := l_db_okc_rule_defs_v_rec.meaning;
2545: END IF;
2546: IF (x_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR)
2547: THEN
2548: x_okc_rule_defs_v_rec.description := l_db_okc_rule_defs_v_rec.description;
2542: IF (x_okc_rule_defs_v_rec.meaning = OKC_API.G_MISS_CHAR)
2543: THEN
2544: x_okc_rule_defs_v_rec.meaning := l_db_okc_rule_defs_v_rec.meaning;
2545: END IF;
2546: IF (x_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR)
2547: THEN
2548: x_okc_rule_defs_v_rec.description := l_db_okc_rule_defs_v_rec.description;
2549: END IF;
2550: IF (x_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2544: x_okc_rule_defs_v_rec.meaning := l_db_okc_rule_defs_v_rec.meaning;
2545: END IF;
2546: IF (x_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR)
2547: THEN
2548: x_okc_rule_defs_v_rec.description := l_db_okc_rule_defs_v_rec.description;
2549: END IF;
2550: IF (x_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2551: THEN
2552: x_okc_rule_defs_v_rec.sfwt_flag := l_db_okc_rule_defs_v_rec.sfwt_flag;
2546: IF (x_okc_rule_defs_v_rec.description = OKC_API.G_MISS_CHAR)
2547: THEN
2548: x_okc_rule_defs_v_rec.description := l_db_okc_rule_defs_v_rec.description;
2549: END IF;
2550: IF (x_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2551: THEN
2552: x_okc_rule_defs_v_rec.sfwt_flag := l_db_okc_rule_defs_v_rec.sfwt_flag;
2553: END IF;
2554: IF (x_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM)
2548: x_okc_rule_defs_v_rec.description := l_db_okc_rule_defs_v_rec.description;
2549: END IF;
2550: IF (x_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2551: THEN
2552: x_okc_rule_defs_v_rec.sfwt_flag := l_db_okc_rule_defs_v_rec.sfwt_flag;
2553: END IF;
2554: IF (x_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM)
2555: THEN
2556: x_okc_rule_defs_v_rec.created_by := l_db_okc_rule_defs_v_rec.created_by;
2550: IF (x_okc_rule_defs_v_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2551: THEN
2552: x_okc_rule_defs_v_rec.sfwt_flag := l_db_okc_rule_defs_v_rec.sfwt_flag;
2553: END IF;
2554: IF (x_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM)
2555: THEN
2556: x_okc_rule_defs_v_rec.created_by := l_db_okc_rule_defs_v_rec.created_by;
2557: END IF;
2558: IF (x_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE)
2552: x_okc_rule_defs_v_rec.sfwt_flag := l_db_okc_rule_defs_v_rec.sfwt_flag;
2553: END IF;
2554: IF (x_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM)
2555: THEN
2556: x_okc_rule_defs_v_rec.created_by := l_db_okc_rule_defs_v_rec.created_by;
2557: END IF;
2558: IF (x_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE)
2559: THEN
2560: x_okc_rule_defs_v_rec.creation_date := l_db_okc_rule_defs_v_rec.creation_date;
2554: IF (x_okc_rule_defs_v_rec.created_by = OKC_API.G_MISS_NUM)
2555: THEN
2556: x_okc_rule_defs_v_rec.created_by := l_db_okc_rule_defs_v_rec.created_by;
2557: END IF;
2558: IF (x_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE)
2559: THEN
2560: x_okc_rule_defs_v_rec.creation_date := l_db_okc_rule_defs_v_rec.creation_date;
2561: END IF;
2562: IF (x_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM)
2556: x_okc_rule_defs_v_rec.created_by := l_db_okc_rule_defs_v_rec.created_by;
2557: END IF;
2558: IF (x_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE)
2559: THEN
2560: x_okc_rule_defs_v_rec.creation_date := l_db_okc_rule_defs_v_rec.creation_date;
2561: END IF;
2562: IF (x_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM)
2563: THEN
2564: x_okc_rule_defs_v_rec.last_updated_by := l_db_okc_rule_defs_v_rec.last_updated_by;
2558: IF (x_okc_rule_defs_v_rec.creation_date = OKC_API.G_MISS_DATE)
2559: THEN
2560: x_okc_rule_defs_v_rec.creation_date := l_db_okc_rule_defs_v_rec.creation_date;
2561: END IF;
2562: IF (x_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM)
2563: THEN
2564: x_okc_rule_defs_v_rec.last_updated_by := l_db_okc_rule_defs_v_rec.last_updated_by;
2565: END IF;
2566: IF (x_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE)
2560: x_okc_rule_defs_v_rec.creation_date := l_db_okc_rule_defs_v_rec.creation_date;
2561: END IF;
2562: IF (x_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM)
2563: THEN
2564: x_okc_rule_defs_v_rec.last_updated_by := l_db_okc_rule_defs_v_rec.last_updated_by;
2565: END IF;
2566: IF (x_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE)
2567: THEN
2568: x_okc_rule_defs_v_rec.last_update_date := l_db_okc_rule_defs_v_rec.last_update_date;
2562: IF (x_okc_rule_defs_v_rec.last_updated_by = OKC_API.G_MISS_NUM)
2563: THEN
2564: x_okc_rule_defs_v_rec.last_updated_by := l_db_okc_rule_defs_v_rec.last_updated_by;
2565: END IF;
2566: IF (x_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE)
2567: THEN
2568: x_okc_rule_defs_v_rec.last_update_date := l_db_okc_rule_defs_v_rec.last_update_date;
2569: END IF;
2570: IF (x_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM)
2564: x_okc_rule_defs_v_rec.last_updated_by := l_db_okc_rule_defs_v_rec.last_updated_by;
2565: END IF;
2566: IF (x_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE)
2567: THEN
2568: x_okc_rule_defs_v_rec.last_update_date := l_db_okc_rule_defs_v_rec.last_update_date;
2569: END IF;
2570: IF (x_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM)
2571: THEN
2572: x_okc_rule_defs_v_rec.last_update_login := l_db_okc_rule_defs_v_rec.last_update_login;
2566: IF (x_okc_rule_defs_v_rec.last_update_date = OKC_API.G_MISS_DATE)
2567: THEN
2568: x_okc_rule_defs_v_rec.last_update_date := l_db_okc_rule_defs_v_rec.last_update_date;
2569: END IF;
2570: IF (x_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM)
2571: THEN
2572: x_okc_rule_defs_v_rec.last_update_login := l_db_okc_rule_defs_v_rec.last_update_login;
2573: END IF;
2574: END IF;
2568: x_okc_rule_defs_v_rec.last_update_date := l_db_okc_rule_defs_v_rec.last_update_date;
2569: END IF;
2570: IF (x_okc_rule_defs_v_rec.last_update_login = OKC_API.G_MISS_NUM)
2571: THEN
2572: x_okc_rule_defs_v_rec.last_update_login := l_db_okc_rule_defs_v_rec.last_update_login;
2573: END IF;
2574: END IF;
2575: RETURN(l_return_status);
2576: END populate_new_record;
2574: END IF;
2575: RETURN(l_return_status);
2576: END populate_new_record;
2577: ----------------------------------------
2578: -- Set_Attributes for:OKC_RULE_DEFS_V --
2579: ----------------------------------------
2580: FUNCTION Set_Attributes (
2581: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2582: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2577: ----------------------------------------
2578: -- Set_Attributes for:OKC_RULE_DEFS_V --
2579: ----------------------------------------
2580: FUNCTION Set_Attributes (
2581: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2582: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2583: ) RETURN VARCHAR2 IS
2584: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2585: BEGIN
2578: -- Set_Attributes for:OKC_RULE_DEFS_V --
2579: ----------------------------------------
2580: FUNCTION Set_Attributes (
2581: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type,
2582: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2583: ) RETURN VARCHAR2 IS
2584: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2585: BEGIN
2586: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
2582: x_okc_rule_defs_v_rec OUT NOCOPY okc_rule_defs_v_rec_type
2583: ) RETURN VARCHAR2 IS
2584: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2585: BEGIN
2586: x_okc_rule_defs_v_rec := p_okc_rule_defs_v_rec;
2587: RETURN(l_return_status);
2588: END Set_Attributes;
2589: BEGIN
2590: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2600: RAISE OKC_API.G_EXCEPTION_ERROR;
2601: END IF;
2602: --- Setting item attributes
2603: l_return_status := Set_Attributes(
2604: p_okc_rule_defs_v_rec, -- IN
2605: x_okc_rule_defs_v_rec); -- OUT
2606: --- If any errors happen abort API
2607: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2608: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2601: END IF;
2602: --- Setting item attributes
2603: l_return_status := Set_Attributes(
2604: p_okc_rule_defs_v_rec, -- IN
2605: x_okc_rule_defs_v_rec); -- OUT
2606: --- If any errors happen abort API
2607: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2608: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2609: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2608: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2609: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2610: RAISE OKC_API.G_EXCEPTION_ERROR;
2611: END IF;
2612: l_return_status := populate_new_record(l_okc_rule_defs_v_rec, l_def_okc_rule_defs_v_rec);
2613: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2614: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2615: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2616: RAISE OKC_API.G_EXCEPTION_ERROR;
2614: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2615: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2616: RAISE OKC_API.G_EXCEPTION_ERROR;
2617: END IF;
2618: l_def_okc_rule_defs_v_rec := fill_who_columns(l_def_okc_rule_defs_v_rec);
2619: --- Validate all non-missing attributes (Item Level Validation)
2620: l_return_status := Validate_Attributes(l_def_okc_rule_defs_v_rec);
2621: --- If any errors happen abort API
2622: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2616: RAISE OKC_API.G_EXCEPTION_ERROR;
2617: END IF;
2618: l_def_okc_rule_defs_v_rec := fill_who_columns(l_def_okc_rule_defs_v_rec);
2619: --- Validate all non-missing attributes (Item Level Validation)
2620: l_return_status := Validate_Attributes(l_def_okc_rule_defs_v_rec);
2621: --- If any errors happen abort API
2622: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2623: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2624: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2623: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2624: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2625: RAISE OKC_API.G_EXCEPTION_ERROR;
2626: END IF;
2627: l_return_status := Validate_Record(l_def_okc_rule_defs_v_rec, l_db_okc_rule_defs_v_rec);
2628: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2629: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2630: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2631: RAISE OKC_API.G_EXCEPTION_ERROR;
2637: p_init_msg_list => p_init_msg_list,
2638: x_return_status => l_return_status,
2639: x_msg_count => x_msg_count,
2640: x_msg_data => x_msg_data,
2641: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_rec);
2642: IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2643: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2644: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2645: RAISE OKC_API.G_EXCEPTION_ERROR;
2647:
2648: -----------------------------------------
2649: -- Move VIEW record to "Child" records --
2650: -----------------------------------------
2651: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
2652: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
2653: -----------------------------------------------
2654: -- Call the UPDATE_ROW for each child record --
2655: -----------------------------------------------
2648: -----------------------------------------
2649: -- Move VIEW record to "Child" records --
2650: -----------------------------------------
2651: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
2652: migrate(l_def_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
2653: -----------------------------------------------
2654: -- Call the UPDATE_ROW for each child record --
2655: -----------------------------------------------
2656: update_row(
2665: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2666: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2667: RAISE OKC_API.G_EXCEPTION_ERROR;
2668: END IF;
2669: migrate(lx_okc_rule_defs_b_rec, l_def_okc_rule_defs_v_rec);
2670: update_row(
2671: p_init_msg_list,
2672: l_return_status,
2673: x_msg_count,
2679: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2680: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2681: RAISE OKC_API.G_EXCEPTION_ERROR;
2682: END IF;
2683: migrate(lx_okc_rule_defs_tl_rec, l_def_okc_rule_defs_v_rec);
2684: x_okc_rule_defs_v_rec := l_def_okc_rule_defs_v_rec;
2685: x_return_status := l_return_status;
2686: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2687: EXCEPTION
2680: ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2681: RAISE OKC_API.G_EXCEPTION_ERROR;
2682: END IF;
2683: migrate(lx_okc_rule_defs_tl_rec, l_def_okc_rule_defs_v_rec);
2684: x_okc_rule_defs_v_rec := l_def_okc_rule_defs_v_rec;
2685: x_return_status := l_return_status;
2686: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2687: EXCEPTION
2688: WHEN OKC_API.G_EXCEPTION_ERROR THEN
2716: '_PVT'
2717: );
2718: END update_row;
2719: ---------------------------------------------------
2720: -- PL/SQL TBL update_row for:okc_rule_defs_v_tbl --
2721: ---------------------------------------------------
2722: PROCEDURE update_row(
2723: p_api_version IN NUMBER,
2724: p_init_msg_list IN VARCHAR2,
2724: p_init_msg_list IN VARCHAR2,
2725: x_return_status OUT NOCOPY VARCHAR2,
2726: x_msg_count OUT NOCOPY NUMBER,
2727: x_msg_data OUT NOCOPY VARCHAR2,
2728: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
2729: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type,
2730: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
2731:
2732: l_api_version CONSTANT NUMBER := 1;
2725: x_return_status OUT NOCOPY VARCHAR2,
2726: x_msg_count OUT NOCOPY NUMBER,
2727: x_msg_data OUT NOCOPY VARCHAR2,
2728: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
2729: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type,
2730: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
2731:
2732: l_api_version CONSTANT NUMBER := 1;
2733: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
2734: i NUMBER := 0;
2735: BEGIN
2736: OKC_API.init_msg_list(p_init_msg_list);
2737: -- Make sure PL/SQL table has records in it before passing
2738: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2739: i := p_okc_rule_defs_v_tbl.FIRST;
2740: LOOP
2741: DECLARE
2742: l_error_rec OKC_API.ERROR_REC_TYPE;
2735: BEGIN
2736: OKC_API.init_msg_list(p_init_msg_list);
2737: -- Make sure PL/SQL table has records in it before passing
2738: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2739: i := p_okc_rule_defs_v_tbl.FIRST;
2740: LOOP
2741: DECLARE
2742: l_error_rec OKC_API.ERROR_REC_TYPE;
2743: BEGIN
2749: p_init_msg_list => OKC_API.G_FALSE,
2750: x_return_status => l_error_rec.error_type,
2751: x_msg_count => l_error_rec.msg_count,
2752: x_msg_data => l_error_rec.msg_data,
2753: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i),
2754: x_okc_rule_defs_v_rec => x_okc_rule_defs_v_tbl(i));
2755: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
2756: l_error_rec.sqlcode := SQLCODE;
2757: load_error_tbl(l_error_rec, px_error_tbl);
2750: x_return_status => l_error_rec.error_type,
2751: x_msg_count => l_error_rec.msg_count,
2752: x_msg_data => l_error_rec.msg_data,
2753: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i),
2754: x_okc_rule_defs_v_rec => x_okc_rule_defs_v_tbl(i));
2755: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
2756: l_error_rec.sqlcode := SQLCODE;
2757: load_error_tbl(l_error_rec, px_error_tbl);
2758: ELSE
2772: l_error_rec.error_type := 'OTHERS';
2773: l_error_rec.sqlcode := SQLCODE;
2774: load_error_tbl(l_error_rec, px_error_tbl);
2775: END;
2776: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
2777: i := p_okc_rule_defs_v_tbl.NEXT(i);
2778: END LOOP;
2779: END IF;
2780: -- Loop through the error_tbl to find the error with the highest severity
2773: l_error_rec.sqlcode := SQLCODE;
2774: load_error_tbl(l_error_rec, px_error_tbl);
2775: END;
2776: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
2777: i := p_okc_rule_defs_v_tbl.NEXT(i);
2778: END LOOP;
2779: END IF;
2780: -- Loop through the error_tbl to find the error with the highest severity
2781: -- and return it.
2814: );
2815: END update_row;
2816:
2817: ---------------------------------------------------
2818: -- PL/SQL TBL update_row for:OKC_RULE_DEFS_V_TBL --
2819: ---------------------------------------------------
2820: PROCEDURE update_row(
2821: p_api_version IN NUMBER,
2822: p_init_msg_list IN VARCHAR2,
2822: p_init_msg_list IN VARCHAR2,
2823: x_return_status OUT NOCOPY VARCHAR2,
2824: x_msg_count OUT NOCOPY NUMBER,
2825: x_msg_data OUT NOCOPY VARCHAR2,
2826: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
2827: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type) IS
2828:
2829: l_api_version CONSTANT NUMBER := 1;
2830: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2823: x_return_status OUT NOCOPY VARCHAR2,
2824: x_msg_count OUT NOCOPY NUMBER,
2825: x_msg_data OUT NOCOPY VARCHAR2,
2826: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
2827: x_okc_rule_defs_v_tbl OUT NOCOPY okc_rule_defs_v_tbl_type) IS
2828:
2829: l_api_version CONSTANT NUMBER := 1;
2830: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2831: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2832: l_error_tbl OKC_API.ERROR_TBL_TYPE;
2833: BEGIN
2834: OKC_API.init_msg_list(p_init_msg_list);
2835: -- Make sure PL/SQL table has records in it before passing
2836: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
2837: update_row (
2838: p_api_version => p_api_version,
2839: p_init_msg_list => OKC_API.G_FALSE,
2840: x_return_status => x_return_status,
2839: p_init_msg_list => OKC_API.G_FALSE,
2840: x_return_status => x_return_status,
2841: x_msg_count => x_msg_count,
2842: x_msg_data => x_msg_data,
2843: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
2844: x_okc_rule_defs_v_tbl => x_okc_rule_defs_v_tbl,
2845: px_error_tbl => l_error_tbl);
2846: END IF;
2847: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2840: x_return_status => x_return_status,
2841: x_msg_count => x_msg_count,
2842: x_msg_data => x_msg_data,
2843: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
2844: x_okc_rule_defs_v_tbl => x_okc_rule_defs_v_tbl,
2845: px_error_tbl => l_error_tbl);
2846: END IF;
2847: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2848: EXCEPTION
3007: '_PVT'
3008: );
3009: END delete_row;
3010: ------------------------------------
3011: -- delete_row for:OKC_RULE_DEFS_V --
3012: ------------------------------------
3013: PROCEDURE delete_row(
3014: p_api_version IN NUMBER,
3015: p_init_msg_list IN VARCHAR2,
3015: p_init_msg_list IN VARCHAR2,
3016: x_return_status OUT NOCOPY VARCHAR2,
3017: x_msg_count OUT NOCOPY NUMBER,
3018: x_msg_data OUT NOCOPY VARCHAR2,
3019: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type) IS
3020:
3021: l_api_version CONSTANT NUMBER := 1;
3022: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3023: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3020:
3021: l_api_version CONSTANT NUMBER := 1;
3022: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3023: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3024: l_okc_rule_defs_v_rec okc_rule_defs_v_rec_type := p_okc_rule_defs_v_rec;
3025: l_okc_rule_defs_tl_rec okc_rule_defs_tl_rec_type;
3026: l_okc_rule_defs_b_rec okc_rule_defs_b_rec_type;
3027: BEGIN
3028: l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3039: END IF;
3040: -----------------------------------------
3041: -- Move VIEW record to "Child" records --
3042: -----------------------------------------
3043: migrate(l_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
3044: migrate(l_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
3045: -----------------------------------------------
3046: -- Call the DELETE_ROW for each child record --
3047: -----------------------------------------------
3040: -----------------------------------------
3041: -- Move VIEW record to "Child" records --
3042: -----------------------------------------
3043: migrate(l_okc_rule_defs_v_rec, l_okc_rule_defs_tl_rec);
3044: migrate(l_okc_rule_defs_v_rec, l_okc_rule_defs_b_rec);
3045: -----------------------------------------------
3046: -- Call the DELETE_ROW for each child record --
3047: -----------------------------------------------
3048: delete_row(
3103: '_PVT'
3104: );
3105: END delete_row;
3106: -----------------------------------------------
3107: -- PL/SQL TBL delete_row for:OKC_RULE_DEFS_V --
3108: -----------------------------------------------
3109: PROCEDURE delete_row(
3110: p_api_version IN NUMBER,
3111: p_init_msg_list IN VARCHAR2,
3111: p_init_msg_list IN VARCHAR2,
3112: x_return_status OUT NOCOPY VARCHAR2,
3113: x_msg_count OUT NOCOPY NUMBER,
3114: x_msg_data OUT NOCOPY VARCHAR2,
3115: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type,
3116: px_error_tbl IN OUT NOCOPY OKC_API.ERROR_TBL_TYPE) IS
3117:
3118: l_api_version CONSTANT NUMBER := 1;
3119: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
3120: i NUMBER := 0;
3121: BEGIN
3122: OKC_API.init_msg_list(p_init_msg_list);
3123: -- Make sure PL/SQL table has records in it before passing
3124: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
3125: i := p_okc_rule_defs_v_tbl.FIRST;
3126: LOOP
3127: DECLARE
3128: l_error_rec OKC_API.ERROR_REC_TYPE;
3121: BEGIN
3122: OKC_API.init_msg_list(p_init_msg_list);
3123: -- Make sure PL/SQL table has records in it before passing
3124: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
3125: i := p_okc_rule_defs_v_tbl.FIRST;
3126: LOOP
3127: DECLARE
3128: l_error_rec OKC_API.ERROR_REC_TYPE;
3129: BEGIN
3135: p_init_msg_list => OKC_API.G_FALSE,
3136: x_return_status => l_error_rec.error_type,
3137: x_msg_count => l_error_rec.msg_count,
3138: x_msg_data => l_error_rec.msg_data,
3139: p_okc_rule_defs_v_rec => p_okc_rule_defs_v_tbl(i));
3140: IF (l_error_rec.error_type <> OKC_API.G_RET_STS_SUCCESS) THEN
3141: l_error_rec.sqlcode := SQLCODE;
3142: load_error_tbl(l_error_rec, px_error_tbl);
3143: ELSE
3157: l_error_rec.error_type := 'OTHERS';
3158: l_error_rec.sqlcode := SQLCODE;
3159: load_error_tbl(l_error_rec, px_error_tbl);
3160: END;
3161: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
3162: i := p_okc_rule_defs_v_tbl.NEXT(i);
3163: END LOOP;
3164: END IF;
3165: -- Loop through the error_tbl to find the error with the highest severity
3158: l_error_rec.sqlcode := SQLCODE;
3159: load_error_tbl(l_error_rec, px_error_tbl);
3160: END;
3161: EXIT WHEN (i = p_okc_rule_defs_v_tbl.LAST);
3162: i := p_okc_rule_defs_v_tbl.NEXT(i);
3163: END LOOP;
3164: END IF;
3165: -- Loop through the error_tbl to find the error with the highest severity
3166: -- and return it.
3199: );
3200: END delete_row;
3201:
3202: -----------------------------------------------
3203: -- PL/SQL TBL delete_row for:OKC_RULE_DEFS_V --
3204: -----------------------------------------------
3205: PROCEDURE delete_row(
3206: p_api_version IN NUMBER,
3207: p_init_msg_list IN VARCHAR2,
3207: p_init_msg_list IN VARCHAR2,
3208: x_return_status OUT NOCOPY VARCHAR2,
3209: x_msg_count OUT NOCOPY NUMBER,
3210: x_msg_data OUT NOCOPY VARCHAR2,
3211: p_okc_rule_defs_v_tbl IN okc_rule_defs_v_tbl_type) IS
3212:
3213: l_api_version CONSTANT NUMBER := 1;
3214: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
3215: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3216: l_error_tbl OKC_API.ERROR_TBL_TYPE;
3217: BEGIN
3218: OKC_API.init_msg_list(p_init_msg_list);
3219: -- Make sure PL/SQL table has records in it before passing
3220: IF (p_okc_rule_defs_v_tbl.COUNT > 0) THEN
3221: delete_row (
3222: p_api_version => p_api_version,
3223: p_init_msg_list => OKC_API.G_FALSE,
3224: x_return_status => x_return_status,
3223: p_init_msg_list => OKC_API.G_FALSE,
3224: x_return_status => x_return_status,
3225: x_msg_count => x_msg_count,
3226: x_msg_data => x_msg_data,
3227: p_okc_rule_defs_v_tbl => p_okc_rule_defs_v_tbl,
3228: px_error_tbl => l_error_tbl);
3229: END IF;
3230: OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3231: EXCEPTION
3313: end if;
3314: end get_dff_name;
3315:
3316: FUNCTION Validate_dff (
3317: p_okc_rule_defs_v_rec IN okc_rule_defs_v_rec_type
3318: ) RETURN VARCHAR2 IS
3319:
3320: cursor c1(rule_code IN varchar2,
3321: appl_id IN number,
3338:
3339: BEGIN
3340:
3341: open c1(
3342: p_okc_rule_defs_v_rec.rule_code,
3343: p_okc_rule_defs_v_rec.application_id,
3344: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
3345: fetch c1 into enabled_flag;
3346: close c1;
3339: BEGIN
3340:
3341: open c1(
3342: p_okc_rule_defs_v_rec.rule_code,
3343: p_okc_rule_defs_v_rec.application_id,
3344: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
3345: fetch c1 into enabled_flag;
3346: close c1;
3347: if enabled_flag <> 'Y' then l_return_status := OKC_API.G_RET_STS_ERROR;
3340:
3341: open c1(
3342: p_okc_rule_defs_v_rec.rule_code,
3343: p_okc_rule_defs_v_rec.application_id,
3344: p_okc_rule_defs_v_rec.descriptive_flexfield_name);
3345: fetch c1 into enabled_flag;
3346: close c1;
3347: if enabled_flag <> 'Y' then l_return_status := OKC_API.G_RET_STS_ERROR;
3348: end if;