[Home] [Help]
PACKAGE BODY: APPS.IGI_BUD_JOURNAL_PERIODS_PKG
Source
1 PACKAGE BODY IGI_BUD_JOURNAL_PERIODS_PKG as
2 -- $Header: igibuddb.pls 120.4 2005/10/30 05:51:39 appldev 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 NUMBER,
19 X_Be_Header_Id NUMBER,
20 X_Be_Line_Num NUMBER,
21 X_Period_Name VARCHAR2,
22 X_Period_Number NUMBER,
23 X_Period_Year NUMBER,
24 X_Record_Type VARCHAR2,
25 X_Entered_Dr NUMBER,
26 X_Entered_Cr NUMBER,
27 X_Next_Year_Budget NUMBER,
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 CURSOR C IS SELECT rowid FROM igi_bud_journal_periods
35 WHERE be_header_id = X_Be_Header_Id
36 AND be_line_num = X_Be_Line_Num
37 AND period_name = X_Period_Name;
38
39 BEGIN
40
41
42 INSERT INTO igi_bud_journal_periods(
43 be_batch_id,
44 be_header_id,
45 be_line_num,
46 period_name,
47 period_number,
48 period_year,
49 record_type,
50 entered_dr,
51 entered_cr,
52 next_year_budget,
53 creation_date,
54 created_by,
55 last_update_date,
56 last_updated_by,
57 last_update_login
58 ) VALUES (
59 X_Be_Batch_Id,
60 X_Be_Header_Id,
61 X_Be_Line_Num,
62 X_Period_Name,
63 X_Period_Number,
64 X_Period_Year,
65 X_Record_Type,
66 X_Entered_Dr,
67 X_Entered_Cr,
68 X_Next_Year_Budget,
69 X_Creation_Date,
70 X_Created_By,
71 X_Last_Update_Date,
72 X_Last_Updated_By,
73 X_Last_Update_Login
74 );
75
76 OPEN C;
77 FETCH C INTO X_Rowid;
78 if (C%NOTFOUND) then
79 CLOSE C;
80 Raise NO_DATA_FOUND;
81 end if;
82 CLOSE C;
83 END Insert_Row;
84
85
86 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
87 X_Be_Batch_Id NUMBER,
88 X_Be_Header_Id NUMBER,
89 X_Be_Line_Num NUMBER,
90 X_Period_Name VARCHAR2,
91 X_Period_Number NUMBER,
92 X_Period_Year NUMBER,
93 X_Record_Type VARCHAR2,
94 X_Entered_Dr NUMBER,
95 X_Entered_Cr NUMBER,
96 X_Next_Year_Budget NUMBER
97 ) IS
98 CURSOR C IS
99 SELECT *
100 FROM igi_bud_journal_periods
101 WHERE rowid = X_Rowid
102 FOR UPDATE of Be_Header_Id NOWAIT;
103 Recinfo C%ROWTYPE;
104
105
106 BEGIN
107 OPEN C;
108 FETCH C INTO Recinfo;
109 if (C%NOTFOUND) then
110 CLOSE C;
111 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
112 --Bug 3199481 (start)
113 If (l_unexp_level >= l_debug_level) then
114 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_bud_journals_periods_pkg.lock_row.Msg1',FALSE);
115 End if;
116 --Bug 3199481 (End)
117 APP_EXCEPTION.Raise_Exception;
118 end if;
119 CLOSE C;
120 if (
121 (Recinfo.be_batch_id = X_Be_Batch_Id)
122 AND (Recinfo.be_header_id = X_Be_Header_Id)
123 AND (Recinfo.be_line_num = X_Be_Line_Num)
124 AND (Recinfo.period_name = X_Period_Name)
125 AND (Recinfo.period_number = X_Period_Number)
126 AND (Recinfo.period_year = X_Period_Year)
127 AND ( (Recinfo.record_type = X_Record_Type)
128 OR ( (Recinfo.record_type IS NULL)
129 AND (X_Record_Type IS NULL)))
130 AND ( (Recinfo.entered_dr = X_Entered_Dr)
131 OR ( (Recinfo.entered_dr IS NULL)
132 AND (X_Entered_Dr IS NULL)))
133 AND ( (Recinfo.entered_cr = X_Entered_Cr)
134 OR ( (Recinfo.entered_cr IS NULL)
135 AND (X_Entered_Cr IS NULL)))
136 AND ( (Recinfo.next_year_budget = X_Next_Year_Budget)
137 OR ( (Recinfo.next_year_budget IS NULL)
138 AND (X_Next_Year_Budget IS NULL)))
139 ) then
140 return;
141 else
142 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
143 --Bug 3199481 (start)
144 If (l_unexp_level >= l_debug_level) then
145 FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_bud_journals_periods_pkg.lock_row.Msg2',FALSE);
146 End if;
147 --Bug 3199481 (End)
148 APP_EXCEPTION.Raise_Exception;
149 end if;
150 END Lock_Row;
151
152
153 PROCEDURE Update_Row(X_Rowid VARCHAR2,
154 X_Be_Batch_Id NUMBER,
155 X_Be_Header_Id NUMBER,
156 X_Be_Line_Num NUMBER,
157 X_Period_Name VARCHAR2,
158 X_Period_Number NUMBER,
159 X_Period_Year NUMBER,
160 X_Record_Type VARCHAR2,
161 X_Entered_Dr NUMBER,
162 X_Entered_Cr NUMBER,
163 X_Next_Year_Budget NUMBER,
164 X_Last_Update_Date DATE,
165 X_Last_Updated_By NUMBER,
166 X_Last_Update_Login NUMBER
167
168 ) IS
169 BEGIN
170 UPDATE igi_bud_journal_periods
171 SET
172 be_batch_id = X_Be_Batch_Id,
173 be_header_id = X_Be_Header_Id,
174 be_line_num = X_Be_Line_Num,
175 period_name = X_Period_Name,
176 period_number = X_Period_Number,
177 period_year = X_Period_Year,
178 record_type = X_Record_Type,
179 entered_dr = X_Entered_Dr,
180 entered_cr = X_Entered_Cr,
181 next_year_budget = X_Next_Year_Budget,
182 last_update_date = X_Last_Update_Date,
183 last_updated_by = X_Last_Updated_By,
184 last_update_login = X_Last_Update_Login
185 WHERE rowid = X_Rowid;
186
187 if (SQL%NOTFOUND) then
188 Raise NO_DATA_FOUND;
189 end if;
190 END Update_Row;
191 PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
192 BEGIN
193 DELETE FROM igi_bud_journal_periods
194 WHERE rowid = X_Rowid;
195
196 if (SQL%NOTFOUND) then
197 Raise NO_DATA_FOUND;
198 end if;
199 END Delete_Row;
200
201
202 END IGI_BUD_JOURNAL_PERIODS_PKG;