[Home] [Help]
PACKAGE BODY: APPS.IGI_RPI_LINE_DETAILS_PKG
Source
4 l_debug_level number:=FND_LOG.G_CURRENT_RUNTIME_LEVEL;
1 PACKAGE BODY IGI_RPI_LINE_DETAILS_PKG as
2 --- $Header: igirldeb.pls 120.5.12000000.1 2007/08/31 05:52:59 mbremkum ship $
3
5 l_state_level number:=FND_LOG.LEVEL_STATEMENT;
6 l_proc_level number:=FND_LOG.LEVEL_PROCEDURE;
7 l_event_level number:=FND_LOG.LEVEL_EVENT;
8 l_excep_level number:=FND_LOG.LEVEL_EXCEPTION;
9 l_error_level number:=FND_LOG.LEVEL_ERROR;
10 l_unexp_level number:=FND_LOG.LEVEL_UNEXPECTED;
11
12 PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
13 X_Standing_Charge_Id NUMBER,
14 X_Line_Item_Id IN OUT NOCOPY NUMBER,
15 X_Charge_Item_Number NUMBER,
16 X_Item_Id NUMBER,
17 X_Price NUMBER,
18 X_Quantity NUMBER,
19 X_Period_Name VARCHAR2,
20 X_Current_Effective_Date DATE,
21 X_Description VARCHAR2,
22 X_Creation_Date DATE,
23 X_Created_By NUMBER,
24 X_Last_Update_Date DATE,
25 X_Last_Updated_By NUMBER,
26 X_Last_Update_Login NUMBER,
27 X_Revised_Effective_Date DATE,
28 X_Revised_Price NUMBER,
29 X_Previous_Price NUMBER,
30 X_Previous_Effective_Date DATE,
31 X_Vat_Tax_Id NUMBER,
32 X_Revenue_Code_Combination_Id NUMBER,
33 X_Receivable_Code_Combo_Id NUMBER,
34 X_Additional_Reference VARCHAR2,
35 X_Accounting_rule_id NUMBER,
36 X_Start_date DATE,
37 X_Duration NUMBER,
38 X_Legal_Entity_Id NUMBER, --Added for MOAC Impact Bug No 5905216
39 X_Org_Id NUMBER --Added for MOAC Impact Bug No 5905216
40 ) IS
41 CURSOR C IS SELECT rowid FROM IGI_RPI_LINE_DETAILS
42 WHERE line_item_id = X_Line_Item_Id;
43 CURSOR C2 IS SELECT igi_rpi_line_details_s.nextval FROM sys.dual;
44 BEGIN
45 if (X_Line_Item_Id is NULL) then
46 OPEN C2;
47 FETCH C2 INTO X_Line_Item_Id;
48 CLOSE C2;
49 end if;
50
51 /*Modified the Insert to include ORG_ID and LEGAL_ENTITY_ID for MOAC Impact R12 Uptake Bug No 5905216*/
52
53 INSERT INTO IGI_RPI_LINE_DETAILS(
54 standing_charge_id,
55 line_item_id,
56 charge_item_number,
57 item_id,
58 price,
59 quantity,
60 period_name,
61 current_effective_date,
62 description,
63 creation_date,
64 created_by,
65 last_update_date,
66 last_updated_by,
67 last_update_login,
68 revised_effective_date,
69 revised_price,
70 previous_price,
71 previous_effective_date,
72 vat_tax_id,
73 revenue_code_combination_id,
74 receivable_code_combination_id,
75 additional_reference,
76 accounting_rule_id,
77 start_date,
78 duration,
79 legal_entity_id,
80 org_id
81 ) VALUES (
82 X_Standing_Charge_Id,
83 X_Line_Item_Id,
84 X_Charge_Item_Number,
85 X_Item_Id,
86 X_Price,
87 X_Quantity,
88 X_Period_Name,
89 X_Current_Effective_Date,
90 X_Description,
91 X_Creation_Date,
92 X_Created_By,
93 X_Last_Update_Date,
94 X_Last_Updated_By,
95 X_Last_Update_Login,
96 X_Revised_Effective_Date,
97 X_Revised_Price,
98 X_Previous_Price,
99 X_Previous_Effective_Date,
100 X_Vat_Tax_Id,
101 X_Revenue_Code_Combination_Id,
102 X_Receivable_Code_Combo_Id,
103 X_Additional_Reference,
104 X_Accounting_Rule_id,
105 X_Start_Date,
106 X_Duration,
107 X_Legal_Entity_Id,
108 X_Org_Id
109 );
110
111 OPEN C;
112 FETCH C INTO X_Rowid;
113 if (C%NOTFOUND) then
114 CLOSE C;
115 Raise NO_DATA_FOUND;
116 end if;
117 CLOSE C;
118 END Insert_Row;
119
120
121 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
122 X_Standing_Charge_Id NUMBER,
123 X_Line_Item_Id NUMBER,
124 X_Charge_Item_Number NUMBER,
125 X_Item_Id NUMBER,
126 X_Price NUMBER,
127 X_Quantity NUMBER,
128 X_Period_Name VARCHAR2,
129 X_Current_Effective_Date DATE,
130 X_Description VARCHAR2,
131 X_Revised_Effective_Date DATE,
132 X_Revised_Price NUMBER,
133 X_Previous_Price NUMBER,
134 X_Previous_Effective_Date DATE,
135 X_Vat_Tax_Id NUMBER,
136 X_Revenue_Code_Combination_Id NUMBER,
137 X_Receivable_Code_Combo_Id NUMBER,
138 X_Additional_Reference VARCHAR2,
139 X_accounting_rule_id NUMBER,
140 X_start_date DATE,
141 X_duration NUMBER,
142 -- X_Legal_Entity_Id NUMBER, --Added for MOAC Impact Bug No 5905216
143 X_Org_Id NUMBER --Added for MOAC Impact Bug No 5905216
144 ) IS
145 CURSOR C IS
146 SELECT *
147 FROM IGI_RPI_LINE_DETAILS
148 WHERE rowid = X_Rowid
149 FOR UPDATE of Line_Item_Id NOWAIT;
150 Recinfo C%ROWTYPE;
151
152
153 BEGIN
154 OPEN C;
155 FETCH C INTO Recinfo;
156 if (C%NOTFOUND) then
157 CLOSE C;
158 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
159 --Bug 3199481 (start)
160 If (l_unexp_level >= l_debug_level) then
161 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_rpi_line_details_pkg.lock_row.Msg1',FALSE);
162 End if;
163 --Bug 3199481 (end)
164 APP_EXCEPTION.Raise_Exception;
165 end if;
166 CLOSE C;
167 if (
168 (Recinfo.standing_charge_id = X_Standing_Charge_Id)
169 AND (Recinfo.line_item_id = X_Line_Item_Id)
170 AND (Recinfo.charge_item_number = X_Charge_Item_Number)
171 AND (Recinfo.item_id = X_Item_Id)
172 AND (Recinfo.price = X_Price)
173 AND (Recinfo.quantity = X_Quantity)
174 AND (Recinfo.period_name = X_Period_Name)
175 AND (Recinfo.current_effective_date = X_Current_Effective_Date)
176 AND (Recinfo.description = X_Description)
177 /*Added for MOAC Impact R12 Uptake bug No 5905216 - Start*/
178 AND (Recinfo.org_id = X_Org_Id)
179 -- AND (Recinfo.legal_entity_id = X_Legal_Entity_Id)
180 /*Added for MOAC Impact R12 Uptake bug No 5905216 - End*/
181 AND ( (Recinfo.revised_effective_date = X_Revised_Effective_Date)
182 OR ( (Recinfo.revised_effective_date IS NULL)
183 AND (X_Revised_Effective_Date IS NULL)))
184 AND ( (Recinfo.revised_price = X_Revised_Price)
185 OR ( (Recinfo.revised_price IS NULL)
186 AND (X_Revised_Price IS NULL)))
187 AND ( (Recinfo.previous_price = X_Previous_Price)
188 OR ( (Recinfo.previous_price IS NULL)
189 AND (X_Previous_Price IS NULL)))
190 AND ( (Recinfo.previous_effective_date = X_Previous_Effective_Date)
191 OR ( (Recinfo.previous_effective_date IS NULL)
192 AND (X_Previous_effective_date IS NULL)))
193 AND ( (Recinfo.vat_tax_id = X_Vat_Tax_Id)
194 OR ( (Recinfo.vat_tax_id IS NULL)
195 AND (X_Vat_Tax_Id IS NULL)))
196 AND ((Recinfo.revenue_code_combination_id = X_Revenue_Code_Combination_Id)
197 OR ( (Recinfo.revenue_code_combination_id IS NULL)
198 AND (X_Revenue_Code_Combination_Id IS NULL)))
199 AND ((Recinfo.receivable_code_combination_id = X_Receivable_Code_Combo_Id) OR ( (Recinfo.receivable_code_combination_id IS NULL)
200 AND (X_Receivable_Code_Combo_Id IS NULL)))
201 AND ( (Recinfo.additional_reference = X_Additional_Reference)
202 OR ( (Recinfo.additional_reference IS NULL)
203 AND (X_Additional_Reference IS NULL)))
204 AND ( (Recinfo.accounting_rule_id = X_accounting_rule_id)
205 OR ( (Recinfo.accounting_rule_id IS NULL)
206 AND (X_accounting_rule_id IS NULL)))
207 AND ( (Recinfo.start_date = X_start_date)
208 OR ( (Recinfo.start_date IS NULL)
209 AND (X_start_date IS NULL)))
210 AND ( (Recinfo.duration = X_duration)
211 OR ( (Recinfo.duration IS NULL)
212 AND (X_duration IS NULL)))
213
214 ) then
215 return;
216 else
217 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
218 --Bug 3199481 (start)
219 If (l_unexp_level >= l_debug_level) then
220 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_rpi_line_details_pkg.lock_row.Msg2',FALSE);
221 End if;
222 --Bug 3199481 (end)
223 APP_EXCEPTION.Raise_Exception;
224 end if;
225 END Lock_Row;
226
227
228
229 PROCEDURE Update_Row(X_Rowid VARCHAR2,
230 X_Standing_Charge_Id NUMBER,
231 X_Line_Item_Id NUMBER,
232 X_Charge_Item_Number NUMBER,
233 X_Item_Id NUMBER,
234 X_Price NUMBER,
235 X_Quantity NUMBER,
236 X_Period_Name VARCHAR2,
237 X_Current_Effective_Date DATE,
238 X_Description VARCHAR2,
239 X_Last_Update_Date DATE,
240 X_Last_Updated_By NUMBER,
241 X_Last_Update_Login NUMBER,
242 X_Revised_Effective_Date DATE,
243 X_Revised_Price NUMBER,
244 X_Previous_Price NUMBER,
245 X_Previous_Effective_Date DATE,
246 X_Vat_Tax_Id NUMBER,
247 X_Revenue_Code_Combination_Id NUMBER,
248 X_Receivable_Code_Combo_Id NUMBER,
249 X_Additional_Reference VARCHAR2,
250 X_accounting_rule_id NUMBER,
251 X_start_date DATE,
252 X_Duration NUMBER,
253 X_Legal_Entity_Id NUMBER, --Added for MOAC Impact Bug No 5905216
254 X_Org_Id NUMBER --Added for MOAC Impact Bug No 5905216
255 ) IS
256 BEGIN
257 UPDATE IGI_RPI_LINE_DETAILS
258 SET
259 standing_charge_id = X_Standing_Charge_Id,
260 line_item_id = X_Line_Item_Id,
261 charge_item_number = X_Charge_Item_Number,
262 item_id = X_Item_Id,
263 price = X_Price,
264 quantity = X_Quantity,
265 period_name = X_Period_Name,
266 current_effective_date = X_Current_Effective_Date,
267 description = X_Description,
268 last_update_date = X_Last_Update_Date,
269 last_updated_by = X_Last_Updated_By,
270 last_update_login = X_Last_Update_Login,
271 revised_effective_date = X_Revised_Effective_Date,
272 revised_price = X_Revised_Price,
273 previous_price = X_Previous_Price,
274 previous_effective_date = X_Previous_Effective_Date,
275 vat_tax_id = X_Vat_Tax_Id,
276 revenue_code_combination_id = X_Revenue_Code_Combination_Id,
277 receivable_code_combination_id = X_Receivable_Code_Combo_Id,
278 additional_reference = X_Additional_Reference,
279 accounting_rule_id = X_accounting_rule_id,
280 start_date = X_start_date,
281 duration = X_duration,
282 org_id = X_Org_Id,
283 legal_entity_id = X_Legal_Entity_Id
284 WHERE rowid = X_Rowid;
285
286 if (SQL%NOTFOUND) then
287 Raise NO_DATA_FOUND;
288 end if;
289 END Update_Row;
290
291 PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
292 BEGIN
293 DELETE FROM IGI_RPI_LINE_DETAILS
294 WHERE rowid = X_Rowid;
295
296 if (SQL%NOTFOUND) then
297 Raise NO_DATA_FOUND;
298 end if;
299 END Delete_Row;
300
301
302 END IGI_RPI_LINE_DETAILS_PKG;