102: for tempRule in ruleCursor(applicationIdIn => applicationIdIn) loop
103: select count(*)
104: into tempCount
105: from
106: ame_conditions,
107: ame_condition_usages
108: where
109: ame_conditions.attribute_id = attributeIdIn and
110: ame_conditions.condition_id = ame_condition_usages.condition_id and
105: from
106: ame_conditions,
107: ame_condition_usages
108: where
109: ame_conditions.attribute_id = attributeIdIn and
110: ame_conditions.condition_id = ame_condition_usages.condition_id and
111: ame_condition_usages.rule_id = tempRule.rule_id and
112: sysdate between ame_conditions.start_date and
113: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
106: ame_conditions,
107: ame_condition_usages
108: where
109: ame_conditions.attribute_id = attributeIdIn and
110: ame_conditions.condition_id = ame_condition_usages.condition_id and
111: ame_condition_usages.rule_id = tempRule.rule_id and
112: sysdate between ame_conditions.start_date and
113: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
114: ((sysdate between ame_condition_usages.start_date and
108: where
109: ame_conditions.attribute_id = attributeIdIn and
110: ame_conditions.condition_id = ame_condition_usages.condition_id and
111: ame_condition_usages.rule_id = tempRule.rule_id and
112: sysdate between ame_conditions.start_date and
113: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
114: ((sysdate between ame_condition_usages.start_date and
115: nvl(ame_condition_usages.end_date - ame_util.oneSecond, sysdate)) or
116: (sysdate < ame_condition_usages.start_date and
109: ame_conditions.attribute_id = attributeIdIn and
110: ame_conditions.condition_id = ame_condition_usages.condition_id and
111: ame_condition_usages.rule_id = tempRule.rule_id and
112: sysdate between ame_conditions.start_date and
113: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
114: ((sysdate between ame_condition_usages.start_date and
115: nvl(ame_condition_usages.end_date - ame_util.oneSecond, sysdate)) or
116: (sysdate < ame_condition_usages.start_date and
117: ame_condition_usages.start_date < nvl(ame_condition_usages.end_date,
230: begin
231: select count(*)
232: into attributeConditionCnt
233: from ame_attributes,
234: ame_conditions
235: where
236: ame_attributes.attribute_id = ame_conditions.attribute_id and
237: ame_attributes.attribute_id = attributeIdIn and
238: ame_conditions.condition_type = conditionTypeIn and
232: into attributeConditionCnt
233: from ame_attributes,
234: ame_conditions
235: where
236: ame_attributes.attribute_id = ame_conditions.attribute_id and
237: ame_attributes.attribute_id = attributeIdIn and
238: ame_conditions.condition_type = conditionTypeIn and
239: sysdate between ame_attributes.start_date and
240: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
234: ame_conditions
235: where
236: ame_attributes.attribute_id = ame_conditions.attribute_id and
237: ame_attributes.attribute_id = attributeIdIn and
238: ame_conditions.condition_type = conditionTypeIn and
239: sysdate between ame_attributes.start_date and
240: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
241: sysdate between ame_conditions.start_date and
242: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate);
237: ame_attributes.attribute_id = attributeIdIn and
238: ame_conditions.condition_type = conditionTypeIn and
239: sysdate between ame_attributes.start_date and
240: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
241: sysdate between ame_conditions.start_date and
242: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate);
243: return(attributeConditionCnt);
244: exception
245: when others then
238: ame_conditions.condition_type = conditionTypeIn and
239: sysdate between ame_attributes.start_date and
240: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
241: sysdate between ame_conditions.start_date and
242: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate);
243: return(attributeConditionCnt);
244: exception
245: when others then
246: rollback;
261: begin
262: select count(*)
263: into attributeConditionInUseCnt
264: from ame_attributes,
265: ame_conditions,
266: ame_rules,
267: ame_condition_usages
268: where
269: ame_attributes.attribute_id = ame_conditions.attribute_id and
265: ame_conditions,
266: ame_rules,
267: ame_condition_usages
268: where
269: ame_attributes.attribute_id = ame_conditions.attribute_id and
270: ame_conditions.condition_id = ame_condition_usages.condition_id and
271: ame_rules.rule_id = ame_condition_usages.rule_id and
272: ame_rules.rule_id = ruleIdIn and
273: ame_attributes.attribute_id = attributeIdIn and
266: ame_rules,
267: ame_condition_usages
268: where
269: ame_attributes.attribute_id = ame_conditions.attribute_id and
270: ame_conditions.condition_id = ame_condition_usages.condition_id and
271: ame_rules.rule_id = ame_condition_usages.rule_id and
272: ame_rules.rule_id = ruleIdIn and
273: ame_attributes.attribute_id = attributeIdIn and
274: ame_conditions.condition_type = conditionTypeIn and
270: ame_conditions.condition_id = ame_condition_usages.condition_id and
271: ame_rules.rule_id = ame_condition_usages.rule_id and
272: ame_rules.rule_id = ruleIdIn and
273: ame_attributes.attribute_id = attributeIdIn and
274: ame_conditions.condition_type = conditionTypeIn and
275: sysdate between ame_attributes.start_date and
276: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
277: sysdate between ame_conditions.start_date and
278: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
273: ame_attributes.attribute_id = attributeIdIn and
274: ame_conditions.condition_type = conditionTypeIn and
275: sysdate between ame_attributes.start_date and
276: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
277: sysdate between ame_conditions.start_date and
278: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
279: ((sysdate between ame_condition_usages.start_date and
280: nvl(ame_condition_usages.end_date - ame_util.oneSecond, sysdate)) or
281: (sysdate < ame_condition_usages.start_date and
274: ame_conditions.condition_type = conditionTypeIn and
275: sysdate between ame_attributes.start_date and
276: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
277: sysdate between ame_conditions.start_date and
278: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate) and
279: ((sysdate between ame_condition_usages.start_date and
280: nvl(ame_condition_usages.end_date - ame_util.oneSecond, sysdate)) or
281: (sysdate < ame_condition_usages.start_date and
282: ame_condition_usages.start_date < nvl(ame_condition_usages.end_date,
872: begin
873: select count(*)
874: into useCount
875: from
876: ame_conditions
877: where
878: attribute_id = attributeIdIn and
879: sysdate between start_date and
880: nvl(end_date - ame_util.oneSecond, sysdate) ;
2031: ame_attributes.name name
2032: from
2033: ame_attributes,
2034: ame_attribute_usages,
2035: ame_conditions
2036: where
2037: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2038: ame_conditions.attribute_id = ame_attributes.attribute_id and
2039: ame_attribute_usages.application_id = applicationIdIn and
2034: ame_attribute_usages,
2035: ame_conditions
2036: where
2037: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2038: ame_conditions.attribute_id = ame_attributes.attribute_id and
2039: ame_attribute_usages.application_id = applicationIdIn and
2040: nvl(ame_attributes.line_item, ame_util.booleanFalse) = lineItemIn and
2041: ame_conditions.condition_type = decode(ruleTypeIn, 1, ame_util.ordinaryConditionType, 2, ame_util.exceptionConditionType) and
2042: sysdate between ame_attributes.start_date and
2037: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2038: ame_conditions.attribute_id = ame_attributes.attribute_id and
2039: ame_attribute_usages.application_id = applicationIdIn and
2040: nvl(ame_attributes.line_item, ame_util.booleanFalse) = lineItemIn and
2041: ame_conditions.condition_type = decode(ruleTypeIn, 1, ame_util.ordinaryConditionType, 2, ame_util.exceptionConditionType) and
2042: sysdate between ame_attributes.start_date and
2043: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2044: sysdate between ame_attribute_usages.start_date and
2045: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2042: sysdate between ame_attributes.start_date and
2043: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2044: sysdate between ame_attribute_usages.start_date and
2045: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2046: sysdate between ame_conditions.start_date and
2047: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2048: order by name;
2049: tempIndex integer;
2050: begin
2043: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2044: sysdate between ame_attribute_usages.start_date and
2045: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2046: sysdate between ame_conditions.start_date and
2047: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2048: order by name;
2049: tempIndex integer;
2050: begin
2051: tempIndex := 1;
2086: ame_attributes.name name
2087: from
2088: ame_attributes,
2089: ame_attribute_usages,
2090: ame_conditions
2091: where
2092: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2093: ame_conditions.attribute_id = ame_attributes.attribute_id and
2094: ame_attribute_usages.application_id = applicationIdIn and
2089: ame_attribute_usages,
2090: ame_conditions
2091: where
2092: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2093: ame_conditions.attribute_id = ame_attributes.attribute_id and
2094: ame_attribute_usages.application_id = applicationIdIn and
2095: ame_attributes.item_class_id = itemClassIdIn and
2096: nvl(ame_attributes.line_item, ame_util.booleanFalse) = lineItemIn and
2097: ame_conditions.condition_type = decode(ruleTypeIn, 1, ame_util.ordinaryConditionType, 2, ame_util.exceptionConditionType) and
2093: ame_conditions.attribute_id = ame_attributes.attribute_id and
2094: ame_attribute_usages.application_id = applicationIdIn and
2095: ame_attributes.item_class_id = itemClassIdIn and
2096: nvl(ame_attributes.line_item, ame_util.booleanFalse) = lineItemIn and
2097: ame_conditions.condition_type = decode(ruleTypeIn, 1, ame_util.ordinaryConditionType, 2, ame_util.exceptionConditionType) and
2098: sysdate between ame_attributes.start_date and
2099: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2100: sysdate between ame_attribute_usages.start_date and
2101: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2098: sysdate between ame_attributes.start_date and
2099: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2100: sysdate between ame_attribute_usages.start_date and
2101: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2102: sysdate between ame_conditions.start_date and
2103: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2104: order by name;
2105: tempIndex integer;
2106: begin
2099: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2100: sysdate between ame_attribute_usages.start_date and
2101: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2102: sysdate between ame_conditions.start_date and
2103: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2104: order by name;
2105: tempIndex integer;
2106: begin
2107: tempIndex := 1;
2144: ame_attributes.name name
2145: from
2146: ame_attributes,
2147: ame_attribute_usages,
2148: ame_conditions
2149: where
2150: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2151: ame_conditions.attribute_id = ame_attributes.attribute_id and
2152: ame_attribute_usages.application_id = applicationIdIn and
2147: ame_attribute_usages,
2148: ame_conditions
2149: where
2150: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2151: ame_conditions.attribute_id = ame_attributes.attribute_id and
2152: ame_attribute_usages.application_id = applicationIdIn and
2153: ame_attributes.item_class_id = itemClassIdIn and
2154: ame_conditions.condition_type = conditionTypeIn and
2155: sysdate between ame_attributes.start_date and
2150: ame_attributes.attribute_id = ame_attribute_usages.attribute_id and
2151: ame_conditions.attribute_id = ame_attributes.attribute_id and
2152: ame_attribute_usages.application_id = applicationIdIn and
2153: ame_attributes.item_class_id = itemClassIdIn and
2154: ame_conditions.condition_type = conditionTypeIn and
2155: sysdate between ame_attributes.start_date and
2156: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2157: sysdate between ame_attribute_usages.start_date and
2158: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2155: sysdate between ame_attributes.start_date and
2156: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2157: sysdate between ame_attribute_usages.start_date and
2158: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2159: sysdate between ame_conditions.start_date and
2160: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2161: order by name;
2162: attributeConditionCount integer;
2163: attributeConditionsInUseCount integer;
2156: nvl(ame_attributes.end_date - ame_util.oneSecond, sysdate) and
2157: sysdate between ame_attribute_usages.start_date and
2158: nvl(ame_attribute_usages.end_date - ame_util.oneSecond, sysdate) and
2159: sysdate between ame_conditions.start_date and
2160: nvl(ame_conditions.end_date - ame_util.oneSecond, sysdate)
2161: order by name;
2162: attributeConditionCount integer;
2163: attributeConditionsInUseCount integer;
2164: tempIndex integer;
2198: procedure getAttributeConditions(attributeIdIn in integer,
2199: conditionIdListOut out nocopy ame_util.idList) as
2200: cursor getConditionsCursor(attributeIdIn in integer) is
2201: select condition_id
2202: from ame_conditions
2203: where
2204: attribute_id = attributeIdIn and
2205: sysdate between start_date and
2206: nvl(end_date - ame_util.oneSecond, sysdate);
3827: last_update_login = currentUserId,
3828: end_date = processingDate
3829: where
3830: condition_id in (select condition_id
3831: from ame_conditions
3832: where processingDate between start_date and
3833: nvl(end_date - ame_util.oneSecond, processingDate) and
3834: attribute_id = attributeIdIn) and
3835: processingDate between start_date and
3834: attribute_id = attributeIdIn) and
3835: processingDate between start_date and
3836: nvl(end_date - ame_util.oneSecond, processingDate) ;
3837: end if;
3838: update ame_conditions
3839: set
3840: last_updated_by = currentUserId,
3841: last_update_date = processingDate,
3842: last_update_login = currentUserId,