DBA Data[Home] [Help]

PACKAGE BODY: APPS.GMD_COMPOSITE_RESULTS_PVT

Source


1 PACKAGE BODY GMD_COMPOSITE_RESULTS_PVT AS
2 /* $Header: GMDVCRSB.pls 115.3 2002/11/04 10:21:34 kxhunt ship $ */
3 
4 -- Start of comments
5 --+==========================================================================+
6 --|                   Copyright (c) 1998 Oracle Corporation                  |
7 --|                          Redwood Shores, CA, USA                         |
8 --|                            All rights reserved.                          |
9 --+==========================================================================+
10 --| File Name          : GMDVCRSB.pls                                        |
11 --| Package Name       : GMD_COMPOSITE_RESULTS_PVT                           |
12 --| Type               : Private                                             |
13 --|                                                                          |
14 --| Notes                                                                    |
15 --|    This package contains private layer APIs for Composite Results.       |
16 --|                                                                          |
17 --| HISTORY                                                                  |
18 --|    Chetan Nagar     12-Sep-2002     Created.                             |
19 --|                                                                          |
20 --+==========================================================================+
21 -- End of comments
22 
23 FUNCTION insert_row (
24   p_composite_results IN  GMD_COMPOSITE_RESULTS%ROWTYPE
25 , x_composite_results OUT NOCOPY GMD_COMPOSITE_RESULTS%ROWTYPE
26 )
27   RETURN BOOLEAN IS
28 BEGIN
29 
30     x_composite_results := p_composite_results;
31 
32     INSERT INTO GMD_COMPOSITE_RESULTS
33      (
34       COMPOSITE_RESULT_ID
35      ,TEST_ID
36      ,MEAN
37      ,MODE_NUM
38      ,MODE_CHAR
39      ,LOW_NUM
40      ,HIGH_NUM
41      ,RANGE
42      ,STANDARD_DEVIATION
43      ,SAMPLE_TOTAL
44      ,SAMPLE_CNT_USED
45      ,NON_VALIDATED_RESULT
46      ,DELETE_MARK
47      ,TEXT_CODE
48      ,ATTRIBUTE_CATEGORY
49      ,ATTRIBUTE1
50      ,ATTRIBUTE2
51      ,ATTRIBUTE3
52      ,ATTRIBUTE4
53      ,ATTRIBUTE5
54      ,ATTRIBUTE6
55      ,ATTRIBUTE7
56      ,ATTRIBUTE8
57      ,ATTRIBUTE9
58      ,ATTRIBUTE10
59      ,ATTRIBUTE11
60      ,ATTRIBUTE12
61      ,ATTRIBUTE13
62      ,ATTRIBUTE14
63      ,ATTRIBUTE15
64      ,ATTRIBUTE16
65      ,ATTRIBUTE17
66      ,ATTRIBUTE18
67      ,ATTRIBUTE19
68      ,ATTRIBUTE20
69      ,ATTRIBUTE21
70      ,ATTRIBUTE22
71      ,ATTRIBUTE23
72      ,ATTRIBUTE24
73      ,ATTRIBUTE25
74      ,ATTRIBUTE26
75      ,ATTRIBUTE27
76      ,ATTRIBUTE28
77      ,ATTRIBUTE29
78      ,ATTRIBUTE30
79      ,CREATION_DATE
80      ,CREATED_BY
81      ,LAST_UPDATE_DATE
82      ,LAST_UPDATED_BY
83      ,LAST_UPDATE_LOGIN
84      ,MEDIAN_NUM
85      ,MEDIAN_CHAR
86      ,LOW_CHAR
87      ,HIGH_CHAR
88      ,COMPOSITE_SPEC_DISP_ID
89      ,IN_SPEC_IND
90      ,VALUE_IN_REPORT_PRECISION
91      ,WF_RESPONSE
92      )
93      VALUES
94      (
95       gmd_qc_comp_result_id_s.NEXTVAL
96      ,x_composite_results.TEST_ID
97      ,x_composite_results.MEAN
98      ,x_composite_results.MODE_NUM
99      ,x_composite_results.MODE_CHAR
100      ,x_composite_results.LOW_NUM
101      ,x_composite_results.HIGH_NUM
102      ,x_composite_results.RANGE
103      ,x_composite_results.STANDARD_DEVIATION
104      ,x_composite_results.SAMPLE_TOTAL
105      ,x_composite_results.SAMPLE_CNT_USED
106      ,x_composite_results.NON_VALIDATED_RESULT
107      ,x_composite_results.DELETE_MARK
108      ,x_composite_results.TEXT_CODE
109      ,x_composite_results.ATTRIBUTE_CATEGORY
110      ,x_composite_results.ATTRIBUTE1
111      ,x_composite_results.ATTRIBUTE2
112      ,x_composite_results.ATTRIBUTE3
113      ,x_composite_results.ATTRIBUTE4
114      ,x_composite_results.ATTRIBUTE5
115      ,x_composite_results.ATTRIBUTE6
116      ,x_composite_results.ATTRIBUTE7
117      ,x_composite_results.ATTRIBUTE8
118      ,x_composite_results.ATTRIBUTE9
119      ,x_composite_results.ATTRIBUTE10
120      ,x_composite_results.ATTRIBUTE11
121      ,x_composite_results.ATTRIBUTE12
122      ,x_composite_results.ATTRIBUTE13
123      ,x_composite_results.ATTRIBUTE14
124      ,x_composite_results.ATTRIBUTE15
125      ,x_composite_results.ATTRIBUTE16
126      ,x_composite_results.ATTRIBUTE17
127      ,x_composite_results.ATTRIBUTE18
128      ,x_composite_results.ATTRIBUTE19
129      ,x_composite_results.ATTRIBUTE20
130      ,x_composite_results.ATTRIBUTE21
131      ,x_composite_results.ATTRIBUTE22
132      ,x_composite_results.ATTRIBUTE23
133      ,x_composite_results.ATTRIBUTE24
134      ,x_composite_results.ATTRIBUTE25
135      ,x_composite_results.ATTRIBUTE26
136      ,x_composite_results.ATTRIBUTE27
137      ,x_composite_results.ATTRIBUTE28
138      ,x_composite_results.ATTRIBUTE29
139      ,x_composite_results.ATTRIBUTE30
140      ,x_composite_results.CREATION_DATE
141      ,x_composite_results.CREATED_BY
142      ,x_composite_results.LAST_UPDATE_DATE
143      ,x_composite_results.LAST_UPDATED_BY
144      ,x_composite_results.LAST_UPDATE_LOGIN
145      ,x_composite_results.MEDIAN_NUM
146      ,x_composite_results.MEDIAN_CHAR
147      ,x_composite_results.LOW_CHAR
148      ,x_composite_results.HIGH_CHAR
149      ,x_composite_results.COMPOSITE_SPEC_DISP_ID
150      ,x_composite_results.IN_SPEC_IND
151      ,x_composite_results.VALUE_IN_REPORT_PRECISION
152      ,x_composite_results.WF_RESPONSE
153      )
154       RETURNING composite_result_id INTO x_composite_results.composite_result_id
155    ;
156 
157     IF SQL%FOUND THEN
158       RETURN TRUE;
159     ELSE
160       RETURN FALSE;
161     END IF;
162 
163   EXCEPTION
164     WHEN OTHERS THEN
165       fnd_msg_pub.add_exc_msg ('GMD_COMPOSITE_RESULTS_PVT', 'INSERT_ROW');
166       RETURN FALSE;
167 
168 END insert_row;
169 
170 
171 
172 FUNCTION delete_row (p_composite_result_id   IN  NUMBER,
173                      p_last_update_date 	IN  DATE,
174                      p_last_updated_by 	        IN  NUMBER,
175                      p_last_update_login 	IN  NUMBER)
176 RETURN BOOLEAN IS
177 
178   dummy       PLS_INTEGER;
179 
180   locked_by_other_user          EXCEPTION;
181   PRAGMA EXCEPTION_INIT         (locked_by_other_user,-54);
182 
183 BEGIN
184 
185   IF p_composite_result_id IS NOT NULL THEN
186 
187     SELECT 1
188     INTO   dummy
189     FROM   gmd_composite_results
190     WHERE  composite_result_id = p_composite_result_id
191     FOR UPDATE NOWAIT;
192 
193     UPDATE gmd_composite_results
194     SET    delete_mark = 1,
195            last_update_date  = NVL(p_last_update_date,SYSDATE),
196            last_updated_by   = NVL(p_last_updated_by,FND_GLOBAL.USER_ID),
197            last_update_login = NVL(p_last_update_login,FND_GLOBAL.LOGIN_ID)
198     WHERE  composite_result_id = p_composite_result_id
199     ;
200   ELSE
201     GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_COMPOSITE_RESULTS');
202     RETURN FALSE;
203   END IF;
204 
205   IF (SQL%FOUND) THEN
206     RETURN TRUE;
207   ELSE
208     GMD_API_PUB.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_COMPOSITE_RESULTS');
209     RETURN FALSE;
210   END IF;
211 
212 EXCEPTION
213   WHEN locked_by_other_user THEN
214     GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
215                             'TABLE_NAME', 'GMD_COMPOSITE_RESULTS',
216                             'RECORD','Inventory Spec Validity Rule',
217                             'KEY', p_composite_result_id);
218     RETURN FALSE;
219 
220   WHEN OTHERS THEN
221      fnd_msg_pub.add_exc_msg ('GMD_COMPOSITE_RESULTS_PVT', 'DELETE_ROW');
222       RETURN FALSE;
223 
224 END delete_row;
225 
226 
227 
228 FUNCTION lock_row (p_composite_result_id IN NUMBER)
229 RETURN BOOLEAN IS
230 
231   dummy       PLS_INTEGER;
232 
233   locked_by_other_user          EXCEPTION;
234   PRAGMA EXCEPTION_INIT         (locked_by_other_user,-54);
235 
236 BEGIN
237   IF p_composite_result_id IS NOT NULL THEN
238     SELECT 1
239     INTO   dummy
240     FROM   gmd_composite_results
241     WHERE  composite_result_id = p_composite_result_id
242     FOR UPDATE NOWAIT;
243   ELSE
244     GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_COMPOSITE_RESULTS');
245     RETURN FALSE;
246   END IF;
247 
248   RETURN TRUE;
249 
250 EXCEPTION
251   WHEN locked_by_other_user THEN
252     GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
253                             'TABLE_NAME', 'GMD_COMPOSITE_RESULTS',
254                             'RECORD','Inventory Spec Validity Rule',
255                             'KEY', p_composite_result_id);
256     RETURN FALSE;
257 
258   WHEN OTHERS THEN
259      fnd_msg_pub.add_exc_msg ('GMD_COMPOSITE_RESULTS_PVT', 'DELETE_ROW');
260       RETURN FALSE;
261 
262 END lock_row;
263 
264 
265 
266 FUNCTION fetch_row (
267   p_composite_results IN  gmd_composite_results%ROWTYPE
268 , x_composite_results OUT NOCOPY gmd_composite_results%ROWTYPE
269 )
270 RETURN BOOLEAN
271 IS
272 BEGIN
273 
274   IF (p_composite_results.composite_result_id IS NOT NULL) THEN
275     SELECT *
276     INTO   x_composite_results
277     FROM   gmd_composite_results
278     WHERE  composite_result_id = p_composite_results.composite_result_id
279     ;
280   ELSE
281     gmd_api_pub.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_COMPOSITE_RESULTS');
282     RETURN FALSE;
283   END IF;
284 
285   RETURN TRUE;
286 
287 EXCEPTION
288  WHEN NO_DATA_FOUND
289    THEN
290      gmd_api_pub.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_COMPOSITE_RESULTS');
291      RETURN FALSE;
292  WHEN OTHERS
293    THEN
294      fnd_msg_pub.add_exc_msg ('GMD_COMPOSITE_RESULTS_PVT', 'FETCH_ROW');
295      RETURN FALSE;
296 
297 END fetch_row;
298 
299 END GMD_COMPOSITE_RESULTS_PVT;