DBA Data[Home] [Help]

APPS.FND_OAM_DSCRAM_ARGS_PKG dependencies on FND_API

Line 84: p_arg.valid_value_flag := FND_API.G_TRUE;

80: p_canonical_value);
81: p_arg.canonical_value := p_canonical_value;
82: p_arg.rowid_lbound := p_rowid_lbound;
83: p_arg.rowid_ubound := p_rowid_ubound;
84: p_arg.valid_value_flag := FND_API.G_TRUE;
85: END;
86:
87: -- Private constructor helper for add_arg_to_context and add_arg_to_list to make a new physical arg entity
88: FUNCTION INTERNAL_CREATE_ARG(p_arg_id IN NUMBER,

Line 213: x_return_status := FND_API.G_RET_STS_ERROR;

209:
210: l_canonical_value VARCHAR2(4000);
211: BEGIN
212: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
213: x_return_status := FND_API.G_RET_STS_ERROR;
214: x_return_msg := '';
215:
216: --do a big case statement on the state key to fetch the value
217: CASE p_state_key

Line 287: x_return_status := FND_API.G_RET_STS_SUCCESS;

283: RETURN;
284: END CASE;
285:
286: --success
287: x_return_status := FND_API.G_RET_STS_SUCCESS;
288: x_canonical_value := l_canonical_value;
289: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
290: EXCEPTION
291: WHEN NO_DATA_FOUND THEN

Line 298: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

294: fnd_oam_debug.log(1, l_ctxt, 'Arg ID('||px_arg.arg_id||'), threw missing state.');
295: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
296: RETURN;
297: WHEN OTHERS THEN
298: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
299: x_return_msg := 'Arg ID('||px_arg.arg_id||') Unhandled Exception: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
300: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
301: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
302: RETURN;

Line 325: x_return_status := FND_API.G_RET_STS_ERROR;

321: l_bool BOOLEAN := NULL;
322: l_rowid ROWID := NULL;
323: BEGIN
324: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
325: x_return_status := FND_API.G_RET_STS_ERROR;
326: x_return_msg := '';
327:
328: --fetch the value into the properly typed local variable then then
329: --convert it into the canonical

Line 363: x_return_status := FND_API.G_RET_STS_SUCCESS;

359:
360: fnd_oam_debug.log(1, l_ctxt, 'Found canonical value: '||x_canonical_value);
361:
362: --success
363: x_return_status := FND_API.G_RET_STS_SUCCESS;
364: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
365: EXCEPTION
366: WHEN BIND_DOES_NOT_EXIST THEN
367: --catch a common error and provide better feedback.

Line 374: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

370: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
371: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
372: RETURN;
373: WHEN OTHERS THEN
374: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
375: x_return_msg := 'Arg ID('||px_arg.arg_id||') Unhandled Exception: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
376: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
377: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
378: RETURN;

Line 404: x_return_status := FND_API.G_RET_STS_ERROR;

400: l_date DATE;
401: l_rowid ROWID;
402: BEGIN
403: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
404: x_return_status := FND_API.G_RET_STS_ERROR;
405: x_return_msg := '';
406:
407: --fetch the canonical value differently based on what SQL is available to us
408: IF p_final_sql_stmt IS NOT NULL THEN

Line 504: x_return_status := FND_API.G_RET_STS_SUCCESS;

500: RETURN;
501: END IF;
502:
503: --success
504: x_return_status := FND_API.G_RET_STS_SUCCESS;
505: x_canonical_value := l_canonical_value;
506: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
507: EXCEPTION
508: WHEN missing_binds THEN

Line 514: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

510: fnd_oam_debug.log(1, l_ctxt, 'Arg ID('||px_arg.arg_id||'), threw missing binds.');
511: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
512: RETURN;
513: WHEN OTHERS THEN
514: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
515: x_return_msg := 'Arg ID('||px_arg.arg_id||') Unhandled Exception: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
516: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
517: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
518: RETURN;

Line 545: x_return_status := FND_API.G_RET_STS_ERROR;

541: l_return_status VARCHAR2(6);
542: l_return_msg VARCHAR2(2048);
543: BEGIN
544: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
545: x_return_status := FND_API.G_RET_STS_ERROR;
546: x_return_msg := '';
547:
548: --SET DERIVED ATTRIBUTES
549:

Line 573: px_arg.valid_value_flag := FND_API.G_FALSE;

569: EXCEPTION
570: WHEN OTHERS THEN
571: fnd_oam_debug.log(1, l_ctxt, 'ARG ID ('||px_arg.arg_id||'), failed to set the canonical value: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))');
572: --if it didn't set properly, store that after the init to keep other threads from doing it
573: px_arg.valid_value_flag := FND_API.G_FALSE;
574: END;
575: ELSIF px_arg.is_constant AND px_arg.valid_value_flag IS NULL THEN
576: -- For constants, write the canonical value when the value flag is null because we never set it to TRUE until the get.
577: -- Invalid p_source_text values would have been caught by the first init where valid_value_flag would be set to FALSE.

Line 586: IF px_arg.initialized_success_flag = FND_API.G_FALSE THEN

582: END IF;
583: END IF;
584:
585: --Before doing further init, if we've already failed the init then return because we've updated enough state
586: IF px_arg.initialized_success_flag = FND_API.G_FALSE THEN
587: px_arg.init_locally := TRUE;
588: x_return_status := FND_API.G_RET_STS_SUCCESS;
589: fnd_oam_debug.log(1, l_ctxt, 'Found initialized_success_flag was false after sync but before any sql actions.');
590: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 588: x_return_status := FND_API.G_RET_STS_SUCCESS;

584:
585: --Before doing further init, if we've already failed the init then return because we've updated enough state
586: IF px_arg.initialized_success_flag = FND_API.G_FALSE THEN
587: px_arg.init_locally := TRUE;
588: x_return_status := FND_API.G_RET_STS_SUCCESS;
589: fnd_oam_debug.log(1, l_ctxt, 'Found initialized_success_flag was false after sync but before any sql actions.');
590: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
591: RETURN;
592: END IF;

Line 608: px_arg.valid_value_flag := FND_API.G_FALSE;

604: px_arg.valid_value_flag := NULL;
605: px_arg.canonical_value := p_source_text;
606: EXCEPTION
607: WHEN OTHERS THEN
608: px_arg.valid_value_flag := FND_API.G_FALSE;
609: END;
610:
611: --always set init to true since a failed value gets caught with the valid_value_flag
612: px_arg.initialized_success_flag := FND_API.G_TRUE;

Line 612: px_arg.initialized_success_flag := FND_API.G_TRUE;

608: px_arg.valid_value_flag := FND_API.G_FALSE;
609: END;
610:
611: --always set init to true since a failed value gets caught with the valid_value_flag
612: px_arg.initialized_success_flag := FND_API.G_TRUE;
613:
614: -- The following situations benefit from a source cursor:
615: -- 1) SQL source with write policies of per_range or always
616: -- However, to keep from querying the source_final_text in get_value later, all SQL-based sources use a cursor.

