[Home] [Help]
PACKAGE BODY: APPS.GMD_EVENT_SPEC_DISP_PVT
Source
1 PACKAGE BODY GMD_EVENT_SPEC_DISP_PVT AS
2 /* $Header: GMDVESDB.pls 115.3 2002/11/04 10:35:41 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 : GMDVESDB.pls |
11 --| Package Name : GMD_EVENT_SPEC_DISP_PVT |
12 --| Type : Private |
13 --| |
14 --| Notes |
15 --| This package contains private layer APIs for Event Spec Disposition |
16 --| |
17 --| HISTORY |
18 --| Chetan Nagar 09-Aug-2002 Created. |
19 --| |
20 --+==========================================================================+
21 -- End of comments
22
23
24 FUNCTION insert_row (
25 p_event_spec_disp IN GMD_EVENT_SPEC_DISP%ROWTYPE
26 , x_event_spec_disp OUT NOCOPY GMD_EVENT_SPEC_DISP%ROWTYPE
27 )
28 RETURN BOOLEAN IS
29 BEGIN
30
31 x_event_spec_disp := p_event_spec_disp;
32
33 INSERT INTO GMD_EVENT_SPEC_DISP
34 (
35 EVENT_SPEC_DISP_ID
36 ,SAMPLING_EVENT_ID
37 ,SPEC_ID
38 ,SPEC_VR_ID
39 ,DISPOSITION
40 ,SPEC_USED_FOR_LOT_ATTRIB_IND
41 ,DELETE_MARK
42 ,CREATION_DATE
43 ,CREATED_BY
44 ,LAST_UPDATE_DATE
45 ,LAST_UPDATED_BY
46 ,LAST_UPDATE_LOGIN
47 )
48 VALUES
49 (
50 gmd_qc_event_spec_disp_id_s.NEXTVAL
51 ,x_event_spec_disp.SAMPLING_EVENT_ID
52 ,x_event_spec_disp.SPEC_ID
53 ,x_event_spec_disp.SPEC_VR_ID
54 ,x_event_spec_disp.DISPOSITION
55 ,x_event_spec_disp.SPEC_USED_FOR_LOT_ATTRIB_IND
56 ,x_event_spec_disp.DELETE_MARK
57 ,x_event_spec_disp.CREATION_DATE
58 ,x_event_spec_disp.CREATED_BY
59 ,x_event_spec_disp.LAST_UPDATE_DATE
60 ,x_event_spec_disp.LAST_UPDATED_BY
61 ,x_event_spec_disp.LAST_UPDATE_LOGIN
62 )
63 RETURNING event_spec_disp_id INTO x_event_spec_disp.event_spec_disp_id
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_EVENT_SPEC_DISP_PVT', 'INSERT_ROW');
75 RETURN FALSE;
76
77 END insert_row;
78
79
80
81
82
83 FUNCTION delete_row (p_event_spec_disp_id IN NUMBER)
84 RETURN BOOLEAN IS
85
86 dummy PLS_INTEGER;
87
88 locked_by_other_user EXCEPTION;
89 PRAGMA EXCEPTION_INIT (locked_by_other_user,-54);
90
91 BEGIN
92 IF p_event_spec_disp_id IS NOT NULL THEN
93 SELECT 1
94 INTO dummy
95 FROM gmd_event_spec_disp
96 WHERE event_spec_disp_id = p_event_spec_disp_id
97 FOR UPDATE NOWAIT;
98
99 DELETE gmd_event_spec_disp
100 WHERE event_spec_disp_id = p_event_spec_disp_id
101 ;
102 ELSE
103 GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_EVENT_SPEC_DISP');
104 RETURN FALSE;
105 END IF;
106
107 IF (SQL%FOUND) THEN
108 RETURN TRUE;
109 ELSE
110 GMD_API_PUB.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_EVENT_SPEC_DISP');
111 RETURN FALSE;
112 END IF;
113
114 EXCEPTION
115 WHEN locked_by_other_user THEN
116 GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
117 'TABLE_NAME', 'GMD_EVENT_SPEC_DISP',
118 'RECORD','Result',
119 'KEY', p_event_spec_disp_id);
120 RETURN FALSE;
121
122 WHEN OTHERS THEN
123 fnd_msg_pub.add_exc_msg ('GMD_EVENT_SPEC_DISP_PVT', 'DELETE_ROW');
124 RETURN FALSE;
125
126 END delete_row;
127
128
129
130
131 FUNCTION lock_row (p_event_spec_disp_id IN NUMBER)
132 RETURN BOOLEAN IS
133
134 dummy PLS_INTEGER;
135
136 locked_by_other_user EXCEPTION;
137 PRAGMA EXCEPTION_INIT (locked_by_other_user,-54);
138
139 BEGIN
140 IF p_event_spec_disp_id IS NOT NULL THEN
141 SELECT 1
142 INTO dummy
143 FROM gmd_event_spec_disp
144 WHERE event_spec_disp_id = p_event_spec_disp_id
145 FOR UPDATE NOWAIT;
146 ELSE
147 GMD_API_PUB.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_EVENT_SPEC_DISP');
148 RETURN FALSE;
149 END IF;
150
151 RETURN TRUE;
152
153 EXCEPTION
154 WHEN locked_by_other_user THEN
155 GMD_API_PUB.log_message('GMD_RECORD_LOCKED',
156 'TABLE_NAME', 'GMD_EVENT_SPEC_DISP',
157 'RECORD','Result',
158 'KEY', p_event_spec_disp_id);
159 RETURN FALSE;
160
161 WHEN OTHERS THEN
162 fnd_msg_pub.add_exc_msg ('GMD_EVENT_SPEC_DISP_PVT', 'DELETE_ROW');
163 RETURN FALSE;
164
165 END lock_row;
166
167
168
169 FUNCTION fetch_row (
170 p_event_spec_disp IN gmd_event_spec_disp%ROWTYPE
171 , x_event_spec_disp OUT NOCOPY gmd_event_spec_disp%ROWTYPE
172 )
173 RETURN BOOLEAN
174 IS
175 BEGIN
176
177 IF (p_event_spec_disp.event_spec_disp_id IS NOT NULL) THEN
178 SELECT *
179 INTO x_event_spec_disp
180 FROM gmd_event_spec_disp
181 WHERE event_spec_disp_id = p_event_spec_disp.event_spec_disp_id
182 ;
183 ELSE
184 gmd_api_pub.log_message('GMD_NO_KEYS','TABLE_NAME', 'GMD_EVENT_SPEC_DISP');
185 RETURN FALSE;
186 END IF;
187
188 RETURN TRUE;
189
190 EXCEPTION
191 WHEN NO_DATA_FOUND
192 THEN
193 gmd_api_pub.log_message('GMD_NO_DATA_FOUND','TABLE_NAME', 'GMD_EVENT_SPEC_DISP');
194 RETURN FALSE;
195 WHEN OTHERS
196 THEN
197 fnd_msg_pub.add_exc_msg ('GMD_EVENT_SPEC_DISP_PVT', 'FETCH_ROW');
198 RETURN FALSE;
199
200 END fetch_row;
201
202 END GMD_EVENT_SPEC_DISP_PVT;