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