Line 668: px_arg.initialized_success_flag := FND_API.G_TRUE;

664: RETURN;
665: END CASE;
666:
667: --set these sorts of args to be initialized
668: px_arg.initialized_success_flag := FND_API.G_TRUE;
669: ELSIF p_source_type = FND_OAM_DSCRAM_UTILS_PKG.G_SOURCE_STATE THEN
670: --set the source state key using the first 30 chars of the source_text
671: px_arg.source_state_key := SUBSTR(p_source_text, 1, 30);
672: px_arg.initialized_success_flag := FND_API.G_TRUE;

Line 672: px_arg.initialized_success_flag := FND_API.G_TRUE;

668: px_arg.initialized_success_flag := FND_API.G_TRUE;
669: ELSIF p_source_type = FND_OAM_DSCRAM_UTILS_PKG.G_SOURCE_STATE THEN
670: --set the source state key using the first 30 chars of the source_text
671: px_arg.source_state_key := SUBSTR(p_source_text, 1, 30);
672: px_arg.initialized_success_flag := FND_API.G_TRUE;
673: ELSIF p_source_type = FND_OAM_DSCRAM_UTILS_PKG.G_SOURCE_EXECUTION_CURSOR THEN
674: --set the use_exec_cursor indicator variable for the arg
675: px_arg.source_use_exec_cursor := TRUE;
676: px_arg.initialized_success_flag := FND_API.G_TRUE;

Line 676: px_arg.initialized_success_flag := FND_API.G_TRUE;

672: px_arg.initialized_success_flag := FND_API.G_TRUE;
673: ELSIF p_source_type = FND_OAM_DSCRAM_UTILS_PKG.G_SOURCE_EXECUTION_CURSOR THEN
674: --set the use_exec_cursor indicator variable for the arg
675: px_arg.source_use_exec_cursor := TRUE;
676: px_arg.initialized_success_flag := FND_API.G_TRUE;
677: ELSIF p_source_type IS NULL THEN
678: --if there's no source, we're done initializing.
679: px_arg.initialized_success_flag := FND_API.G_TRUE;
680: END IF;

Line 679: px_arg.initialized_success_flag := FND_API.G_TRUE;

675: px_arg.source_use_exec_cursor := TRUE;
676: px_arg.initialized_success_flag := FND_API.G_TRUE;
677: ELSIF p_source_type IS NULL THEN
678: --if there's no source, we're done initializing.
679: px_arg.initialized_success_flag := FND_API.G_TRUE;
680: END IF;
681:
682: --return success
683: x_return_status := FND_API.G_RET_STS_SUCCESS;

Line 683: x_return_status := FND_API.G_RET_STS_SUCCESS;

679: px_arg.initialized_success_flag := FND_API.G_TRUE;
680: END IF;
681:
682: --return success
683: x_return_status := FND_API.G_RET_STS_SUCCESS;
684: px_arg.init_locally := TRUE;
685: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
686: EXCEPTION
687: WHEN OTHERS THEN

Line 688: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

684: px_arg.init_locally := TRUE;
685: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
686: EXCEPTION
687: WHEN OTHERS THEN
688: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
689: x_return_msg := 'Arg ID('||px_arg.arg_id||') Unhandled Exception: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
690: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
691: px_arg.init_locally := TRUE;
692: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 721: x_return_status := FND_API.G_RET_STS_ERROR;

717: l_return_status VARCHAR2(6);
718: l_return_msg VARCHAR2(2048);
719: BEGIN
720: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
721: x_return_status := FND_API.G_RET_STS_ERROR;
722: x_return_msg := '';
723:
724: fnd_oam_debug.log(1, l_ctxt, 'Argument(Splitting?): '||px_arg.arg_name||'('||FND_OAM_DSCRAM_UTILS_PKG.BOOLEAN_TO_FLAG(p_using_splitting)||')');
725:

Line 728: x_return_status := FND_API.G_RET_STS_SUCCESS;

724: fnd_oam_debug.log(1, l_ctxt, 'Argument(Splitting?): '||px_arg.arg_name||'('||FND_OAM_DSCRAM_UTILS_PKG.BOOLEAN_TO_FLAG(p_using_splitting)||')');
725:
726: --check if we've already done the local init
727: IF px_arg.init_locally THEN
728: x_return_status := FND_API.G_RET_STS_SUCCESS;
729: fnd_oam_debug.log(1, l_ctxt, 'Already locally initialized');
730: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
731: RETURN;
732: END IF;

Line 802: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

798: l_append_rowid_clause,
799: l_source_final_text,
800: l_return_status,
801: l_return_msg);
802: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
803: fnd_oam_debug.log(6, l_ctxt, 'ARG ID('||px_arg.arg_id||'), failed to create final sql stmt: '||l_return_msg);
804: px_arg.initialized_success_flag := FND_API.G_FALSE;
805: END IF;
806: END IF;

Line 804: px_arg.initialized_success_flag := FND_API.G_FALSE;

800: l_return_status,
801: l_return_msg);
802: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
803: fnd_oam_debug.log(6, l_ctxt, 'ARG ID('||px_arg.arg_id||'), failed to create final sql stmt: '||l_return_msg);
804: px_arg.initialized_success_flag := FND_API.G_FALSE;
805: END IF;
806: END IF;
807:
808: --After initializing stuff into our local values, try to roll these local values into our state

Line 819: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

815: l_source_text,
816: l_source_final_text,
817: l_return_status,
818: l_return_msg);
819: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
820: x_return_status := l_return_status;
821: x_return_msg := l_return_msg;
822: RAISE INIT_FAILED;
823: END IF;

Line 849: x_return_status := FND_API.G_RET_STS_SUCCESS;

845:
846: COMMIT;
847:
848: --return success
849: x_return_status := FND_API.G_RET_STS_SUCCESS;
850: ELSE
851: x_return_msg := 'ARG ID('||px_arg.arg_id||'), got to the end but arg was not initialized. This should not happen.';
852: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
853: RAISE INIT_FAILED;

Line 862: SET initialized_success_flag = FND_API.G_FALSE,

858: WHEN INIT_FAILED THEN
859: --x_return_* already set, only raised after locking select
860: BEGIN
861: UPDATE fnd_oam_dscram_args_b
862: SET initialized_success_flag = FND_API.G_FALSE,
863: last_updated_by = fnd_global.user_id,
864: last_update_login = fnd_global.user_id,
865: last_update_date = SYSDATE
866: WHERE arg_id = px_arg.arg_id;

Line 868: px_arg.initialized_success_flag := FND_API.G_FALSE;

