131: for TEMPRULE in RULE_CURSOR(X_APPLICATION_ID => X_APPLICATION_ID) loop
132: select count(*)
133: into TEMP_COUNT
134: from AME_CONDITIONS,
135: AME_CONDITION_USAGES
136: where
137: AME_CONDITIONS.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
138: AME_CONDITIONS.CONDITION_ID = AME_CONDITION_USAGES.CONDITION_ID and
139: AME_CONDITION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
134: from AME_CONDITIONS,
135: AME_CONDITION_USAGES
136: where
137: AME_CONDITIONS.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
138: AME_CONDITIONS.CONDITION_ID = AME_CONDITION_USAGES.CONDITION_ID and
139: AME_CONDITION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
140: sysdate between AME_CONDITIONS.START_DATE and
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
135: AME_CONDITION_USAGES
136: where
137: AME_CONDITIONS.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
138: AME_CONDITIONS.CONDITION_ID = AME_CONDITION_USAGES.CONDITION_ID and
139: AME_CONDITION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
140: sysdate between AME_CONDITIONS.START_DATE and
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
138: AME_CONDITIONS.CONDITION_ID = AME_CONDITION_USAGES.CONDITION_ID and
139: AME_CONDITION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
140: sysdate between AME_CONDITIONS.START_DATE and
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
144: (sysdate < AME_CONDITION_USAGES.START_DATE and
145: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
146: AME_CONDITION_USAGES.START_DATE + (1/86400))));
139: AME_CONDITION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
140: sysdate between AME_CONDITIONS.START_DATE and
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
144: (sysdate < AME_CONDITION_USAGES.START_DATE and
145: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
146: AME_CONDITION_USAGES.START_DATE + (1/86400))));
147: if(TEMP_COUNT > 0) then
140: sysdate between AME_CONDITIONS.START_DATE and
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
144: (sysdate < AME_CONDITION_USAGES.START_DATE and
145: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
146: AME_CONDITION_USAGES.START_DATE + (1/86400))));
147: if(TEMP_COUNT > 0) then
148: NEW_USE_COUNT := NEW_USE_COUNT + 1;
141: nvl(AME_CONDITIONS.END_DATE - (1/86400), sysdate) and
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
144: (sysdate < AME_CONDITION_USAGES.START_DATE and
145: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
146: AME_CONDITION_USAGES.START_DATE + (1/86400))));
147: if(TEMP_COUNT > 0) then
148: NEW_USE_COUNT := NEW_USE_COUNT + 1;
149: else
142: ((sysdate between AME_CONDITION_USAGES.START_DATE and
143: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
144: (sysdate < AME_CONDITION_USAGES.START_DATE and
145: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
146: AME_CONDITION_USAGES.START_DATE + (1/86400))));
147: if(TEMP_COUNT > 0) then
148: NEW_USE_COUNT := NEW_USE_COUNT + 1;
149: else
150: if(TEMPRULE.ACTION_ID is null) then
226: ,X_APPLICATION_ID ame_rule_usages.item_id%type) is
227: cursor GET_USED_ATTRIBUTES (X_RULE_ID ame_rule_usages.rule_id%type) is
228: select AME_CONDITIONS.ATTRIBUTE_ID
229: from AME_CONDITIONS,
230: AME_CONDITION_USAGES
231: where
232: AME_CONDITIONS.CONDITION_TYPE in (AME_UTIL.ORDINARYCONDITIONTYPE,
233: AME_UTIL.EXCEPTIONCONDITIONTYPE) and
234: AME_CONDITION_USAGES.RULE_ID = X_RULE_ID and
230: AME_CONDITION_USAGES
231: where
232: AME_CONDITIONS.CONDITION_TYPE in (AME_UTIL.ORDINARYCONDITIONTYPE,
233: AME_UTIL.EXCEPTIONCONDITIONTYPE) and
234: AME_CONDITION_USAGES.RULE_ID = X_RULE_ID and
235: AME_CONDITION_USAGES.CONDITION_ID = AME_CONDITIONS.CONDITION_ID and
236: (AME_CONDITIONS.START_DATE <= sysdate and
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
231: where
232: AME_CONDITIONS.CONDITION_TYPE in (AME_UTIL.ORDINARYCONDITIONTYPE,
233: AME_UTIL.EXCEPTIONCONDITIONTYPE) and
234: AME_CONDITION_USAGES.RULE_ID = X_RULE_ID and
235: AME_CONDITION_USAGES.CONDITION_ID = AME_CONDITIONS.CONDITION_ID and
236: (AME_CONDITIONS.START_DATE <= sysdate and
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
234: AME_CONDITION_USAGES.RULE_ID = X_RULE_ID and
235: AME_CONDITION_USAGES.CONDITION_ID = AME_CONDITIONS.CONDITION_ID and
236: (AME_CONDITIONS.START_DATE <= sysdate and
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
240: (sysdate < AME_CONDITION_USAGES.START_DATE and
241: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
242: AME_CONDITION_USAGES.START_DATE + (1/86400))))
235: AME_CONDITION_USAGES.CONDITION_ID = AME_CONDITIONS.CONDITION_ID and
236: (AME_CONDITIONS.START_DATE <= sysdate and
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
240: (sysdate < AME_CONDITION_USAGES.START_DATE and
241: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
242: AME_CONDITION_USAGES.START_DATE + (1/86400))))
243: union
236: (AME_CONDITIONS.START_DATE <= sysdate and
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
240: (sysdate < AME_CONDITION_USAGES.START_DATE and
241: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
242: AME_CONDITION_USAGES.START_DATE + (1/86400))))
243: union
244: select AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID
237: (AME_CONDITIONS.END_DATE is null or sysdate < AME_CONDITIONS.END_DATE)) and
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
240: (sysdate < AME_CONDITION_USAGES.START_DATE and
241: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
242: AME_CONDITION_USAGES.START_DATE + (1/86400))))
243: union
244: select AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID
245: from AME_MANDATORY_ATTRIBUTES,
238: ((sysdate between AME_CONDITION_USAGES.START_DATE and
239: nvl(AME_CONDITION_USAGES.END_DATE - (1/86400), sysdate)) or
240: (sysdate < AME_CONDITION_USAGES.START_DATE and
241: AME_CONDITION_USAGES.START_DATE < nvl(AME_CONDITION_USAGES.END_DATE,
242: AME_CONDITION_USAGES.START_DATE + (1/86400))))
243: union
244: select AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID
245: from AME_MANDATORY_ATTRIBUTES,
246: AME_ACTION_USAGES,