147: if(TEMP_COUNT > 0) then
148: NEW_USE_COUNT := NEW_USE_COUNT + 1;
149: else
150: if(TEMPRULE.ACTION_ID is null) then
151: -- action_id is already migrated from ame_rules to ame_action_usages
152: select count(*)
153: into TEMP_COUNT
154: from
155: AME_MANDATORY_ATTRIBUTES,
153: into TEMP_COUNT
154: from
155: AME_MANDATORY_ATTRIBUTES,
156: AME_ACTIONS,
157: AME_ACTION_USAGES
158: where
159: AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
160: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
161: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
157: AME_ACTION_USAGES
158: where
159: AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
160: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
161: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
162: AME_ACTION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
163: sysdate between AME_MANDATORY_ATTRIBUTES.START_DATE and
164: nvl(AME_MANDATORY_ATTRIBUTES.END_DATE - (1/86400), sysdate) and
165: sysdate between AME_ACTIONS.START_DATE and
158: where
159: AME_MANDATORY_ATTRIBUTES.ATTRIBUTE_ID = X_ATTRIBUTE_ID and
160: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
161: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
162: AME_ACTION_USAGES.RULE_ID = TEMPRULE.RULE_ID and
163: sysdate between AME_MANDATORY_ATTRIBUTES.START_DATE and
164: nvl(AME_MANDATORY_ATTRIBUTES.END_DATE - (1/86400), sysdate) and
165: sysdate between AME_ACTIONS.START_DATE and
166: nvl(AME_ACTIONS.END_DATE - (1/86400), sysdate) and
163: sysdate between AME_MANDATORY_ATTRIBUTES.START_DATE and
164: nvl(AME_MANDATORY_ATTRIBUTES.END_DATE - (1/86400), sysdate) and
165: sysdate between AME_ACTIONS.START_DATE and
166: nvl(AME_ACTIONS.END_DATE - (1/86400), sysdate) and
167: ((sysdate between AME_ACTION_USAGES.START_DATE and
168: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
169: (sysdate < AME_ACTION_USAGES.START_DATE and
170: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,
171: AME_ACTION_USAGES.START_DATE + (1/86400))));
164: nvl(AME_MANDATORY_ATTRIBUTES.END_DATE - (1/86400), sysdate) and
165: sysdate between AME_ACTIONS.START_DATE and
166: nvl(AME_ACTIONS.END_DATE - (1/86400), sysdate) and
167: ((sysdate between AME_ACTION_USAGES.START_DATE and
168: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
169: (sysdate < AME_ACTION_USAGES.START_DATE and
170: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,
171: AME_ACTION_USAGES.START_DATE + (1/86400))));
172: else
165: sysdate between AME_ACTIONS.START_DATE and
166: nvl(AME_ACTIONS.END_DATE - (1/86400), sysdate) and
167: ((sysdate between AME_ACTION_USAGES.START_DATE and
168: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
169: (sysdate < AME_ACTION_USAGES.START_DATE and
170: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,
171: AME_ACTION_USAGES.START_DATE + (1/86400))));
172: else
173: select count(*)
166: nvl(AME_ACTIONS.END_DATE - (1/86400), sysdate) and
167: ((sysdate between AME_ACTION_USAGES.START_DATE and
168: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
169: (sysdate < AME_ACTION_USAGES.START_DATE and
170: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,
171: AME_ACTION_USAGES.START_DATE + (1/86400))));
172: else
173: select count(*)
174: into TEMP_COUNT
167: ((sysdate between AME_ACTION_USAGES.START_DATE and
168: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
169: (sysdate < AME_ACTION_USAGES.START_DATE and
170: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,
171: AME_ACTION_USAGES.START_DATE + (1/86400))));
172: else
173: select count(*)
174: into TEMP_COUNT
175: from
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,
247: AME_ACTIONS
248: where
249: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
250: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
246: AME_ACTION_USAGES,
247: AME_ACTIONS
248: where
249: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
250: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
251: AME_ACTION_USAGES.RULE_ID = X_RULE_ID and
252: (AME_MANDATORY_ATTRIBUTES.START_DATE <= sysdate and
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
247: AME_ACTIONS
248: where
249: AME_MANDATORY_ATTRIBUTES.ACTION_TYPE_ID = AME_ACTIONS.ACTION_TYPE_ID and
250: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
251: AME_ACTION_USAGES.RULE_ID = X_RULE_ID and
252: (AME_MANDATORY_ATTRIBUTES.START_DATE <= sysdate and
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
255: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
250: AME_ACTIONS.ACTION_ID = AME_ACTION_USAGES.ACTION_ID and
251: AME_ACTION_USAGES.RULE_ID = X_RULE_ID and
252: (AME_MANDATORY_ATTRIBUTES.START_DATE <= sysdate and
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
255: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
256: (sysdate < AME_ACTION_USAGES.START_DATE and
257: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,AME_ACTION_USAGES.START_DATE
258: + (1/86400)))) and
251: AME_ACTION_USAGES.RULE_ID = X_RULE_ID and
252: (AME_MANDATORY_ATTRIBUTES.START_DATE <= sysdate and
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
255: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
256: (sysdate < AME_ACTION_USAGES.START_DATE and
257: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,AME_ACTION_USAGES.START_DATE
258: + (1/86400)))) and
259: (AME_ACTIONS.START_DATE <= sysdate and
252: (AME_MANDATORY_ATTRIBUTES.START_DATE <= sysdate and
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
255: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
256: (sysdate < AME_ACTION_USAGES.START_DATE and
257: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,AME_ACTION_USAGES.START_DATE
258: + (1/86400)))) and
259: (AME_ACTIONS.START_DATE <= sysdate and
260: (AME_ACTIONS.END_DATE is null or sysdate < AME_ACTIONS.END_DATE))
253: (AME_MANDATORY_ATTRIBUTES.END_DATE is null or sysdate < AME_MANDATORY_ATTRIBUTES.END_DATE)) and
254: ((sysdate between AME_ACTION_USAGES.START_DATE and
255: nvl(AME_ACTION_USAGES.END_DATE - (1/86400), sysdate)) or
256: (sysdate < AME_ACTION_USAGES.START_DATE and
257: AME_ACTION_USAGES.START_DATE < nvl(AME_ACTION_USAGES.END_DATE,AME_ACTION_USAGES.START_DATE
258: + (1/86400)))) and
259: (AME_ACTIONS.START_DATE <= sysdate and
260: (AME_ACTIONS.END_DATE is null or sysdate < AME_ACTIONS.END_DATE))
261: union
317: ACA.CREATION_DATE
318: FROM AME_CALLING_APPS ACA,
319: AME_RULES AR,
320: AME_RULE_USAGES ARU,
321: AME_ACTION_USAGES AAU
322: WHERE ACA.APPLICATION_ID = ARU.ITEM_ID
323: AND ARU.RULE_ID = AR.RULE_ID
324: AND AR.RULE_ID = AAU.RULE_ID
325: AND AAU.ACTION_ID = X_ACTION_ID