864: last_update_login = fnd_global.user_id,
865: last_update_date = SYSDATE
866: WHERE arg_id = px_arg.arg_id;
867: COMMIT;
868: px_arg.initialized_success_flag := FND_API.G_FALSE;
869: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
870: EXCEPTION
871: WHEN OTHERS THEN
872: x_return_msg := 'Unexpected Error while processing init_failed: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';

Line 879: px_arg.initialized_success_flag := FND_API.G_FALSE;

875: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
876: END;
877: WHEN OTHERS THEN
878: --here we can't assume we have a lock so leave out update of DB but do update our local state
879: px_arg.initialized_success_flag := FND_API.G_FALSE;
880: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
881: x_return_msg := 'Arg ID('||px_arg.arg_id||'), unexpected error while initializing: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
882: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
883: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 880: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

876: END;
877: WHEN OTHERS THEN
878: --here we can't assume we have a lock so leave out update of DB but do update our local state
879: px_arg.initialized_success_flag := FND_API.G_FALSE;
880: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
881: x_return_msg := 'Arg ID('||px_arg.arg_id||'), unexpected error while initializing: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
882: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
883: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
884: ROLLBACK;

Line 950: x_return_status := FND_API.G_RET_STS_ERROR;

946:
947: l_arg_val_id NUMBER;
948: BEGIN
949: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
950: x_return_status := FND_API.G_RET_STS_ERROR;
951: x_return_msg := '';
952:
953: IF px_arg.write_policy = FND_OAM_DSCRAM_UTILS_PKG.G_WRITE_POLICY_ONCE THEN
954: --update the main args_b row

Line 1022: x_return_status := FND_API.G_RET_STS_SUCCESS;

1018: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1019: RETURN;
1020: END IF;
1021:
1022: x_return_status := FND_API.G_RET_STS_SUCCESS;
1023: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1024: EXCEPTION
1025: WHEN OTHERS THEN
1026: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1026: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1022: x_return_status := FND_API.G_RET_STS_SUCCESS;
1023: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1024: EXCEPTION
1025: WHEN OTHERS THEN
1026: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1027: x_return_msg := 'Arg ID('||px_arg.arg_id||'), unexpected error while storing canonical value: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1028: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1029: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1030: END;

Line 1043: IF x_return_status = FND_API.G_RET_STS_SUCCESS THEN

1039: BEGIN
1040: STORE_ARG_VALUE(px_arg,
1041: x_return_status,
1042: x_return_msg);
1043: IF x_return_status = FND_API.G_RET_STS_SUCCESS THEN
1044: COMMIT;
1045: ELSE
1046: ROLLBACK;
1047: END IF;

Line 1099: x_return_status := FND_API.G_RET_STS_ERROR;

1095: l_return_status VARCHAR2(6);
1096: l_return_msg VARCHAR2(2048);
1097: BEGIN
1098: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
1099: x_return_status := FND_API.G_RET_STS_ERROR;
1100: x_return_msg := '';
1101:
1102: fnd_oam_debug.log(1, l_ctxt, 'Argument(ID): '||px_arg.arg_name||'('||px_arg.arg_id||')');
1103:

Line 1111: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1107: px_arg_context,
1108: p_using_splitting,
1109: l_return_status,
1110: l_return_msg);
1111: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1112: x_return_status := l_return_status;
1113: x_return_msg := l_return_msg;
1114: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1115: END IF;

Line 1119: IF px_arg.initialized_success_flag = FND_API.G_FALSE THEN

1115: END IF;
1116: END IF;
1117:
1118: --if the arg went through init before and we stored that it failed, return an error, this is less likely
1119: IF px_arg.initialized_success_flag = FND_API.G_FALSE THEN
1120: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), previous call to init stored that it failed. Get cannot continue.';
1121: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1122: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1123: RETURN;

Line 1131: IF px_arg.valid_value_flag = FND_API.G_FALSE THEN

1127: l_determined_value := FALSE;
1128: l_value_requires_store := FALSE;
1129:
1130: --now check if valid_value_flag's been set to false meaning we have no value and sourcing fails
1131: IF px_arg.valid_value_flag = FND_API.G_FALSE THEN
1132: --note: this means that a malformed constant will not be overrideable by the arg_context, should be a very infrequent corner case.
1133: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), previous call to get_value stored that fetching the value fails. Exiting.';
1134: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1135: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 1138: ELSIF px_arg.valid_value_flag = FND_API.G_TRUE AND

1134: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1135: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1136: RETURN;
1137: -- see if we already have a value, skip the check if we write always
1138: ELSIF px_arg.valid_value_flag = FND_API.G_TRUE AND
1139: (NOT (IS_WRITABLE(px_arg)) OR
1140: NOT (px_arg.write_policy = FND_OAM_DSCRAM_UTILS_PKG.G_WRITE_POLICY_ALWAYS)) THEN
1141: --if we already know the local value is valid then make sure we match the supplied rowid range as well
1142: IF (px_arg.rowid_lbound IS NOT NULL OR px_arg.rowid_ubound IS NOT NULL) THEN

Line 1146: x_return_status := FND_API.G_RET_STS_SUCCESS;

1142: IF (px_arg.rowid_lbound IS NOT NULL OR px_arg.rowid_ubound IS NOT NULL) THEN
1143: IF ((px_arg.rowid_lbound IS NULL OR (px_arg.rowid_lbound = p_rowid_lbound)) AND
1144: (px_arg.rowid_ubound IS NULL OR (px_arg.rowid_ubound = p_rowid_ubound))) THEN
1145:
1146: x_return_status := FND_API.G_RET_STS_SUCCESS;
1147: x_value := px_arg.canonical_value;
1148: fnd_oam_debug.log(1, l_ctxt, 'Ranged Value cached');
1149: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1150: RETURN;

Line 1154: x_return_status := FND_API.G_RET_STS_SUCCESS;

1150: RETURN;
1151: END IF;
1152: ELSE
1153: --if not contingent on a range, the value is the arg's stored canonical value
1154: x_return_status := FND_API.G_RET_STS_SUCCESS;
1155: x_value := px_arg.canonical_value;
1156: fnd_oam_debug.log(1, l_ctxt, 'Value cached');
1157: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1158: RETURN;

Line 1206: IF l_valid_value_flag = FND_API.G_TRUE THEN

1202: fnd_oam_debug.log(1, l_ctxt, 'Write Policy Per-Range: first query valid_value_flag: '||l_valid_value_flag);
1203: END IF;
1204:
1205: --if we found a value for valid_value_flag, we've determined a value or a failure
1206: IF l_valid_value_flag = FND_API.G_TRUE THEN
1207: l_determined_value := TRUE;
1208: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN
1209: --A false means sourcing failes
1210: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), non-locking select: previous call to get_value stored that fetching the value fails. Exiting.';

