4436: n NUMBER;
4437: l_custom BOOLEAN;
4438:
4439: BEGIN
4440: c := dbms_sql.open_cursor;
4441: l_sql := 'select ' || proc ||
4442: '(:attrval,:lang,:attr,:entity,:ctx) from dual';
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4439: BEGIN
4440: c := dbms_sql.open_cursor;
4441: l_sql := 'select ' || proc ||
4442: '(:attrval,:lang,:attr,:entity,:ctx) from dual';
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4440: c := dbms_sql.open_cursor;
4441: l_sql := 'select ' || proc ||
4442: '(:attrval,:lang,:attr,:entity,:ctx) from dual';
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4441: l_sql := 'select ' || proc ||
4442: '(:attrval,:lang,:attr,:entity,:ctx) from dual';
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4442: '(:attrval,:lang,:attr,:entity,:ctx) from dual';
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4450: dbms_sql.close_cursor(c);
4443: dbms_sql.parse(c,l_sql,2);
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4450: dbms_sql.close_cursor(c);
4451: RETURN TRUE;
4444: DBMS_SQL.BIND_VARIABLE(c,':attrval','x');
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4450: dbms_sql.close_cursor(c);
4451: RETURN TRUE;
4452: EXCEPTION
4445: DBMS_SQL.BIND_VARIABLE(c,':lang','x');
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4450: dbms_sql.close_cursor(c);
4451: RETURN TRUE;
4452: EXCEPTION
4453: WHEN OTHERS THEN
4446: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4447: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4448: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4449: n:=DBMS_SQL.execute(c);
4450: dbms_sql.close_cursor(c);
4451: RETURN TRUE;
4452: EXCEPTION
4453: WHEN OTHERS THEN
4454: dbms_sql.close_cursor(c);
4450: dbms_sql.close_cursor(c);
4451: RETURN TRUE;
4452: EXCEPTION
4453: WHEN OTHERS THEN
4454: dbms_sql.close_cursor(c);
4455: RETURN FALSE;
4456: END;
4457:
4458: FUNCTION has_context(proc VARCHAR2) RETURN BOOLEAN IS
4465: n NUMBER;
4466: l_custom BOOLEAN;
4467:
4468: BEGIN
4469: c := dbms_sql.open_cursor;
4470: l_sql := 'select ' || proc ||
4471: '(:record_id,:entity,:attr,:ctx) from dual';
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4468: BEGIN
4469: c := dbms_sql.open_cursor;
4470: l_sql := 'select ' || proc ||
4471: '(:record_id,:entity,:attr,:ctx) from dual';
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4469: c := dbms_sql.open_cursor;
4470: l_sql := 'select ' || proc ||
4471: '(:record_id,:entity,:attr,:ctx) from dual';
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4470: l_sql := 'select ' || proc ||
4471: '(:record_id,:entity,:attr,:ctx) from dual';
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4478: dbms_sql.close_cursor(c);
4471: '(:record_id,:entity,:attr,:ctx) from dual';
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4478: dbms_sql.close_cursor(c);
4479: RETURN TRUE;
4472: dbms_sql.parse(c,l_sql,2);
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4478: dbms_sql.close_cursor(c);
4479: RETURN TRUE;
4480: EXCEPTION
4473: DBMS_SQL.BIND_VARIABLE(c,':record_id','x');
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4478: dbms_sql.close_cursor(c);
4479: RETURN TRUE;
4480: EXCEPTION
4481: WHEN OTHERS THEN
4474: DBMS_SQL.BIND_VARIABLE(c,':entity','x');
4475: DBMS_SQL.BIND_VARIABLE(c,':attr','x');
4476: DBMS_SQL.BIND_VARIABLE(c,':ctx','x');
4477: n:=DBMS_SQL.execute(c);
4478: dbms_sql.close_cursor(c);
4479: RETURN TRUE;
4480: EXCEPTION
4481: WHEN OTHERS THEN
4482: dbms_sql.close_cursor(c);
4478: dbms_sql.close_cursor(c);
4479: RETURN TRUE;
4480: EXCEPTION
4481: WHEN OTHERS THEN
4482: dbms_sql.close_cursor(c);
4483: RETURN FALSE;
4484: END;
4485:
4486:
4506: l_entity := FUNCS.ENTITY_NAME;
4507: l_attribute := FUNCS.ATTRIBUTE_NAME;
4508: l_procedure := FUNCS.PROCEDURE_NAME;
4509: l_trans_name := FUNCS.TRANSFORMATION_NAME;
4510: c := dbms_sql.open_cursor;
4511: l_sql := 'select ' || FUNCS.PROCEDURE_NAME ||
4512: '(:attrval,:lang,:attr,:entity) from dual';
4513: dbms_sql.parse(c,l_sql,2);
4514: dbms_sql.close_cursor(c);
4509: l_trans_name := FUNCS.TRANSFORMATION_NAME;
4510: c := dbms_sql.open_cursor;
4511: l_sql := 'select ' || FUNCS.PROCEDURE_NAME ||
4512: '(:attrval,:lang,:attr,:entity) from dual';
4513: dbms_sql.parse(c,l_sql,2);
4514: dbms_sql.close_cursor(c);
4515: EXCEPTION WHEN OTHERS THEN
4516: FND_MESSAGE.SET_NAME('AR', 'HZ_TRANS_PROC_ERROR1');
4517: FND_MESSAGE.SET_TOKEN('PROC' ,l_procedure);
4510: c := dbms_sql.open_cursor;
4511: l_sql := 'select ' || FUNCS.PROCEDURE_NAME ||
4512: '(:attrval,:lang,:attr,:entity) from dual';
4513: dbms_sql.parse(c,l_sql,2);
4514: dbms_sql.close_cursor(c);
4515: EXCEPTION WHEN OTHERS THEN
4516: FND_MESSAGE.SET_NAME('AR', 'HZ_TRANS_PROC_ERROR1');
4517: FND_MESSAGE.SET_TOKEN('PROC' ,l_procedure);
4518: FND_MESSAGE.SET_TOKEN('ENTITY' ,l_entity);
4533: l_custom := TRUE;
4534: l_entity := FUNCS.ENTITY_NAME;
4535: l_attribute := FUNCS.ATTRIBUTE_NAME;
4536: l_procedure := FUNCS.custom_attribute_procedure;
4537: c := dbms_sql.open_cursor;
4538: l_sql := 'select ' || FUNCS.custom_attribute_procedure ||
4539: '(:record_id,:entity,:attr) from dual';
4540: dbms_sql.parse(c,l_sql,2);
4541: dbms_sql.close_cursor(c);
4536: l_procedure := FUNCS.custom_attribute_procedure;
4537: c := dbms_sql.open_cursor;
4538: l_sql := 'select ' || FUNCS.custom_attribute_procedure ||
4539: '(:record_id,:entity,:attr) from dual';
4540: dbms_sql.parse(c,l_sql,2);
4541: dbms_sql.close_cursor(c);
4542: EXCEPTION WHEN OTHERS THEN
4543: FND_MESSAGE.SET_NAME('AR', 'HZ_CUSTOM_PROC_ERROR1');
4544: FND_MESSAGE.SET_TOKEN('PROC' ,l_procedure);
4537: c := dbms_sql.open_cursor;
4538: l_sql := 'select ' || FUNCS.custom_attribute_procedure ||
4539: '(:record_id,:entity,:attr) from dual';
4540: dbms_sql.parse(c,l_sql,2);
4541: dbms_sql.close_cursor(c);
4542: EXCEPTION WHEN OTHERS THEN
4543: FND_MESSAGE.SET_NAME('AR', 'HZ_CUSTOM_PROC_ERROR1');
4544: FND_MESSAGE.SET_TOKEN('PROC' ,l_procedure);
4545: FND_MESSAGE.SET_TOKEN('ENTITY' ,l_entity);
4548: END;
4549: END LOOP;
4550: EXCEPTION
4551: WHEN OTHERS THEN
4552: dbms_sql.close_cursor(c);
4553: RAISE FND_API.G_EXC_ERROR;
4554: END ;
4555:
4556: