1: package body iby_pmtmthd_conditions_pkg as
2: /*$Header: ibycondb.pls 115.12 2002/10/04 20:47:05 jleybovi ship $*/
3:
4: /*--------------------------------------------------------------+
5: | Function: createCondition. |
6: | Purpose: To create a rule condition in the database. |
7: +--------------------------------------------------------------*/
8:
9: procedure createCondition(
10: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
7: +--------------------------------------------------------------*/
8:
9: procedure createCondition(
10: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
8:
9: procedure createCondition(
10: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
16: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
9: procedure createCondition(
10: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
16: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
17: is
10: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
16: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
17: is
18: l_count int:=0;
11: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
16: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
17: is
18: l_count int:=0;
19: CURSOR c_ruleCondt IS
12: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
13: i_value in iby_pmtmthd_conditions.value%type,
14: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
15: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
16: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
17: is
18: l_count int:=0;
19: CURSOR c_ruleCondt IS
20: SELECT COUNT(*)
17: is
18: l_count int:=0;
19: CURSOR c_ruleCondt IS
20: SELECT COUNT(*)
21: FROM iby_pmtmthd_conditions a
22: WHERE
23: i_entry_sequence=a.entry_sequence AND
24: i_paymentmethodId = a.paymentmethodId ;
25: BEGIN
44: -- if not create a new row.
45:
46: IF (l_count = 0)
47: THEN
48: INSERT INTO iby_pmtmthd_conditions
49: (paymentmethodid, parameter_code, operation_code, value, is_value_string,
50: entry_sequence, last_update_date, last_updated_by, creation_date,
51: created_by, last_update_login, condition_name, object_version_number)
52: VALUES ( i_paymentmethodid, i_parameter_code, i_operation_code, i_value,
65: ** Function: modifyCondition.
66: ** Purpose: modifies rule condition information in the database.
67: */
68: procedure modifyCondition (
69: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
66: ** Purpose: modifies rule condition information in the database.
67: */
68: procedure modifyCondition (
69: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
67: */
68: procedure modifyCondition (
69: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
68: procedure modifyCondition (
69: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
76: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
69: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
76: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
77: is
70: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
76: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
77: is
78:
71: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
76: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
77: is
78:
79: CURSOR c_ruleCondt IS
72: i_value in iby_pmtmthd_conditions.value%type,
73: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
74: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
75: i_version in iby_pmtmthd_conditions.object_version_number%type,
76: i_condition_name in iby_pmtmthd_conditions.condition_name%type)
77: is
78:
79: CURSOR c_ruleCondt IS
80: SELECT *
77: is
78:
79: CURSOR c_ruleCondt IS
80: SELECT *
81: FROM iby_pmtmthd_conditions a
82: WHERE i_version = a.object_version_number AND
83: i_entry_sequence=a.entry_sequence AND
84: i_paymentmethodId = a.paymentmethodId
85: FOR UPDATE;
106: raise_application_error(-20000, 'IBY_204589#', FALSE);
107: END IF;
108:
109: FOR v_ruleCondt IN c_ruleCondt LOOP
110: UPDATE iby_pmtmthd_conditions
111: SET paymentmethodid = i_paymentmethodid, parameter_code = i_parameter_code,
112: operation_code = i_operation_code, value=i_value,
113: is_value_string = i_is_value_string, entry_sequence=i_entry_sequence,
114: last_update_date = sysdate,
135: ** Function: deleteCondition.
136: ** Purpose: deletes rule condition in the database.
137: */
138: procedure deleteCondition (
139: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
136: ** Purpose: deletes rule condition in the database.
137: */
138: procedure deleteCondition (
139: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
137: */
138: procedure deleteCondition (
139: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
145: i_version in iby_pmtmthd_conditions.object_version_number%type)
138: procedure deleteCondition (
139: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
145: i_version in iby_pmtmthd_conditions.object_version_number%type)
146: is
139: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type,
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
145: i_version in iby_pmtmthd_conditions.object_version_number%type)
146: is
147: -- Check whether this method name is already being used
140: i_parameter_code in iby_pmtmthd_conditions.parameter_code%type,
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
145: i_version in iby_pmtmthd_conditions.object_version_number%type)
146: is
147: -- Check whether this method name is already being used
148: CURSOR c_ruleCondt IS
141: i_operation_code in iby_pmtmthd_conditions.operation_code%type,
142: i_value in iby_pmtmthd_conditions.value%type,
143: i_is_value_string in iby_pmtmthd_conditions.is_value_string%type,
144: i_entry_sequence in iby_pmtmthd_conditions.entry_sequence%type,
145: i_version in iby_pmtmthd_conditions.object_version_number%type)
146: is
147: -- Check whether this method name is already being used
148: CURSOR c_ruleCondt IS
149: SELECT *
146: is
147: -- Check whether this method name is already being used
148: CURSOR c_ruleCondt IS
149: SELECT *
150: FROM iby_pmtmthd_conditions a
151: WHERE i_version = a.object_version_number AND
152: i_entry_sequence=a.entry_sequence AND
153: i_paymentmethodId = a.paymentmethodId
154: FOR UPDATE;
169:
170: CLOSE c_ruleCondt;
171:
172: FOR v_ruleCondt IN c_ruleCondt LOOP
173: DELETE FROM iby_pmtmthd_conditions
174: WHERE CURRENT OF c_ruleCondt;
175: END LOOP;
176:
177: IF c_ruleCondt%ISOPEN
188: ** Purpose: Checks whether the condition name is unique for this rule. Returns
189: ** true if the name is unique, false otherwise.
190: */
191: function checkDuplicateCondName(
192: i_condition_name in iby_pmtmthd_conditions.condition_name%type,
193: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type
194: )
195: return boolean is
196:
189: ** true if the name is unique, false otherwise.
190: */
191: function checkDuplicateCondName(
192: i_condition_name in iby_pmtmthd_conditions.condition_name%type,
193: i_paymentmethodid in iby_pmtmthd_conditions.paymentmethodid%type
194: )
195: return boolean is
196:
197: l_count int:=0;
197: l_count int:=0;
198: BEGIN
199:
200: SELECT COUNT(*) into l_count
201: FROM iby_pmtmthd_conditions a
202: WHERE UPPER(i_condition_name) = UPPER(a.condition_name)
203: AND i_paymentmethodId = a.paymentmethodId ;
204:
205: IF (l_count = 0) THEN
209: END IF;
210:
211: END checkDuplicateCondName;
212:
213: end iby_pmtmthd_conditions_pkg;