Line 1208: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN

1204:
1205: --if we found a value for valid_value_flag, we've determined a value or a failure
1206: IF l_valid_value_flag = FND_API.G_TRUE THEN
1207: l_determined_value := TRUE;
1208: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN
1209: --A false means sourcing failes
1210: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), non-locking select: previous call to get_value stored that fetching the value fails. Exiting.';
1211: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1212: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 1237: IF l_valid_value_flag = FND_API.G_TRUE THEN

1233: WHERE arg_id = px_arg.arg_id;
1234: fnd_oam_debug.log(1, l_ctxt, 'Write Policy Once, locking query valid_value_flag: '||l_valid_value_flag);
1235:
1236: --re-check the valid value flag
1237: IF l_valid_value_flag = FND_API.G_TRUE THEN
1238: l_determined_value := TRUE;
1239: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN
1240: --A false means sourcing failed previously
1241: px_arg.valid_value_flag := FND_API.G_FALSE;

Line 1239: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN

1235:
1236: --re-check the valid value flag
1237: IF l_valid_value_flag = FND_API.G_TRUE THEN
1238: l_determined_value := TRUE;
1239: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN
1240: --A false means sourcing failed previously
1241: px_arg.valid_value_flag := FND_API.G_FALSE;
1242: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), locking select: previous call to get_value stored that fetching the value fails. Exiting.';
1243: fnd_oam_debug.log(6, l_ctxt, x_return_msg);

Line 1241: px_arg.valid_value_flag := FND_API.G_FALSE;

1237: IF l_valid_value_flag = FND_API.G_TRUE THEN
1238: l_determined_value := TRUE;
1239: ELSIF l_valid_value_flag = FND_API.G_FALSE THEN
1240: --A false means sourcing failed previously
1241: px_arg.valid_value_flag := FND_API.G_FALSE;
1242: x_return_msg := 'Arg ID ('||px_arg.arg_id||'), locking select: previous call to get_value stored that fetching the value fails. Exiting.';
1243: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1244: RAISE GET_FAILED;
1245: END IF;

Line 1270: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1266: l_ignore,
1267: l_canonical_value,
1268: l_return_status,
1269: l_return_msg);
1270: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1271: l_valid_value_flag := FND_API.G_TRUE;
1272: l_determined_value := TRUE;
1273: l_value_requires_store := TRUE;
1274: END IF;

Line 1271: l_valid_value_flag := FND_API.G_TRUE;

1267: l_canonical_value,
1268: l_return_status,
1269: l_return_msg);
1270: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1271: l_valid_value_flag := FND_API.G_TRUE;
1272: l_determined_value := TRUE;
1273: l_value_requires_store := TRUE;
1274: END IF;
1275: END IF;

Line 1286: l_valid_value_flag := FND_API.G_TRUE;

1282: --different locations based on the write_policy so that arg_contexts can be used to get values. The correct constant value is stored
1283: --in the canonical value. This represents one case where the valid_value_flag does not need to be true to use the value of the
1284: --canonical value.
1285: IF NOT l_determined_value AND px_arg.is_constant AND l_valid_value_flag IS NULL THEN
1286: l_valid_value_flag := FND_API.G_TRUE;
1287: l_canonical_value := px_arg.canonical_value;
1288: l_determined_value := TRUE;
1289: l_value_requires_store := TRUE;
1290: END IF;

Line 1302: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1298: p_rowid_ubound,
1299: l_canonical_value,
1300: l_return_status,
1301: l_return_msg);
1302: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1303: BEGIN
1304: VALIDATE_CANONICAL_VALUE(px_arg,
1305: l_canonical_value);
1306: l_valid_value_flag := FND_API.G_TRUE;

Line 1306: l_valid_value_flag := FND_API.G_TRUE;

1302: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1303: BEGIN
1304: VALIDATE_CANONICAL_VALUE(px_arg,
1305: l_canonical_value);
1306: l_valid_value_flag := FND_API.G_TRUE;
1307: EXCEPTION
1308: WHEN OTHERS THEN
1309: l_valid_value_flag := FND_API.G_FALSE;
1310: END;

Line 1309: l_valid_value_flag := FND_API.G_FALSE;

1305: l_canonical_value);
1306: l_valid_value_flag := FND_API.G_TRUE;
1307: EXCEPTION
1308: WHEN OTHERS THEN
1309: l_valid_value_flag := FND_API.G_FALSE;
1310: END;
1311: l_determined_value := TRUE;
1312: l_value_requires_store := TRUE;
1313: ELSIF l_return_status = FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_STATE THEN

Line 1320: l_valid_value_flag := FND_API.G_FALSE;

1316: x_return_msg := l_return_msg;
1317: RAISE GET_FAILED;
1318: ELSE
1319: --here we really did fail
1320: l_valid_value_flag := FND_API.G_FALSE;
1321: l_determined_value := TRUE;
1322: l_value_requires_store := TRUE;
1323: END IF;
1324:

Line 1334: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1330: p_execution_cursor_id,
1331: l_canonical_value,
1332: l_return_status,
1333: l_return_msg);
1334: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1335: --don't validate, the cursor get is strongly typed
1336: l_valid_value_flag := FND_API.G_TRUE;
1337: l_determined_value := TRUE;
1338: l_value_requires_store := TRUE;

Line 1336: l_valid_value_flag := FND_API.G_TRUE;

1332: l_return_status,
1333: l_return_msg);
1334: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1335: --don't validate, the cursor get is strongly typed
1336: l_valid_value_flag := FND_API.G_TRUE;
1337: l_determined_value := TRUE;
1338: l_value_requires_store := TRUE;
1339: ELSE
1340: --failed

Line 1341: l_valid_value_flag := FND_API.G_FALSE;

1337: l_determined_value := TRUE;
1338: l_value_requires_store := TRUE;
1339: ELSE
1340: --failed
1341: l_valid_value_flag := FND_API.G_FALSE;
1342: l_determined_value := TRUE;
1343: l_value_requires_store := TRUE;
1344: END IF;
1345: END IF;

Line 1357: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1353: p_rowid_ubound,
1354: l_canonical_value,
1355: l_return_status,
1356: l_return_msg);
1357: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1358: BEGIN
1359: VALIDATE_CANONICAL_VALUE(px_arg,
1360: l_canonical_value);
1361: l_valid_value_flag := FND_API.G_TRUE;

Line 1361: l_valid_value_flag := FND_API.G_TRUE;

1357: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1358: BEGIN
1359: VALIDATE_CANONICAL_VALUE(px_arg,
1360: l_canonical_value);
1361: l_valid_value_flag := FND_API.G_TRUE;
1362: EXCEPTION
1363: WHEN OTHERS THEN
1364: l_valid_value_flag := FND_API.G_FALSE;
1365: END;

