DBA Data[Home] [Help]

PACKAGE BODY: APPS.HZ_CLASS_CATEGORIES_PKG

Source


1 PACKAGE BODY HZ_CLASS_CATEGORIES_PKG AS
2 /*$Header: ARHCSCTB.pls 115.9 2002/11/21 20:33:45 sponnamb ship $ */
3 
4 PROCEDURE Insert_Row (
5     X_CLASS_CATEGORY                        IN     VARCHAR2,
6     X_ALLOW_MULTI_PARENT_FLAG               IN     VARCHAR2,
7     X_ALLOW_MULTI_ASSIGN_FLAG               IN     VARCHAR2,
8     X_ALLOW_LEAF_NODE_ONLY_FLAG             IN     VARCHAR2,
9     X_OBJECT_VERSION_NUMBER                 IN     NUMBER,
10     X_CREATED_BY_MODULE                     IN     VARCHAR2,
11     X_APPLICATION_ID                        IN     NUMBER,
12     X_DELIMITER				    IN     VARCHAR2
13 ) IS
14 
15 BEGIN
16 
17     INSERT INTO HZ_CLASS_CATEGORIES (
18         CLASS_CATEGORY,
19         ALLOW_MULTI_PARENT_FLAG,
20         ALLOW_MULTI_ASSIGN_FLAG,
21         CREATED_BY,
22         CREATION_DATE,
23         LAST_UPDATE_LOGIN,
24         LAST_UPDATE_DATE,
25         LAST_UPDATED_BY,
26         ALLOW_LEAF_NODE_ONLY_FLAG,
27         OBJECT_VERSION_NUMBER,
28         CREATED_BY_MODULE,
29         APPLICATION_ID,
30 	DELIMITER
31     )
32     VALUES (
33         DECODE( X_CLASS_CATEGORY, FND_API.G_MISS_CHAR, NULL, X_CLASS_CATEGORY ),
34         DECODE( X_ALLOW_MULTI_PARENT_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_MULTI_PARENT_FLAG ),
35         DECODE( X_ALLOW_MULTI_ASSIGN_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_MULTI_ASSIGN_FLAG ),
36         HZ_UTILITY_V2PUB.CREATED_BY,
37         HZ_UTILITY_V2PUB.CREATION_DATE,
38         HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
39         HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
40         HZ_UTILITY_V2PUB.LAST_UPDATED_BY,
41         DECODE( X_ALLOW_LEAF_NODE_ONLY_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_LEAF_NODE_ONLY_FLAG ),
42         DECODE( X_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, X_OBJECT_VERSION_NUMBER ),
43         DECODE( X_CREATED_BY_MODULE, FND_API.G_MISS_CHAR, NULL, X_CREATED_BY_MODULE ),
44         DECODE( X_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, X_APPLICATION_ID ),
45 	DECODE( X_DELIMITER, FND_API.G_MISS_CHAR, '/', NULL,'/',X_DELIMITER )
46        );
47 
48 END Insert_Row;
49 
50 PROCEDURE Update_Row (
51     X_CLASS_CATEGORY                        IN     VARCHAR2,
52     X_ALLOW_MULTI_PARENT_FLAG               IN     VARCHAR2,
53     X_ALLOW_MULTI_ASSIGN_FLAG               IN     VARCHAR2,
54     X_ALLOW_LEAF_NODE_ONLY_FLAG             IN     VARCHAR2,
55     X_OBJECT_VERSION_NUMBER                 IN     NUMBER,
56     X_CREATED_BY_MODULE                     IN     VARCHAR2,
57     X_APPLICATION_ID                        IN     NUMBER,
58     X_DELIMITER				    IN     VARCHAR2
59 ) IS
60 
61 BEGIN
62 
63     UPDATE HZ_CLASS_CATEGORIES SET
64         ALLOW_MULTI_PARENT_FLAG = DECODE( X_ALLOW_MULTI_PARENT_FLAG, NULL, ALLOW_MULTI_PARENT_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_MULTI_PARENT_FLAG ),
65         ALLOW_MULTI_ASSIGN_FLAG = DECODE( X_ALLOW_MULTI_ASSIGN_FLAG, NULL, ALLOW_MULTI_ASSIGN_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_MULTI_ASSIGN_FLAG ),
66         ALLOW_LEAF_NODE_ONLY_FLAG = DECODE( X_ALLOW_LEAF_NODE_ONLY_FLAG, NULL, ALLOW_LEAF_NODE_ONLY_FLAG, FND_API.G_MISS_CHAR, NULL, X_ALLOW_LEAF_NODE_ONLY_FLAG ),
67         LAST_UPDATE_LOGIN = HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
68         LAST_UPDATE_DATE = HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
69         LAST_UPDATED_BY = HZ_UTILITY_V2PUB.LAST_UPDATED_BY,
70         OBJECT_VERSION_NUMBER = DECODE( X_OBJECT_VERSION_NUMBER, NULL, OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, X_OBJECT_VERSION_NUMBER ),
71         CREATED_BY_MODULE = DECODE( X_CREATED_BY_MODULE, NULL, CREATED_BY_MODULE, FND_API.G_MISS_CHAR, NULL, X_CREATED_BY_MODULE ),
72         APPLICATION_ID = DECODE( X_APPLICATION_ID, NULL, APPLICATION_ID,FND_API.G_MISS_NUM, NULL, X_APPLICATION_ID ),
73         DELIMITER = DECODE( X_DELIMITER, NULL, DELIMITER, FND_API.G_MISS_CHAR, '/', X_DELIMITER )
74     WHERE CLASS_CATEGORY = X_CLASS_CATEGORY;
75 
76     IF ( SQL%NOTFOUND ) THEN
77         RAISE NO_DATA_FOUND;
78     END IF;
79 
80 END Update_Row;
81 
82 PROCEDURE Lock_Row (
83     X_CLASS_CATEGORY                        IN     VARCHAR2,
84     X_ALLOW_MULTI_PARENT_FLAG               IN     VARCHAR2,
85     X_ALLOW_MULTI_ASSIGN_FLAG               IN     VARCHAR2,
86     X_CREATED_BY                            IN     NUMBER,
87     X_CREATION_DATE                         IN     DATE,
88     X_LAST_UPDATE_LOGIN                     IN     NUMBER,
89     X_LAST_UPDATE_DATE                      IN     DATE,
90     X_LAST_UPDATED_BY                       IN     NUMBER,
91     X_ALLOW_LEAF_NODE_ONLY_FLAG             IN     VARCHAR2,
92     X_OBJECT_VERSION_NUMBER                 IN     NUMBER,
93     X_CREATED_BY_MODULE                     IN     VARCHAR2,
94     X_APPLICATION_ID                        IN     NUMBER,
95     X_DELIMITER				    IN     VARCHAR2
96 ) IS
97 
98     CURSOR C IS
99         SELECT * FROM HZ_CLASS_CATEGORIES
100         WHERE  CLASS_CATEGORY = X_CLASS_CATEGORY
101         FOR UPDATE NOWAIT;
102     Recinfo C%ROWTYPE;
103 
104 BEGIN
105 
106     OPEN C;
107     FETCH C INTO Recinfo;
108     IF ( C%NOTFOUND ) THEN
109         CLOSE C;
110         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
111         APP_EXCEPTION.RAISE_EXCEPTION;
112     END IF;
113     CLOSE C;
114 
115     IF (
116         ( ( Recinfo.CLASS_CATEGORY = X_CLASS_CATEGORY )
117         OR ( ( Recinfo.CLASS_CATEGORY IS NULL )
118             AND (  X_CLASS_CATEGORY IS NULL ) ) )
119     AND ( ( Recinfo.ALLOW_MULTI_PARENT_FLAG = X_ALLOW_MULTI_PARENT_FLAG )
120         OR ( ( Recinfo.ALLOW_MULTI_PARENT_FLAG IS NULL )
121             AND (  X_ALLOW_MULTI_PARENT_FLAG IS NULL ) ) )
122     AND ( ( Recinfo.ALLOW_MULTI_ASSIGN_FLAG = X_ALLOW_MULTI_ASSIGN_FLAG )
123         OR ( ( Recinfo.ALLOW_MULTI_ASSIGN_FLAG IS NULL )
124             AND (  X_ALLOW_MULTI_ASSIGN_FLAG IS NULL ) ) )
125     AND ( ( Recinfo.CREATED_BY = X_CREATED_BY )
126         OR ( ( Recinfo.CREATED_BY IS NULL )
127             AND (  X_CREATED_BY IS NULL ) ) )
128     AND ( ( Recinfo.CREATION_DATE = X_CREATION_DATE )
129         OR ( ( Recinfo.CREATION_DATE IS NULL )
130             AND (  X_CREATION_DATE IS NULL ) ) )
131     AND ( ( Recinfo.LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN )
132         OR ( ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
133             AND (  X_LAST_UPDATE_LOGIN IS NULL ) ) )
134     AND ( ( Recinfo.LAST_UPDATE_DATE = X_LAST_UPDATE_DATE )
135         OR ( ( Recinfo.LAST_UPDATE_DATE IS NULL )
136             AND (  X_LAST_UPDATE_DATE IS NULL ) ) )
137     AND ( ( Recinfo.LAST_UPDATED_BY = X_LAST_UPDATED_BY )
138         OR ( ( Recinfo.LAST_UPDATED_BY IS NULL )
139             AND (  X_LAST_UPDATED_BY IS NULL ) ) )
140     AND ( ( Recinfo.ALLOW_LEAF_NODE_ONLY_FLAG = X_ALLOW_LEAF_NODE_ONLY_FLAG )
141         OR ( ( Recinfo.ALLOW_LEAF_NODE_ONLY_FLAG IS NULL )
142             AND (  X_ALLOW_LEAF_NODE_ONLY_FLAG IS NULL ) ) )
143     AND ( ( Recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER )
144         OR ( ( Recinfo.OBJECT_VERSION_NUMBER IS NULL )
145             AND (  X_OBJECT_VERSION_NUMBER IS NULL ) ) )
146     AND ( ( Recinfo.CREATED_BY_MODULE = X_CREATED_BY_MODULE )
147         OR ( ( Recinfo.CREATED_BY_MODULE IS NULL )
148             AND (  X_CREATED_BY_MODULE IS NULL ) ) )
149     AND ( ( Recinfo.DELIMITER = X_DELIMITER )
150         OR ( ( Recinfo.DELIMITER IS NULL )
151             AND (  X_DELIMITER IS NULL ) ) )
152     AND ( ( Recinfo.APPLICATION_ID = X_APPLICATION_ID )
153         OR ( ( Recinfo.APPLICATION_ID IS NULL )
154             AND (  X_APPLICATION_ID IS NULL ) ) )
155     ) THEN
156         RETURN;
157     ELSE
158         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
159         APP_EXCEPTION.RAISE_EXCEPTION;
160     END IF;
161 
162 END Lock_Row;
163 
164 PROCEDURE Select_Row (
165     X_CLASS_CATEGORY                        IN OUT NOCOPY VARCHAR2,
166     X_ALLOW_MULTI_PARENT_FLAG               OUT NOCOPY    VARCHAR2,
167     X_ALLOW_MULTI_ASSIGN_FLAG               OUT NOCOPY    VARCHAR2,
168     X_ALLOW_LEAF_NODE_ONLY_FLAG             OUT NOCOPY    VARCHAR2,
169     X_CREATED_BY_MODULE                     OUT NOCOPY    VARCHAR2,
170     X_APPLICATION_ID                        OUT NOCOPY    NUMBER,
171     X_DELIMITER				    OUT NOCOPY    VARCHAR2
172 ) IS
173 
174 BEGIN
175 
176     SELECT
177         NVL( CLASS_CATEGORY, FND_API.G_MISS_CHAR ),
178         NVL( ALLOW_MULTI_PARENT_FLAG, FND_API.G_MISS_CHAR ),
179         NVL( ALLOW_MULTI_ASSIGN_FLAG, FND_API.G_MISS_CHAR ),
180         NVL( ALLOW_LEAF_NODE_ONLY_FLAG, FND_API.G_MISS_CHAR ),
181         NVL( CREATED_BY_MODULE, FND_API.G_MISS_CHAR ),
182         NVL( APPLICATION_ID, FND_API.G_MISS_NUM ),
183         NVL( DELIMITER, FND_API.G_MISS_CHAR )
184     INTO
185         X_CLASS_CATEGORY,
186         X_ALLOW_MULTI_PARENT_FLAG,
187         X_ALLOW_MULTI_ASSIGN_FLAG,
188         X_ALLOW_LEAF_NODE_ONLY_FLAG,
189         X_CREATED_BY_MODULE,
190         X_APPLICATION_ID,
191 	X_DELIMITER
192     FROM HZ_CLASS_CATEGORIES
193     WHERE CLASS_CATEGORY = X_CLASS_CATEGORY;
194 
195 EXCEPTION
196     WHEN NO_DATA_FOUND THEN
197         FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_NO_RECORD' );
198         FND_MESSAGE.SET_TOKEN( 'RECORD', 'class_category_rec');
199         FND_MESSAGE.SET_TOKEN( 'VALUE', X_CLASS_CATEGORY );
200         FND_MSG_PUB.ADD;
201         RAISE FND_API.G_EXC_ERROR;
202 
203 END Select_Row;
204 
205 PROCEDURE Delete_Row (
206     X_CLASS_CATEGORY                        IN     VARCHAR2
207 ) IS
208 
209 BEGIN
210 
211     DELETE FROM HZ_CLASS_CATEGORIES
212     WHERE CLASS_CATEGORY = X_CLASS_CATEGORY;
213 
214     IF ( SQL%NOTFOUND ) THEN
215         RAISE NO_DATA_FOUND;
216     END IF;
217 
218 END Delete_Row;
219 
220 END HZ_CLASS_CATEGORIES_PKG;