3: ---------------------------------------------------------------------------
4: -- PROCEDURE load_error_tbl
5: ---------------------------------------------------------------------------
6: PROCEDURE load_error_tbl (
7: px_error_rec IN OUT NOCOPY PA_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
9:
10: j INTEGER := NVL(px_error_tbl.LAST, 0) + 1;
11: last_msg_idx INTEGER := FND_MSG_PUB.COUNT_MSG;
4: -- PROCEDURE load_error_tbl
5: ---------------------------------------------------------------------------
6: PROCEDURE load_error_tbl (
7: px_error_rec IN OUT NOCOPY PA_API.ERROR_REC_TYPE,
8: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
9:
10: j INTEGER := NVL(px_error_tbl.LAST, 0) + 1;
11: last_msg_idx INTEGER := FND_MSG_PUB.COUNT_MSG;
12: l_msg_idx INTEGER := FND_MSG_PUB.G_NEXT;
36: ---------------------------------------------------------------------------
37: -- FUNCTION find_highest_exception
38: ---------------------------------------------------------------------------
39: -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40: -- in a PA_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN PA_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
38: ---------------------------------------------------------------------------
39: -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40: -- in a PA_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN PA_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
45: i INTEGER := 1;
46: BEGIN
40: -- in a PA_API.ERROR_TBL_TYPE, and returns it.
41: FUNCTION find_highest_exception(
42: p_error_tbl IN PA_API.ERROR_TBL_TYPE
43: ) RETURN VARCHAR2 IS
44: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
45: i INTEGER := 1;
46: BEGIN
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
46: BEGIN
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
49: LOOP
50: IF (p_error_tbl(i).error_type <> PA_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> PA_API.G_RET_STS_UNEXP_ERROR) THEN
52: l_return_status := p_error_tbl(i).error_type;
53: END IF;
54: END IF;
47: IF (p_error_tbl.COUNT > 0) THEN
48: i := p_error_tbl.FIRST;
49: LOOP
50: IF (p_error_tbl(i).error_type <> PA_API.G_RET_STS_SUCCESS) THEN
51: IF (l_return_status <> PA_API.G_RET_STS_UNEXP_ERROR) THEN
52: l_return_status := p_error_tbl(i).error_type;
53: END IF;
54: END IF;
55: EXIT WHEN (i = p_error_tbl.LAST);
166: ) RETURN PaCiDirectCostDetailsRecType IS
167: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType;
168: l_row_notfound BOOLEAN := TRUE;
169: BEGIN
170: x_return_status := PA_API.G_RET_STS_SUCCESS;
171: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_row_notfound);
172: IF (l_row_notfound) THEN
173: PA_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'DC_LINE_ID');
174: x_return_status := PA_API.G_RET_STS_ERROR;
169: BEGIN
170: x_return_status := PA_API.G_RET_STS_SUCCESS;
171: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_row_notfound);
172: IF (l_row_notfound) THEN
173: PA_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'DC_LINE_ID');
174: x_return_status := PA_API.G_RET_STS_ERROR;
175: END IF;
176: RETURN(l_pa_ci_direct_cost8);
177: END get_rec;
170: x_return_status := PA_API.G_RET_STS_SUCCESS;
171: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_row_notfound);
172: IF (l_row_notfound) THEN
173: PA_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'DC_LINE_ID');
174: x_return_status := PA_API.G_RET_STS_ERROR;
175: END IF;
176: RETURN(l_pa_ci_direct_cost8);
177: END get_rec;
178: -----------------------------------------------------------
192: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType
193: ) RETURN PaCiDirectCostDetailsRecType IS
194: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
195: BEGIN
196: IF (l_pa_ci_direct_cost8.dc_line_id = PA_API.G_MISS_NUM ) THEN
197: l_pa_ci_direct_cost8.dc_line_id := NULL;
198: END IF;
199: IF (l_pa_ci_direct_cost8.ci_id = PA_API.G_MISS_NUM ) THEN
200: l_pa_ci_direct_cost8.ci_id := NULL;
195: BEGIN
196: IF (l_pa_ci_direct_cost8.dc_line_id = PA_API.G_MISS_NUM ) THEN
197: l_pa_ci_direct_cost8.dc_line_id := NULL;
198: END IF;
199: IF (l_pa_ci_direct_cost8.ci_id = PA_API.G_MISS_NUM ) THEN
200: l_pa_ci_direct_cost8.ci_id := NULL;
201: END IF;
202: IF (l_pa_ci_direct_cost8.project_id = PA_API.G_MISS_NUM ) THEN
203: l_pa_ci_direct_cost8.project_id := NULL;
198: END IF;
199: IF (l_pa_ci_direct_cost8.ci_id = PA_API.G_MISS_NUM ) THEN
200: l_pa_ci_direct_cost8.ci_id := NULL;
201: END IF;
202: IF (l_pa_ci_direct_cost8.project_id = PA_API.G_MISS_NUM ) THEN
203: l_pa_ci_direct_cost8.project_id := NULL;
204: END IF;
205: IF (l_pa_ci_direct_cost8.task_id = PA_API.G_MISS_NUM ) THEN
206: l_pa_ci_direct_cost8.task_id := NULL;
201: END IF;
202: IF (l_pa_ci_direct_cost8.project_id = PA_API.G_MISS_NUM ) THEN
203: l_pa_ci_direct_cost8.project_id := NULL;
204: END IF;
205: IF (l_pa_ci_direct_cost8.task_id = PA_API.G_MISS_NUM ) THEN
206: l_pa_ci_direct_cost8.task_id := NULL;
207: END IF;
208: IF (l_pa_ci_direct_cost8.expenditure_type = PA_API.G_MISS_CHAR ) THEN
209: l_pa_ci_direct_cost8.expenditure_type := NULL;
204: END IF;
205: IF (l_pa_ci_direct_cost8.task_id = PA_API.G_MISS_NUM ) THEN
206: l_pa_ci_direct_cost8.task_id := NULL;
207: END IF;
208: IF (l_pa_ci_direct_cost8.expenditure_type = PA_API.G_MISS_CHAR ) THEN
209: l_pa_ci_direct_cost8.expenditure_type := NULL;
210: END IF;
211: IF (l_pa_ci_direct_cost8.resource_list_member_id = PA_API.G_MISS_NUM ) THEN
212: l_pa_ci_direct_cost8.resource_list_member_id := NULL;
207: END IF;
208: IF (l_pa_ci_direct_cost8.expenditure_type = PA_API.G_MISS_CHAR ) THEN
209: l_pa_ci_direct_cost8.expenditure_type := NULL;
210: END IF;
211: IF (l_pa_ci_direct_cost8.resource_list_member_id = PA_API.G_MISS_NUM ) THEN
212: l_pa_ci_direct_cost8.resource_list_member_id := NULL;
213: END IF;
214: IF (l_pa_ci_direct_cost8.unit_of_measure = PA_API.G_MISS_CHAR ) THEN
215: l_pa_ci_direct_cost8.unit_of_measure := NULL;
210: END IF;
211: IF (l_pa_ci_direct_cost8.resource_list_member_id = PA_API.G_MISS_NUM ) THEN
212: l_pa_ci_direct_cost8.resource_list_member_id := NULL;
213: END IF;
214: IF (l_pa_ci_direct_cost8.unit_of_measure = PA_API.G_MISS_CHAR ) THEN
215: l_pa_ci_direct_cost8.unit_of_measure := NULL;
216: END IF;
217: IF (l_pa_ci_direct_cost8.currency_code = PA_API.G_MISS_CHAR ) THEN
218: l_pa_ci_direct_cost8.currency_code := NULL;
213: END IF;
214: IF (l_pa_ci_direct_cost8.unit_of_measure = PA_API.G_MISS_CHAR ) THEN
215: l_pa_ci_direct_cost8.unit_of_measure := NULL;
216: END IF;
217: IF (l_pa_ci_direct_cost8.currency_code = PA_API.G_MISS_CHAR ) THEN
218: l_pa_ci_direct_cost8.currency_code := NULL;
219: END IF;
220: IF (l_pa_ci_direct_cost8.quantity = PA_API.G_MISS_NUM ) THEN
221: l_pa_ci_direct_cost8.quantity := NULL;
216: END IF;
217: IF (l_pa_ci_direct_cost8.currency_code = PA_API.G_MISS_CHAR ) THEN
218: l_pa_ci_direct_cost8.currency_code := NULL;
219: END IF;
220: IF (l_pa_ci_direct_cost8.quantity = PA_API.G_MISS_NUM ) THEN
221: l_pa_ci_direct_cost8.quantity := NULL;
222: END IF;
223: IF (l_pa_ci_direct_cost8.planning_resource_rate = PA_API.G_MISS_NUM ) THEN
224: l_pa_ci_direct_cost8.planning_resource_rate := NULL;
219: END IF;
220: IF (l_pa_ci_direct_cost8.quantity = PA_API.G_MISS_NUM ) THEN
221: l_pa_ci_direct_cost8.quantity := NULL;
222: END IF;
223: IF (l_pa_ci_direct_cost8.planning_resource_rate = PA_API.G_MISS_NUM ) THEN
224: l_pa_ci_direct_cost8.planning_resource_rate := NULL;
225: END IF;
226: IF (l_pa_ci_direct_cost8.raw_cost = PA_API.G_MISS_NUM ) THEN
227: l_pa_ci_direct_cost8.raw_cost := NULL;
222: END IF;
223: IF (l_pa_ci_direct_cost8.planning_resource_rate = PA_API.G_MISS_NUM ) THEN
224: l_pa_ci_direct_cost8.planning_resource_rate := NULL;
225: END IF;
226: IF (l_pa_ci_direct_cost8.raw_cost = PA_API.G_MISS_NUM ) THEN
227: l_pa_ci_direct_cost8.raw_cost := NULL;
228: END IF;
229: IF (l_pa_ci_direct_cost8.burdened_cost = PA_API.G_MISS_NUM ) THEN
230: l_pa_ci_direct_cost8.burdened_cost := NULL;
225: END IF;
226: IF (l_pa_ci_direct_cost8.raw_cost = PA_API.G_MISS_NUM ) THEN
227: l_pa_ci_direct_cost8.raw_cost := NULL;
228: END IF;
229: IF (l_pa_ci_direct_cost8.burdened_cost = PA_API.G_MISS_NUM ) THEN
230: l_pa_ci_direct_cost8.burdened_cost := NULL;
231: END IF;
232: IF (l_pa_ci_direct_cost8.raw_cost_rate = PA_API.G_MISS_NUM ) THEN
233: l_pa_ci_direct_cost8.raw_cost_rate := NULL;
228: END IF;
229: IF (l_pa_ci_direct_cost8.burdened_cost = PA_API.G_MISS_NUM ) THEN
230: l_pa_ci_direct_cost8.burdened_cost := NULL;
231: END IF;
232: IF (l_pa_ci_direct_cost8.raw_cost_rate = PA_API.G_MISS_NUM ) THEN
233: l_pa_ci_direct_cost8.raw_cost_rate := NULL;
234: END IF;
235: IF (l_pa_ci_direct_cost8.burden_cost_rate = PA_API.G_MISS_NUM ) THEN
236: l_pa_ci_direct_cost8.burden_cost_rate := NULL;
231: END IF;
232: IF (l_pa_ci_direct_cost8.raw_cost_rate = PA_API.G_MISS_NUM ) THEN
233: l_pa_ci_direct_cost8.raw_cost_rate := NULL;
234: END IF;
235: IF (l_pa_ci_direct_cost8.burden_cost_rate = PA_API.G_MISS_NUM ) THEN
236: l_pa_ci_direct_cost8.burden_cost_rate := NULL;
237: END IF;
238: IF (l_pa_ci_direct_cost8.resource_assignment_id = PA_API.G_MISS_NUM ) THEN
239: l_pa_ci_direct_cost8.resource_assignment_id := NULL;
234: END IF;
235: IF (l_pa_ci_direct_cost8.burden_cost_rate = PA_API.G_MISS_NUM ) THEN
236: l_pa_ci_direct_cost8.burden_cost_rate := NULL;
237: END IF;
238: IF (l_pa_ci_direct_cost8.resource_assignment_id = PA_API.G_MISS_NUM ) THEN
239: l_pa_ci_direct_cost8.resource_assignment_id := NULL;
240: END IF;
241: IF (l_pa_ci_direct_cost8.effective_from = PA_API.G_MISS_DATE ) THEN
242: l_pa_ci_direct_cost8.effective_from := NULL;
237: END IF;
238: IF (l_pa_ci_direct_cost8.resource_assignment_id = PA_API.G_MISS_NUM ) THEN
239: l_pa_ci_direct_cost8.resource_assignment_id := NULL;
240: END IF;
241: IF (l_pa_ci_direct_cost8.effective_from = PA_API.G_MISS_DATE ) THEN
242: l_pa_ci_direct_cost8.effective_from := NULL;
243: END IF;
244: IF (l_pa_ci_direct_cost8.effective_to = PA_API.G_MISS_DATE ) THEN
245: l_pa_ci_direct_cost8.effective_to := NULL;
240: END IF;
241: IF (l_pa_ci_direct_cost8.effective_from = PA_API.G_MISS_DATE ) THEN
242: l_pa_ci_direct_cost8.effective_from := NULL;
243: END IF;
244: IF (l_pa_ci_direct_cost8.effective_to = PA_API.G_MISS_DATE ) THEN
245: l_pa_ci_direct_cost8.effective_to := NULL;
246: END IF;
247: IF (l_pa_ci_direct_cost8.change_reason_code = PA_API.G_MISS_CHAR ) THEN
248: l_pa_ci_direct_cost8.change_reason_code := NULL;
243: END IF;
244: IF (l_pa_ci_direct_cost8.effective_to = PA_API.G_MISS_DATE ) THEN
245: l_pa_ci_direct_cost8.effective_to := NULL;
246: END IF;
247: IF (l_pa_ci_direct_cost8.change_reason_code = PA_API.G_MISS_CHAR ) THEN
248: l_pa_ci_direct_cost8.change_reason_code := NULL;
249: END IF;
250: IF (l_pa_ci_direct_cost8.change_description = PA_API.G_MISS_CHAR ) THEN
251: l_pa_ci_direct_cost8.change_description := NULL;
246: END IF;
247: IF (l_pa_ci_direct_cost8.change_reason_code = PA_API.G_MISS_CHAR ) THEN
248: l_pa_ci_direct_cost8.change_reason_code := NULL;
249: END IF;
250: IF (l_pa_ci_direct_cost8.change_description = PA_API.G_MISS_CHAR ) THEN
251: l_pa_ci_direct_cost8.change_description := NULL;
252: END IF;
253: IF (l_pa_ci_direct_cost8.created_by = PA_API.G_MISS_NUM ) THEN
254: l_pa_ci_direct_cost8.created_by := NULL;
249: END IF;
250: IF (l_pa_ci_direct_cost8.change_description = PA_API.G_MISS_CHAR ) THEN
251: l_pa_ci_direct_cost8.change_description := NULL;
252: END IF;
253: IF (l_pa_ci_direct_cost8.created_by = PA_API.G_MISS_NUM ) THEN
254: l_pa_ci_direct_cost8.created_by := NULL;
255: END IF;
256: IF (l_pa_ci_direct_cost8.creation_date = PA_API.G_MISS_DATE ) THEN
257: l_pa_ci_direct_cost8.creation_date := NULL;
252: END IF;
253: IF (l_pa_ci_direct_cost8.created_by = PA_API.G_MISS_NUM ) THEN
254: l_pa_ci_direct_cost8.created_by := NULL;
255: END IF;
256: IF (l_pa_ci_direct_cost8.creation_date = PA_API.G_MISS_DATE ) THEN
257: l_pa_ci_direct_cost8.creation_date := NULL;
258: END IF;
259: IF (l_pa_ci_direct_cost8.last_update_by = PA_API.G_MISS_NUM ) THEN
260: l_pa_ci_direct_cost8.last_update_by := NULL;
255: END IF;
256: IF (l_pa_ci_direct_cost8.creation_date = PA_API.G_MISS_DATE ) THEN
257: l_pa_ci_direct_cost8.creation_date := NULL;
258: END IF;
259: IF (l_pa_ci_direct_cost8.last_update_by = PA_API.G_MISS_NUM ) THEN
260: l_pa_ci_direct_cost8.last_update_by := NULL;
261: END IF;
262: IF (l_pa_ci_direct_cost8.last_update_date = PA_API.G_MISS_DATE ) THEN
263: l_pa_ci_direct_cost8.last_update_date := NULL;
258: END IF;
259: IF (l_pa_ci_direct_cost8.last_update_by = PA_API.G_MISS_NUM ) THEN
260: l_pa_ci_direct_cost8.last_update_by := NULL;
261: END IF;
262: IF (l_pa_ci_direct_cost8.last_update_date = PA_API.G_MISS_DATE ) THEN
263: l_pa_ci_direct_cost8.last_update_date := NULL;
264: END IF;
265: IF (l_pa_ci_direct_cost8.last_update_login = PA_API.G_MISS_NUM ) THEN
266: l_pa_ci_direct_cost8.last_update_login := NULL;
261: END IF;
262: IF (l_pa_ci_direct_cost8.last_update_date = PA_API.G_MISS_DATE ) THEN
263: l_pa_ci_direct_cost8.last_update_date := NULL;
264: END IF;
265: IF (l_pa_ci_direct_cost8.last_update_login = PA_API.G_MISS_NUM ) THEN
266: l_pa_ci_direct_cost8.last_update_login := NULL;
267: END IF;
268: RETURN(l_pa_ci_direct_cost8);
269: END null_out_defaults;
273: PROCEDURE validate_dc_line_id(
274: x_return_status OUT NOCOPY VARCHAR2,
275: p_dc_line_id IN NUMBER) IS
276: BEGIN
277: x_return_status := PA_API.G_RET_STS_SUCCESS;
278: IF (p_dc_line_id = PA_API.G_MISS_NUM OR
279: p_dc_line_id IS NULL)
280: THEN
281: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'dc_line_id');
274: x_return_status OUT NOCOPY VARCHAR2,
275: p_dc_line_id IN NUMBER) IS
276: BEGIN
277: x_return_status := PA_API.G_RET_STS_SUCCESS;
278: IF (p_dc_line_id = PA_API.G_MISS_NUM OR
279: p_dc_line_id IS NULL)
280: THEN
281: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'dc_line_id');
282: x_return_status := PA_API.G_RET_STS_ERROR;
277: x_return_status := PA_API.G_RET_STS_SUCCESS;
278: IF (p_dc_line_id = PA_API.G_MISS_NUM OR
279: p_dc_line_id IS NULL)
280: THEN
281: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'dc_line_id');
282: x_return_status := PA_API.G_RET_STS_ERROR;
283: RAISE G_EXCEPTION_HALT_VALIDATION;
284: END IF;
285: EXCEPTION
278: IF (p_dc_line_id = PA_API.G_MISS_NUM OR
279: p_dc_line_id IS NULL)
280: THEN
281: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'dc_line_id');
282: x_return_status := PA_API.G_RET_STS_ERROR;
283: RAISE G_EXCEPTION_HALT_VALIDATION;
284: END IF;
285: EXCEPTION
286: WHEN G_EXCEPTION_HALT_VALIDATION THEN
285: EXCEPTION
286: WHEN G_EXCEPTION_HALT_VALIDATION THEN
287: null;
288: WHEN OTHERS THEN
289: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
290: ,p_msg_name => G_UNEXPECTED_ERROR
291: ,p_token1 => G_SQLCODE_TOKEN
292: ,p_token1_value => SQLCODE
293: ,p_token2 => G_SQLERRM_TOKEN
291: ,p_token1 => G_SQLCODE_TOKEN
292: ,p_token1_value => SQLCODE
293: ,p_token2 => G_SQLERRM_TOKEN
294: ,p_token2_value => SQLERRM);
295: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
296: END validate_dc_line_id;
297: ------------------------------------
298: -- Validate_Attributes for: CI_ID --
299: ------------------------------------
300: PROCEDURE validate_ci_id(
301: x_return_status OUT NOCOPY VARCHAR2,
302: p_ci_id IN NUMBER) IS
303: BEGIN
304: x_return_status := PA_API.G_RET_STS_SUCCESS;
305: IF (p_ci_id = PA_API.G_MISS_NUM OR
306: p_ci_id IS NULL)
307: THEN
308: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'ci_id');
301: x_return_status OUT NOCOPY VARCHAR2,
302: p_ci_id IN NUMBER) IS
303: BEGIN
304: x_return_status := PA_API.G_RET_STS_SUCCESS;
305: IF (p_ci_id = PA_API.G_MISS_NUM OR
306: p_ci_id IS NULL)
307: THEN
308: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'ci_id');
309: x_return_status := PA_API.G_RET_STS_ERROR;
304: x_return_status := PA_API.G_RET_STS_SUCCESS;
305: IF (p_ci_id = PA_API.G_MISS_NUM OR
306: p_ci_id IS NULL)
307: THEN
308: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'ci_id');
309: x_return_status := PA_API.G_RET_STS_ERROR;
310: RAISE G_EXCEPTION_HALT_VALIDATION;
311: END IF;
312: EXCEPTION
305: IF (p_ci_id = PA_API.G_MISS_NUM OR
306: p_ci_id IS NULL)
307: THEN
308: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'ci_id');
309: x_return_status := PA_API.G_RET_STS_ERROR;
310: RAISE G_EXCEPTION_HALT_VALIDATION;
311: END IF;
312: EXCEPTION
313: WHEN G_EXCEPTION_HALT_VALIDATION THEN
312: EXCEPTION
313: WHEN G_EXCEPTION_HALT_VALIDATION THEN
314: null;
315: WHEN OTHERS THEN
316: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
317: ,p_msg_name => G_UNEXPECTED_ERROR
318: ,p_token1 => G_SQLCODE_TOKEN
319: ,p_token1_value => SQLCODE
320: ,p_token2 => G_SQLERRM_TOKEN
318: ,p_token1 => G_SQLCODE_TOKEN
319: ,p_token1_value => SQLCODE
320: ,p_token2 => G_SQLERRM_TOKEN
321: ,p_token2_value => SQLERRM);
322: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
323: END validate_ci_id;
324: -----------------------------------------
325: -- Validate_Attributes for: PROJECT_ID --
326: -----------------------------------------
327: PROCEDURE validate_project_id(
328: x_return_status OUT NOCOPY VARCHAR2,
329: p_project_id IN NUMBER) IS
330: BEGIN
331: x_return_status := PA_API.G_RET_STS_SUCCESS;
332: IF (p_project_id = PA_API.G_MISS_NUM OR
333: p_project_id IS NULL)
334: THEN
335: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'project_id');
328: x_return_status OUT NOCOPY VARCHAR2,
329: p_project_id IN NUMBER) IS
330: BEGIN
331: x_return_status := PA_API.G_RET_STS_SUCCESS;
332: IF (p_project_id = PA_API.G_MISS_NUM OR
333: p_project_id IS NULL)
334: THEN
335: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'project_id');
336: x_return_status := PA_API.G_RET_STS_ERROR;
331: x_return_status := PA_API.G_RET_STS_SUCCESS;
332: IF (p_project_id = PA_API.G_MISS_NUM OR
333: p_project_id IS NULL)
334: THEN
335: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'project_id');
336: x_return_status := PA_API.G_RET_STS_ERROR;
337: RAISE G_EXCEPTION_HALT_VALIDATION;
338: END IF;
339: EXCEPTION
332: IF (p_project_id = PA_API.G_MISS_NUM OR
333: p_project_id IS NULL)
334: THEN
335: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'project_id');
336: x_return_status := PA_API.G_RET_STS_ERROR;
337: RAISE G_EXCEPTION_HALT_VALIDATION;
338: END IF;
339: EXCEPTION
340: WHEN G_EXCEPTION_HALT_VALIDATION THEN
339: EXCEPTION
340: WHEN G_EXCEPTION_HALT_VALIDATION THEN
341: null;
342: WHEN OTHERS THEN
343: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
344: ,p_msg_name => G_UNEXPECTED_ERROR
345: ,p_token1 => G_SQLCODE_TOKEN
346: ,p_token1_value => SQLCODE
347: ,p_token2 => G_SQLERRM_TOKEN
345: ,p_token1 => G_SQLCODE_TOKEN
346: ,p_token1_value => SQLCODE
347: ,p_token2 => G_SQLERRM_TOKEN
348: ,p_token2_value => SQLERRM);
349: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
350: END validate_project_id;
351: --------------------------------------
352: -- Validate_Attributes for: TASK_ID --
353: --------------------------------------
354: PROCEDURE validate_task_id(
355: x_return_status OUT NOCOPY VARCHAR2,
356: p_task_id IN NUMBER) IS
357: BEGIN
358: x_return_status := PA_API.G_RET_STS_SUCCESS;
359: IF (p_task_id = PA_API.G_MISS_NUM OR
360: p_task_id IS NULL)
361: THEN
362: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'task_id');
355: x_return_status OUT NOCOPY VARCHAR2,
356: p_task_id IN NUMBER) IS
357: BEGIN
358: x_return_status := PA_API.G_RET_STS_SUCCESS;
359: IF (p_task_id = PA_API.G_MISS_NUM OR
360: p_task_id IS NULL)
361: THEN
362: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'task_id');
363: x_return_status := PA_API.G_RET_STS_ERROR;
358: x_return_status := PA_API.G_RET_STS_SUCCESS;
359: IF (p_task_id = PA_API.G_MISS_NUM OR
360: p_task_id IS NULL)
361: THEN
362: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'task_id');
363: x_return_status := PA_API.G_RET_STS_ERROR;
364: RAISE G_EXCEPTION_HALT_VALIDATION;
365: END IF;
366: EXCEPTION
359: IF (p_task_id = PA_API.G_MISS_NUM OR
360: p_task_id IS NULL)
361: THEN
362: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'task_id');
363: x_return_status := PA_API.G_RET_STS_ERROR;
364: RAISE G_EXCEPTION_HALT_VALIDATION;
365: END IF;
366: EXCEPTION
367: WHEN G_EXCEPTION_HALT_VALIDATION THEN
366: EXCEPTION
367: WHEN G_EXCEPTION_HALT_VALIDATION THEN
368: null;
369: WHEN OTHERS THEN
370: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
371: ,p_msg_name => G_UNEXPECTED_ERROR
372: ,p_token1 => G_SQLCODE_TOKEN
373: ,p_token1_value => SQLCODE
374: ,p_token2 => G_SQLERRM_TOKEN
372: ,p_token1 => G_SQLCODE_TOKEN
373: ,p_token1_value => SQLCODE
374: ,p_token2 => G_SQLERRM_TOKEN
375: ,p_token2_value => SQLERRM);
376: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
377: END validate_task_id;
378: -----------------------------------------------
379: -- Validate_Attributes for: EXPENDITURE_TYPE --
380: -----------------------------------------------
381: PROCEDURE validate_expenditure_type(
382: x_return_status OUT NOCOPY VARCHAR2,
383: p_expenditure_type IN VARCHAR2) IS
384: BEGIN
385: x_return_status := PA_API.G_RET_STS_SUCCESS;
386: IF (p_expenditure_type = PA_API.G_MISS_CHAR OR
387: p_expenditure_type IS NULL)
388: THEN
389: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'expenditure_type');
382: x_return_status OUT NOCOPY VARCHAR2,
383: p_expenditure_type IN VARCHAR2) IS
384: BEGIN
385: x_return_status := PA_API.G_RET_STS_SUCCESS;
386: IF (p_expenditure_type = PA_API.G_MISS_CHAR OR
387: p_expenditure_type IS NULL)
388: THEN
389: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'expenditure_type');
390: x_return_status := PA_API.G_RET_STS_ERROR;
385: x_return_status := PA_API.G_RET_STS_SUCCESS;
386: IF (p_expenditure_type = PA_API.G_MISS_CHAR OR
387: p_expenditure_type IS NULL)
388: THEN
389: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'expenditure_type');
390: x_return_status := PA_API.G_RET_STS_ERROR;
391: RAISE G_EXCEPTION_HALT_VALIDATION;
392: END IF;
393: EXCEPTION
386: IF (p_expenditure_type = PA_API.G_MISS_CHAR OR
387: p_expenditure_type IS NULL)
388: THEN
389: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'expenditure_type');
390: x_return_status := PA_API.G_RET_STS_ERROR;
391: RAISE G_EXCEPTION_HALT_VALIDATION;
392: END IF;
393: EXCEPTION
394: WHEN G_EXCEPTION_HALT_VALIDATION THEN
393: EXCEPTION
394: WHEN G_EXCEPTION_HALT_VALIDATION THEN
395: null;
396: WHEN OTHERS THEN
397: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
398: ,p_msg_name => G_UNEXPECTED_ERROR
399: ,p_token1 => G_SQLCODE_TOKEN
400: ,p_token1_value => SQLCODE
401: ,p_token2 => G_SQLERRM_TOKEN
399: ,p_token1 => G_SQLCODE_TOKEN
400: ,p_token1_value => SQLCODE
401: ,p_token2 => G_SQLERRM_TOKEN
402: ,p_token2_value => SQLERRM);
403: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
404: END validate_expenditure_type;
405: ------------------------------------------------------
406: -- Validate_Attributes for: RESOURCE_LIST_MEMBER_ID --
407: ------------------------------------------------------
408: PROCEDURE validate_resource_l94(
409: x_return_status OUT NOCOPY VARCHAR2,
410: p_resource_list_member_id IN NUMBER) IS
411: BEGIN
412: x_return_status := PA_API.G_RET_STS_SUCCESS;
413: IF (p_resource_list_member_id = PA_API.G_MISS_NUM OR
414: p_resource_list_member_id IS NULL)
415: THEN
416: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'resource_list_member_id');
409: x_return_status OUT NOCOPY VARCHAR2,
410: p_resource_list_member_id IN NUMBER) IS
411: BEGIN
412: x_return_status := PA_API.G_RET_STS_SUCCESS;
413: IF (p_resource_list_member_id = PA_API.G_MISS_NUM OR
414: p_resource_list_member_id IS NULL)
415: THEN
416: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'resource_list_member_id');
417: x_return_status := PA_API.G_RET_STS_ERROR;
412: x_return_status := PA_API.G_RET_STS_SUCCESS;
413: IF (p_resource_list_member_id = PA_API.G_MISS_NUM OR
414: p_resource_list_member_id IS NULL)
415: THEN
416: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'resource_list_member_id');
417: x_return_status := PA_API.G_RET_STS_ERROR;
418: RAISE G_EXCEPTION_HALT_VALIDATION;
419: END IF;
420: EXCEPTION
413: IF (p_resource_list_member_id = PA_API.G_MISS_NUM OR
414: p_resource_list_member_id IS NULL)
415: THEN
416: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'resource_list_member_id');
417: x_return_status := PA_API.G_RET_STS_ERROR;
418: RAISE G_EXCEPTION_HALT_VALIDATION;
419: END IF;
420: EXCEPTION
421: WHEN G_EXCEPTION_HALT_VALIDATION THEN
420: EXCEPTION
421: WHEN G_EXCEPTION_HALT_VALIDATION THEN
422: null;
423: WHEN OTHERS THEN
424: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
425: ,p_msg_name => G_UNEXPECTED_ERROR
426: ,p_token1 => G_SQLCODE_TOKEN
427: ,p_token1_value => SQLCODE
428: ,p_token2 => G_SQLERRM_TOKEN
426: ,p_token1 => G_SQLCODE_TOKEN
427: ,p_token1_value => SQLCODE
428: ,p_token2 => G_SQLERRM_TOKEN
429: ,p_token2_value => SQLERRM);
430: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
431: END validate_resource_l94;
432: ---------------------------------------------
433: -- Validate_Attributes for: LAST_UPDATE_BY --
434: ---------------------------------------------
435: PROCEDURE validate_last_update_by(
436: x_return_status OUT NOCOPY VARCHAR2,
437: p_last_update_by IN NUMBER) IS
438: BEGIN
439: x_return_status := PA_API.G_RET_STS_SUCCESS;
440: IF (p_last_update_by = PA_API.G_MISS_NUM OR
441: p_last_update_by IS NULL)
442: THEN
443: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'last_update_by');
436: x_return_status OUT NOCOPY VARCHAR2,
437: p_last_update_by IN NUMBER) IS
438: BEGIN
439: x_return_status := PA_API.G_RET_STS_SUCCESS;
440: IF (p_last_update_by = PA_API.G_MISS_NUM OR
441: p_last_update_by IS NULL)
442: THEN
443: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'last_update_by');
444: x_return_status := PA_API.G_RET_STS_ERROR;
439: x_return_status := PA_API.G_RET_STS_SUCCESS;
440: IF (p_last_update_by = PA_API.G_MISS_NUM OR
441: p_last_update_by IS NULL)
442: THEN
443: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'last_update_by');
444: x_return_status := PA_API.G_RET_STS_ERROR;
445: RAISE G_EXCEPTION_HALT_VALIDATION;
446: END IF;
447: EXCEPTION
440: IF (p_last_update_by = PA_API.G_MISS_NUM OR
441: p_last_update_by IS NULL)
442: THEN
443: PA_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'last_update_by');
444: x_return_status := PA_API.G_RET_STS_ERROR;
445: RAISE G_EXCEPTION_HALT_VALIDATION;
446: END IF;
447: EXCEPTION
448: WHEN G_EXCEPTION_HALT_VALIDATION THEN
447: EXCEPTION
448: WHEN G_EXCEPTION_HALT_VALIDATION THEN
449: null;
450: WHEN OTHERS THEN
451: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
452: ,p_msg_name => G_UNEXPECTED_ERROR
453: ,p_token1 => G_SQLCODE_TOKEN
454: ,p_token1_value => SQLCODE
455: ,p_token2 => G_SQLERRM_TOKEN
453: ,p_token1 => G_SQLCODE_TOKEN
454: ,p_token1_value => SQLCODE
455: ,p_token2 => G_SQLERRM_TOKEN
456: ,p_token2_value => SQLERRM);
457: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
458: END validate_last_update_by;
459: ---------------------------------------------------------------------------
460: -- FUNCTION Validate_Attributes
461: ---------------------------------------------------------------------------
464: -------------------------------------------------------
465: FUNCTION Validate_Attributes (
466: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType
467: ) RETURN VARCHAR2 IS
468: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
469: x_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
470: BEGIN
471: -----------------------------
472: -- Column Level Validation --
465: FUNCTION Validate_Attributes (
466: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType
467: ) RETURN VARCHAR2 IS
468: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
469: x_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
470: BEGIN
471: -----------------------------
472: -- Column Level Validation --
473: -----------------------------
474: -- ***
475: -- dc_line_id
476: -- ***
477: validate_dc_line_id(x_return_status, p_pa_ci_direct_cost1.dc_line_id);
478: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
479: l_return_status := x_return_status;
480: RAISE G_EXCEPTION_HALT_VALIDATION;
481: END IF;
482:
483: -- ***
484: -- ci_id
485: -- ***
486: validate_ci_id(x_return_status, p_pa_ci_direct_cost1.ci_id);
487: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
488: l_return_status := x_return_status;
489: RAISE G_EXCEPTION_HALT_VALIDATION;
490: END IF;
491:
492: -- ***
493: -- project_id
494: -- ***
495: validate_project_id(x_return_status, p_pa_ci_direct_cost1.project_id);
496: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
497: l_return_status := x_return_status;
498: RAISE G_EXCEPTION_HALT_VALIDATION;
499: END IF;
500:
501: -- ***
502: -- task_id
503: -- ***
504: validate_task_id(x_return_status, p_pa_ci_direct_cost1.task_id);
505: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
506: l_return_status := x_return_status;
507: RAISE G_EXCEPTION_HALT_VALIDATION;
508: END IF;
509:
510: -- ***
511: -- expenditure_type
512: -- ***
513: validate_expenditure_type(x_return_status, p_pa_ci_direct_cost1.expenditure_type);
514: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
515: l_return_status := x_return_status;
516: RAISE G_EXCEPTION_HALT_VALIDATION;
517: END IF;
518:
519: -- ***
520: -- resource_list_member_id
521: -- ***
522: validate_resource_l94(x_return_status, p_pa_ci_direct_cost1.resource_list_member_id);
523: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
524: l_return_status := x_return_status;
525: RAISE G_EXCEPTION_HALT_VALIDATION;
526: END IF;
527:
528: -- ***
529: -- last_update_by
530: -- ***
531: validate_last_update_by(x_return_status, p_pa_ci_direct_cost1.last_update_by);
532: IF (x_return_status <> PA_API.G_RET_STS_SUCCESS) THEN
533: l_return_status := x_return_status;
534: RAISE G_EXCEPTION_HALT_VALIDATION;
535: END IF;
536:
538: EXCEPTION
539: WHEN G_EXCEPTION_HALT_VALIDATION THEN
540: RETURN(l_return_status);
541: WHEN OTHERS THEN
542: PA_API.SET_MESSAGE( p_app_name => G_APP_NAME
543: ,p_msg_name => G_UNEXPECTED_ERROR
544: ,p_token1 => G_SQLCODE_TOKEN
545: ,p_token1_value => SQLCODE
546: ,p_token2 => G_SQLERRM_TOKEN
544: ,p_token1 => G_SQLCODE_TOKEN
545: ,p_token1_value => SQLCODE
546: ,p_token2 => G_SQLERRM_TOKEN
547: ,p_token2_value => SQLERRM);
548: l_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
549: RETURN(l_return_status);
550: END Validate_Attributes;
551: ---------------------------------------------------------------------------
552: -- PROCEDURE Validate_Record
557: FUNCTION Validate_Record (
558: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
559: p_db_pa_ci_direct_cos106 IN PaCiDirectCostDetailsRecType
560: ) RETURN VARCHAR2 IS
561: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
562: BEGIN
563: RETURN (l_return_status);
564: END Validate_Record;
565: FUNCTION Validate_Record (
564: END Validate_Record;
565: FUNCTION Validate_Record (
566: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType
567: ) RETURN VARCHAR2 IS
568: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
569: l_db_pa_ci_direct_cos106 PaCiDirectCostDetailsRecType := get_rec(p_pa_ci_direct_cost1);
570: BEGIN
571: l_return_status := Validate_Record(p_pa_ci_direct_cost1 => p_pa_ci_direct_cost1,
572: p_db_pa_ci_direct_cos106 => l_db_pa_ci_direct_cos106);
614: -- validate_row for:PA_CI_DIRECT_COST_DETAILS --
615: ------------------------------------------------
616: PROCEDURE validate_row(
617: p_api_version IN NUMBER,
618: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
619: x_return_status OUT NOCOPY VARCHAR2,
620: x_msg_count OUT NOCOPY NUMBER,
621: x_msg_data OUT NOCOPY VARCHAR2,
622: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
622: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
623:
624: l_api_version CONSTANT NUMBER := 1;
625: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
626: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
627: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
628: BEGIN
629: l_return_status := PA_API.START_ACTIVITY(l_api_name,
630: G_PKG_NAME,
625: l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
626: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
627: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
628: BEGIN
629: l_return_status := PA_API.START_ACTIVITY(l_api_name,
630: G_PKG_NAME,
631: p_init_msg_list,
632: l_api_version,
633: p_api_version,
632: l_api_version,
633: p_api_version,
634: '_PVT',
635: x_return_status);
636: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
637: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
638: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
639: RAISE PA_API.G_EXCEPTION_ERROR;
640: END IF;
633: p_api_version,
634: '_PVT',
635: x_return_status);
636: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
637: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
638: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
639: RAISE PA_API.G_EXCEPTION_ERROR;
640: END IF;
641: --- Validate all non-missing attributes (Item Level Validation)
634: '_PVT',
635: x_return_status);
636: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
637: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
638: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
639: RAISE PA_API.G_EXCEPTION_ERROR;
640: END IF;
641: --- Validate all non-missing attributes (Item Level Validation)
642: l_return_status := Validate_Attributes(l_pa_ci_direct_cost8);
635: x_return_status);
636: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
637: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
638: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
639: RAISE PA_API.G_EXCEPTION_ERROR;
640: END IF;
641: --- Validate all non-missing attributes (Item Level Validation)
642: l_return_status := Validate_Attributes(l_pa_ci_direct_cost8);
643: --- If any errors happen abort API
640: END IF;
641: --- Validate all non-missing attributes (Item Level Validation)
642: l_return_status := Validate_Attributes(l_pa_ci_direct_cost8);
643: --- If any errors happen abort API
644: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
645: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
646: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
641: --- Validate all non-missing attributes (Item Level Validation)
642: l_return_status := Validate_Attributes(l_pa_ci_direct_cost8);
643: --- If any errors happen abort API
644: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
645: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
646: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
642: l_return_status := Validate_Attributes(l_pa_ci_direct_cost8);
643: --- If any errors happen abort API
644: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
645: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
646: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
643: --- If any errors happen abort API
644: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
645: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
646: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
651: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
646: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
651: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
652: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
653: RAISE PA_API.G_EXCEPTION_ERROR;
654: END IF;
647: RAISE PA_API.G_EXCEPTION_ERROR;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
651: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
652: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
653: RAISE PA_API.G_EXCEPTION_ERROR;
654: END IF;
655: x_return_status := l_return_status;
648: END IF;
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
651: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
652: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
653: RAISE PA_API.G_EXCEPTION_ERROR;
654: END IF;
655: x_return_status := l_return_status;
656: EXCEPTION
649: l_return_status := Validate_Record(l_pa_ci_direct_cost8);
650: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
651: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
652: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
653: RAISE PA_API.G_EXCEPTION_ERROR;
654: END IF;
655: x_return_status := l_return_status;
656: EXCEPTION
657: WHEN PA_API.G_EXCEPTION_ERROR THEN
653: RAISE PA_API.G_EXCEPTION_ERROR;
654: END IF;
655: x_return_status := l_return_status;
656: EXCEPTION
657: WHEN PA_API.G_EXCEPTION_ERROR THEN
658: x_return_status := PA_API.HANDLE_EXCEPTIONS
659: (
660: l_api_name,
661: G_PKG_NAME,
654: END IF;
655: x_return_status := l_return_status;
656: EXCEPTION
657: WHEN PA_API.G_EXCEPTION_ERROR THEN
658: x_return_status := PA_API.HANDLE_EXCEPTIONS
659: (
660: l_api_name,
661: G_PKG_NAME,
662: 'PA_API.G_RET_STS_ERROR',
658: x_return_status := PA_API.HANDLE_EXCEPTIONS
659: (
660: l_api_name,
661: G_PKG_NAME,
662: 'PA_API.G_RET_STS_ERROR',
663: x_msg_count,
664: x_msg_data,
665: '_PVT'
666: );
663: x_msg_count,
664: x_msg_data,
665: '_PVT'
666: );
667: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
668: x_return_status := PA_API.HANDLE_EXCEPTIONS
669: (
670: l_api_name,
671: G_PKG_NAME,
664: x_msg_data,
665: '_PVT'
666: );
667: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
668: x_return_status := PA_API.HANDLE_EXCEPTIONS
669: (
670: l_api_name,
671: G_PKG_NAME,
672: 'PA_API.G_RET_STS_UNEXP_ERROR',
668: x_return_status := PA_API.HANDLE_EXCEPTIONS
669: (
670: l_api_name,
671: G_PKG_NAME,
672: 'PA_API.G_RET_STS_UNEXP_ERROR',
673: x_msg_count,
674: x_msg_data,
675: '_PVT'
676: );
674: x_msg_data,
675: '_PVT'
676: );
677: WHEN OTHERS THEN
678: x_return_status := PA_API.HANDLE_EXCEPTIONS
679: (
680: l_api_name,
681: G_PKG_NAME,
682: 'OTHERS',
689: -- PL/SQL TBL validate_row for:PA_CI_DIRECT_COST_DETAILS --
690: -----------------------------------------------------------
691: PROCEDURE validate_row(
692: p_api_version IN NUMBER,
693: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
694: x_return_status OUT NOCOPY VARCHAR2,
695: x_msg_count OUT NOCOPY NUMBER,
696: x_msg_data OUT NOCOPY VARCHAR2,
697: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
694: x_return_status OUT NOCOPY VARCHAR2,
695: x_msg_count OUT NOCOPY NUMBER,
696: x_msg_data OUT NOCOPY VARCHAR2,
697: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
698: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
699:
700: l_api_version CONSTANT NUMBER := 1;
701: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
702: i NUMBER := 0;
700: l_api_version CONSTANT NUMBER := 1;
701: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
702: i NUMBER := 0;
703: BEGIN
704: PA_API.init_msg_list(p_init_msg_list);
705: -- Make sure PL/SQL table has records in it before passing
706: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
707: i := PPaCiDirectCostDetailsTbl.FIRST;
708: LOOP
706: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
707: i := PPaCiDirectCostDetailsTbl.FIRST;
708: LOOP
709: DECLARE
710: l_error_rec PA_API.ERROR_REC_TYPE;
711: BEGIN
712: l_error_rec.api_name := l_api_name;
713: l_error_rec.api_package := G_PKG_NAME;
714: l_error_rec.idx := i;
713: l_error_rec.api_package := G_PKG_NAME;
714: l_error_rec.idx := i;
715: validate_row (
716: p_api_version => p_api_version,
717: p_init_msg_list => PA_API.G_FALSE,
718: x_return_status => l_error_rec.error_type,
719: x_msg_count => l_error_rec.msg_count,
720: x_msg_data => l_error_rec.msg_data,
721: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
718: x_return_status => l_error_rec.error_type,
719: x_msg_count => l_error_rec.msg_count,
720: x_msg_data => l_error_rec.msg_data,
721: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
722: IF (l_error_rec.error_type <> PA_API.G_RET_STS_SUCCESS) THEN
723: l_error_rec.sqlcode := SQLCODE;
724: load_error_tbl(l_error_rec, px_error_tbl);
725: ELSE
726: x_msg_count := l_error_rec.msg_count;
726: x_msg_count := l_error_rec.msg_count;
727: x_msg_data := l_error_rec.msg_data;
728: END IF;
729: EXCEPTION
730: WHEN PA_API.G_EXCEPTION_ERROR THEN
731: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
732: l_error_rec.sqlcode := SQLCODE;
733: load_error_tbl(l_error_rec, px_error_tbl);
734: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
727: x_msg_data := l_error_rec.msg_data;
728: END IF;
729: EXCEPTION
730: WHEN PA_API.G_EXCEPTION_ERROR THEN
731: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
732: l_error_rec.sqlcode := SQLCODE;
733: load_error_tbl(l_error_rec, px_error_tbl);
734: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
735: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
730: WHEN PA_API.G_EXCEPTION_ERROR THEN
731: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
732: l_error_rec.sqlcode := SQLCODE;
733: load_error_tbl(l_error_rec, px_error_tbl);
734: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
735: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
736: l_error_rec.sqlcode := SQLCODE;
737: load_error_tbl(l_error_rec, px_error_tbl);
738: WHEN OTHERS THEN
731: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
732: l_error_rec.sqlcode := SQLCODE;
733: load_error_tbl(l_error_rec, px_error_tbl);
734: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
735: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
736: l_error_rec.sqlcode := SQLCODE;
737: load_error_tbl(l_error_rec, px_error_tbl);
738: WHEN OTHERS THEN
739: l_error_rec.error_type := 'OTHERS';
746: END IF;
747: -- Loop through the error_tbl to find the error with the highest severity
748: -- and return it.
749: x_return_status := find_highest_exception(px_error_tbl);
750: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
751: EXCEPTION
752: WHEN PA_API.G_EXCEPTION_ERROR THEN
753: x_return_status := PA_API.HANDLE_EXCEPTIONS
754: (
748: -- and return it.
749: x_return_status := find_highest_exception(px_error_tbl);
750: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
751: EXCEPTION
752: WHEN PA_API.G_EXCEPTION_ERROR THEN
753: x_return_status := PA_API.HANDLE_EXCEPTIONS
754: (
755: l_api_name,
756: G_PKG_NAME,
749: x_return_status := find_highest_exception(px_error_tbl);
750: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
751: EXCEPTION
752: WHEN PA_API.G_EXCEPTION_ERROR THEN
753: x_return_status := PA_API.HANDLE_EXCEPTIONS
754: (
755: l_api_name,
756: G_PKG_NAME,
757: 'PA_API.G_RET_STS_ERROR',
753: x_return_status := PA_API.HANDLE_EXCEPTIONS
754: (
755: l_api_name,
756: G_PKG_NAME,
757: 'PA_API.G_RET_STS_ERROR',
758: x_msg_count,
759: x_msg_data,
760: '_PVT'
761: );
758: x_msg_count,
759: x_msg_data,
760: '_PVT'
761: );
762: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
763: x_return_status := PA_API.HANDLE_EXCEPTIONS
764: (
765: l_api_name,
766: G_PKG_NAME,
759: x_msg_data,
760: '_PVT'
761: );
762: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
763: x_return_status := PA_API.HANDLE_EXCEPTIONS
764: (
765: l_api_name,
766: G_PKG_NAME,
767: 'PA_API.G_RET_STS_UNEXP_ERROR',
763: x_return_status := PA_API.HANDLE_EXCEPTIONS
764: (
765: l_api_name,
766: G_PKG_NAME,
767: 'PA_API.G_RET_STS_UNEXP_ERROR',
768: x_msg_count,
769: x_msg_data,
770: '_PVT'
771: );
769: x_msg_data,
770: '_PVT'
771: );
772: WHEN OTHERS THEN
773: x_return_status := PA_API.HANDLE_EXCEPTIONS
774: (
775: l_api_name,
776: G_PKG_NAME,
777: 'OTHERS',
785: -- PL/SQL TBL validate_row for:PA_CI_DIRECT_COST_DETAILS --
786: -----------------------------------------------------------
787: PROCEDURE validate_row(
788: p_api_version IN NUMBER,
789: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
790: x_return_status OUT NOCOPY VARCHAR2,
791: x_msg_count OUT NOCOPY NUMBER,
792: x_msg_data OUT NOCOPY VARCHAR2,
793: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
793: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
794:
795: l_api_version CONSTANT NUMBER := 1;
796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
797: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
798: l_error_tbl PA_API.ERROR_TBL_TYPE;
799: BEGIN
800: PA_API.init_msg_list(p_init_msg_list);
801: -- Make sure PL/SQL table has records in it before passing
794:
795: l_api_version CONSTANT NUMBER := 1;
796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
797: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
798: l_error_tbl PA_API.ERROR_TBL_TYPE;
799: BEGIN
800: PA_API.init_msg_list(p_init_msg_list);
801: -- Make sure PL/SQL table has records in it before passing
802: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
796: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
797: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
798: l_error_tbl PA_API.ERROR_TBL_TYPE;
799: BEGIN
800: PA_API.init_msg_list(p_init_msg_list);
801: -- Make sure PL/SQL table has records in it before passing
802: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
803: validate_row (
804: p_api_version => p_api_version,
801: -- Make sure PL/SQL table has records in it before passing
802: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
803: validate_row (
804: p_api_version => p_api_version,
805: p_init_msg_list => PA_API.G_FALSE,
806: x_return_status => x_return_status,
807: x_msg_count => x_msg_count,
808: x_msg_data => x_msg_data,
809: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
808: x_msg_data => x_msg_data,
809: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
810: px_error_tbl => l_error_tbl);
811: END IF;
812: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
813: EXCEPTION
814: WHEN PA_API.G_EXCEPTION_ERROR THEN
815: x_return_status := PA_API.HANDLE_EXCEPTIONS
816: (
810: px_error_tbl => l_error_tbl);
811: END IF;
812: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
813: EXCEPTION
814: WHEN PA_API.G_EXCEPTION_ERROR THEN
815: x_return_status := PA_API.HANDLE_EXCEPTIONS
816: (
817: l_api_name,
818: G_PKG_NAME,
811: END IF;
812: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
813: EXCEPTION
814: WHEN PA_API.G_EXCEPTION_ERROR THEN
815: x_return_status := PA_API.HANDLE_EXCEPTIONS
816: (
817: l_api_name,
818: G_PKG_NAME,
819: 'PA_API.G_RET_STS_ERROR',
815: x_return_status := PA_API.HANDLE_EXCEPTIONS
816: (
817: l_api_name,
818: G_PKG_NAME,
819: 'PA_API.G_RET_STS_ERROR',
820: x_msg_count,
821: x_msg_data,
822: '_PVT'
823: );
820: x_msg_count,
821: x_msg_data,
822: '_PVT'
823: );
824: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
825: x_return_status := PA_API.HANDLE_EXCEPTIONS
826: (
827: l_api_name,
828: G_PKG_NAME,
821: x_msg_data,
822: '_PVT'
823: );
824: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
825: x_return_status := PA_API.HANDLE_EXCEPTIONS
826: (
827: l_api_name,
828: G_PKG_NAME,
829: 'PA_API.G_RET_STS_UNEXP_ERROR',
825: x_return_status := PA_API.HANDLE_EXCEPTIONS
826: (
827: l_api_name,
828: G_PKG_NAME,
829: 'PA_API.G_RET_STS_UNEXP_ERROR',
830: x_msg_count,
831: x_msg_data,
832: '_PVT'
833: );
831: x_msg_data,
832: '_PVT'
833: );
834: WHEN OTHERS THEN
835: x_return_status := PA_API.HANDLE_EXCEPTIONS
836: (
837: l_api_name,
838: G_PKG_NAME,
839: 'OTHERS',
875: -- insert_row for:PA_CI_DIRECT_COST_DETAILS --
876: ----------------------------------------------
877: PROCEDURE insert_row(
878: p_api_version IN NUMBER,
879: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
880: x_return_status OUT NOCOPY VARCHAR2,
881: x_msg_count OUT NOCOPY NUMBER,
882: x_msg_data OUT NOCOPY VARCHAR2,
883: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
884: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType) IS
885:
886: l_api_version CONSTANT NUMBER := 1;
887: l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
888: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
889: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
890: LDefPaCiDirectCostDetailsRec PaCiDirectCostDetailsRecType;
891: --------------------------------------------------
892: -- Set_Attributes for:PA_CI_DIRECT_COST_DETAILS --
894: FUNCTION Set_Attributes (
895: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
896: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType
897: ) RETURN VARCHAR2 IS
898: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
899: BEGIN
900: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
901: RETURN(l_return_status);
902: END Set_Attributes;
900: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
901: RETURN(l_return_status);
902: END Set_Attributes;
903: BEGIN
904: l_return_status := PA_API.START_ACTIVITY(l_api_name,
905: p_init_msg_list,
906: '_PVT',
907: x_return_status);
908: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
904: l_return_status := PA_API.START_ACTIVITY(l_api_name,
905: p_init_msg_list,
906: '_PVT',
907: x_return_status);
908: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
909: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
910: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
911: RAISE PA_API.G_EXCEPTION_ERROR;
912: END IF;
905: p_init_msg_list,
906: '_PVT',
907: x_return_status);
908: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
909: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
910: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
911: RAISE PA_API.G_EXCEPTION_ERROR;
912: END IF;
913: --- Setting item atributes
906: '_PVT',
907: x_return_status);
908: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
909: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
910: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
911: RAISE PA_API.G_EXCEPTION_ERROR;
912: END IF;
913: --- Setting item atributes
914: l_return_status := Set_Attributes(
907: x_return_status);
908: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
909: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
910: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
911: RAISE PA_API.G_EXCEPTION_ERROR;
912: END IF;
913: --- Setting item atributes
914: l_return_status := Set_Attributes(
915: p_pa_ci_direct_cost1, -- IN
914: l_return_status := Set_Attributes(
915: p_pa_ci_direct_cost1, -- IN
916: l_pa_ci_direct_cost8); -- OUT
917: --- If any errors happen abort API
918: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
919: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
920: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
921: RAISE PA_API.G_EXCEPTION_ERROR;
922: END IF;
915: p_pa_ci_direct_cost1, -- IN
916: l_pa_ci_direct_cost8); -- OUT
917: --- If any errors happen abort API
918: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
919: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
920: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
921: RAISE PA_API.G_EXCEPTION_ERROR;
922: END IF;
923: INSERT INTO PA_CI_DIRECT_COST_DETAILS(
916: l_pa_ci_direct_cost8); -- OUT
917: --- If any errors happen abort API
918: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
919: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
920: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
921: RAISE PA_API.G_EXCEPTION_ERROR;
922: END IF;
923: INSERT INTO PA_CI_DIRECT_COST_DETAILS(
924: dc_line_id,
917: --- If any errors happen abort API
918: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
919: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
920: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
921: RAISE PA_API.G_EXCEPTION_ERROR;
922: END IF;
923: INSERT INTO PA_CI_DIRECT_COST_DETAILS(
924: dc_line_id,
925: ci_id,
972: l_pa_ci_direct_cost8.last_update_login);
973: -- Set OUT values
974: XPaCiDirectCostDetailsRec := l_pa_ci_direct_cost8;
975: x_return_status := l_return_status;
976: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
977: EXCEPTION
978: WHEN PA_API.G_EXCEPTION_ERROR THEN
979: x_return_status := PA_API.HANDLE_EXCEPTIONS
980: (
974: XPaCiDirectCostDetailsRec := l_pa_ci_direct_cost8;
975: x_return_status := l_return_status;
976: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
977: EXCEPTION
978: WHEN PA_API.G_EXCEPTION_ERROR THEN
979: x_return_status := PA_API.HANDLE_EXCEPTIONS
980: (
981: l_api_name,
982: G_PKG_NAME,
975: x_return_status := l_return_status;
976: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
977: EXCEPTION
978: WHEN PA_API.G_EXCEPTION_ERROR THEN
979: x_return_status := PA_API.HANDLE_EXCEPTIONS
980: (
981: l_api_name,
982: G_PKG_NAME,
983: 'PA_API.G_RET_STS_ERROR',
979: x_return_status := PA_API.HANDLE_EXCEPTIONS
980: (
981: l_api_name,
982: G_PKG_NAME,
983: 'PA_API.G_RET_STS_ERROR',
984: x_msg_count,
985: x_msg_data,
986: '_PVT'
987: );
984: x_msg_count,
985: x_msg_data,
986: '_PVT'
987: );
988: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
989: x_return_status := PA_API.HANDLE_EXCEPTIONS
990: (
991: l_api_name,
992: G_PKG_NAME,
985: x_msg_data,
986: '_PVT'
987: );
988: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
989: x_return_status := PA_API.HANDLE_EXCEPTIONS
990: (
991: l_api_name,
992: G_PKG_NAME,
993: 'PA_API.G_RET_STS_UNEXP_ERROR',
989: x_return_status := PA_API.HANDLE_EXCEPTIONS
990: (
991: l_api_name,
992: G_PKG_NAME,
993: 'PA_API.G_RET_STS_UNEXP_ERROR',
994: x_msg_count,
995: x_msg_data,
996: '_PVT'
997: );
995: x_msg_data,
996: '_PVT'
997: );
998: WHEN OTHERS THEN
999: x_return_status := PA_API.HANDLE_EXCEPTIONS
1000: (
1001: l_api_name,
1002: G_PKG_NAME,
1003: 'OTHERS',
1014: -- insert_row for:PA_CI_DIRECT_COST_DETAILS --
1015: ----------------------------------------------
1016: PROCEDURE insert_row(
1017: p_api_version IN NUMBER,
1018: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1019: x_return_status OUT NOCOPY VARCHAR2,
1020: x_msg_count OUT NOCOPY NUMBER,
1021: x_msg_data OUT NOCOPY VARCHAR2,
1022: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
1023: XPaCiDirectCostDetailsTbl OUT NOCOPY PaCiDirectCostDetailsTblType) IS
1024:
1025: l_api_version CONSTANT NUMBER := 1;
1026: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1027: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1028: i NUMBER := 0;
1029: BEGIN
1030: PA_API.init_msg_list(p_init_msg_list);
1031: -- Make sure PL/SQL table has records in it before passing
1026: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1027: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1028: i NUMBER := 0;
1029: BEGIN
1030: PA_API.init_msg_list(p_init_msg_list);
1031: -- Make sure PL/SQL table has records in it before passing
1032:
1033: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1034:
1040: i := PPaCiDirectCostDetailsTbl.FIRST;
1041: LOOP
1042: insert_row (
1043: p_api_version => p_api_version,
1044: p_init_msg_list => PA_API.G_FALSE,
1045: x_return_status => x_return_status,
1046: x_msg_count => x_msg_count,
1047: x_msg_data => x_msg_data,
1048: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i),
1052: i := PPaCiDirectCostDetailsTbl.NEXT(i);
1053: END LOOP;
1054: END IF;
1055: EXCEPTION
1056: WHEN PA_API.G_EXCEPTION_ERROR THEN
1057: x_return_status := PA_API.HANDLE_EXCEPTIONS
1058: (
1059: l_api_name,
1060: G_PKG_NAME,
1053: END LOOP;
1054: END IF;
1055: EXCEPTION
1056: WHEN PA_API.G_EXCEPTION_ERROR THEN
1057: x_return_status := PA_API.HANDLE_EXCEPTIONS
1058: (
1059: l_api_name,
1060: G_PKG_NAME,
1061: 'PA_API.G_RET_STS_ERROR',
1057: x_return_status := PA_API.HANDLE_EXCEPTIONS
1058: (
1059: l_api_name,
1060: G_PKG_NAME,
1061: 'PA_API.G_RET_STS_ERROR',
1062: x_msg_count,
1063: x_msg_data,
1064: '_PVT'
1065: );
1062: x_msg_count,
1063: x_msg_data,
1064: '_PVT'
1065: );
1066: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1067: x_return_status :=PA_API.HANDLE_EXCEPTIONS
1068: (
1069: l_api_name,
1070: G_PKG_NAME,
1063: x_msg_data,
1064: '_PVT'
1065: );
1066: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1067: x_return_status :=PA_API.HANDLE_EXCEPTIONS
1068: (
1069: l_api_name,
1070: G_PKG_NAME,
1071: 'PA_API.G_RET_STS_UNEXP_ERROR',
1067: x_return_status :=PA_API.HANDLE_EXCEPTIONS
1068: (
1069: l_api_name,
1070: G_PKG_NAME,
1071: 'PA_API.G_RET_STS_UNEXP_ERROR',
1072: x_msg_count,
1073: x_msg_data,
1074: '_PVT'
1075: );
1074: '_PVT'
1075: );
1076:
1077: WHEN DUP_VAL_ON_INDEX THEN
1078: PA_Api.set_message(p_app_name => g_app_name,
1079: p_msg_name => 'PA_FIN_SAME_PLANNING_ELEMENT');
1080:
1081: x_return_status := PA_API.G_RET_STS_ERROR;
1082:
1077: WHEN DUP_VAL_ON_INDEX THEN
1078: PA_Api.set_message(p_app_name => g_app_name,
1079: p_msg_name => 'PA_FIN_SAME_PLANNING_ELEMENT');
1080:
1081: x_return_status := PA_API.G_RET_STS_ERROR;
1082:
1083: WHEN OTHERS THEN
1084: x_return_status :=PA_API.HANDLE_EXCEPTIONS
1085: (
1080:
1081: x_return_status := PA_API.G_RET_STS_ERROR;
1082:
1083: WHEN OTHERS THEN
1084: x_return_status :=PA_API.HANDLE_EXCEPTIONS
1085: (
1086: l_api_name,
1087: G_PKG_NAME,
1088: 'OTHERS',
1098: --------------------------------------------
1099: -- lock_row for:PA_CI_DIRECT_COST_DETAILS --
1100: --------------------------------------------
1101: PROCEDURE lock_row(
1102: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1103: x_return_status OUT NOCOPY VARCHAR2,
1104: x_msg_count OUT NOCOPY NUMBER,
1105: x_msg_data OUT NOCOPY VARCHAR2,
1106: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
1114: FOR UPDATE NOWAIT;
1115:
1116: l_api_version CONSTANT NUMBER := 1;
1117: l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1118: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1119: l_lock_var lock_csr%ROWTYPE;
1120: l_row_notfound BOOLEAN := FALSE;
1121: lc_row_notfound BOOLEAN := FALSE;
1122: BEGIN
1119: l_lock_var lock_csr%ROWTYPE;
1120: l_row_notfound BOOLEAN := FALSE;
1121: lc_row_notfound BOOLEAN := FALSE;
1122: BEGIN
1123: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1124: p_init_msg_list,
1125: '_PVT',
1126: x_return_status);
1127: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1123: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1124: p_init_msg_list,
1125: '_PVT',
1126: x_return_status);
1127: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1128: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1129: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1130: RAISE PA_API.G_EXCEPTION_ERROR;
1131: END IF;
1124: p_init_msg_list,
1125: '_PVT',
1126: x_return_status);
1127: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1128: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1129: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1130: RAISE PA_API.G_EXCEPTION_ERROR;
1131: END IF;
1132: BEGIN
1125: '_PVT',
1126: x_return_status);
1127: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1128: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1129: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1130: RAISE PA_API.G_EXCEPTION_ERROR;
1131: END IF;
1132: BEGIN
1133: OPEN lock_csr(p_pa_ci_direct_cost1);
1126: x_return_status);
1127: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1128: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1129: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1130: RAISE PA_API.G_EXCEPTION_ERROR;
1131: END IF;
1132: BEGIN
1133: OPEN lock_csr(p_pa_ci_direct_cost1);
1134: FETCH lock_csr INTO l_lock_var;
1138: WHEN E_Resource_Busy THEN
1139: IF (lock_csr%ISOPEN) THEN
1140: CLOSE lock_csr;
1141: END IF;
1142: PA_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1143: RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1144: END;
1145:
1146: IF ( l_row_notfound ) THEN
1143: RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1144: END;
1145:
1146: IF ( l_row_notfound ) THEN
1147: PA_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1148: RAISE PA_API.G_EXCEPTION_ERROR;
1149: ELSE
1150:
1151: IF (l_lock_var.dc_line_id <> p_pa_ci_direct_cost1.dc_line_id) THEN
1144: END;
1145:
1146: IF ( l_row_notfound ) THEN
1147: PA_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1148: RAISE PA_API.G_EXCEPTION_ERROR;
1149: ELSE
1150:
1151: IF (l_lock_var.dc_line_id <> p_pa_ci_direct_cost1.dc_line_id) THEN
1152: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1148: RAISE PA_API.G_EXCEPTION_ERROR;
1149: ELSE
1150:
1151: IF (l_lock_var.dc_line_id <> p_pa_ci_direct_cost1.dc_line_id) THEN
1152: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1153: RAISE PA_API.G_EXCEPTION_ERROR;
1154: END IF;
1155:
1156: IF (l_lock_var.ci_id <> p_pa_ci_direct_cost1.ci_id) THEN
1149: ELSE
1150:
1151: IF (l_lock_var.dc_line_id <> p_pa_ci_direct_cost1.dc_line_id) THEN
1152: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1153: RAISE PA_API.G_EXCEPTION_ERROR;
1154: END IF;
1155:
1156: IF (l_lock_var.ci_id <> p_pa_ci_direct_cost1.ci_id) THEN
1157: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1153: RAISE PA_API.G_EXCEPTION_ERROR;
1154: END IF;
1155:
1156: IF (l_lock_var.ci_id <> p_pa_ci_direct_cost1.ci_id) THEN
1157: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1158: RAISE PA_API.G_EXCEPTION_ERROR;
1159: END IF;
1160: IF (l_lock_var.project_id <> p_pa_ci_direct_cost1.project_id) THEN
1161: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1154: END IF;
1155:
1156: IF (l_lock_var.ci_id <> p_pa_ci_direct_cost1.ci_id) THEN
1157: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1158: RAISE PA_API.G_EXCEPTION_ERROR;
1159: END IF;
1160: IF (l_lock_var.project_id <> p_pa_ci_direct_cost1.project_id) THEN
1161: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1162: RAISE PA_API.G_EXCEPTION_ERROR;
1157: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1158: RAISE PA_API.G_EXCEPTION_ERROR;
1159: END IF;
1160: IF (l_lock_var.project_id <> p_pa_ci_direct_cost1.project_id) THEN
1161: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1162: RAISE PA_API.G_EXCEPTION_ERROR;
1163: END IF;
1164: IF (l_lock_var.task_id <> p_pa_ci_direct_cost1.task_id) THEN
1165: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1158: RAISE PA_API.G_EXCEPTION_ERROR;
1159: END IF;
1160: IF (l_lock_var.project_id <> p_pa_ci_direct_cost1.project_id) THEN
1161: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1162: RAISE PA_API.G_EXCEPTION_ERROR;
1163: END IF;
1164: IF (l_lock_var.task_id <> p_pa_ci_direct_cost1.task_id) THEN
1165: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1166: RAISE PA_API.G_EXCEPTION_ERROR;
1161: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1162: RAISE PA_API.G_EXCEPTION_ERROR;
1163: END IF;
1164: IF (l_lock_var.task_id <> p_pa_ci_direct_cost1.task_id) THEN
1165: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1166: RAISE PA_API.G_EXCEPTION_ERROR;
1167: END IF;
1168: IF (l_lock_var.expenditure_type <> p_pa_ci_direct_cost1.expenditure_type) THEN
1169: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1162: RAISE PA_API.G_EXCEPTION_ERROR;
1163: END IF;
1164: IF (l_lock_var.task_id <> p_pa_ci_direct_cost1.task_id) THEN
1165: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1166: RAISE PA_API.G_EXCEPTION_ERROR;
1167: END IF;
1168: IF (l_lock_var.expenditure_type <> p_pa_ci_direct_cost1.expenditure_type) THEN
1169: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1170: RAISE PA_API.G_EXCEPTION_ERROR;
1165: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1166: RAISE PA_API.G_EXCEPTION_ERROR;
1167: END IF;
1168: IF (l_lock_var.expenditure_type <> p_pa_ci_direct_cost1.expenditure_type) THEN
1169: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1170: RAISE PA_API.G_EXCEPTION_ERROR;
1171: END IF;
1172: IF (l_lock_var.resource_list_member_id <> p_pa_ci_direct_cost1.resource_list_member_id) THEN
1173: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1166: RAISE PA_API.G_EXCEPTION_ERROR;
1167: END IF;
1168: IF (l_lock_var.expenditure_type <> p_pa_ci_direct_cost1.expenditure_type) THEN
1169: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1170: RAISE PA_API.G_EXCEPTION_ERROR;
1171: END IF;
1172: IF (l_lock_var.resource_list_member_id <> p_pa_ci_direct_cost1.resource_list_member_id) THEN
1173: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1174: RAISE PA_API.G_EXCEPTION_ERROR;
1169: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1170: RAISE PA_API.G_EXCEPTION_ERROR;
1171: END IF;
1172: IF (l_lock_var.resource_list_member_id <> p_pa_ci_direct_cost1.resource_list_member_id) THEN
1173: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1174: RAISE PA_API.G_EXCEPTION_ERROR;
1175: END IF;
1176:
1177: END IF;
1170: RAISE PA_API.G_EXCEPTION_ERROR;
1171: END IF;
1172: IF (l_lock_var.resource_list_member_id <> p_pa_ci_direct_cost1.resource_list_member_id) THEN
1173: PA_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1174: RAISE PA_API.G_EXCEPTION_ERROR;
1175: END IF;
1176:
1177: END IF;
1178: x_return_status := l_return_status;
1175: END IF;
1176:
1177: END IF;
1178: x_return_status := l_return_status;
1179: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1180: EXCEPTION
1181: WHEN PA_API.G_EXCEPTION_ERROR THEN
1182: x_return_status := PA_API.HANDLE_EXCEPTIONS
1183: (
1177: END IF;
1178: x_return_status := l_return_status;
1179: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1180: EXCEPTION
1181: WHEN PA_API.G_EXCEPTION_ERROR THEN
1182: x_return_status := PA_API.HANDLE_EXCEPTIONS
1183: (
1184: l_api_name,
1185: G_PKG_NAME,
1178: x_return_status := l_return_status;
1179: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1180: EXCEPTION
1181: WHEN PA_API.G_EXCEPTION_ERROR THEN
1182: x_return_status := PA_API.HANDLE_EXCEPTIONS
1183: (
1184: l_api_name,
1185: G_PKG_NAME,
1186: 'PA_API.G_RET_STS_ERROR',
1182: x_return_status := PA_API.HANDLE_EXCEPTIONS
1183: (
1184: l_api_name,
1185: G_PKG_NAME,
1186: 'PA_API.G_RET_STS_ERROR',
1187: x_msg_count,
1188: x_msg_data,
1189: '_PVT'
1190: );
1187: x_msg_count,
1188: x_msg_data,
1189: '_PVT'
1190: );
1191: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1192: x_return_status := PA_API.HANDLE_EXCEPTIONS
1193: (
1194: l_api_name,
1195: G_PKG_NAME,
1188: x_msg_data,
1189: '_PVT'
1190: );
1191: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1192: x_return_status := PA_API.HANDLE_EXCEPTIONS
1193: (
1194: l_api_name,
1195: G_PKG_NAME,
1196: 'PA_API.G_RET_STS_UNEXP_ERROR',
1192: x_return_status := PA_API.HANDLE_EXCEPTIONS
1193: (
1194: l_api_name,
1195: G_PKG_NAME,
1196: 'PA_API.G_RET_STS_UNEXP_ERROR',
1197: x_msg_count,
1198: x_msg_data,
1199: '_PVT'
1200: );
1198: x_msg_data,
1199: '_PVT'
1200: );
1201: WHEN OTHERS THEN
1202: x_return_status := PA_API.HANDLE_EXCEPTIONS
1203: (
1204: l_api_name,
1205: G_PKG_NAME,
1206: 'OTHERS',
1213: -- lock_row for: PA_CI_DIRECT_COST_DETAILS --
1214: ---------------------------------------------
1215: PROCEDURE lock_row(
1216: p_api_version IN NUMBER,
1217: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1218: x_return_status OUT NOCOPY VARCHAR2,
1219: x_msg_count OUT NOCOPY NUMBER,
1220: x_msg_data OUT NOCOPY VARCHAR2,
1221: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
1221: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
1222:
1223: l_api_version CONSTANT NUMBER := 1;
1224: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1225: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1226: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType;
1227: BEGIN
1228: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1229: G_PKG_NAME,
1224: l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1225: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1226: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType;
1227: BEGIN
1228: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1229: G_PKG_NAME,
1230: p_init_msg_list,
1231: l_api_version,
1232: p_api_version,
1231: l_api_version,
1232: p_api_version,
1233: '_PVT',
1234: x_return_status);
1235: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1236: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1237: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1238: RAISE PA_API.G_EXCEPTION_ERROR;
1239: END IF;
1232: p_api_version,
1233: '_PVT',
1234: x_return_status);
1235: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1236: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1237: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1238: RAISE PA_API.G_EXCEPTION_ERROR;
1239: END IF;
1240: -----------------------------------------
1233: '_PVT',
1234: x_return_status);
1235: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1236: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1237: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1238: RAISE PA_API.G_EXCEPTION_ERROR;
1239: END IF;
1240: -----------------------------------------
1241: -- Move VIEW record to "Child" records --
1234: x_return_status);
1235: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1236: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1237: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1238: RAISE PA_API.G_EXCEPTION_ERROR;
1239: END IF;
1240: -----------------------------------------
1241: -- Move VIEW record to "Child" records --
1242: -----------------------------------------
1250: x_msg_count,
1251: x_msg_data,
1252: l_pa_ci_direct_cost8
1253: );
1254: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1255: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1256: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1257: RAISE PA_API.G_EXCEPTION_ERROR;
1258: END IF;
1251: x_msg_data,
1252: l_pa_ci_direct_cost8
1253: );
1254: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1255: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1256: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1257: RAISE PA_API.G_EXCEPTION_ERROR;
1258: END IF;
1259: x_return_status := l_return_status;
1252: l_pa_ci_direct_cost8
1253: );
1254: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1255: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1256: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1257: RAISE PA_API.G_EXCEPTION_ERROR;
1258: END IF;
1259: x_return_status := l_return_status;
1260: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1253: );
1254: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1255: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1256: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1257: RAISE PA_API.G_EXCEPTION_ERROR;
1258: END IF;
1259: x_return_status := l_return_status;
1260: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1261: EXCEPTION
1256: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1257: RAISE PA_API.G_EXCEPTION_ERROR;
1258: END IF;
1259: x_return_status := l_return_status;
1260: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1261: EXCEPTION
1262: WHEN PA_API.G_EXCEPTION_ERROR THEN
1263: x_return_status := PA_API.HANDLE_EXCEPTIONS
1264: (
1258: END IF;
1259: x_return_status := l_return_status;
1260: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1261: EXCEPTION
1262: WHEN PA_API.G_EXCEPTION_ERROR THEN
1263: x_return_status := PA_API.HANDLE_EXCEPTIONS
1264: (
1265: l_api_name,
1266: G_PKG_NAME,
1259: x_return_status := l_return_status;
1260: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1261: EXCEPTION
1262: WHEN PA_API.G_EXCEPTION_ERROR THEN
1263: x_return_status := PA_API.HANDLE_EXCEPTIONS
1264: (
1265: l_api_name,
1266: G_PKG_NAME,
1267: 'PA_API.G_RET_STS_ERROR',
1263: x_return_status := PA_API.HANDLE_EXCEPTIONS
1264: (
1265: l_api_name,
1266: G_PKG_NAME,
1267: 'PA_API.G_RET_STS_ERROR',
1268: x_msg_count,
1269: x_msg_data,
1270: '_PVT'
1271: );
1268: x_msg_count,
1269: x_msg_data,
1270: '_PVT'
1271: );
1272: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1273: x_return_status := PA_API.HANDLE_EXCEPTIONS
1274: (
1275: l_api_name,
1276: G_PKG_NAME,
1269: x_msg_data,
1270: '_PVT'
1271: );
1272: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1273: x_return_status := PA_API.HANDLE_EXCEPTIONS
1274: (
1275: l_api_name,
1276: G_PKG_NAME,
1277: 'PA_API.G_RET_STS_UNEXP_ERROR',
1273: x_return_status := PA_API.HANDLE_EXCEPTIONS
1274: (
1275: l_api_name,
1276: G_PKG_NAME,
1277: 'PA_API.G_RET_STS_UNEXP_ERROR',
1278: x_msg_count,
1279: x_msg_data,
1280: '_PVT'
1281: );
1279: x_msg_data,
1280: '_PVT'
1281: );
1282: WHEN OTHERS THEN
1283: x_return_status := PA_API.HANDLE_EXCEPTIONS
1284: (
1285: l_api_name,
1286: G_PKG_NAME,
1287: 'OTHERS',
1294: -- PL/SQL TBL lock_row for:PA_CI_DIRECT_COST_DETAILS_TBL --
1295: -----------------------------------------------------------
1296: PROCEDURE lock_row(
1297: p_api_version IN NUMBER,
1298: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1299: x_return_status OUT NOCOPY VARCHAR2,
1300: x_msg_count OUT NOCOPY NUMBER,
1301: x_msg_data OUT NOCOPY VARCHAR2,
1302: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
1299: x_return_status OUT NOCOPY VARCHAR2,
1300: x_msg_count OUT NOCOPY NUMBER,
1301: x_msg_data OUT NOCOPY VARCHAR2,
1302: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
1303: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
1304:
1305: l_api_version CONSTANT NUMBER := 1;
1306: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1307: i NUMBER := 0;
1305: l_api_version CONSTANT NUMBER := 1;
1306: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
1307: i NUMBER := 0;
1308: BEGIN
1309: PA_API.init_msg_list(p_init_msg_list);
1310: -- Make sure PL/SQL table has recrods in it before passing
1311: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1312: i := PPaCiDirectCostDetailsTbl.FIRST;
1313: LOOP
1311: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1312: i := PPaCiDirectCostDetailsTbl.FIRST;
1313: LOOP
1314: DECLARE
1315: l_error_rec PA_API.ERROR_REC_TYPE;
1316: BEGIN
1317: l_error_rec.api_name := l_api_name;
1318: l_error_rec.api_package := G_PKG_NAME;
1319: l_error_rec.idx := i;
1318: l_error_rec.api_package := G_PKG_NAME;
1319: l_error_rec.idx := i;
1320: lock_row(
1321: p_api_version => p_api_version,
1322: p_init_msg_list => PA_API.G_FALSE,
1323: x_return_status => l_error_rec.error_type,
1324: x_msg_count => l_error_rec.msg_count,
1325: x_msg_data => l_error_rec.msg_data,
1326: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
1323: x_return_status => l_error_rec.error_type,
1324: x_msg_count => l_error_rec.msg_count,
1325: x_msg_data => l_error_rec.msg_data,
1326: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
1327: IF (l_error_rec.error_type <> PA_API.G_RET_STS_SUCCESS) THEN
1328: l_error_rec.sqlcode := SQLCODE;
1329: load_error_tbl(l_error_rec, px_error_tbl);
1330: ELSE
1331: x_msg_count := l_error_rec.msg_count;
1331: x_msg_count := l_error_rec.msg_count;
1332: x_msg_data := l_error_rec.msg_data;
1333: END IF;
1334: EXCEPTION
1335: WHEN PA_API.G_EXCEPTION_ERROR THEN
1336: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
1337: l_error_rec.sqlcode := SQLCODE;
1338: load_error_tbl(l_error_rec, px_error_tbl);
1339: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1332: x_msg_data := l_error_rec.msg_data;
1333: END IF;
1334: EXCEPTION
1335: WHEN PA_API.G_EXCEPTION_ERROR THEN
1336: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
1337: l_error_rec.sqlcode := SQLCODE;
1338: load_error_tbl(l_error_rec, px_error_tbl);
1339: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1340: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
1335: WHEN PA_API.G_EXCEPTION_ERROR THEN
1336: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
1337: l_error_rec.sqlcode := SQLCODE;
1338: load_error_tbl(l_error_rec, px_error_tbl);
1339: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1340: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
1341: l_error_rec.sqlcode := SQLCODE;
1342: load_error_tbl(l_error_rec, px_error_tbl);
1343: WHEN OTHERS THEN
1336: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
1337: l_error_rec.sqlcode := SQLCODE;
1338: load_error_tbl(l_error_rec, px_error_tbl);
1339: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1340: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
1341: l_error_rec.sqlcode := SQLCODE;
1342: load_error_tbl(l_error_rec, px_error_tbl);
1343: WHEN OTHERS THEN
1344: l_error_rec.error_type := 'OTHERS';
1351: END IF;
1352: -- Loop through the error_tbl to find the error with the highest severity
1353: -- and return it.
1354: x_return_status := find_highest_exception(px_error_tbl);
1355: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1356: EXCEPTION
1357: WHEN PA_API.G_EXCEPTION_ERROR THEN
1358: x_return_status := PA_API.HANDLE_EXCEPTIONS
1359: (
1353: -- and return it.
1354: x_return_status := find_highest_exception(px_error_tbl);
1355: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1356: EXCEPTION
1357: WHEN PA_API.G_EXCEPTION_ERROR THEN
1358: x_return_status := PA_API.HANDLE_EXCEPTIONS
1359: (
1360: l_api_name,
1361: G_PKG_NAME,
1354: x_return_status := find_highest_exception(px_error_tbl);
1355: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1356: EXCEPTION
1357: WHEN PA_API.G_EXCEPTION_ERROR THEN
1358: x_return_status := PA_API.HANDLE_EXCEPTIONS
1359: (
1360: l_api_name,
1361: G_PKG_NAME,
1362: 'PA_API.G_RET_STS_ERROR',
1358: x_return_status := PA_API.HANDLE_EXCEPTIONS
1359: (
1360: l_api_name,
1361: G_PKG_NAME,
1362: 'PA_API.G_RET_STS_ERROR',
1363: x_msg_count,
1364: x_msg_data,
1365: '_PVT'
1366: );
1363: x_msg_count,
1364: x_msg_data,
1365: '_PVT'
1366: );
1367: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1368: x_return_status := PA_API.HANDLE_EXCEPTIONS
1369: (
1370: l_api_name,
1371: G_PKG_NAME,
1364: x_msg_data,
1365: '_PVT'
1366: );
1367: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1368: x_return_status := PA_API.HANDLE_EXCEPTIONS
1369: (
1370: l_api_name,
1371: G_PKG_NAME,
1372: 'PA_API.G_RET_STS_UNEXP_ERROR',
1368: x_return_status := PA_API.HANDLE_EXCEPTIONS
1369: (
1370: l_api_name,
1371: G_PKG_NAME,
1372: 'PA_API.G_RET_STS_UNEXP_ERROR',
1373: x_msg_count,
1374: x_msg_data,
1375: '_PVT'
1376: );
1374: x_msg_data,
1375: '_PVT'
1376: );
1377: WHEN OTHERS THEN
1378: x_return_status := PA_API.HANDLE_EXCEPTIONS
1379: (
1380: l_api_name,
1381: G_PKG_NAME,
1382: 'OTHERS',
1389: -- PL/SQL TBL lock_row for:PA_CI_DIRECT_COST_DETAILS_TBL --
1390: -----------------------------------------------------------
1391: PROCEDURE lock_row(
1392: p_api_version IN NUMBER,
1393: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1394: x_return_status OUT NOCOPY VARCHAR2,
1395: x_msg_count OUT NOCOPY NUMBER,
1396: x_msg_data OUT NOCOPY VARCHAR2,
1397: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
1397: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
1398:
1399: l_api_version CONSTANT NUMBER := 1;
1400: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1401: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1402: l_error_tbl PA_API.ERROR_TBL_TYPE;
1403: BEGIN
1404: PA_API.init_msg_list(p_init_msg_list);
1405: -- Make sure PL/SQL table has recrods in it before passing
1398:
1399: l_api_version CONSTANT NUMBER := 1;
1400: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1401: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1402: l_error_tbl PA_API.ERROR_TBL_TYPE;
1403: BEGIN
1404: PA_API.init_msg_list(p_init_msg_list);
1405: -- Make sure PL/SQL table has recrods in it before passing
1406: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1400: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1401: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1402: l_error_tbl PA_API.ERROR_TBL_TYPE;
1403: BEGIN
1404: PA_API.init_msg_list(p_init_msg_list);
1405: -- Make sure PL/SQL table has recrods in it before passing
1406: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1407: lock_row(
1408: p_api_version => p_api_version,
1405: -- Make sure PL/SQL table has recrods in it before passing
1406: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1407: lock_row(
1408: p_api_version => p_api_version,
1409: p_init_msg_list => PA_API.G_FALSE,
1410: x_return_status => x_return_status,
1411: x_msg_count => x_msg_count,
1412: x_msg_data => x_msg_data,
1413: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
1412: x_msg_data => x_msg_data,
1413: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
1414: px_error_tbl => l_error_tbl);
1415: END IF;
1416: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1417: EXCEPTION
1418: WHEN PA_API.G_EXCEPTION_ERROR THEN
1419: x_return_status := PA_API.HANDLE_EXCEPTIONS
1420: (
1414: px_error_tbl => l_error_tbl);
1415: END IF;
1416: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1417: EXCEPTION
1418: WHEN PA_API.G_EXCEPTION_ERROR THEN
1419: x_return_status := PA_API.HANDLE_EXCEPTIONS
1420: (
1421: l_api_name,
1422: G_PKG_NAME,
1415: END IF;
1416: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1417: EXCEPTION
1418: WHEN PA_API.G_EXCEPTION_ERROR THEN
1419: x_return_status := PA_API.HANDLE_EXCEPTIONS
1420: (
1421: l_api_name,
1422: G_PKG_NAME,
1423: 'PA_API.G_RET_STS_ERROR',
1419: x_return_status := PA_API.HANDLE_EXCEPTIONS
1420: (
1421: l_api_name,
1422: G_PKG_NAME,
1423: 'PA_API.G_RET_STS_ERROR',
1424: x_msg_count,
1425: x_msg_data,
1426: '_PVT'
1427: );
1424: x_msg_count,
1425: x_msg_data,
1426: '_PVT'
1427: );
1428: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1429: x_return_status := PA_API.HANDLE_EXCEPTIONS
1430: (
1431: l_api_name,
1432: G_PKG_NAME,
1425: x_msg_data,
1426: '_PVT'
1427: );
1428: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1429: x_return_status := PA_API.HANDLE_EXCEPTIONS
1430: (
1431: l_api_name,
1432: G_PKG_NAME,
1433: 'PA_API.G_RET_STS_UNEXP_ERROR',
1429: x_return_status := PA_API.HANDLE_EXCEPTIONS
1430: (
1431: l_api_name,
1432: G_PKG_NAME,
1433: 'PA_API.G_RET_STS_UNEXP_ERROR',
1434: x_msg_count,
1435: x_msg_data,
1436: '_PVT'
1437: );
1435: x_msg_data,
1436: '_PVT'
1437: );
1438: WHEN OTHERS THEN
1439: x_return_status := PA_API.HANDLE_EXCEPTIONS
1440: (
1441: l_api_name,
1442: G_PKG_NAME,
1443: 'OTHERS',
1453: -- update_row for:PA_CI_DIRECT_COST_DETAILS --
1454: ----------------------------------------------
1455:
1456: PROCEDURE update_row(
1457: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1458: x_return_status OUT NOCOPY VARCHAR2,
1459: x_msg_count OUT NOCOPY NUMBER,
1460: x_msg_data OUT NOCOPY VARCHAR2,
1461: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
1462: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType) IS
1463:
1464: l_api_version CONSTANT NUMBER := 1;
1465: l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
1466: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1467: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
1468: LDefPaCiDirectCostDetailsRec PaCiDirectCostDetailsRecType;
1469: l_row_notfound BOOLEAN := TRUE;
1470: ----------------------------------
1475: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType
1476: ) RETURN VARCHAR2 IS
1477: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType;
1478: l_row_notfound BOOLEAN := TRUE;
1479: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1480: BEGIN
1481: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1482: -- Get current database values
1483: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_return_status);
1480: BEGIN
1481: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1482: -- Get current database values
1483: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_return_status);
1484: IF (l_return_status = PA_API.G_RET_STS_SUCCESS) THEN
1485: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1486: THEN
1487: XPaCiDirectCostDetailsRec.dc_line_id := l_pa_ci_direct_cost8.dc_line_id;
1488: END IF;
1481: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1482: -- Get current database values
1483: l_pa_ci_direct_cost8 := get_rec(p_pa_ci_direct_cost1, l_return_status);
1484: IF (l_return_status = PA_API.G_RET_STS_SUCCESS) THEN
1485: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1486: THEN
1487: XPaCiDirectCostDetailsRec.dc_line_id := l_pa_ci_direct_cost8.dc_line_id;
1488: END IF;
1489: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1485: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1486: THEN
1487: XPaCiDirectCostDetailsRec.dc_line_id := l_pa_ci_direct_cost8.dc_line_id;
1488: END IF;
1489: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1490: THEN
1491: XPaCiDirectCostDetailsRec.ci_id := l_pa_ci_direct_cost8.ci_id;
1492: END IF;
1493: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1489: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1490: THEN
1491: XPaCiDirectCostDetailsRec.ci_id := l_pa_ci_direct_cost8.ci_id;
1492: END IF;
1493: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1494: THEN
1495: XPaCiDirectCostDetailsRec.project_id := l_pa_ci_direct_cost8.project_id;
1496: END IF;
1497: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1493: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1494: THEN
1495: XPaCiDirectCostDetailsRec.project_id := l_pa_ci_direct_cost8.project_id;
1496: END IF;
1497: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1498: THEN
1499: XPaCiDirectCostDetailsRec.task_id := l_pa_ci_direct_cost8.task_id;
1500: END IF;
1501: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1497: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1498: THEN
1499: XPaCiDirectCostDetailsRec.task_id := l_pa_ci_direct_cost8.task_id;
1500: END IF;
1501: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1502: THEN
1503: XPaCiDirectCostDetailsRec.expenditure_type := l_pa_ci_direct_cost8.expenditure_type;
1504: END IF;
1505: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1501: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1502: THEN
1503: XPaCiDirectCostDetailsRec.expenditure_type := l_pa_ci_direct_cost8.expenditure_type;
1504: END IF;
1505: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1506: THEN
1507: XPaCiDirectCostDetailsRec.resource_list_member_id := l_pa_ci_direct_cost8.resource_list_member_id;
1508: END IF;
1509: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1505: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1506: THEN
1507: XPaCiDirectCostDetailsRec.resource_list_member_id := l_pa_ci_direct_cost8.resource_list_member_id;
1508: END IF;
1509: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1510: THEN
1511: XPaCiDirectCostDetailsRec.unit_of_measure := l_pa_ci_direct_cost8.unit_of_measure;
1512: END IF;
1513: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1509: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1510: THEN
1511: XPaCiDirectCostDetailsRec.unit_of_measure := l_pa_ci_direct_cost8.unit_of_measure;
1512: END IF;
1513: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1514: THEN
1515: XPaCiDirectCostDetailsRec.currency_code := l_pa_ci_direct_cost8.currency_code;
1516: END IF;
1517: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1513: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1514: THEN
1515: XPaCiDirectCostDetailsRec.currency_code := l_pa_ci_direct_cost8.currency_code;
1516: END IF;
1517: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1518: THEN
1519: XPaCiDirectCostDetailsRec.quantity := l_pa_ci_direct_cost8.quantity;
1520: END IF;
1521: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1517: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1518: THEN
1519: XPaCiDirectCostDetailsRec.quantity := l_pa_ci_direct_cost8.quantity;
1520: END IF;
1521: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1522: THEN
1523: XPaCiDirectCostDetailsRec.planning_resource_rate := l_pa_ci_direct_cost8.planning_resource_rate;
1524: END IF;
1525: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1521: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1522: THEN
1523: XPaCiDirectCostDetailsRec.planning_resource_rate := l_pa_ci_direct_cost8.planning_resource_rate;
1524: END IF;
1525: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1526: THEN
1527: XPaCiDirectCostDetailsRec.raw_cost := l_pa_ci_direct_cost8.raw_cost;
1528: END IF;
1529: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1525: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1526: THEN
1527: XPaCiDirectCostDetailsRec.raw_cost := l_pa_ci_direct_cost8.raw_cost;
1528: END IF;
1529: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1530: THEN
1531: XPaCiDirectCostDetailsRec.burdened_cost := l_pa_ci_direct_cost8.burdened_cost;
1532: END IF;
1533: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1529: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1530: THEN
1531: XPaCiDirectCostDetailsRec.burdened_cost := l_pa_ci_direct_cost8.burdened_cost;
1532: END IF;
1533: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1534: THEN
1535: XPaCiDirectCostDetailsRec.raw_cost_rate := l_pa_ci_direct_cost8.raw_cost_rate;
1536: END IF;
1537: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1533: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1534: THEN
1535: XPaCiDirectCostDetailsRec.raw_cost_rate := l_pa_ci_direct_cost8.raw_cost_rate;
1536: END IF;
1537: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1538: THEN
1539: XPaCiDirectCostDetailsRec.burden_cost_rate := l_pa_ci_direct_cost8.burden_cost_rate;
1540: END IF;
1541: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1537: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1538: THEN
1539: XPaCiDirectCostDetailsRec.burden_cost_rate := l_pa_ci_direct_cost8.burden_cost_rate;
1540: END IF;
1541: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1542: THEN
1543: XPaCiDirectCostDetailsRec.resource_assignment_id := l_pa_ci_direct_cost8.resource_assignment_id;
1544: END IF;
1545: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1541: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1542: THEN
1543: XPaCiDirectCostDetailsRec.resource_assignment_id := l_pa_ci_direct_cost8.resource_assignment_id;
1544: END IF;
1545: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1546: THEN
1547: XPaCiDirectCostDetailsRec.effective_from := l_pa_ci_direct_cost8.effective_from;
1548: END IF;
1549: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1545: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1546: THEN
1547: XPaCiDirectCostDetailsRec.effective_from := l_pa_ci_direct_cost8.effective_from;
1548: END IF;
1549: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1550: THEN
1551: XPaCiDirectCostDetailsRec.effective_to := l_pa_ci_direct_cost8.effective_to;
1552: END IF;
1553: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1549: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1550: THEN
1551: XPaCiDirectCostDetailsRec.effective_to := l_pa_ci_direct_cost8.effective_to;
1552: END IF;
1553: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1554: THEN
1555: XPaCiDirectCostDetailsRec.change_reason_code := l_pa_ci_direct_cost8.change_reason_code;
1556: END IF;
1557: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1553: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1554: THEN
1555: XPaCiDirectCostDetailsRec.change_reason_code := l_pa_ci_direct_cost8.change_reason_code;
1556: END IF;
1557: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1558: THEN
1559: XPaCiDirectCostDetailsRec.change_description := l_pa_ci_direct_cost8.change_description;
1560: END IF;
1561: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1557: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1558: THEN
1559: XPaCiDirectCostDetailsRec.change_description := l_pa_ci_direct_cost8.change_description;
1560: END IF;
1561: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1562: THEN
1563: XPaCiDirectCostDetailsRec.created_by := l_pa_ci_direct_cost8.created_by;
1564: END IF;
1565: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1561: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1562: THEN
1563: XPaCiDirectCostDetailsRec.created_by := l_pa_ci_direct_cost8.created_by;
1564: END IF;
1565: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1566: THEN
1567: XPaCiDirectCostDetailsRec.creation_date := l_pa_ci_direct_cost8.creation_date;
1568: END IF;
1569: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1565: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1566: THEN
1567: XPaCiDirectCostDetailsRec.creation_date := l_pa_ci_direct_cost8.creation_date;
1568: END IF;
1569: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1570: THEN
1571: XPaCiDirectCostDetailsRec.last_update_by := l_pa_ci_direct_cost8.last_update_by;
1572: END IF;
1573: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1569: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1570: THEN
1571: XPaCiDirectCostDetailsRec.last_update_by := l_pa_ci_direct_cost8.last_update_by;
1572: END IF;
1573: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1574: THEN
1575: XPaCiDirectCostDetailsRec.last_update_date := l_pa_ci_direct_cost8.last_update_date;
1576: END IF;
1577: IF (XPaCiDirectCostDetailsRec.last_update_login = PA_API.G_MISS_NUM)
1573: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1574: THEN
1575: XPaCiDirectCostDetailsRec.last_update_date := l_pa_ci_direct_cost8.last_update_date;
1576: END IF;
1577: IF (XPaCiDirectCostDetailsRec.last_update_login = PA_API.G_MISS_NUM)
1578: THEN
1579: XPaCiDirectCostDetailsRec.last_update_login := l_pa_ci_direct_cost8.last_update_login;
1580: END IF;
1581: END IF;
1587: FUNCTION Set_Attributes (
1588: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
1589: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType
1590: ) RETURN VARCHAR2 IS
1591: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1592: BEGIN
1593: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1594: RETURN(l_return_status);
1595: END Set_Attributes;
1594: RETURN(l_return_status);
1595: END Set_Attributes;
1596: BEGIN
1597:
1598: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1598: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1605: RAISE PA_API.G_EXCEPTION_ERROR;
1606: END IF;
1599: p_init_msg_list,
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1605: RAISE PA_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1600: '_PVT',
1601: x_return_status);
1602: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1605: RAISE PA_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1608: l_return_status := Set_Attributes(
1601: x_return_status);
1602: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1603: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1604: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1605: RAISE PA_API.G_EXCEPTION_ERROR;
1606: END IF;
1607: --- Setting item attributes
1608: l_return_status := Set_Attributes(
1609: p_pa_ci_direct_cost1, -- IN
1608: l_return_status := Set_Attributes(
1609: p_pa_ci_direct_cost1, -- IN
1610: l_pa_ci_direct_cost8); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1609: p_pa_ci_direct_cost1, -- IN
1610: l_pa_ci_direct_cost8); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1610: l_pa_ci_direct_cost8); -- OUT
1611: --- If any errors happen abort API
1612: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1611: --- If any errors happen abort API
1612: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1613: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1614: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1621: RAISE PA_API.G_EXCEPTION_ERROR;
1622: END IF;
1615: RAISE PA_API.G_EXCEPTION_ERROR;
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1621: RAISE PA_API.G_EXCEPTION_ERROR;
1622: END IF;
1623:
1616: END IF;
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1621: RAISE PA_API.G_EXCEPTION_ERROR;
1622: END IF;
1623:
1624: UPDATE PA_CI_DIRECT_COST_DETAILS
1617: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1618: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1619: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1620: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1621: RAISE PA_API.G_EXCEPTION_ERROR;
1622: END IF;
1623:
1624: UPDATE PA_CI_DIRECT_COST_DETAILS
1625: SET CI_ID = LDefPaCiDirectCostDetailsRec.ci_id,
1648: WHERE DC_LINE_ID = LDefPaCiDirectCostDetailsRec.dc_line_id;
1649:
1650: XPaCiDirectCostDetailsRec := l_pa_ci_direct_cost8;
1651: x_return_status := l_return_status;
1652: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN PA_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := PA_API.HANDLE_EXCEPTIONS
1656: (
1650: XPaCiDirectCostDetailsRec := l_pa_ci_direct_cost8;
1651: x_return_status := l_return_status;
1652: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN PA_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := PA_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1651: x_return_status := l_return_status;
1652: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1653: EXCEPTION
1654: WHEN PA_API.G_EXCEPTION_ERROR THEN
1655: x_return_status := PA_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1659: 'PA_API.G_RET_STS_ERROR',
1655: x_return_status := PA_API.HANDLE_EXCEPTIONS
1656: (
1657: l_api_name,
1658: G_PKG_NAME,
1659: 'PA_API.G_RET_STS_ERROR',
1660: x_msg_count,
1661: x_msg_data,
1662: '_PVT'
1663: );
1660: x_msg_count,
1661: x_msg_data,
1662: '_PVT'
1663: );
1664: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1665: x_return_status := PA_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1661: x_msg_data,
1662: '_PVT'
1663: );
1664: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1665: x_return_status := PA_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1669: 'PA_API.G_RET_STS_UNEXP_ERROR',
1665: x_return_status := PA_API.HANDLE_EXCEPTIONS
1666: (
1667: l_api_name,
1668: G_PKG_NAME,
1669: 'PA_API.G_RET_STS_UNEXP_ERROR',
1670: x_msg_count,
1671: x_msg_data,
1672: '_PVT'
1673: );
1671: x_msg_data,
1672: '_PVT'
1673: );
1674: WHEN OTHERS THEN
1675: x_return_status := PA_API.HANDLE_EXCEPTIONS
1676: (
1677: l_api_name,
1678: G_PKG_NAME,
1679: 'OTHERS',
1687: -- update_row for:PA_CI_DIRECT_COST_DETAILS --
1688: ----------------------------------------------
1689: PROCEDURE update_row(
1690: p_api_version IN NUMBER,
1691: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1692: x_return_status OUT NOCOPY VARCHAR2,
1693: x_msg_count OUT NOCOPY NUMBER,
1694: x_msg_data OUT NOCOPY VARCHAR2,
1695: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
1696: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType) IS
1697:
1698: l_api_version CONSTANT NUMBER := 1;
1699: l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
1700: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1701: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
1702: LDefPaCiDirectCostDetailsRec PaCiDirectCostDetailsRecType;
1703: l_db_pa_ci_direct_cos106 PaCiDirectCostDetailsRecType;
1704: LxPaCiDirectCostDetailsRec PaCiDirectCostDetailsRecType;
1724: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
1725: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType
1726: ) RETURN VARCHAR2 IS
1727: l_row_notfound BOOLEAN := TRUE;
1728: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1729: BEGIN
1730: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1731: -- Get current database values
1732: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1731: -- Get current database values
1732: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1733: -- so it may be verified through LOCK_ROW.
1734: l_db_pa_ci_direct_cos106 := get_rec(p_pa_ci_direct_cost1, l_return_status);
1735: IF (l_return_status = PA_API.G_RET_STS_SUCCESS) THEN
1736: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1737: THEN
1738: XPaCiDirectCostDetailsRec.dc_line_id := l_db_pa_ci_direct_cos106.dc_line_id;
1739: END IF;
1732: -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
1733: -- so it may be verified through LOCK_ROW.
1734: l_db_pa_ci_direct_cos106 := get_rec(p_pa_ci_direct_cost1, l_return_status);
1735: IF (l_return_status = PA_API.G_RET_STS_SUCCESS) THEN
1736: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1737: THEN
1738: XPaCiDirectCostDetailsRec.dc_line_id := l_db_pa_ci_direct_cos106.dc_line_id;
1739: END IF;
1740: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1736: IF (XPaCiDirectCostDetailsRec.dc_line_id = PA_API.G_MISS_NUM)
1737: THEN
1738: XPaCiDirectCostDetailsRec.dc_line_id := l_db_pa_ci_direct_cos106.dc_line_id;
1739: END IF;
1740: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1741: THEN
1742: XPaCiDirectCostDetailsRec.ci_id := l_db_pa_ci_direct_cos106.ci_id;
1743: END IF;
1744: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1740: IF (XPaCiDirectCostDetailsRec.ci_id = PA_API.G_MISS_NUM)
1741: THEN
1742: XPaCiDirectCostDetailsRec.ci_id := l_db_pa_ci_direct_cos106.ci_id;
1743: END IF;
1744: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1745: THEN
1746: XPaCiDirectCostDetailsRec.project_id := l_db_pa_ci_direct_cos106.project_id;
1747: END IF;
1748: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1744: IF (XPaCiDirectCostDetailsRec.project_id = PA_API.G_MISS_NUM)
1745: THEN
1746: XPaCiDirectCostDetailsRec.project_id := l_db_pa_ci_direct_cos106.project_id;
1747: END IF;
1748: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1749: THEN
1750: XPaCiDirectCostDetailsRec.task_id := l_db_pa_ci_direct_cos106.task_id;
1751: END IF;
1752: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1748: IF (XPaCiDirectCostDetailsRec.task_id = PA_API.G_MISS_NUM)
1749: THEN
1750: XPaCiDirectCostDetailsRec.task_id := l_db_pa_ci_direct_cos106.task_id;
1751: END IF;
1752: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1753: THEN
1754: XPaCiDirectCostDetailsRec.expenditure_type := l_db_pa_ci_direct_cos106.expenditure_type;
1755: END IF;
1756: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1752: IF (XPaCiDirectCostDetailsRec.expenditure_type = PA_API.G_MISS_CHAR)
1753: THEN
1754: XPaCiDirectCostDetailsRec.expenditure_type := l_db_pa_ci_direct_cos106.expenditure_type;
1755: END IF;
1756: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1757: THEN
1758: XPaCiDirectCostDetailsRec.resource_list_member_id := l_db_pa_ci_direct_cos106.resource_list_member_id;
1759: END IF;
1760: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1756: IF (XPaCiDirectCostDetailsRec.resource_list_member_id = PA_API.G_MISS_NUM)
1757: THEN
1758: XPaCiDirectCostDetailsRec.resource_list_member_id := l_db_pa_ci_direct_cos106.resource_list_member_id;
1759: END IF;
1760: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1761: THEN
1762: XPaCiDirectCostDetailsRec.unit_of_measure := l_db_pa_ci_direct_cos106.unit_of_measure;
1763: END IF;
1764: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1760: IF (XPaCiDirectCostDetailsRec.unit_of_measure = PA_API.G_MISS_CHAR)
1761: THEN
1762: XPaCiDirectCostDetailsRec.unit_of_measure := l_db_pa_ci_direct_cos106.unit_of_measure;
1763: END IF;
1764: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1765: THEN
1766: XPaCiDirectCostDetailsRec.currency_code := l_db_pa_ci_direct_cos106.currency_code;
1767: END IF;
1768: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1764: IF (XPaCiDirectCostDetailsRec.currency_code = PA_API.G_MISS_CHAR)
1765: THEN
1766: XPaCiDirectCostDetailsRec.currency_code := l_db_pa_ci_direct_cos106.currency_code;
1767: END IF;
1768: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1769: THEN
1770: XPaCiDirectCostDetailsRec.quantity := l_db_pa_ci_direct_cos106.quantity;
1771: END IF;
1772: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1768: IF (XPaCiDirectCostDetailsRec.quantity = PA_API.G_MISS_NUM)
1769: THEN
1770: XPaCiDirectCostDetailsRec.quantity := l_db_pa_ci_direct_cos106.quantity;
1771: END IF;
1772: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1773: THEN
1774: XPaCiDirectCostDetailsRec.planning_resource_rate := l_db_pa_ci_direct_cos106.planning_resource_rate;
1775: END IF;
1776: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1772: IF (XPaCiDirectCostDetailsRec.planning_resource_rate = PA_API.G_MISS_NUM)
1773: THEN
1774: XPaCiDirectCostDetailsRec.planning_resource_rate := l_db_pa_ci_direct_cos106.planning_resource_rate;
1775: END IF;
1776: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1777: THEN
1778: XPaCiDirectCostDetailsRec.raw_cost := l_db_pa_ci_direct_cos106.raw_cost;
1779: END IF;
1780: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1776: IF (XPaCiDirectCostDetailsRec.raw_cost = PA_API.G_MISS_NUM)
1777: THEN
1778: XPaCiDirectCostDetailsRec.raw_cost := l_db_pa_ci_direct_cos106.raw_cost;
1779: END IF;
1780: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1781: THEN
1782: XPaCiDirectCostDetailsRec.burdened_cost := l_db_pa_ci_direct_cos106.burdened_cost;
1783: END IF;
1784: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1780: IF (XPaCiDirectCostDetailsRec.burdened_cost = PA_API.G_MISS_NUM)
1781: THEN
1782: XPaCiDirectCostDetailsRec.burdened_cost := l_db_pa_ci_direct_cos106.burdened_cost;
1783: END IF;
1784: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1785: THEN
1786: XPaCiDirectCostDetailsRec.raw_cost_rate := l_db_pa_ci_direct_cos106.raw_cost_rate;
1787: END IF;
1788: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1784: IF (XPaCiDirectCostDetailsRec.raw_cost_rate = PA_API.G_MISS_NUM)
1785: THEN
1786: XPaCiDirectCostDetailsRec.raw_cost_rate := l_db_pa_ci_direct_cos106.raw_cost_rate;
1787: END IF;
1788: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1789: THEN
1790: XPaCiDirectCostDetailsRec.burden_cost_rate := l_db_pa_ci_direct_cos106.burden_cost_rate;
1791: END IF;
1792: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1788: IF (XPaCiDirectCostDetailsRec.burden_cost_rate = PA_API.G_MISS_NUM)
1789: THEN
1790: XPaCiDirectCostDetailsRec.burden_cost_rate := l_db_pa_ci_direct_cos106.burden_cost_rate;
1791: END IF;
1792: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1793: THEN
1794: XPaCiDirectCostDetailsRec.resource_assignment_id := l_db_pa_ci_direct_cos106.resource_assignment_id;
1795: END IF;
1796: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1792: IF (XPaCiDirectCostDetailsRec.resource_assignment_id = PA_API.G_MISS_NUM)
1793: THEN
1794: XPaCiDirectCostDetailsRec.resource_assignment_id := l_db_pa_ci_direct_cos106.resource_assignment_id;
1795: END IF;
1796: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1797: THEN
1798: XPaCiDirectCostDetailsRec.effective_from := l_db_pa_ci_direct_cos106.effective_from;
1799: END IF;
1800: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1796: IF (XPaCiDirectCostDetailsRec.effective_from = PA_API.G_MISS_DATE)
1797: THEN
1798: XPaCiDirectCostDetailsRec.effective_from := l_db_pa_ci_direct_cos106.effective_from;
1799: END IF;
1800: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1801: THEN
1802: XPaCiDirectCostDetailsRec.effective_to := l_db_pa_ci_direct_cos106.effective_to;
1803: END IF;
1804: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1800: IF (XPaCiDirectCostDetailsRec.effective_to = PA_API.G_MISS_DATE)
1801: THEN
1802: XPaCiDirectCostDetailsRec.effective_to := l_db_pa_ci_direct_cos106.effective_to;
1803: END IF;
1804: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1805: THEN
1806: XPaCiDirectCostDetailsRec.change_reason_code := l_db_pa_ci_direct_cos106.change_reason_code;
1807: END IF;
1808: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1804: IF (XPaCiDirectCostDetailsRec.change_reason_code = PA_API.G_MISS_CHAR)
1805: THEN
1806: XPaCiDirectCostDetailsRec.change_reason_code := l_db_pa_ci_direct_cos106.change_reason_code;
1807: END IF;
1808: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1809: THEN
1810: XPaCiDirectCostDetailsRec.change_description := l_db_pa_ci_direct_cos106.change_description;
1811: END IF;
1812: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1808: IF (XPaCiDirectCostDetailsRec.change_description = PA_API.G_MISS_CHAR)
1809: THEN
1810: XPaCiDirectCostDetailsRec.change_description := l_db_pa_ci_direct_cos106.change_description;
1811: END IF;
1812: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1813: THEN
1814: XPaCiDirectCostDetailsRec.created_by := l_db_pa_ci_direct_cos106.created_by;
1815: END IF;
1816: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1812: IF (XPaCiDirectCostDetailsRec.created_by = PA_API.G_MISS_NUM)
1813: THEN
1814: XPaCiDirectCostDetailsRec.created_by := l_db_pa_ci_direct_cos106.created_by;
1815: END IF;
1816: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1817: THEN
1818: XPaCiDirectCostDetailsRec.creation_date := l_db_pa_ci_direct_cos106.creation_date;
1819: END IF;
1820: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1816: IF (XPaCiDirectCostDetailsRec.creation_date = PA_API.G_MISS_DATE)
1817: THEN
1818: XPaCiDirectCostDetailsRec.creation_date := l_db_pa_ci_direct_cos106.creation_date;
1819: END IF;
1820: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1821: THEN
1822: XPaCiDirectCostDetailsRec.last_update_by := l_db_pa_ci_direct_cos106.last_update_by;
1823: END IF;
1824: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1820: IF (XPaCiDirectCostDetailsRec.last_update_by = PA_API.G_MISS_NUM)
1821: THEN
1822: XPaCiDirectCostDetailsRec.last_update_by := l_db_pa_ci_direct_cos106.last_update_by;
1823: END IF;
1824: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1825: THEN
1826: XPaCiDirectCostDetailsRec.last_update_date := l_db_pa_ci_direct_cos106.last_update_date;
1827: END IF;
1828: IF (XPaCiDirectCostDetailsRec.last_update_login = PA_API.G_MISS_NUM)
1824: IF (XPaCiDirectCostDetailsRec.last_update_date = PA_API.G_MISS_DATE)
1825: THEN
1826: XPaCiDirectCostDetailsRec.last_update_date := l_db_pa_ci_direct_cos106.last_update_date;
1827: END IF;
1828: IF (XPaCiDirectCostDetailsRec.last_update_login = PA_API.G_MISS_NUM)
1829: THEN
1830: XPaCiDirectCostDetailsRec.last_update_login := l_db_pa_ci_direct_cos106.last_update_login;
1831: END IF;
1832: END IF;
1838: FUNCTION Set_Attributes (
1839: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType,
1840: XPaCiDirectCostDetailsRec OUT NOCOPY PaCiDirectCostDetailsRecType
1841: ) RETURN VARCHAR2 IS
1842: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1843: BEGIN
1844: XPaCiDirectCostDetailsRec := p_pa_ci_direct_cost1;
1845: RETURN(l_return_status);
1846: END Set_Attributes;
1845: RETURN(l_return_status);
1846: END Set_Attributes;
1847: BEGIN
1848:
1849: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1850: G_PKG_NAME,
1851: p_init_msg_list,
1852: l_api_version,
1853: p_api_version,
1852: l_api_version,
1853: p_api_version,
1854: '_PVT',
1855: x_return_status);
1856: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1857: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1858: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1859: RAISE PA_API.G_EXCEPTION_ERROR;
1860: END IF;
1853: p_api_version,
1854: '_PVT',
1855: x_return_status);
1856: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1857: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1858: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1859: RAISE PA_API.G_EXCEPTION_ERROR;
1860: END IF;
1861:
1854: '_PVT',
1855: x_return_status);
1856: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1857: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1858: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1859: RAISE PA_API.G_EXCEPTION_ERROR;
1860: END IF;
1861:
1862: --- Setting item attributes
1855: x_return_status);
1856: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1857: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1858: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1859: RAISE PA_API.G_EXCEPTION_ERROR;
1860: END IF;
1861:
1862: --- Setting item attributes
1863: l_return_status := Set_Attributes(
1863: l_return_status := Set_Attributes(
1864: p_pa_ci_direct_cost1, -- IN
1865: XPaCiDirectCostDetailsRec); -- OUT
1866: --- If any errors happen abort API
1867: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1868: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1869: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1870: RAISE PA_API.G_EXCEPTION_ERROR;
1871: END IF;
1864: p_pa_ci_direct_cost1, -- IN
1865: XPaCiDirectCostDetailsRec); -- OUT
1866: --- If any errors happen abort API
1867: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1868: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1869: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1870: RAISE PA_API.G_EXCEPTION_ERROR;
1871: END IF;
1872:
1865: XPaCiDirectCostDetailsRec); -- OUT
1866: --- If any errors happen abort API
1867: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1868: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1869: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1870: RAISE PA_API.G_EXCEPTION_ERROR;
1871: END IF;
1872:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1866: --- If any errors happen abort API
1867: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1868: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1869: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1870: RAISE PA_API.G_EXCEPTION_ERROR;
1871: END IF;
1872:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1874: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1870: RAISE PA_API.G_EXCEPTION_ERROR;
1871: END IF;
1872:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1874: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1875: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1876: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1877: RAISE PA_API.G_EXCEPTION_ERROR;
1878: END IF;
1871: END IF;
1872:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1874: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1875: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1876: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1877: RAISE PA_API.G_EXCEPTION_ERROR;
1878: END IF;
1879: LDefPaCiDirectCostDetailsRec := fill_who_columns(LDefPaCiDirectCostDetailsRec);
1872:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1874: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1875: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1876: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1877: RAISE PA_API.G_EXCEPTION_ERROR;
1878: END IF;
1879: LDefPaCiDirectCostDetailsRec := fill_who_columns(LDefPaCiDirectCostDetailsRec);
1880:
1873: l_return_status := populate_new_record(l_pa_ci_direct_cost8, LDefPaCiDirectCostDetailsRec);
1874: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1875: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1876: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1877: RAISE PA_API.G_EXCEPTION_ERROR;
1878: END IF;
1879: LDefPaCiDirectCostDetailsRec := fill_who_columns(LDefPaCiDirectCostDetailsRec);
1880:
1881: --- Validate all non-missing attributes (Item Level Validation)
1880:
1881: --- Validate all non-missing attributes (Item Level Validation)
1882: l_return_status := Validate_Attributes(LDefPaCiDirectCostDetailsRec);
1883: --- If any errors happen abort API
1884: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1885: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1886: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1887: RAISE PA_API.G_EXCEPTION_ERROR;
1888: END IF;
1881: --- Validate all non-missing attributes (Item Level Validation)
1882: l_return_status := Validate_Attributes(LDefPaCiDirectCostDetailsRec);
1883: --- If any errors happen abort API
1884: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1885: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1886: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1887: RAISE PA_API.G_EXCEPTION_ERROR;
1888: END IF;
1889:
1882: l_return_status := Validate_Attributes(LDefPaCiDirectCostDetailsRec);
1883: --- If any errors happen abort API
1884: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1885: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1886: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1887: RAISE PA_API.G_EXCEPTION_ERROR;
1888: END IF;
1889:
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1883: --- If any errors happen abort API
1884: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1885: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1886: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1887: RAISE PA_API.G_EXCEPTION_ERROR;
1888: END IF;
1889:
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1891: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1887: RAISE PA_API.G_EXCEPTION_ERROR;
1888: END IF;
1889:
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1891: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1892: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1893: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1894: RAISE PA_API.G_EXCEPTION_ERROR;
1895: END IF;
1888: END IF;
1889:
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1891: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1892: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1893: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1894: RAISE PA_API.G_EXCEPTION_ERROR;
1895: END IF;
1896:
1889:
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1891: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1892: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1893: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1894: RAISE PA_API.G_EXCEPTION_ERROR;
1895: END IF;
1896:
1897: -- Lock the Record
1890: l_return_status := Validate_Record(LDefPaCiDirectCostDetailsRec, l_db_pa_ci_direct_cos106);
1891: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1892: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1893: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1894: RAISE PA_API.G_EXCEPTION_ERROR;
1895: END IF;
1896:
1897: -- Lock the Record
1898: lock_row(
1901: x_return_status => l_return_status,
1902: x_msg_count => x_msg_count,
1903: x_msg_data => x_msg_data,
1904: p_pa_ci_direct_cost1 => p_pa_ci_direct_cost1);
1905: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1906: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1907: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1908: RAISE PA_API.G_EXCEPTION_ERROR;
1909: END IF;
1902: x_msg_count => x_msg_count,
1903: x_msg_data => x_msg_data,
1904: p_pa_ci_direct_cost1 => p_pa_ci_direct_cost1);
1905: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1906: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1907: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1908: RAISE PA_API.G_EXCEPTION_ERROR;
1909: END IF;
1910:
1903: x_msg_data => x_msg_data,
1904: p_pa_ci_direct_cost1 => p_pa_ci_direct_cost1);
1905: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1906: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1907: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1908: RAISE PA_API.G_EXCEPTION_ERROR;
1909: END IF;
1910:
1911: -----------------------------------------
1904: p_pa_ci_direct_cost1 => p_pa_ci_direct_cost1);
1905: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1906: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1907: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1908: RAISE PA_API.G_EXCEPTION_ERROR;
1909: END IF;
1910:
1911: -----------------------------------------
1912: -- Move VIEW record to "Child" records --
1923: x_msg_data,
1924: l_pa_ci_direct_cost8,
1925: LxPaCiDirectCostDetailsRec
1926: );
1927: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1928: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1929: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1930: RAISE PA_API.G_EXCEPTION_ERROR;
1931: END IF;
1924: l_pa_ci_direct_cost8,
1925: LxPaCiDirectCostDetailsRec
1926: );
1927: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1928: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1929: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1930: RAISE PA_API.G_EXCEPTION_ERROR;
1931: END IF;
1932: migrate(LxPaCiDirectCostDetailsRec, LDefPaCiDirectCostDetailsRec);
1925: LxPaCiDirectCostDetailsRec
1926: );
1927: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1928: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1929: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1930: RAISE PA_API.G_EXCEPTION_ERROR;
1931: END IF;
1932: migrate(LxPaCiDirectCostDetailsRec, LDefPaCiDirectCostDetailsRec);
1933: XPaCiDirectCostDetailsRec := LDefPaCiDirectCostDetailsRec;
1926: );
1927: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1928: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1929: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1930: RAISE PA_API.G_EXCEPTION_ERROR;
1931: END IF;
1932: migrate(LxPaCiDirectCostDetailsRec, LDefPaCiDirectCostDetailsRec);
1933: XPaCiDirectCostDetailsRec := LDefPaCiDirectCostDetailsRec;
1934: x_return_status := l_return_status;
1931: END IF;
1932: migrate(LxPaCiDirectCostDetailsRec, LDefPaCiDirectCostDetailsRec);
1933: XPaCiDirectCostDetailsRec := LDefPaCiDirectCostDetailsRec;
1934: x_return_status := l_return_status;
1935: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1936: EXCEPTION
1937: WHEN PA_API.G_EXCEPTION_ERROR THEN
1938: x_return_status := PA_API.HANDLE_EXCEPTIONS
1939: (
1933: XPaCiDirectCostDetailsRec := LDefPaCiDirectCostDetailsRec;
1934: x_return_status := l_return_status;
1935: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1936: EXCEPTION
1937: WHEN PA_API.G_EXCEPTION_ERROR THEN
1938: x_return_status := PA_API.HANDLE_EXCEPTIONS
1939: (
1940: l_api_name,
1941: G_PKG_NAME,
1934: x_return_status := l_return_status;
1935: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1936: EXCEPTION
1937: WHEN PA_API.G_EXCEPTION_ERROR THEN
1938: x_return_status := PA_API.HANDLE_EXCEPTIONS
1939: (
1940: l_api_name,
1941: G_PKG_NAME,
1942: 'PA_API.G_RET_STS_ERROR',
1938: x_return_status := PA_API.HANDLE_EXCEPTIONS
1939: (
1940: l_api_name,
1941: G_PKG_NAME,
1942: 'PA_API.G_RET_STS_ERROR',
1943: x_msg_count,
1944: x_msg_data,
1945: '_PVT'
1946: );
1943: x_msg_count,
1944: x_msg_data,
1945: '_PVT'
1946: );
1947: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1948: x_return_status := PA_API.HANDLE_EXCEPTIONS
1949: (
1950: l_api_name,
1951: G_PKG_NAME,
1944: x_msg_data,
1945: '_PVT'
1946: );
1947: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1948: x_return_status := PA_API.HANDLE_EXCEPTIONS
1949: (
1950: l_api_name,
1951: G_PKG_NAME,
1952: 'PA_API.G_RET_STS_UNEXP_ERROR',
1948: x_return_status := PA_API.HANDLE_EXCEPTIONS
1949: (
1950: l_api_name,
1951: G_PKG_NAME,
1952: 'PA_API.G_RET_STS_UNEXP_ERROR',
1953: x_msg_count,
1954: x_msg_data,
1955: '_PVT'
1956: );
1954: x_msg_data,
1955: '_PVT'
1956: );
1957: WHEN OTHERS THEN
1958: x_return_status := PA_API.HANDLE_EXCEPTIONS
1959: (
1960: l_api_name,
1961: G_PKG_NAME,
1962: 'OTHERS',
1969: -- PL/SQL TBL update_row for:pa_ci_direct_cost_details_tbl --
1970: -------------------------------------------------------------
1971: PROCEDURE update_row(
1972: p_api_version IN NUMBER,
1973: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
1974: x_return_status OUT NOCOPY VARCHAR2,
1975: x_msg_count OUT NOCOPY NUMBER,
1976: x_msg_data OUT NOCOPY VARCHAR2,
1977: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
1975: x_msg_count OUT NOCOPY NUMBER,
1976: x_msg_data OUT NOCOPY VARCHAR2,
1977: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
1978: XPaCiDirectCostDetailsTbl OUT NOCOPY PaCiDirectCostDetailsTblType,
1979: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
1980:
1981: l_api_version CONSTANT NUMBER := 1;
1982: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1983: i NUMBER := 0;
1981: l_api_version CONSTANT NUMBER := 1;
1982: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
1983: i NUMBER := 0;
1984: BEGIN
1985: PA_API.init_msg_list(p_init_msg_list);
1986: -- Make sure PL/SQL table has records in it before passing
1987: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1988: i := PPaCiDirectCostDetailsTbl.FIRST;
1989: LOOP
1987: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
1988: i := PPaCiDirectCostDetailsTbl.FIRST;
1989: LOOP
1990: DECLARE
1991: l_error_rec PA_API.ERROR_REC_TYPE;
1992: BEGIN
1993: l_error_rec.api_name := l_api_name;
1994: l_error_rec.api_package := G_PKG_NAME;
1995: l_error_rec.idx := i;
1994: l_error_rec.api_package := G_PKG_NAME;
1995: l_error_rec.idx := i;
1996: update_row (
1997: p_api_version => p_api_version,
1998: p_init_msg_list => PA_API.G_FALSE,
1999: x_return_status => l_error_rec.error_type,
2000: x_msg_count => l_error_rec.msg_count,
2001: x_msg_data => l_error_rec.msg_data,
2002: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i),
2000: x_msg_count => l_error_rec.msg_count,
2001: x_msg_data => l_error_rec.msg_data,
2002: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i),
2003: XPaCiDirectCostDetailsRec => XPaCiDirectCostDetailsTbl(i));
2004: IF (l_error_rec.error_type <> PA_API.G_RET_STS_SUCCESS) THEN
2005: l_error_rec.sqlcode := SQLCODE;
2006: load_error_tbl(l_error_rec, px_error_tbl);
2007: ELSE
2008: x_msg_count := l_error_rec.msg_count;
2008: x_msg_count := l_error_rec.msg_count;
2009: x_msg_data := l_error_rec.msg_data;
2010: END IF;
2011: EXCEPTION
2012: WHEN PA_API.G_EXCEPTION_ERROR THEN
2013: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2014: l_error_rec.sqlcode := SQLCODE;
2015: load_error_tbl(l_error_rec, px_error_tbl);
2016: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2009: x_msg_data := l_error_rec.msg_data;
2010: END IF;
2011: EXCEPTION
2012: WHEN PA_API.G_EXCEPTION_ERROR THEN
2013: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2014: l_error_rec.sqlcode := SQLCODE;
2015: load_error_tbl(l_error_rec, px_error_tbl);
2016: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2017: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2012: WHEN PA_API.G_EXCEPTION_ERROR THEN
2013: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2014: l_error_rec.sqlcode := SQLCODE;
2015: load_error_tbl(l_error_rec, px_error_tbl);
2016: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2017: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2018: l_error_rec.sqlcode := SQLCODE;
2019: load_error_tbl(l_error_rec, px_error_tbl);
2020: WHEN OTHERS THEN
2013: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2014: l_error_rec.sqlcode := SQLCODE;
2015: load_error_tbl(l_error_rec, px_error_tbl);
2016: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2017: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2018: l_error_rec.sqlcode := SQLCODE;
2019: load_error_tbl(l_error_rec, px_error_tbl);
2020: WHEN OTHERS THEN
2021: l_error_rec.error_type := 'OTHERS';
2028: END IF;
2029: -- Loop through the error_tbl to find the error with the highest severity
2030: -- and return it.
2031: x_return_status := find_highest_exception(px_error_tbl);
2032: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2033: EXCEPTION
2034: WHEN PA_API.G_EXCEPTION_ERROR THEN
2035: x_return_status := PA_API.HANDLE_EXCEPTIONS
2036: (
2030: -- and return it.
2031: x_return_status := find_highest_exception(px_error_tbl);
2032: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2033: EXCEPTION
2034: WHEN PA_API.G_EXCEPTION_ERROR THEN
2035: x_return_status := PA_API.HANDLE_EXCEPTIONS
2036: (
2037: l_api_name,
2038: G_PKG_NAME,
2031: x_return_status := find_highest_exception(px_error_tbl);
2032: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2033: EXCEPTION
2034: WHEN PA_API.G_EXCEPTION_ERROR THEN
2035: x_return_status := PA_API.HANDLE_EXCEPTIONS
2036: (
2037: l_api_name,
2038: G_PKG_NAME,
2039: 'PA_API.G_RET_STS_ERROR',
2035: x_return_status := PA_API.HANDLE_EXCEPTIONS
2036: (
2037: l_api_name,
2038: G_PKG_NAME,
2039: 'PA_API.G_RET_STS_ERROR',
2040: x_msg_count,
2041: x_msg_data,
2042: '_PVT'
2043: );
2040: x_msg_count,
2041: x_msg_data,
2042: '_PVT'
2043: );
2044: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2045: x_return_status := PA_API.HANDLE_EXCEPTIONS
2046: (
2047: l_api_name,
2048: G_PKG_NAME,
2041: x_msg_data,
2042: '_PVT'
2043: );
2044: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2045: x_return_status := PA_API.HANDLE_EXCEPTIONS
2046: (
2047: l_api_name,
2048: G_PKG_NAME,
2049: 'PA_API.G_RET_STS_UNEXP_ERROR',
2045: x_return_status := PA_API.HANDLE_EXCEPTIONS
2046: (
2047: l_api_name,
2048: G_PKG_NAME,
2049: 'PA_API.G_RET_STS_UNEXP_ERROR',
2050: x_msg_count,
2051: x_msg_data,
2052: '_PVT'
2053: );
2051: x_msg_data,
2052: '_PVT'
2053: );
2054: WHEN OTHERS THEN
2055: x_return_status := PA_API.HANDLE_EXCEPTIONS
2056: (
2057: l_api_name,
2058: G_PKG_NAME,
2059: 'OTHERS',
2067: -- PL/SQL TBL update_row for:PA_CI_DIRECT_COST_DETAILS_TBL --
2068: -------------------------------------------------------------
2069: PROCEDURE update_row(
2070: p_api_version IN NUMBER,
2071: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
2072: x_return_status OUT NOCOPY VARCHAR2,
2073: x_msg_count OUT NOCOPY NUMBER,
2074: x_msg_data OUT NOCOPY VARCHAR2,
2075: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
2076: XPaCiDirectCostDetailsTbl OUT NOCOPY PaCiDirectCostDetailsTblType) IS
2077:
2078: l_api_version CONSTANT NUMBER := 1;
2079: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2080: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2081: l_error_tbl PA_API.ERROR_TBL_TYPE;
2082: BEGIN
2083: PA_API.init_msg_list(p_init_msg_list);
2084: -- Make sure PL/SQL table has records in it before passing
2077:
2078: l_api_version CONSTANT NUMBER := 1;
2079: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2080: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2081: l_error_tbl PA_API.ERROR_TBL_TYPE;
2082: BEGIN
2083: PA_API.init_msg_list(p_init_msg_list);
2084: -- Make sure PL/SQL table has records in it before passing
2085: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2079: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2080: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2081: l_error_tbl PA_API.ERROR_TBL_TYPE;
2082: BEGIN
2083: PA_API.init_msg_list(p_init_msg_list);
2084: -- Make sure PL/SQL table has records in it before passing
2085: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2086: update_row (
2087: p_api_version => p_api_version,
2084: -- Make sure PL/SQL table has records in it before passing
2085: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2086: update_row (
2087: p_api_version => p_api_version,
2088: p_init_msg_list => PA_API.G_FALSE,
2089: x_return_status => x_return_status,
2090: x_msg_count => x_msg_count,
2091: x_msg_data => x_msg_data,
2092: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
2092: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
2093: XPaCiDirectCostDetailsTbl => XPaCiDirectCostDetailsTbl,
2094: px_error_tbl => l_error_tbl);
2095: END IF;
2096: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2097: EXCEPTION
2098: WHEN PA_API.G_EXCEPTION_ERROR THEN
2099: x_return_status := PA_API.HANDLE_EXCEPTIONS
2100: (
2094: px_error_tbl => l_error_tbl);
2095: END IF;
2096: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2097: EXCEPTION
2098: WHEN PA_API.G_EXCEPTION_ERROR THEN
2099: x_return_status := PA_API.HANDLE_EXCEPTIONS
2100: (
2101: l_api_name,
2102: G_PKG_NAME,
2095: END IF;
2096: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2097: EXCEPTION
2098: WHEN PA_API.G_EXCEPTION_ERROR THEN
2099: x_return_status := PA_API.HANDLE_EXCEPTIONS
2100: (
2101: l_api_name,
2102: G_PKG_NAME,
2103: 'PA_API.G_RET_STS_ERROR',
2099: x_return_status := PA_API.HANDLE_EXCEPTIONS
2100: (
2101: l_api_name,
2102: G_PKG_NAME,
2103: 'PA_API.G_RET_STS_ERROR',
2104: x_msg_count,
2105: x_msg_data,
2106: '_PVT'
2107: );
2104: x_msg_count,
2105: x_msg_data,
2106: '_PVT'
2107: );
2108: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2109: x_return_status := PA_API.HANDLE_EXCEPTIONS
2110: (
2111: l_api_name,
2112: G_PKG_NAME,
2105: x_msg_data,
2106: '_PVT'
2107: );
2108: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2109: x_return_status := PA_API.HANDLE_EXCEPTIONS
2110: (
2111: l_api_name,
2112: G_PKG_NAME,
2113: 'PA_API.G_RET_STS_UNEXP_ERROR',
2109: x_return_status := PA_API.HANDLE_EXCEPTIONS
2110: (
2111: l_api_name,
2112: G_PKG_NAME,
2113: 'PA_API.G_RET_STS_UNEXP_ERROR',
2114: x_msg_count,
2115: x_msg_data,
2116: '_PVT'
2117: );
2115: x_msg_data,
2116: '_PVT'
2117: );
2118: WHEN OTHERS THEN
2119: x_return_status := PA_API.HANDLE_EXCEPTIONS
2120: (
2121: l_api_name,
2122: G_PKG_NAME,
2123: 'OTHERS',
2133: ----------------------------------------------
2134: -- delete_row for:PA_CI_DIRECT_COST_DETAILS --
2135: ----------------------------------------------
2136: PROCEDURE delete_row(
2137: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
2138: x_return_status OUT NOCOPY VARCHAR2,
2139: x_msg_count OUT NOCOPY NUMBER,
2140: x_msg_data OUT NOCOPY VARCHAR2,
2141: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
2141: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
2142:
2143: l_api_version CONSTANT NUMBER := 1;
2144: l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
2145: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2146: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
2147: l_row_notfound BOOLEAN := TRUE;
2148: BEGIN
2149: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2145: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2146: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
2147: l_row_notfound BOOLEAN := TRUE;
2148: BEGIN
2149: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2150: p_init_msg_list,
2151: '_PVT',
2152: x_return_status);
2153: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2149: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2150: p_init_msg_list,
2151: '_PVT',
2152: x_return_status);
2153: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2154: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2155: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2156: RAISE PA_API.G_EXCEPTION_ERROR;
2157: END IF;
2150: p_init_msg_list,
2151: '_PVT',
2152: x_return_status);
2153: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2154: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2155: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2156: RAISE PA_API.G_EXCEPTION_ERROR;
2157: END IF;
2158:
2151: '_PVT',
2152: x_return_status);
2153: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2154: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2155: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2156: RAISE PA_API.G_EXCEPTION_ERROR;
2157: END IF;
2158:
2159: DELETE FROM PA_CI_DIRECT_COST_DETAILS
2152: x_return_status);
2153: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2154: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2155: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2156: RAISE PA_API.G_EXCEPTION_ERROR;
2157: END IF;
2158:
2159: DELETE FROM PA_CI_DIRECT_COST_DETAILS
2160: WHERE DC_LINE_ID = p_pa_ci_direct_cost1.dc_line_id;
2159: DELETE FROM PA_CI_DIRECT_COST_DETAILS
2160: WHERE DC_LINE_ID = p_pa_ci_direct_cost1.dc_line_id;
2161:
2162: x_return_status := l_return_status;
2163: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2164: EXCEPTION
2165: WHEN PA_API.G_EXCEPTION_ERROR THEN
2166: x_return_status := PA_API.HANDLE_EXCEPTIONS
2167: (
2161:
2162: x_return_status := l_return_status;
2163: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2164: EXCEPTION
2165: WHEN PA_API.G_EXCEPTION_ERROR THEN
2166: x_return_status := PA_API.HANDLE_EXCEPTIONS
2167: (
2168: l_api_name,
2169: G_PKG_NAME,
2162: x_return_status := l_return_status;
2163: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2164: EXCEPTION
2165: WHEN PA_API.G_EXCEPTION_ERROR THEN
2166: x_return_status := PA_API.HANDLE_EXCEPTIONS
2167: (
2168: l_api_name,
2169: G_PKG_NAME,
2170: 'PA_API.G_RET_STS_ERROR',
2166: x_return_status := PA_API.HANDLE_EXCEPTIONS
2167: (
2168: l_api_name,
2169: G_PKG_NAME,
2170: 'PA_API.G_RET_STS_ERROR',
2171: x_msg_count,
2172: x_msg_data,
2173: '_PVT'
2174: );
2171: x_msg_count,
2172: x_msg_data,
2173: '_PVT'
2174: );
2175: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2176: x_return_status := PA_API.HANDLE_EXCEPTIONS
2177: (
2178: l_api_name,
2179: G_PKG_NAME,
2172: x_msg_data,
2173: '_PVT'
2174: );
2175: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2176: x_return_status := PA_API.HANDLE_EXCEPTIONS
2177: (
2178: l_api_name,
2179: G_PKG_NAME,
2180: 'PA_API.G_RET_STS_UNEXP_ERROR',
2176: x_return_status := PA_API.HANDLE_EXCEPTIONS
2177: (
2178: l_api_name,
2179: G_PKG_NAME,
2180: 'PA_API.G_RET_STS_UNEXP_ERROR',
2181: x_msg_count,
2182: x_msg_data,
2183: '_PVT'
2184: );
2182: x_msg_data,
2183: '_PVT'
2184: );
2185: WHEN OTHERS THEN
2186: x_return_status := PA_API.HANDLE_EXCEPTIONS
2187: (
2188: l_api_name,
2189: G_PKG_NAME,
2190: 'OTHERS',
2197: -- delete_row for:PA_CI_DIRECT_COST_DETAILS --
2198: ----------------------------------------------
2199: PROCEDURE delete_row(
2200: p_api_version IN NUMBER,
2201: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
2202: x_return_status OUT NOCOPY VARCHAR2,
2203: x_msg_count OUT NOCOPY NUMBER,
2204: x_msg_data OUT NOCOPY VARCHAR2,
2205: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
2205: p_pa_ci_direct_cost1 IN PaCiDirectCostDetailsRecType) IS
2206:
2207: l_api_version CONSTANT NUMBER := 1;
2208: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
2209: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2210: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
2211: BEGIN
2212: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2213: G_PKG_NAME,
2208: l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
2209: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2210: l_pa_ci_direct_cost8 PaCiDirectCostDetailsRecType := p_pa_ci_direct_cost1;
2211: BEGIN
2212: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2213: G_PKG_NAME,
2214: p_init_msg_list,
2215: l_api_version,
2216: p_api_version,
2215: l_api_version,
2216: p_api_version,
2217: '_PVT',
2218: x_return_status);
2219: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2220: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2221: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2222: RAISE PA_API.G_EXCEPTION_ERROR;
2223: END IF;
2216: p_api_version,
2217: '_PVT',
2218: x_return_status);
2219: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2220: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2221: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2222: RAISE PA_API.G_EXCEPTION_ERROR;
2223: END IF;
2224: -----------------------------------------
2217: '_PVT',
2218: x_return_status);
2219: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2220: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2221: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2222: RAISE PA_API.G_EXCEPTION_ERROR;
2223: END IF;
2224: -----------------------------------------
2225: -- Move VIEW record to "Child" records --
2218: x_return_status);
2219: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2220: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2221: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2222: RAISE PA_API.G_EXCEPTION_ERROR;
2223: END IF;
2224: -----------------------------------------
2225: -- Move VIEW record to "Child" records --
2226: -----------------------------------------
2234: x_msg_count,
2235: x_msg_data,
2236: l_pa_ci_direct_cost8
2237: );
2238: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2239: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2240: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2241: RAISE PA_API.G_EXCEPTION_ERROR;
2242: END IF;
2235: x_msg_data,
2236: l_pa_ci_direct_cost8
2237: );
2238: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2239: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2240: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2241: RAISE PA_API.G_EXCEPTION_ERROR;
2242: END IF;
2243: x_return_status := l_return_status;
2236: l_pa_ci_direct_cost8
2237: );
2238: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2239: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2240: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2241: RAISE PA_API.G_EXCEPTION_ERROR;
2242: END IF;
2243: x_return_status := l_return_status;
2244: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2237: );
2238: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2239: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2240: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2241: RAISE PA_API.G_EXCEPTION_ERROR;
2242: END IF;
2243: x_return_status := l_return_status;
2244: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2245: EXCEPTION
2240: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2241: RAISE PA_API.G_EXCEPTION_ERROR;
2242: END IF;
2243: x_return_status := l_return_status;
2244: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2245: EXCEPTION
2246: WHEN PA_API.G_EXCEPTION_ERROR THEN
2247: x_return_status := PA_API.HANDLE_EXCEPTIONS
2248: (
2242: END IF;
2243: x_return_status := l_return_status;
2244: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2245: EXCEPTION
2246: WHEN PA_API.G_EXCEPTION_ERROR THEN
2247: x_return_status := PA_API.HANDLE_EXCEPTIONS
2248: (
2249: l_api_name,
2250: G_PKG_NAME,
2243: x_return_status := l_return_status;
2244: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2245: EXCEPTION
2246: WHEN PA_API.G_EXCEPTION_ERROR THEN
2247: x_return_status := PA_API.HANDLE_EXCEPTIONS
2248: (
2249: l_api_name,
2250: G_PKG_NAME,
2251: 'PA_API.G_RET_STS_ERROR',
2247: x_return_status := PA_API.HANDLE_EXCEPTIONS
2248: (
2249: l_api_name,
2250: G_PKG_NAME,
2251: 'PA_API.G_RET_STS_ERROR',
2252: x_msg_count,
2253: x_msg_data,
2254: '_PVT'
2255: );
2252: x_msg_count,
2253: x_msg_data,
2254: '_PVT'
2255: );
2256: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2257: x_return_status := PA_API.HANDLE_EXCEPTIONS
2258: (
2259: l_api_name,
2260: G_PKG_NAME,
2253: x_msg_data,
2254: '_PVT'
2255: );
2256: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2257: x_return_status := PA_API.HANDLE_EXCEPTIONS
2258: (
2259: l_api_name,
2260: G_PKG_NAME,
2261: 'PA_API.G_RET_STS_UNEXP_ERROR',
2257: x_return_status := PA_API.HANDLE_EXCEPTIONS
2258: (
2259: l_api_name,
2260: G_PKG_NAME,
2261: 'PA_API.G_RET_STS_UNEXP_ERROR',
2262: x_msg_count,
2263: x_msg_data,
2264: '_PVT'
2265: );
2263: x_msg_data,
2264: '_PVT'
2265: );
2266: WHEN OTHERS THEN
2267: x_return_status := PA_API.HANDLE_EXCEPTIONS
2268: (
2269: l_api_name,
2270: G_PKG_NAME,
2271: 'OTHERS',
2278: -- PL/SQL TBL delete_row for:PA_CI_DIRECT_COST_DETAILS --
2279: ---------------------------------------------------------
2280: PROCEDURE delete_row(
2281: p_api_version IN NUMBER,
2282: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
2283: x_return_status OUT NOCOPY VARCHAR2,
2284: x_msg_count OUT NOCOPY NUMBER,
2285: x_msg_data OUT NOCOPY VARCHAR2,
2286: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
2283: x_return_status OUT NOCOPY VARCHAR2,
2284: x_msg_count OUT NOCOPY NUMBER,
2285: x_msg_data OUT NOCOPY VARCHAR2,
2286: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType,
2287: px_error_tbl IN OUT NOCOPY PA_API.ERROR_TBL_TYPE) IS
2288:
2289: l_api_version CONSTANT NUMBER := 1;
2290: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2291: i NUMBER := 0;
2289: l_api_version CONSTANT NUMBER := 1;
2290: l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
2291: i NUMBER := 0;
2292: BEGIN
2293: PA_API.init_msg_list(p_init_msg_list);
2294: -- Make sure PL/SQL table has records in it before passing
2295: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2296: i := PPaCiDirectCostDetailsTbl.FIRST;
2297: LOOP
2295: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2296: i := PPaCiDirectCostDetailsTbl.FIRST;
2297: LOOP
2298: DECLARE
2299: l_error_rec PA_API.ERROR_REC_TYPE;
2300: BEGIN
2301: l_error_rec.api_name := l_api_name;
2302: l_error_rec.api_package := G_PKG_NAME;
2303: l_error_rec.idx := i;
2302: l_error_rec.api_package := G_PKG_NAME;
2303: l_error_rec.idx := i;
2304: delete_row (
2305: p_api_version => p_api_version,
2306: p_init_msg_list => PA_API.G_FALSE,
2307: x_return_status => l_error_rec.error_type,
2308: x_msg_count => l_error_rec.msg_count,
2309: x_msg_data => l_error_rec.msg_data,
2310: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
2307: x_return_status => l_error_rec.error_type,
2308: x_msg_count => l_error_rec.msg_count,
2309: x_msg_data => l_error_rec.msg_data,
2310: p_pa_ci_direct_cost1 => PPaCiDirectCostDetailsTbl(i));
2311: IF (l_error_rec.error_type <> PA_API.G_RET_STS_SUCCESS) THEN
2312: l_error_rec.sqlcode := SQLCODE;
2313: load_error_tbl(l_error_rec, px_error_tbl);
2314: ELSE
2315: x_msg_count := l_error_rec.msg_count;
2315: x_msg_count := l_error_rec.msg_count;
2316: x_msg_data := l_error_rec.msg_data;
2317: END IF;
2318: EXCEPTION
2319: WHEN PA_API.G_EXCEPTION_ERROR THEN
2320: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2321: l_error_rec.sqlcode := SQLCODE;
2322: load_error_tbl(l_error_rec, px_error_tbl);
2323: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2316: x_msg_data := l_error_rec.msg_data;
2317: END IF;
2318: EXCEPTION
2319: WHEN PA_API.G_EXCEPTION_ERROR THEN
2320: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2321: l_error_rec.sqlcode := SQLCODE;
2322: load_error_tbl(l_error_rec, px_error_tbl);
2323: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2324: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2319: WHEN PA_API.G_EXCEPTION_ERROR THEN
2320: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2321: l_error_rec.sqlcode := SQLCODE;
2322: load_error_tbl(l_error_rec, px_error_tbl);
2323: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2324: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2325: l_error_rec.sqlcode := SQLCODE;
2326: load_error_tbl(l_error_rec, px_error_tbl);
2327: WHEN OTHERS THEN
2320: l_error_rec.error_type := PA_API.G_RET_STS_ERROR;
2321: l_error_rec.sqlcode := SQLCODE;
2322: load_error_tbl(l_error_rec, px_error_tbl);
2323: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2324: l_error_rec.error_type := PA_API.G_RET_STS_UNEXP_ERROR;
2325: l_error_rec.sqlcode := SQLCODE;
2326: load_error_tbl(l_error_rec, px_error_tbl);
2327: WHEN OTHERS THEN
2328: l_error_rec.error_type := 'OTHERS';
2335: END IF;
2336: -- Loop through the error_tbl to find the error with the highest severity
2337: -- and return it.
2338: x_return_status := find_highest_exception(px_error_tbl);
2339: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2340: EXCEPTION
2341: WHEN PA_API.G_EXCEPTION_ERROR THEN
2342: x_return_status := PA_API.HANDLE_EXCEPTIONS
2343: (
2337: -- and return it.
2338: x_return_status := find_highest_exception(px_error_tbl);
2339: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2340: EXCEPTION
2341: WHEN PA_API.G_EXCEPTION_ERROR THEN
2342: x_return_status := PA_API.HANDLE_EXCEPTIONS
2343: (
2344: l_api_name,
2345: G_PKG_NAME,
2338: x_return_status := find_highest_exception(px_error_tbl);
2339: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2340: EXCEPTION
2341: WHEN PA_API.G_EXCEPTION_ERROR THEN
2342: x_return_status := PA_API.HANDLE_EXCEPTIONS
2343: (
2344: l_api_name,
2345: G_PKG_NAME,
2346: 'PA_API.G_RET_STS_ERROR',
2342: x_return_status := PA_API.HANDLE_EXCEPTIONS
2343: (
2344: l_api_name,
2345: G_PKG_NAME,
2346: 'PA_API.G_RET_STS_ERROR',
2347: x_msg_count,
2348: x_msg_data,
2349: '_PVT'
2350: );
2347: x_msg_count,
2348: x_msg_data,
2349: '_PVT'
2350: );
2351: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2352: x_return_status := PA_API.HANDLE_EXCEPTIONS
2353: (
2354: l_api_name,
2355: G_PKG_NAME,
2348: x_msg_data,
2349: '_PVT'
2350: );
2351: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2352: x_return_status := PA_API.HANDLE_EXCEPTIONS
2353: (
2354: l_api_name,
2355: G_PKG_NAME,
2356: 'PA_API.G_RET_STS_UNEXP_ERROR',
2352: x_return_status := PA_API.HANDLE_EXCEPTIONS
2353: (
2354: l_api_name,
2355: G_PKG_NAME,
2356: 'PA_API.G_RET_STS_UNEXP_ERROR',
2357: x_msg_count,
2358: x_msg_data,
2359: '_PVT'
2360: );
2358: x_msg_data,
2359: '_PVT'
2360: );
2361: WHEN OTHERS THEN
2362: x_return_status := PA_API.HANDLE_EXCEPTIONS
2363: (
2364: l_api_name,
2365: G_PKG_NAME,
2366: 'OTHERS',
2374: -- PL/SQL TBL delete_row for:PA_CI_DIRECT_COST_DETAILS --
2375: ---------------------------------------------------------
2376: PROCEDURE delete_row(
2377: p_api_version IN NUMBER,
2378: p_init_msg_list IN VARCHAR2 DEFAULT PA_API.G_FALSE,
2379: x_return_status OUT NOCOPY VARCHAR2,
2380: x_msg_count OUT NOCOPY NUMBER,
2381: x_msg_data OUT NOCOPY VARCHAR2,
2382: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
2382: PPaCiDirectCostDetailsTbl IN PaCiDirectCostDetailsTblType) IS
2383:
2384: l_api_version CONSTANT NUMBER := 1;
2385: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2386: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2387: l_error_tbl PA_API.ERROR_TBL_TYPE;
2388: BEGIN
2389: PA_API.init_msg_list(p_init_msg_list);
2390: -- Make sure PL/SQL table has records in it before passing
2383:
2384: l_api_version CONSTANT NUMBER := 1;
2385: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2386: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2387: l_error_tbl PA_API.ERROR_TBL_TYPE;
2388: BEGIN
2389: PA_API.init_msg_list(p_init_msg_list);
2390: -- Make sure PL/SQL table has records in it before passing
2391: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2385: l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2386: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
2387: l_error_tbl PA_API.ERROR_TBL_TYPE;
2388: BEGIN
2389: PA_API.init_msg_list(p_init_msg_list);
2390: -- Make sure PL/SQL table has records in it before passing
2391: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2392: delete_row (
2393: p_api_version => p_api_version,
2390: -- Make sure PL/SQL table has records in it before passing
2391: IF (PPaCiDirectCostDetailsTbl.COUNT > 0) THEN
2392: delete_row (
2393: p_api_version => p_api_version,
2394: p_init_msg_list => PA_API.G_FALSE,
2395: x_return_status => x_return_status,
2396: x_msg_count => x_msg_count,
2397: x_msg_data => x_msg_data,
2398: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
2397: x_msg_data => x_msg_data,
2398: PPaCiDirectCostDetailsTbl => PPaCiDirectCostDetailsTbl,
2399: px_error_tbl => l_error_tbl);
2400: END IF;
2401: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2402: EXCEPTION
2403: WHEN PA_API.G_EXCEPTION_ERROR THEN
2404: x_return_status := PA_API.HANDLE_EXCEPTIONS
2405: (
2399: px_error_tbl => l_error_tbl);
2400: END IF;
2401: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2402: EXCEPTION
2403: WHEN PA_API.G_EXCEPTION_ERROR THEN
2404: x_return_status := PA_API.HANDLE_EXCEPTIONS
2405: (
2406: l_api_name,
2407: G_PKG_NAME,
2400: END IF;
2401: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
2402: EXCEPTION
2403: WHEN PA_API.G_EXCEPTION_ERROR THEN
2404: x_return_status := PA_API.HANDLE_EXCEPTIONS
2405: (
2406: l_api_name,
2407: G_PKG_NAME,
2408: 'PA_API.G_RET_STS_ERROR',
2404: x_return_status := PA_API.HANDLE_EXCEPTIONS
2405: (
2406: l_api_name,
2407: G_PKG_NAME,
2408: 'PA_API.G_RET_STS_ERROR',
2409: x_msg_count,
2410: x_msg_data,
2411: '_PVT'
2412: );
2409: x_msg_count,
2410: x_msg_data,
2411: '_PVT'
2412: );
2413: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2414: x_return_status := PA_API.HANDLE_EXCEPTIONS
2415: (
2416: l_api_name,
2417: G_PKG_NAME,
2410: x_msg_data,
2411: '_PVT'
2412: );
2413: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2414: x_return_status := PA_API.HANDLE_EXCEPTIONS
2415: (
2416: l_api_name,
2417: G_PKG_NAME,
2418: 'PA_API.G_RET_STS_UNEXP_ERROR',
2414: x_return_status := PA_API.HANDLE_EXCEPTIONS
2415: (
2416: l_api_name,
2417: G_PKG_NAME,
2418: 'PA_API.G_RET_STS_UNEXP_ERROR',
2419: x_msg_count,
2420: x_msg_data,
2421: '_PVT'
2422: );
2420: x_msg_data,
2421: '_PVT'
2422: );
2423: WHEN OTHERS THEN
2424: x_return_status := PA_API.HANDLE_EXCEPTIONS
2425: (
2426: l_api_name,
2427: G_PKG_NAME,
2428: 'OTHERS',