Line 1364: l_valid_value_flag := FND_API.G_FALSE;

1360: l_canonical_value);
1361: l_valid_value_flag := FND_API.G_TRUE;
1362: EXCEPTION
1363: WHEN OTHERS THEN
1364: l_valid_value_flag := FND_API.G_FALSE;
1365: END;
1366: l_determined_value := TRUE;
1367: l_value_requires_store := TRUE;
1368: ELSIF l_return_status = FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_BINDS THEN

Line 1375: l_valid_value_flag := FND_API.G_FALSE;

1371: x_return_msg := l_return_msg;
1372: RAISE GET_FAILED;
1373: ELSE
1374: --here we really did fail
1375: l_valid_value_flag := FND_API.G_FALSE;
1376: l_determined_value := TRUE;
1377: l_value_requires_store := TRUE;
1378: END IF;
1379: END IF;

Line 1403: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1399: l_ignore,
1400: l_canonical_value,
1401: l_return_status,
1402: l_return_msg);
1403: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1404: l_valid_value_flag := FND_API.G_TRUE;
1405: l_determined_value := TRUE;
1406: l_value_requires_store := TRUE;
1407: ELSIF l_return_status = FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_BINDS THEN

Line 1404: l_valid_value_flag := FND_API.G_TRUE;

1400: l_canonical_value,
1401: l_return_status,
1402: l_return_msg);
1403: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1404: l_valid_value_flag := FND_API.G_TRUE;
1405: l_determined_value := TRUE;
1406: l_value_requires_store := TRUE;
1407: ELSIF l_return_status = FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_BINDS THEN
1408: --since this is the last thing before failure, let missing binds return

Line 1420: l_valid_value_flag := FND_API.G_FALSE;

1416:
1417: --at this point, we've done everything we can to determine the value, if we haven't and we allowed sourcing then the get's a failure
1418: IF NOT l_determined_value AND p_allow_sourcing THEN
1419: fnd_oam_debug.log(6, l_ctxt, 'Arg ID ('||px_arg.arg_id||'), failed to determine a value.');
1420: l_valid_value_flag := FND_API.G_FALSE;
1421: l_determined_value := TRUE;
1422: l_value_requires_store := TRUE;
1423: END IF;
1424:

Line 1455: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1451: STORE_ARG_VALUE(px_arg,
1452: l_return_status,
1453: l_return_msg);
1454: END IF;
1455: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1456: px_arg.valid_value_flag := FND_API.G_FALSE;
1457: x_return_status := l_return_status;
1458: x_return_msg := l_return_msg;
1459: RAISE GET_FAILED;

Line 1456: px_arg.valid_value_flag := FND_API.G_FALSE;

1452: l_return_status,
1453: l_return_msg);
1454: END IF;
1455: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1456: px_arg.valid_value_flag := FND_API.G_FALSE;
1457: x_return_status := l_return_status;
1458: x_return_msg := l_return_msg;
1459: RAISE GET_FAILED;
1460: END IF;

Line 1482: x_return_status := FND_API.G_RET_STS_SUCCESS;

1478: END IF;
1479:
1480: --done, change return status based on whether we found a valid value even if we didn't store it
1481: IF FND_OAM_DSCRAM_UTILS_PKG.FLAG_TO_BOOLEAN(l_valid_value_flag) THEN
1482: x_return_status := FND_API.G_RET_STS_SUCCESS;
1483: x_value := l_canonical_value;
1484: ELSIF (NOT p_allow_sourcing AND l_valid_value_flag IS NULL) THEN
1485: --return success if something which was unallowed to source ended up without a value, since we're only
1486: --doing a shallow test to see if it has a value. Caller must check px_arg's valid value flag to see if

Line 1488: x_return_status := FND_API.G_RET_STS_SUCCESS;

1484: ELSIF (NOT p_allow_sourcing AND l_valid_value_flag IS NULL) THEN
1485: --return success if something which was unallowed to source ended up without a value, since we're only
1486: --doing a shallow test to see if it has a value. Caller must check px_arg's valid value flag to see if
1487: --it's a real successful get or just a sucessful lack of failure.
1488: x_return_status := FND_API.G_RET_STS_SUCCESS;
1489: x_value := NULL;
1490: END IF;
1491: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1492: EXCEPTION

Line 1504: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1500:
1501: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1502: RETURN;
1503: WHEN OTHERS THEN
1504: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1505: x_return_msg := 'Arg ID('||px_arg.arg_id||'), unexpected error while getting canonical value: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1506: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1507:
1508: --store that the arg's value yields failure

Line 1511: px_arg.valid_value_flag := FND_API.G_FALSE;

