DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSI_CTR_ESTIMATED_READINGS_PKG

Source


1 PACKAGE BODY CSI_CTR_ESTIMATED_READINGS_PKG as
2 /* $Header: csitcerb.pls 120.0 2005/06/09 21:36:10 epajaril noship $*/
3 
4 G_PKG_NAME CONSTANT VARCHAR2(30)  := 'CSI_CTR_ESTIMATED_READINGS_PKG';
5 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csitcerb.pls';
6 
7 PROCEDURE Insert_Row(
8 	 px_ESTIMATED_READING_ID        IN OUT NOCOPY NUMBER
9  	 ,p_COUNTER_ID                  NUMBER
10 	 ,p_ESTIMATION_ID               NUMBER
11 	 ,p_VALUE_TIMESTAMP             DATE
12 	 ,p_ESTIMATED_METER_READING     NUMBER
13 	 ,p_NUM_OF_READINGS             NUMBER
14 	 ,p_PERIOD_START_DATE           DATE
15 	 ,p_PERIOD_END_DATE             DATE
16          ,p_AVG_CALCULATION_START_DATE  DATE
17          ,p_ESTIMATED_USAGE             NUMBER
18 	 ,p_ATTRIBUTE1                  VARCHAR2
19 	 ,p_ATTRIBUTE2                  VARCHAR2
20 	 ,p_ATTRIBUTE3                  VARCHAR2
21 	 ,p_ATTRIBUTE4                 	VARCHAR2
22 	 ,p_ATTRIBUTE5                  VARCHAR2
23 	 ,p_ATTRIBUTE6                  VARCHAR2
24 	 ,p_ATTRIBUTE7                  VARCHAR2
25 	 ,p_ATTRIBUTE8                  VARCHAR2
26 	 ,p_ATTRIBUTE9                  VARCHAR2
27 	 ,p_ATTRIBUTE10                 VARCHAR2
28 	 ,p_ATTRIBUTE11                 VARCHAR2
29 	 ,p_ATTRIBUTE12                 VARCHAR2
30 	 ,p_ATTRIBUTE13                 VARCHAR2
31 	 ,p_ATTRIBUTE14                 VARCHAR2
32 	 ,p_ATTRIBUTE15                 VARCHAR2
33 	 ,p_ATTRIBUTE_CATEGORY          VARCHAR2
34          ,p_LAST_UPDATE_DATE            DATE
35 	 ,p_LAST_UPDATED_BY             NUMBER
36          ,p_LAST_UPDATE_LOGIN           NUMBER
37          ,p_CREATION_DATE               DATE
38 	 ,p_CREATED_BY                  NUMBER
39 	 ,p_OBJECT_VERSION_NUMBER       NUMBER
40          ,p_MIGRATED_FLAG               VARCHAR2
41    ) IS
42 
43    CURSOR C1 IS
44    SELECT CSI_CTR_ESTIMATED_READINGS_S.nextval
45    FROM   dual;
46 BEGIN
47    IF (px_ESTIMATED_READING_ID IS NULL) OR (px_ESTIMATED_READING_ID = FND_API.G_MISS_NUM) then
48       OPEN C1;
49       FETCH C1 INTO px_ESTIMATED_READING_ID;
50       CLOSE C1;
51    END IF;
52 
53    INSERT INTO CSI_CTR_ESTIMATED_READINGS(
54 	 ESTIMATED_READING_ID
55  	 ,COUNTER_ID
56 	 ,ESTIMATION_ID
57 	 ,VALUE_TIMESTAMP
58 	 ,ESTIMATED_METER_READING
59 	 ,NUM_OF_READINGS
60 	 ,PERIOD_START_DATE
61 	 ,PERIOD_END_DATE
62          ,AVG_CALCULATION_START_DATE
63          ,ESTIMATED_USAGE
64 	 ,ATTRIBUTE1
65 	 ,ATTRIBUTE2
66 	 ,ATTRIBUTE3
67 	 ,ATTRIBUTE4
68 	 ,ATTRIBUTE5
69 	 ,ATTRIBUTE6
70 	 ,ATTRIBUTE7
71 	 ,ATTRIBUTE8
72 	 ,ATTRIBUTE9
73 	 ,ATTRIBUTE10
74 	 ,ATTRIBUTE11
75 	 ,ATTRIBUTE12
76 	 ,ATTRIBUTE13
77 	 ,ATTRIBUTE14
78 	 ,ATTRIBUTE15
79 	 ,ATTRIBUTE_CATEGORY
80          ,LAST_UPDATE_DATE
81 	 ,LAST_UPDATED_BY
82          ,LAST_UPDATE_LOGIN
83          ,CREATION_DATE
84 	 ,CREATED_BY
85 	 ,OBJECT_VERSION_NUMBER
86          ,MIGRATED_FLAG
87         )
88    VALUES(
89 	 px_ESTIMATED_READING_ID
90  	,decode(p_COUNTER_ID, FND_API.G_MISS_NUM, NULL, p_COUNTER_ID)
91 	,decode(p_ESTIMATION_ID, FND_API.G_MISS_NUM, NULL, p_ESTIMATION_ID)
92 	,decode(p_VALUE_TIMESTAMP, FND_API.G_MISS_DATE, TO_DATE(NULL), p_VALUE_TIMESTAMP)
93 	,decode(p_ESTIMATED_METER_READING, FND_API.G_MISS_NUM, NULL, p_ESTIMATED_METER_READING)
94 	,decode(p_NUM_OF_READINGS, FND_API.G_MISS_NUM, NULL, p_NUM_OF_READINGS)
95 	,decode(p_PERIOD_START_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_PERIOD_START_DATE)
96 	,decode(p_PERIOD_END_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_PERIOD_END_DATE)
97         ,decode(p_AVG_CALCULATION_START_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_AVG_CALCULATION_START_DATE)
98         ,decode(p_ESTIMATED_USAGE, FND_API.G_MISS_NUM, NULL, p_ESTIMATED_USAGE)
99 	,decode(p_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1)
100 	,decode(p_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2)
101 	,decode(p_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3)
102 	,decode(p_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4)
103 	,decode(p_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5)
104 	,decode(p_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6)
105 	,decode(p_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7)
106 	,decode(p_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8)
107 	,decode(p_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9)
108 	,decode(p_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10)
109 	,decode(p_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11)
110 	,decode(p_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12)
111 	,decode(p_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13)
112 	,decode(p_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14)
113 	,decode(p_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15)
114 	,decode(p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY)
115 	,decode(p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_LAST_UPDATE_DATE)
116 	,decode(p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY)
117 	,decode(p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL,p_LAST_UPDATE_LOGIN)
118 	,decode(p_CREATION_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_CREATION_DATE)
119 	,decode(p_CREATED_BY, FND_API.G_MISS_NUM, NULL,p_CREATED_BY)
120 	,decode(p_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, p_OBJECT_VERSION_NUMBER)
121         ,decode(p_MIGRATED_FLAG, FND_API.G_MISS_CHAR, NULL, p_MIGRATED_FLAG));
122 END insert_row;
123 
124 PROCEDURE Update_Row(
125 	 p_ESTIMATED_READING_ID         NUMBER
126  	 ,p_COUNTER_ID                  NUMBER
127 	 ,p_ESTIMATION_ID               NUMBER
128 	 ,p_VALUE_TIMESTAMP             DATE
129 	 ,p_ESTIMATED_METER_READING     NUMBER
130 	 ,p_NUM_OF_READINGS             NUMBER
131 	 ,p_PERIOD_START_DATE           DATE
132 	 ,p_PERIOD_END_DATE             DATE
133          ,p_AVG_CALCULATION_START_DATE  DATE
134          ,p_ESTIMATED_USAGE             NUMBER
135 	 ,p_ATTRIBUTE1                  VARCHAR2
136 	 ,p_ATTRIBUTE2                  VARCHAR2
137 	 ,p_ATTRIBUTE3                  VARCHAR2
138 	 ,p_ATTRIBUTE4                 	VARCHAR2
139 	 ,p_ATTRIBUTE5                  VARCHAR2
140 	 ,p_ATTRIBUTE6                  VARCHAR2
141 	 ,p_ATTRIBUTE7                  VARCHAR2
142 	 ,p_ATTRIBUTE8                  VARCHAR2
143 	 ,p_ATTRIBUTE9                  VARCHAR2
144 	 ,p_ATTRIBUTE10                 VARCHAR2
145 	 ,p_ATTRIBUTE11                 VARCHAR2
146 	 ,p_ATTRIBUTE12                 VARCHAR2
147 	 ,p_ATTRIBUTE13                 VARCHAR2
148 	 ,p_ATTRIBUTE14                 VARCHAR2
149 	 ,p_ATTRIBUTE15                 VARCHAR2
150 	 ,p_ATTRIBUTE_CATEGORY          VARCHAR2
151          ,p_LAST_UPDATE_DATE            DATE
152 	 ,p_LAST_UPDATED_BY             NUMBER
153          ,p_LAST_UPDATE_LOGIN           NUMBER
154          ,p_CREATION_DATE               DATE
155 	 ,p_CREATED_BY                  NUMBER
156 	 ,p_OBJECT_VERSION_NUMBER       NUMBER
157          ,p_MIGRATED_FLAG               VARCHAR2) IS
158 BEGIN
159     UPDATE CSI_CTR_ESTIMATED_READINGS
160     SET    COUNTER_ID = decode(p_COUNTER_ID, NULL, COUNTER_ID, FND_API.G_MISS_NUM, NULL,  p_COUNTER_ID)
161            ,ESTIMATION_ID = decode(p_ESTIMATION_ID, NULL, ESTIMATION_ID, FND_API.G_MISS_NUM, NULL, p_ESTIMATION_ID)
162            ,VALUE_TIMESTAMP = decode(p_VALUE_TIMESTAMP, NULL, VALUE_TIMESTAMP, FND_API.G_MISS_DATE, NULL, p_VALUE_TIMESTAMP)
163            ,ESTIMATED_METER_READING = decode(p_ESTIMATED_METER_READING, NULL, ESTIMATED_METER_READING, FND_API.G_MISS_NUM, NULL, p_ESTIMATED_METER_READING)
164            ,PERIOD_START_DATE = decode(p_PERIOD_START_DATE, NULL, PERIOD_START_DATE, FND_API.G_MISS_DATE, NULL,  p_PERIOD_START_DATE)
165   	   ,PERIOD_END_DATE = decode(p_PERIOD_END_DATE, NULL, PERIOD_END_DATE, FND_API.G_MISS_DATE, NULL, p_PERIOD_END_DATE)
166            ,ESTIMATED_USAGE = decode(p_ESTIMATED_USAGE, NULL, ESTIMATED_USAGE, FND_API.G_MISS_NUM, NULL, p_ESTIMATED_USAGE)
167 	   ,ATTRIBUTE1 = decode(p_ATTRIBUTE1, NULL, ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1)
168 	   ,ATTRIBUTE2 = decode(p_ATTRIBUTE2, NULL, ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2)
169 	   ,ATTRIBUTE3 = decode(p_ATTRIBUTE3, NULL, ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3)
170 	   ,ATTRIBUTE4 = decode(p_ATTRIBUTE4, NULL, ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4)
171 	   ,ATTRIBUTE5 = decode(p_ATTRIBUTE5, NULL, ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5)
172 	   ,ATTRIBUTE6 = decode(p_ATTRIBUTE6, NULL, ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6)
173 	   ,ATTRIBUTE7 = decode(p_ATTRIBUTE7, NULL, ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7)
174 	   ,ATTRIBUTE8 = decode(p_ATTRIBUTE8, NULL, ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8)
175 	   ,ATTRIBUTE9 = decode(p_ATTRIBUTE9, NULL, ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9)
176 	   ,ATTRIBUTE10 = decode(p_ATTRIBUTE10, NULL, ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10)
177 	   ,ATTRIBUTE11 = decode(p_ATTRIBUTE11, NULL, ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11)
181 	   ,ATTRIBUTE15 = decode(p_ATTRIBUTE15, NULL, ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15)
178 	   ,ATTRIBUTE12 = decode(p_ATTRIBUTE12, NULL, ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12)
179 	   ,ATTRIBUTE13 = decode(p_ATTRIBUTE13, NULL, ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13)
180 	   ,ATTRIBUTE14 = decode(p_ATTRIBUTE14, NULL, ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14)
182 	   ,ATTRIBUTE_CATEGORY = decode(p_ATTRIBUTE_CATEGORY, NULL, ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY)
183   	   ,LAST_UPDATE_DATE = decode(p_LAST_UPDATE_DATE, NULL, LAST_UPDATE_DATE, FND_API.G_MISS_DATE, NULL,p_LAST_UPDATE_DATE)
184 	   ,LAST_UPDATED_BY = decode(p_LAST_UPDATED_BY, NULL,LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL,p_LAST_UPDATED_BY)
185 	   ,LAST_UPDATE_LOGIN = decode(p_LAST_UPDATE_LOGIN, NULL,LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN)
186    	   ,CREATION_DATE = decode(p_CREATION_DATE, NULL, CREATION_DATE, FND_API.G_MISS_DATE, NULL, p_CREATION_DATE)
187 	   ,CREATED_BY = decode(p_CREATED_BY, NULL, CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY)
188 	   ,OBJECT_VERSION_NUMBER = decode(p_OBJECT_VERSION_NUMBER, NULL, OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, p_OBJECT_VERSION_NUMBER)
189 	   ,MIGRATED_FLAG = decode(p_MIGRATED_FLAG, NULL, MIGRATED_FLAG, FND_API.G_MISS_CHAR, NULL, p_MIGRATED_FLAG)
190     WHERE  ESTIMATED_READING_ID = p_ESTIMATED_READING_ID;
191 
192     If (SQL%NOTFOUND) then
193         RAISE NO_DATA_FOUND;
194     End If;
195 
196 END update_row;
197 
198 PROCEDURE lock_row(
199 	 p_ESTIMATED_READING_ID         NUMBER
200  	 ,p_COUNTER_ID                  NUMBER
201 	 ,p_ESTIMATION_ID               NUMBER
202 	 ,p_VALUE_TIMESTAMP             DATE
203 	 ,p_ESTIMATED_METER_READING     NUMBER
204 	 ,p_NUM_OF_READINGS             NUMBER
205 	 ,p_PERIOD_START_DATE           DATE
206 	 ,p_PERIOD_END_DATE             DATE
207          ,p_AVG_CALCULATION_START_DATE  DATE
208          ,p_ESTIMATED_USAGE             NUMBER
209 	 ,p_ATTRIBUTE1                  VARCHAR2
210 	 ,p_ATTRIBUTE2                  VARCHAR2
211 	 ,p_ATTRIBUTE3                  VARCHAR2
212 	 ,p_ATTRIBUTE4                 	VARCHAR2
213 	 ,p_ATTRIBUTE5                  VARCHAR2
214 	 ,p_ATTRIBUTE6                  VARCHAR2
215 	 ,p_ATTRIBUTE7                  VARCHAR2
216 	 ,p_ATTRIBUTE8                  VARCHAR2
217 	 ,p_ATTRIBUTE9                  VARCHAR2
218 	 ,p_ATTRIBUTE10                 VARCHAR2
219 	 ,p_ATTRIBUTE11                 VARCHAR2
220 	 ,p_ATTRIBUTE12                 VARCHAR2
221 	 ,p_ATTRIBUTE13                 VARCHAR2
222 	 ,p_ATTRIBUTE14                 VARCHAR2
223 	 ,p_ATTRIBUTE15                 VARCHAR2
224 	 ,p_ATTRIBUTE_CATEGORY          VARCHAR2
225          ,p_LAST_UPDATE_DATE            DATE
226 	 ,p_LAST_UPDATED_BY             NUMBER
227          ,p_LAST_UPDATE_LOGIN           NUMBER
228          ,p_CREATION_DATE               DATE
229 	 ,p_CREATED_BY                  NUMBER
230 	 ,p_OBJECT_VERSION_NUMBER       NUMBER
231          ,p_MIGRATED_FLAG               VARCHAR2) IS
232 
233    CURSOR C1 IS
234    SELECT *
235    FROM   CSI_CTR_ESTIMATED_READINGS
236    WHERE  ESTIMATED_READING_ID = p_ESTIMATED_READING_ID
237    FOR UPDATE of ESTIMATED_READING_ID NOWAIT;
238    Recinfo C1%ROWTYPE;
239 BEGIN
240    IF (
241            (      Recinfo.ESTIMATED_READING_ID  = p_ESTIMATED_READING_ID )
242        AND (    ( Recinfo.COUNTER_ID = p_COUNTER_ID)
243             OR (    ( Recinfo.COUNTER_ID IS NULL )
244                 AND (  p_COUNTER_ID IS NULL )))
245        AND (    ( Recinfo.ESTIMATION_ID = p_ESTIMATION_ID)
246             OR (    ( Recinfo.ESTIMATION_ID IS NULL )
247                 AND (  p_ESTIMATION_ID IS NULL )))
248        AND (    ( Recinfo.VALUE_TIMESTAMP = p_VALUE_TIMESTAMP)
249             OR (    ( Recinfo.VALUE_TIMESTAMP IS NULL )
250                 AND (  p_VALUE_TIMESTAMP IS NULL )))
251        AND (    ( Recinfo.ESTIMATED_METER_READING = p_ESTIMATED_METER_READING)
252             OR (    ( Recinfo.ESTIMATED_METER_READING IS NULL )
253                 AND (  p_ESTIMATED_METER_READING IS NULL )))
254        AND (    ( Recinfo.NUM_OF_READINGS = p_NUM_OF_READINGS)
255             OR (    ( Recinfo.NUM_OF_READINGS IS NULL )
256                 AND (  p_NUM_OF_READINGS IS NULL )))
257        AND (    ( Recinfo.PERIOD_START_DATE = p_PERIOD_START_DATE)
258              OR (    ( Recinfo.PERIOD_START_DATE IS NULL )
259                 AND (  p_PERIOD_START_DATE IS NULL )))
260        AND (    ( Recinfo.PERIOD_END_DATE = p_PERIOD_END_DATE)
261              OR (    ( Recinfo.PERIOD_END_DATE IS NULL )
262                 AND (  p_PERIOD_END_DATE IS NULL )))
263        AND (    ( Recinfo.AVG_CALCULATION_START_DATE = p_AVG_CALCULATION_START_DATE)
264              OR (    ( Recinfo.AVG_CALCULATION_START_DATE IS NULL )
265                 AND (  p_AVG_CALCULATION_START_DATE IS NULL )))
266        AND (    ( Recinfo.ESTIMATED_USAGE = p_ESTIMATED_USAGE)
267              OR (    ( Recinfo.ESTIMATED_USAGE IS NULL )
268                 AND (  p_ESTIMATED_USAGE IS NULL )))
269        AND (    ( Recinfo.ATTRIBUTE1 = p_ATTRIBUTE1)
270             OR (    ( Recinfo.ATTRIBUTE1 IS NULL )
271                 AND (  p_ATTRIBUTE1 IS NULL )))
272        AND (    ( Recinfo.ATTRIBUTE2 = p_ATTRIBUTE2)
273             OR (    ( Recinfo.ATTRIBUTE2 IS NULL )
274                 AND (  p_ATTRIBUTE2 IS NULL )))
275        AND (    ( Recinfo.ATTRIBUTE3 = p_ATTRIBUTE3)
276             OR (    ( Recinfo.ATTRIBUTE3 IS NULL )
277                 AND (  p_ATTRIBUTE3 IS NULL )))
278        AND (    ( Recinfo.ATTRIBUTE4 = p_ATTRIBUTE4)
279             OR (    ( Recinfo.ATTRIBUTE4 IS NULL )
280                 AND (  p_ATTRIBUTE4 IS NULL )))
281        AND (    ( Recinfo.ATTRIBUTE5 = p_ATTRIBUTE5)
282             OR (    ( Recinfo.ATTRIBUTE5 IS NULL )
286                 AND (  p_ATTRIBUTE6 IS NULL )))
283                 AND (  p_ATTRIBUTE5 IS NULL )))
284        AND (    ( Recinfo.ATTRIBUTE6 = p_ATTRIBUTE6)
285             OR (    ( Recinfo.ATTRIBUTE6 IS NULL )
287        AND (    ( Recinfo.ATTRIBUTE7 = p_ATTRIBUTE7)
288             OR (    ( Recinfo.ATTRIBUTE7 IS NULL )
289                 AND (  p_ATTRIBUTE7 IS NULL )))
290        AND (    ( Recinfo.ATTRIBUTE8 = p_ATTRIBUTE8)
291             OR (    ( Recinfo.ATTRIBUTE8 IS NULL )
292                 AND (  p_ATTRIBUTE8 IS NULL )))
293        AND (    ( Recinfo.ATTRIBUTE9 = p_ATTRIBUTE9)
294             OR (    ( Recinfo.ATTRIBUTE9 IS NULL )
295                 AND (  p_ATTRIBUTE9 IS NULL )))
296        AND (    ( Recinfo.ATTRIBUTE10 = p_ATTRIBUTE10)
297             OR (    ( Recinfo.ATTRIBUTE10 IS NULL )
298                 AND (  p_ATTRIBUTE10 IS NULL )))
299        AND (    ( Recinfo.ATTRIBUTE11 = p_ATTRIBUTE11)
300             OR (    ( Recinfo.ATTRIBUTE11 IS NULL )
301                 AND (  p_ATTRIBUTE11 IS NULL )))
302        AND (    ( Recinfo.ATTRIBUTE12 = p_ATTRIBUTE12)
303             OR (    ( Recinfo.ATTRIBUTE12 IS NULL )
304                 AND (  p_ATTRIBUTE12 IS NULL )))
305        AND (    ( Recinfo.ATTRIBUTE13 = p_ATTRIBUTE13)
306             OR (    ( Recinfo.ATTRIBUTE13 IS NULL )
307                 AND (  p_ATTRIBUTE13 IS NULL )))
308        AND (    ( Recinfo.ATTRIBUTE14 = p_ATTRIBUTE14)
309             OR (    ( Recinfo.ATTRIBUTE14 IS NULL )
310                 AND (  p_ATTRIBUTE14 IS NULL )))
311        AND (    ( Recinfo.ATTRIBUTE15 = p_ATTRIBUTE15)
312             OR (    ( Recinfo.ATTRIBUTE15 IS NULL )
313                 AND (  p_ATTRIBUTE15 IS NULL )))
314        AND (    ( Recinfo.ATTRIBUTE_CATEGORY = p_ATTRIBUTE_CATEGORY)
315             OR (    ( Recinfo.ATTRIBUTE_CATEGORY IS NULL )
316                 AND (  p_ATTRIBUTE_CATEGORY IS NULL )))
317        AND (    ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
318             OR (    ( Recinfo.LAST_UPDATE_DATE IS NULL )
319                 AND (  p_LAST_UPDATE_DATE IS NULL )))
320        AND (    ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
321             OR (    ( Recinfo.LAST_UPDATED_BY IS NULL )
322                 AND (  p_LAST_UPDATED_BY IS NULL )))
323        AND (    ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
324             OR (    ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
325                 AND (  p_LAST_UPDATE_LOGIN IS NULL )))
326        AND (    ( Recinfo.CREATION_DATE = p_CREATION_DATE)
327             OR (    ( Recinfo.CREATION_DATE IS NULL )
328                 AND (  p_CREATION_DATE IS NULL )))
329        AND (    ( Recinfo.CREATED_BY = p_CREATED_BY)
330             OR (    ( Recinfo.CREATED_BY IS NULL )
331                 AND (  p_CREATED_BY IS NULL )))
332        AND (    ( Recinfo.OBJECT_VERSION_NUMBER = p_OBJECT_VERSION_NUMBER)
333             OR (    ( Recinfo.OBJECT_VERSION_NUMBER IS NULL )
334                 AND (  p_OBJECT_VERSION_NUMBER IS NULL )))
335        AND (    ( Recinfo.MIGRATED_FLAG = p_MIGRATED_FLAG)
336             OR (    ( Recinfo.MIGRATED_FLAG IS NULL )
337                 AND (  p_MIGRATED_FLAG IS NULL )))
338        ) then
339        return;
340    ELSE
341       FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
342       APP_EXCEPTION.RAISE_EXCEPTION;
343    END IF;
344 
345 
346 
347 
348 END lock_row;
349 
350 PROCEDURE delete_row(p_ESTIMATED_READING_ID NUMBER) IS
351 BEGIN
352    DELETE FROM CSI_CTR_ESTIMATED_READINGS
353    WHERE  ESTIMATED_READING_ID = p_ESTIMATED_READING_ID;
354    IF (SQL%NOTFOUND) then
355        RAISE NO_DATA_FOUND;
356    END IF;
357 
358 END delete_row;
359 
360 
361 End CSI_CTR_ESTIMATED_READINGS_PKG;