[Home] [Help]
PACKAGE BODY: APPS.GMD_SPEC_RESULTS_PVT
Source
1 PACKAGE BODY GMD_SPEC_RESULTS_PVT AS
2 /* $Header: GMDVSRSB.pls 115.4 2002/12/03 11:10:41 hverddin 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 : GMDVSREB.pls |
11 --| Package Name : GMD_SPEC_RESULTS_PVT |
12 --| Type : Private |
13 --| |
14 --| Notes |
15 --| This package contains private layer APIs for Results |
16 --| |
17 --| HISTORY |
18 --| Chetan Nagar 09-Aug-2002 Created. |
19 --| |
20 --+==========================================================================+
21 -- End of comments
22
23
24 FUNCTION insert_row (p_spec_results IN GMD_SPEC_RESULTS%ROWTYPE)
25 RETURN BOOLEAN IS
26 BEGIN
27
28 INSERT INTO GMD_SPEC_RESULTS
29 (
30 EVENT_SPEC_DISP_ID
31 ,RESULT_ID
32 ,IN_SPEC_IND
33 ,EVALUATION_IND
34 ,ACTION_CODE
35 ,UPDATE_INSTANCE_ID
36 ,VALUE_IN_REPORT_PRECISION
37 ,ADDITIONAL_TEST_IND
38 ,WF_RESPONSE
39 ,DELETE_MARK
40 ,CREATION_DATE
41 ,CREATED_BY
42 ,LAST_UPDATE_DATE
43 ,LAST_UPDATED_BY
44 ,LAST_UPDATE_LOGIN
45 )
46 VALUES
47 (
48 p_spec_results.EVENT_SPEC_DISP_ID
49 ,p_spec_results.RESULT_ID
50 ,p_spec_results.IN_SPEC_IND
51 ,p_spec_results.EVALUATION_IND
52 ,p_spec_results.ACTION_CODE
53 ,p_spec_results.UPDATE_INSTANCE_ID
54 ,p_spec_results.VALUE_IN_REPORT_PRECISION
55 ,p_spec_results.ADDITIONAL_TEST_IND
56 ,p_spec_results.WF_RESPONSE
57 ,p_spec_results.DELETE_MARK
58 ,p_spec_results.CREATION_DATE
59 ,p_spec_results.CREATED_BY
60 ,p_spec_results.LAST_UPDATE_DATE
61 ,p_spec_results.LAST_UPDATED_BY
62 ,p_spec_results.LAST_UPDATE_LOGIN
63 )
64 ;
65
66 IF SQL%FOUND THEN
67 RETURN TRUE;
68 ELSE
69 RETURN FALSE;
70 END IF;
71
72 EXCEPTION
73 WHEN OTHERS THEN
74 fnd_msg_pub.add_exc_msg ('GMD_SPEC_RESULTS_PVT', 'INSERT_ROW');
75 RETURN FALSE;
76
77 END insert_row;
78
79
80
81
82
83 FUNCTION delete_row
84 (
85 p_event_spec_disp_id IN NUMBER
86 , p_result_id IN NUMBER
87 )
88 RETURN BOOLEAN IS
89
90 dummy PLS_INTEGER;
91
92 locked_by_other_user EXCEPTION;
93 PRAGMA EXCEPTION_INIT (locked_by_other_user,-54);
94
95 BEGIN
96 IF p_event_spec_disp_id IS NOT NULL AND
97 p_result_id IS NOT NULL THEN
98 SELECT 1
99 INTO dummy
100 FROM gmd_spec_results
101 WHERE event_spec_disp_id = p_event_spec_disp_id
102 AND result_id = p_result_id
103 FOR UPDATE NOWAIT;
104
105 UPDATE gmd_spec_results
106 SET delete_mark = 1
107 WHERE event_spec_disp_id = p_event_spec_disp_id
108 AND result_id = p_result_id
109 ;
110 ELSE
111 GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_SPEC_RESULTS');
112 RETURN FALSE;
113 END IF;
114
115 IF (SQL%FOUND) THEN
116 RETURN TRUE;
117 ELSE
118 GMD_API_PUB.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_SPEC_RESULTS');
119 RETURN FALSE;
120 END IF;
121
122 EXCEPTION
123 WHEN locked_by_other_user THEN
124 GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
125 'TABLE_NAME', 'GMD_SPEC_RESULTS',
126 'RECORD','Result',
127 'KEY', p_event_spec_disp_id);
128 RETURN FALSE;
129
130 WHEN OTHERS THEN
131 fnd_msg_pub.add_exc_msg ('GMD_SPEC_RESULTS_PVT', 'DELETE_ROW');
132 RETURN FALSE;
133
134 END delete_row;
135
136
137
138
139 FUNCTION lock_row
140 (
141 p_event_spec_disp_id IN NUMBER
142 , p_result_id IN NUMBER
143 )
144 RETURN BOOLEAN IS
145
146 dummy PLS_INTEGER;
147
148 locked_by_other_user EXCEPTION;
149 PRAGMA EXCEPTION_INIT (locked_by_other_user,-54);
150
151 BEGIN
152 IF p_event_spec_disp_id IS NOT NULL AND
153 p_result_id IS NOT NULL THEN
154 SELECT 1
155 INTO dummy
156 FROM gmd_spec_results
157 WHERE event_spec_disp_id = p_event_spec_disp_id
158 AND result_id = p_result_id
159 FOR UPDATE NOWAIT;
160 ELSE
161 GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_SPEC_RESULTS');
162 RETURN FALSE;
163 END IF;
164
165 RETURN TRUE;
166
167 EXCEPTION
168 WHEN locked_by_other_user THEN
169 GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
170 'TABLE_NAME', 'GMD_SPEC_RESULTS',
171 'RECORD','Result',
172 'KEY', p_event_spec_disp_id);
173 RETURN FALSE;
174
175 WHEN OTHERS THEN
176 fnd_msg_pub.add_exc_msg ('GMD_SPEC_RESULTS_PVT', 'DELETE_ROW');
177 RETURN FALSE;
178
179 END lock_row;
180
181
182
183 FUNCTION fetch_row (
184 p_spec_results IN gmd_spec_results%ROWTYPE
185 , x_spec_results OUT NOCOPY gmd_spec_results%ROWTYPE
186 )
187 RETURN BOOLEAN
188 IS
189 BEGIN
190
191 IF p_spec_results.event_spec_disp_id IS NOT NULL AND
192 p_spec_results.result_id IS NOT NULL THEN
193 SELECT *
194 INTO x_spec_results
195 FROM gmd_spec_results
196 WHERE event_spec_disp_id = p_spec_results.event_spec_disp_id
197 AND result_id = p_spec_results.result_id
198 ;
199 ELSE
200 gmd_api_pub.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_SPEC_RESULTS');
201 RETURN FALSE;
202 END IF;
203
204 -- BUG 2690469
205 -- Added Missing Return Statement.
206
207 RETURN TRUE;
208
209 EXCEPTION
210 WHEN NO_DATA_FOUND
211 THEN
212 gmd_api_pub.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_SPEC_RESULTS');
213 RETURN FALSE;
214 WHEN OTHERS
215 THEN
216 fnd_msg_pub.add_exc_msg ('GMD_SPEC_RESULTS_PVT', 'FETCH_ROW');
217 RETURN FALSE;
218
219 END fetch_row;
220
221 END GMD_SPEC_RESULTS_PVT;