1507:
1508: --store that the arg's value yields failure
1509: BEGIN
1510: IF IS_WRITABLE(px_arg) THEN
1511: px_arg.valid_value_flag := FND_API.G_FALSE;
1512: px_arg.canonical_value := NULL;
1513: px_arg.rowid_lbound := p_rowid_lbound;
1514: px_arg.rowid_ubound := p_rowid_ubound;
1515: STORE_ARG_VALUE_AUTONOMOUSLY(px_arg,

Line 1518: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1514: px_arg.rowid_ubound := p_rowid_ubound;
1515: STORE_ARG_VALUE_AUTONOMOUSLY(px_arg,
1516: l_return_status,
1517: l_return_msg);
1518: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1519: fnd_oam_debug.log(6, l_ctxt, 'Store failure failed('||l_return_status||'): '||l_return_msg);
1520: END IF;
1521: END IF;
1522: EXCEPTION

Line 1609: x_return_status := FND_API.G_RET_STS_ERROR;

1605: l_varchar2 VARCHAR2(4000);
1606: l_return_status VARCHAR2(6);
1607: l_return_msg VARCHAR2(2048);
1608: BEGIN
1609: x_return_status := FND_API.G_RET_STS_ERROR;
1610: x_return_msg := '';
1611: GET_CANONICAL_ARG_VALUE(px_arg,
1612: px_arg_context,
1613: p_using_splitting,

Line 1624: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1620: l_ignore,
1621: l_varchar2,
1622: l_return_status,
1623: l_return_msg);
1624: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1625: x_return_status := l_return_status;
1626: x_return_msg := l_return_msg;
1627: x_value := NULL;
1628: RETURN;

Line 1633: x_return_status := FND_API.G_RET_STS_SUCCESS;

1629: END IF;
1630: x_value := l_varchar2;
1631:
1632: --return success
1633: x_return_status := FND_API.G_RET_STS_SUCCESS;
1634: RETURN;
1635: EXCEPTION
1636: WHEN OTHERS THEN
1637: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1637: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1633: x_return_status := FND_API.G_RET_STS_SUCCESS;
1634: RETURN;
1635: EXCEPTION
1636: WHEN OTHERS THEN
1637: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1638: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1639: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1640: x_value := NULL;
1641: END;

Line 1661: x_return_status := FND_API.G_RET_STS_ERROR;

1657: l_varchar2 VARCHAR2(4000);
1658: l_return_status VARCHAR2(6);
1659: l_return_msg VARCHAR2(2048);
1660: BEGIN
1661: x_return_status := FND_API.G_RET_STS_ERROR;
1662: x_return_msg := '';
1663: GET_CANONICAL_ARG_VALUE(px_arg,
1664: px_arg_context,
1665: p_using_splitting,

Line 1676: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1672: l_ignore,
1673: l_varchar2,
1674: l_return_status,
1675: l_return_msg);
1676: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1677: x_return_status := l_return_status;
1678: x_return_msg := l_return_msg;
1679: x_value := NULL;
1680: RETURN;

Line 1685: x_return_status := FND_API.G_RET_STS_SUCCESS;

1681: END IF;
1682: x_value := FND_NUMBER.CANONICAL_TO_NUMBER(l_varchar2);
1683:
1684: --return success
1685: x_return_status := FND_API.G_RET_STS_SUCCESS;
1686: RETURN;
1687: EXCEPTION
1688: WHEN OTHERS THEN
1689: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1689: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1685: x_return_status := FND_API.G_RET_STS_SUCCESS;
1686: RETURN;
1687: EXCEPTION
1688: WHEN OTHERS THEN
1689: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1690: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1691: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1692: x_value := NULL;
1693: END;

Line 1713: x_return_status := FND_API.G_RET_STS_ERROR;

1709: l_varchar2 VARCHAR2(4000);
1710: l_return_status VARCHAR2(6);
1711: l_return_msg VARCHAR2(2048);
1712: BEGIN
1713: x_return_status := FND_API.G_RET_STS_ERROR;
1714: x_return_msg := '';
1715: GET_CANONICAL_ARG_VALUE(px_arg,
1716: px_arg_context,
1717: p_using_splitting,

Line 1728: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1724: l_ignore,
1725: l_varchar2,
1726: l_return_status,
1727: l_return_msg);
1728: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1729: x_return_status := l_return_status;
1730: x_return_msg := l_return_msg;
1731: x_value := NULL;
1732: RETURN;

Line 1737: x_return_status := FND_API.G_RET_STS_SUCCESS;

1733: END IF;
1734: x_value := FND_DATE.CANONICAL_TO_DATE(l_varchar2);
1735:
1736: --return success
1737: x_return_status := FND_API.G_RET_STS_SUCCESS;
1738: RETURN;
1739: EXCEPTION
1740: WHEN OTHERS THEN
1741: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1741: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1737: x_return_status := FND_API.G_RET_STS_SUCCESS;
1738: RETURN;
1739: EXCEPTION
1740: WHEN OTHERS THEN
1741: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1742: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1743: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1744: x_value := NULL;
1745: END;

Line 1765: x_return_status := FND_API.G_RET_STS_ERROR;

1761: l_varchar2 VARCHAR2(4000);
1762: l_return_status VARCHAR2(6);
1763: l_return_msg VARCHAR2(2048);
1764: BEGIN
1765: x_return_status := FND_API.G_RET_STS_ERROR;
1766: x_return_msg := '';
1767: GET_CANONICAL_ARG_VALUE(px_arg,
1768: px_arg_context,
1769: p_using_splitting,

Line 1780: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

1776: l_ignore,
1777: l_varchar2,
1778: l_return_status,
1779: l_return_msg);
1780: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1781: x_return_status := l_return_status;
1782: x_return_msg := l_return_msg;
1783: x_value := NULL;
1784: RETURN;

Line 1789: x_return_status := FND_API.G_RET_STS_SUCCESS;

1785: END IF;
1786: x_value := CHARTOROWID(l_varchar2);
1787:
1788: --return success
1789: x_return_status := FND_API.G_RET_STS_SUCCESS;
1790: RETURN;
1791: EXCEPTION
1792: WHEN OTHERS THEN
1793: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1793: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1789: x_return_status := FND_API.G_RET_STS_SUCCESS;
1790: RETURN;
1791: EXCEPTION
1792: WHEN OTHERS THEN
1793: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1794: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1795: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1796: x_value := NULL;
1797: END;

Line 1840: x_return_status := FND_API.G_RET_STS_ERROR;

1836: l_return_status VARCHAR2(6);
1837: l_return_msg VARCHAR2(2048);
1838: BEGIN
1839: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
1840: x_return_status := FND_API.G_RET_STS_ERROR;
1841: x_return_msg := '';
1842:
1843: l_s := p_arg_ctxt.FIRST;
1844: WHILE l_s IS NOT NULL LOOP

Line 1862: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

1858: --drop any arg state/values we just computed in the transaction
1859: ROLLBACK;
1860:
1861: --print the value if we suceeded
1862: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
1863: fnd_oam_debug.log(1, l_ctxt, 'Value: '||l_val);
1864: END IF;
1865:
1866: --reset the arg's local state

Line 1877: IF l_return_status NOT IN (FND_API.G_RET_STS_SUCCESS,

1873: RESET_INITIALIZED_AUTONOMOUSLY(p_arg_ctxt(l_s).arg_id);
1874: END IF;
1875:
1876: --fail if the context arg was not failed sucessfully, ignore missing bind cases
1877: IF l_return_status NOT IN (FND_API.G_RET_STS_SUCCESS,
1878: FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_BINDS) THEN
1879: x_return_status := l_return_status;
1880: x_return_msg := l_return_msg;
1881: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 1886: IF p_arg_ctxt(l_s).valid_value_flag = FND_API.G_TRUE THEN

1882: ROLLBACK;
1883: RETURN;
1884: END IF;
1885: ELSE
1886: IF p_arg_ctxt(l_s).valid_value_flag = FND_API.G_TRUE THEN
1887: fnd_oam_debug.log(1, l_ctxt, 'Value: '||p_arg_ctxt(l_s).canonical_value);
1888: ELSE
1889: fnd_oam_debug.log(1, l_ctxt, 'Value: ?');
1890: END IF;

Line 1896: x_return_status := FND_API.G_RET_STS_SUCCESS;

1892:
1893: l_s := p_arg_ctxt.NEXT(l_s);
1894: END LOOP;
1895:
1896: x_return_status := FND_API.G_RET_STS_SUCCESS;
1897: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1898: EXCEPTION
1899: WHEN OTHERS THEN
1900: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1900: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1896: x_return_status := FND_API.G_RET_STS_SUCCESS;
1897: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1898: EXCEPTION
1899: WHEN OTHERS THEN
1900: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1901: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1902: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1903: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1904: END;

Line 1938: x_return_status := FND_API.G_RET_STS_ERROR;

1934: l_return_status VARCHAR2(6);
1935: l_return_msg VARCHAR2(2048);
1936: BEGIN
1937: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
1938: x_return_status := FND_API.G_RET_STS_ERROR;
1939: x_return_msg := '';
1940:
1941: k := p_arg_list.FIRST;
1942: WHILE k IS NOT NULL LOOP

Line 1946: IF p_arg_list(k).valid_value_flag = FND_API.G_TRUE THEN

1942: WHILE k IS NOT NULL LOOP
1943: fnd_oam_debug.log(1, l_ctxt, 'Arg Name(Permissions): '||p_arg_list(k).arg_name||'('||p_arg_list(k).permissions||')');
1944:
1945: --skip fetching the value since this is typically proceeded by a call to bind_args which does the gets
1946: IF p_arg_list(k).valid_value_flag = FND_API.G_TRUE THEN
1947: fnd_oam_debug.log(1, l_ctxt, 'Value: '||l_val);
1948: ELSE
1949: fnd_oam_debug.log(1, l_ctxt, 'Value: ?');
1950: END IF;

Line 1955: x_return_status := FND_API.G_RET_STS_SUCCESS;

1951:
1952: k := p_arg_list.NEXT(k);
1953: END LOOP;
1954:
1955: x_return_status := FND_API.G_RET_STS_SUCCESS;
1956: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1957: EXCEPTION
1958: WHEN OTHERS THEN
1959: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 1959: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

1955: x_return_status := FND_API.G_RET_STS_SUCCESS;
1956: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1957: EXCEPTION
1958: WHEN OTHERS THEN
1959: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1960: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
1961: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
1962: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1963: END;

Line 1994: x_return_status := FND_API.G_RET_STS_ERROR;

1990: k NUMBER;
1991: l_ignore BOOLEAN;
1992: BEGIN
1993: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
1994: x_return_status := FND_API.G_RET_STS_ERROR;
1995: x_return_msg := '';
1996:
1997: -- grab all the global and run args, global before run to allow run to override
1998: -- put both readable and writable args in the context

Line 2006: AND enabled_flag = FND_API.G_TRUE

2002: FROM fnd_oam_dscram_args_b
2003: WHERE ((parent_type = FND_OAM_DSCRAM_UTILS_PKG.G_TYPE_GLOBAL) OR
2004: ((parent_type = FND_OAM_DSCRAM_UTILS_PKG.G_TYPE_RUN) AND
2005: (parent_id = p_run_id)))
2006: AND enabled_flag = FND_API.G_TRUE
2007: ORDER BY parent_type ASC;
2008:
2009: k := l_arg_ids.FIRST;
2010: WHILE k IS NOT NULL LOOP

Line 2035: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

2031: TRUE,
2032: FALSE,
2033: l_return_status,
2034: l_return_msg);
2035: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2036: x_return_status := l_return_status;
2037: x_return_msg := l_return_msg;
2038: x_arg_context := l_empty_arg_context;
2039: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 2048: x_return_status := FND_API.G_RET_STS_SUCCESS;

2044: print_arg_context(l_arg_ctxt);
2045: END IF;
2046:
2047: --return the context
2048: x_return_status := FND_API.G_RET_STS_SUCCESS;
2049: x_arg_context := l_arg_ctxt;
2050: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2051: EXCEPTION
2052: WHEN OTHERS THEN

Line 2054: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2050: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2051: EXCEPTION
2052: WHEN OTHERS THEN
2053: x_arg_context := l_empty_arg_context;
2054: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2055: x_return_msg := 'Unhandled Exception: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2056: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2057: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2058: END;

Line 2094: x_return_status := FND_API.G_RET_STS_ERROR;

2090: l_return_status VARCHAR2(6);
2091: l_return_msg VARCHAR2(2048);
2092: BEGIN
2093: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
2094: x_return_status := FND_API.G_RET_STS_ERROR;
2095: x_return_msg := '';
2096:
2097: --get all the args attached to the specified parent type/id
2098: --includes an order_by clause to prevent deadlock which would be caused if two workers try to init

Line 2106: AND enabled_flag = FND_API.G_TRUE

2102: l_write_policies, l_datatypes, l_valid_value_flags, l_canonical_values
2103: FROM fnd_oam_dscram_args_b
2104: WHERE parent_type = p_parent_type
2105: AND parent_id = p_parent_id
2106: AND enabled_flag = FND_API.G_TRUE
2107: ORDER BY arg_id ASC;
2108:
2109: --allocate the array
2110: l_arg_list.EXTEND(l_arg_ids.COUNT);

Line 2146: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN

2142: --operations too much and bind_args will get them all when the time is right anyway.
2143: print_arg_list(l_arg_list,
2144: l_return_status,
2145: l_return_msg);
2146: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2147: x_return_status := l_return_status;
2148: x_return_msg := l_return_msg;
2149: x_arg_list := l_empty_arg_list;
2150: fnd_oam_debug.log(2, l_ctxt, 'EXIT');

Line 2161: x_return_status := FND_API.G_RET_STS_SUCCESS;

2157: l_return_msg);
2158: END IF;
2159:
2160: --return the final list
2161: x_return_status := FND_API.G_RET_STS_SUCCESS;
2162: x_arg_list := l_arg_list;
2163: x_has_writable := l_has_writable;
2164: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2165: EXCEPTION

