[Home] [Help]
PACKAGE BODY: APPS.IGI_BUD_JOURNAL_BATCHES_PKG
Source
1 PACKAGE BODY IGI_BUD_JOURNAL_BATCHES_PKG as
2 -- $Header: igibudgb.pls 120.5 2007/09/12 10:34:12 pshivara ship $
3
4 --Bug 3199481
5
6 l_debug_level number := FND_LOG.G_CURRENT_RUNTIME_LEVEL ;
7
8 l_state_level number := FND_LOG.LEVEL_STATEMENT ;
9 l_proc_level number := FND_LOG.LEVEL_PROCEDURE ;
10 l_event_level number := FND_LOG.LEVEL_EVENT ;
11 l_excep_level number := FND_LOG.LEVEL_EXCEPTION ;
12 l_error_level number := FND_LOG.LEVEL_ERROR ;
13 l_unexp_level number := FND_LOG.LEVEL_UNEXPECTED ;
14
15 --Bug 3199481
16
17 PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
18 X_Be_Batch_Id IN OUT NOCOPY NUMBER,
19 X_Fiscal_Year NUMBER,
20 X_Name VARCHAR2,
21 X_Set_Of_Books_Id NUMBER,
22 X_Record_Type VARCHAR2,
23 X_Complete_Flag VARCHAR2,
24 X_Control_Total NUMBER,
25 X_Running_Total_Dr NUMBER,
26 X_Running_Total_Cr NUMBER,
27 X_Date_Completed DATE,
28 X_Creation_Date DATE,
29 X_Created_By NUMBER,
30 X_Last_Update_Date DATE,
31 X_Last_Updated_By NUMBER,
32 X_Last_Update_Login NUMBER
33 ) IS
34
35 CURSOR C IS SELECT rowid FROM IGI_BUD_JOURNAL_BATCHES
36 WHERE be_batch_id = X_Be_Batch_Id;
37 CURSOR C2 IS SELECT gl_interface_control_s.nextval FROM sys.dual;
38
39 BEGIN
40 if (X_Be_Batch_Id is NULL) then
41 OPEN C2;
42 FETCH C2 INTO X_Be_Batch_Id;
43 CLOSE C2;
44 end if;
45
46 INSERT INTO IGI_BUD_JOURNAL_BATCHES(
47 be_batch_id,
48 fiscal_year,
49 name,
50 set_of_books_id,
51 record_type,
52 complete_flag,
53 control_total,
54 running_total_dr,
55 running_total_cr,
56 date_completed,
57 creation_date,
58 created_by,
59 last_update_date,
60 last_updated_by,
61 last_update_login
62 ) VALUES (
63 X_Be_Batch_Id,
64 X_Fiscal_Year,
65 X_Name,
66 X_Set_Of_Books_Id,
67 X_Record_Type,
68 X_Complete_Flag,
69 X_Control_Total,
70 X_Running_Total_Dr,
71 X_Running_Total_Cr,
72 X_Date_Completed,
73 X_Creation_Date,
74 X_Created_By,
75 X_Last_Update_Date,
76 X_Last_Updated_By,
77 X_Last_Update_Login
78 );
79
80 OPEN C;
81 FETCH C INTO X_Rowid;
82 if (C%NOTFOUND) then
83 CLOSE C;
84 Raise NO_DATA_FOUND;
85 end if;
86 CLOSE C;
87 END Insert_Row;
88
89
90 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
91 X_Be_Batch_Id NUMBER,
92 X_Fiscal_Year NUMBER,
93 X_Name VARCHAR2,
94 X_Set_Of_Books_Id NUMBER,
95 X_Record_Type VARCHAR2,
96 X_Complete_Flag VARCHAR2,
97 X_Control_Total NUMBER,
98 X_Running_Total_Dr NUMBER,
99 X_Running_Total_Cr NUMBER,
100 X_Date_Completed DATE
101 ) IS
102 CURSOR C IS
103 SELECT *
104 FROM IGI_BUD_JOURNAL_BATCHES
105 WHERE rowid = X_Rowid
106 FOR UPDATE of Be_Batch_Id NOWAIT;
107 Recinfo C%ROWTYPE;
108
109
110 BEGIN
111
112 OPEN C;
113 FETCH C INTO Recinfo;
114 if (C%NOTFOUND) then
115 CLOSE C;
116 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
117 --Bug 3199481 (start)
118 If (l_unexp_level >= l_debug_level) then
119 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_bud_journal_headers_pkg.lock_row.Msg1',FALSE);
120 End if;
121 --Bug 3199481 (End)
122 APP_EXCEPTION.Raise_Exception;
123 end if;
124 CLOSE C;
125
126 if (
127 (Recinfo.be_batch_id = X_Be_Batch_Id)
128 AND (Recinfo.fiscal_year = X_Fiscal_Year)
129 AND (Recinfo.name = X_Name)
130 AND (Recinfo.set_of_books_id = X_Set_Of_Books_Id)
131 AND (Recinfo.record_type = X_Record_Type)
132 AND (Recinfo.complete_flag = X_Complete_Flag)
133 AND ( (Recinfo.control_total = X_Control_Total)
134 OR ( (Recinfo.control_total IS NULL)
135 AND (X_Control_Total IS NULL)))
136 AND ( (Recinfo.running_total_dr = X_Running_Total_Dr)
137 OR ( (Recinfo.running_total_dr IS NULL)
138 AND (X_Running_Total_Dr IS NULL)))
139 AND ( (Recinfo.running_total_cr = X_Running_Total_Cr)
140 OR ( (Recinfo.running_total_cr IS NULL)
141 AND (X_Running_Total_Cr IS NULL)))
142 AND ( (Recinfo.date_completed = X_Date_Completed)
143 OR ( (Recinfo.date_completed IS NULL)
144 AND (X_Date_Completed IS NULL)))
145 ) then
146 return;
147 else
148 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
149 --Bug 3199481 (start)
150 If (l_unexp_level >= l_debug_level) then
151 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_bud_journal_headers_pkg.lock_row.Msg2',FALSE);
152 End if;
153 --Bug 3199481 (End)
154 APP_EXCEPTION.Raise_Exception;
155 end if;
156
157 END Lock_Row;
158
159 PROCEDURE Update_Row(X_Rowid VARCHAR2,
160 X_Be_Batch_Id NUMBER,
161 X_Fiscal_Year NUMBER,
162 X_Name VARCHAR2,
163 X_Set_Of_Books_Id NUMBER,
164 X_Record_Type VARCHAR2,
165 X_Complete_Flag VARCHAR2,
166 X_Control_Total NUMBER,
167 X_Running_Total_Dr NUMBER,
168 X_Running_Total_Cr NUMBER,
169 X_Date_Completed DATE,
170 X_Last_Update_Date DATE,
171 X_Last_Updated_By NUMBER,
172 X_Last_Update_Login NUMBER,
173 X_REQUEST_ID NUMBER -- bug 5982297
174 ) IS
175 BEGIN
176 UPDATE IGI_BUD_JOURNAL_BATCHES
177 SET
178 be_batch_id = X_Be_Batch_Id,
179 fiscal_year = X_Fiscal_Year,
180 name = X_Name,
181 set_of_books_id = X_Set_Of_Books_Id,
182 record_type = X_Record_Type,
183 complete_flag = X_Complete_Flag,
184 control_total = X_Control_Total,
185 running_total_dr = X_Running_Total_Dr,
186 running_total_cr = X_Running_Total_Cr,
187 date_completed = X_Date_Completed,
188 last_update_date = X_Last_Update_Date,
189 last_updated_by = X_Last_Updated_By,
190 last_update_login = X_Last_Update_Login,
191 request_id = X_REQUEST_ID -- bug 5982297
192 WHERE rowid = X_Rowid;
193
194 if (SQL%NOTFOUND) then
195 Raise NO_DATA_FOUND;
196 end if;
197 END Update_Row;
198
199 PROCEDURE Delete_Row(X_Rowid VARCHAR2,
200 X_Be_Batch_Id NUMBER) IS
201
202 cursor related_headers is
203 select h.rowid row_id, h.be_header_id
204 from igi_bud_journal_headers h
205 where h.be_batch_id = X_Be_Batch_Id;
206
207 BEGIN
208 DELETE FROM IGI_BUD_JOURNAL_BATCHES
209 WHERE rowid = X_Rowid;
210
211 for header in related_headers loop
212 igi_bud_journal_headers_pkg.delete_row(header.row_id,
213 header.be_header_id);
214 end loop;
215
216 if (SQL%NOTFOUND) then
217 Raise NO_DATA_FOUND;
218 end if;
219 END Delete_Row;
220
221
222 END IGI_BUD_JOURNAL_BATCHES_PKG;