Line 2167: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2163: x_has_writable := l_has_writable;
2164: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2165: EXCEPTION
2166: WHEN OTHERS THEN
2167: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2168: x_return_msg := 'Parent Type ('||p_parent_type||'), ID('||p_parent_id||'), while fetching arg list: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2169: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2170: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2171: END;

Line 2196: x_return_status := FND_API.G_RET_STS_ERROR;

2192: l_return_status VARCHAR2(6);
2193: l_return_msg VARCHAR2(2048);
2194: BEGIN
2195: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
2196: x_return_status := FND_API.G_RET_STS_ERROR;
2197: x_return_msg := '';
2198:
2199: --traverse the arg list, everything that's readable MUST be bound, otherwise it wouldn't be in the list
2200: k := p_arg_list.FIRST;

Line 2231: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2227: NULL,
2228: l_varchar2,
2229: l_return_status,
2230: l_return_msg);
2231: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2232: fnd_oam_debug.log(1, l_ctxt, 'Value(VARCHAR2): '||l_varchar2);
2233: ELSE
2234: x_return_status := l_return_status;
2235: x_return_msg := l_return_msg;

Line 2251: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2247: NULL,
2248: l_number,
2249: l_return_status,
2250: l_return_msg);
2251: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2252: fnd_oam_debug.log(1, l_ctxt, 'Value(NUMBER): '||FND_NUMBER.NUMBER_TO_CANONICAL(l_number));
2253: ELSE
2254: --or fail
2255: x_return_status := l_return_status;

Line 2272: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2268: NULL,
2269: l_date,
2270: l_return_status,
2271: l_return_msg);
2272: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2273: fnd_oam_debug.log(1, l_ctxt, 'Value(DATE): '||FND_DATE.DATE_TO_CANONICAL(l_date));
2274: ELSE
2275: --or fail
2276: x_return_status := l_return_status;

Line 2293: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2289: NULL,
2290: l_rowid,
2291: l_return_status,
2292: l_return_msg);
2293: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2294: fnd_oam_debug.log(1, l_ctxt, 'Value(ROWID): '||ROWIDTOCHAR(l_rowid));
2295: ELSE
2296: --or fail
2297: x_return_status := l_return_status;

Line 2355: x_return_status := FND_API.G_RET_STS_SUCCESS;

2351: k := p_arg_list.NEXT(k);
2352: END LOOP;
2353:
2354: --all bound, return success
2355: x_return_status := FND_API.G_RET_STS_SUCCESS;
2356: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2357: EXCEPTION
2358: WHEN OTHERS THEN
2359: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 2359: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2355: x_return_status := FND_API.G_RET_STS_SUCCESS;
2356: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2357: EXCEPTION
2358: WHEN OTHERS THEN
2359: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2360: x_return_msg := 'Unhandled Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2361: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2362: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2363: END;

Line 2388: x_return_status := FND_API.G_RET_STS_ERROR;

2384: l_return_status VARCHAR2(6);
2385: l_return_msg VARCHAR2(2048);
2386: BEGIN
2387: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
2388: x_return_status := FND_API.G_RET_STS_ERROR;
2389: x_return_msg := '';
2390:
2391: --if we're in a non-normal mode, store the values we get autonomously to keep them from
2392: --getting rolled back

Line 2428: IF l_return_status <> FND_API.G_RET_STS_SUCCESS AND

2424: l_ignore,
2425: l_canonical_value,
2426: l_return_status,
2427: l_return_msg);
2428: IF l_return_status <> FND_API.G_RET_STS_SUCCESS AND
2429: l_return_status <> FND_OAM_DSCRAM_UTILS_PKG.G_RET_STS_MISSING_BINDS THEN
2430:
2431: --if an arg failed to get a value, return it as an error, stop fetching other args
2432: x_return_status := l_return_status;

Line 2446: x_return_status := FND_API.G_RET_STS_SUCCESS;

2442: k := px_arg_list.NEXT(k);
2443: END LOOP;
2444:
2445: --return the final list
2446: x_return_status := FND_API.G_RET_STS_SUCCESS;
2447: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2448: EXCEPTION
2449: WHEN OTHERS THEN
2450: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 2450: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2446: x_return_status := FND_API.G_RET_STS_SUCCESS;
2447: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2448: EXCEPTION
2449: WHEN OTHERS THEN
2450: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2451: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2452: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2453: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2454: END;

Line 2477: p_arg_list(k).valid_value_flag = FND_API.G_TRUE AND

2473: --loop over each item in the arg list since its easier to lookup a match in the context
2474: k := p_arg_list.FIRST;
2475: WHILE k IS NOT NULL LOOP
2476: IF IS_READABLE(p_arg_list(k)) AND
2477: p_arg_list(k).valid_value_flag = FND_API.G_TRUE AND
2478: px_arg_context.EXISTS(p_arg_list(k).arg_name) THEN
2479:
2480: l_arg_name := p_arg_list(k).arg_name;
2481: -- do a cursory check of compatiblity before calling the context arg's get to check the db for its latest value

Line 2500: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2496: l_lock_handle,
2497: l_canonical_value,
2498: l_return_status,
2499: l_return_msg);
2500: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2501: --the get should succeed without finding a valid value for us to default in the arg list's value
2502: IF px_arg_context(l_arg_name).valid_value_flag IS NULL THEN
2503: --this means we can default from the arg list
2504: BEGIN

Line 2513: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2509: --and we should also store the context arg's new value
2510: STORE_ARG_VALUE_AUTONOMOUSLY(px_arg_context(l_arg_name),
2511: l_return_status,
2512: l_return_msg);
2513: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2514: fnd_oam_debug.log(1, l_ctxt, 'Set the context arg to value: '||p_arg_list(k).canonical_value);
2515: ELSE
2516: --if we didn't store correctly, reset the context arg to unknown
2517: px_arg_context(l_arg_name).valid_value_flag := NULL;

Line 2570: x_return_status := FND_API.G_RET_STS_ERROR;

2566: l_return_status VARCHAR2(6);
2567: l_return_msg VARCHAR2(2048);
2568: BEGIN
2569: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
2570: x_return_status := FND_API.G_RET_STS_ERROR;
2571: x_return_msg := '';
2572:
2573: k := px_arg_list.FIRST;
2574: WHILE k IS NOT NULL LOOP

Line 2588: x_return_status := FND_API.G_RET_STS_SUCCESS;

2584:
2585: --delete the arg list
2586: px_arg_list.DELETE;
2587:
2588: x_return_status := FND_API.G_RET_STS_SUCCESS;
2589: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2590: EXCEPTION
2591: WHEN OTHERS THEN
2592: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 2592: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2588: x_return_status := FND_API.G_RET_STS_SUCCESS;
2589: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2590: EXCEPTION
2591: WHEN OTHERS THEN
2592: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2593: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2594: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2595: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2596: END;

Line 2613: x_return_status := FND_API.G_RET_STS_ERROR;

2609: l_return_status VARCHAR2(6);
2610: l_return_msg VARCHAR2(2048);
2611: BEGIN
2612: fnd_oam_debug.log(2, l_ctxt, 'ENTER');
2613: x_return_status := FND_API.G_RET_STS_ERROR;
2614: x_return_msg := '';
2615:
2616: --go through the args
2617: l_s := px_arg_context.FIRST;

Line 2633: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN

2629: l_ignore,
2630: l_canonical_value,
2631: l_return_status,
2632: l_return_msg);
2633: IF l_return_status = FND_API.G_RET_STS_SUCCESS THEN
2634: fnd_oam_debug.log(1, l_ctxt, 'Arg('||l_s||'), stored final context value: '||l_canonical_value);
2635: END IF;
2636: END IF;
2637:

Line 2650: x_return_status := FND_API.G_RET_STS_SUCCESS;

2646:
2647: --delete the arg context
2648: px_arg_context.DELETE;
2649:
2650: x_return_status := FND_API.G_RET_STS_SUCCESS;
2651: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2652: EXCEPTION
2653: WHEN OTHERS THEN
2654: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

Line 2654: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;

2650: x_return_status := FND_API.G_RET_STS_SUCCESS;
2651: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2652: EXCEPTION
2653: WHEN OTHERS THEN
2654: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2655: x_return_msg := 'Unexpected Error: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))';
2656: fnd_oam_debug.log(6, l_ctxt, x_return_msg);
2657: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
2658: END;