DBA Data[Home] [Help]

PACKAGE: APPS.AMS_APPROVERS_PVT

Source


1 PACKAGE AMS_APPROVERS_PVT AUTHID CURRENT_USER AS
2 /* $Header: amsvaprs.pls 115.8 2002/12/29 08:42:57 vmodur noship $ */
3 
4 -----------------------------------------------------------
5 -- PACKAGE
6 --    AMS_APPROVERS_PVT
7 --
8 -- PURPOSE
9 --    This package is a Private API for managing Approvers
10 --    in AMS.  It contains specification for pl/sql records and tables
11 --
12 --    AMS_APPROVERS:
13 --    Create_approvers (see below for specification)
14 --    Update_approvers (see below for specification)
15 --    Delete_approvers (see below for specification)
16 --    Lock_approvers (see below for specification)
17 --    Validate_approvers (see below for specification)
18 --
19 --    Check_Approvers_Items (see below for specification)
20 --    Check_Approvers_Record (see below for specification)
21 --    Init_Approvers_Rec
22 --    Complete_Approvers_Rec
23 --
24 -- NOTES
25 --
26 --
27 -- HISTORY
28 -- 19-OCT-2000    mukumar      Created.
29 -- 25-SEP-2002    vmodur      uncommented security_group_id in record type
30 -----------------------------------------------------------
31 
32 -------------------------------------
33 -----          Approvers -----
34 -------------------------------------
35 -- Record for AMS_APPROVERS
36 TYPE Approvers_Rec_Type IS RECORD (
37      APPROVER_ID              NUMBER
38     , LAST_UPDATE_DATE        DATE
39     , LAST_UPDATED_BY         NUMBER
40     , CREATION_DATE           DATE
41     , CREATED_BY              NUMBER
42     , LAST_UPDATE_LOGIN       NUMBER
43     , OBJECT_VERSION_NUMBER   NUMBER
44     , SECURITY_GROUP_ID       NUMBER
45     , AMS_APPROVAL_DETAIL_ID  NUMBER
46     , APPROVER_SEQ            NUMBER
47     , APPROVER_TYPE           VARCHAR2(30)
48     , OBJECT_APPROVER_ID      NUMBER
49     , NOTIFICATION_TYPE       VARCHAR2(30)
50     , NOTIFICATION_TIMEOUT    NUMBER
51     , SEEDED_FLAG             VARCHAR2(1)
52     , ACTIVE_FLAG             VARCHAR2(1)
53     , START_DATE_ACTIVE       DATE
54     , END_DATE_ACTIVE         DATE
55 );
56 
57 --------------------------------------------------------------------
58 -- PROCEDURE
59 --    Create_Approvers
60 --
61 -- PURPOSE
62 --    Create Approvers entry.
63 --
64 -- PARAMETERS
65 --    p_approvers_rec: the record representing AMS_APPROVERS.
66 --    x_approver_id: the approver_id.
67 --
68 -- NOTES
69 --    1. object_version_number will be set to 1.
70 --    2. If approver_id is passed in, the uniqueness will be checked.
71 --       Raise exception in case of duplicates.
72 --    4. If a flag column is passed in, check if it is 'Y' or 'N'.
73 --       Raise exception for invalid flag.
74 --    5. If a flag column is not passed in, default it to 'Y' or 'N'.
75 --    6. Please don't pass in any FND_API.g_mess_char/num/date.
76 --------------------------------------------------------------------
77 PROCEDURE Create_approvers (
78    p_api_version       IN  NUMBER,
79    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
80    p_commit            IN  VARCHAR2  := FND_API.g_false,
81    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
82 
83    x_return_status     OUT NOCOPY VARCHAR2,
84    x_msg_count         OUT NOCOPY NUMBER,
85    x_msg_data          OUT NOCOPY VARCHAR2,
86 
87    p_approvers_rec   IN  Approvers_Rec_Type,
88    x_approver_id    OUT NOCOPY NUMBER
89 );
90 
91 --------------------------------------------------------------------
92 -- PROCEDURE
93 --    Update_approvers
94 --
95 -- PURPOSE
96 --    Update an approvers entry.
97 --
98 -- PARAMETERS
99 --    p_approvers_rec: the record representing AMS_APPROVERS
100 --
101 -- NOTES
102 --    1. Raise exception if the object_version_number doesn't match.
103 --    2. If an attribute is passed in as FND_API.g_miss_char/num/date,
104 --       that column won't be updated.
105 --------------------------------------------------------------------
106 PROCEDURE Update_approvers (
107    p_api_version       IN  NUMBER,
108    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
109    p_commit            IN  VARCHAR2  := FND_API.g_false,
110    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
111 
112    x_return_status     OUT NOCOPY VARCHAR2,
113    x_msg_count         OUT NOCOPY NUMBER,
114    x_msg_data          OUT NOCOPY VARCHAR2,
115 
116    p_approvers_rec   IN  Approvers_Rec_Type
117 );
118 
119 --------------------------------------------------------------------
120 -- PROCEDURE
121 --    Delete_approvers
122 --
123 -- PURPOSE
124 --    Delete a approvers  entry.
125 --
126 -- PARAMETERS
127 --    p_approver_id: the approver_id
128 --    p_object_version: the object_version_number
129 --
130 -- ISSUES
131 --
132 -- NOTES
133 --    1. Raise exception if the object_version_number doesn't match.
134 --------------------------------------------------------------------
135 PROCEDURE Delete_approvers (
136    p_api_version       IN  NUMBER,
137    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
138    p_commit            IN  VARCHAR2  := FND_API.g_false,
139    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
140 
141    x_return_status     OUT NOCOPY VARCHAR2,
142    x_msg_count         OUT NOCOPY NUMBER,
143    x_msg_data          OUT NOCOPY VARCHAR2,
144 
145    p_approver_id          IN  NUMBER,
146    p_object_version    IN  NUMBER
147 );
148 
149 --------------------------------------------------------------------
150 -- PROCEDURE
151 --    Lock_approvers
152 --
153 -- PURPOSE
154 --    Lock a approvers entry.
155 --
156 -- PARAMETERS
157 --    p_approver_id: the approver_id
158 --    p_object_version: the object_version_number
159 --
160 -- ISSUES
161 --
162 -- NOTES
163 --    1. Raise exception if the object_version_number doesn't match.
164 --------------------------------------------------------------------
165 PROCEDURE Lock_approvers (
166    p_api_version       IN  NUMBER,
167    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
168    p_commit            IN  VARCHAR2  := FND_API.g_false,
169    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
170 
171    x_return_status     OUT NOCOPY VARCHAR2,
172    x_msg_count         OUT NOCOPY NUMBER,
173    x_msg_data          OUT NOCOPY VARCHAR2,
174 
175    p_approver_id          IN  NUMBER,
176    p_object_version    IN  NUMBER
177 );
178 
179 --------------------------------------------------------------------
180 -- PROCEDURE
181 --    Validate_approvers
182 --
183 -- PURPOSE
184 --    Validate a approvers entry.
185 --
186 -- PARAMETERS
187 --    p_approvers_rec: the record representing AMS_APPROVERS
188 --
189 -- NOTES
190 --    1. p_approvers_rec should be the complete approver record.
191 --       There should not be any FND_API.g_miss_char/num/date in it.
192 --    2. If FND_API.g_miss_char/num/date is in the record, then raise
193 --       an exception, as those values are not handled.
194 --------------------------------------------------------------------
195 PROCEDURE Validate_approvers (
196    p_api_version       IN  NUMBER,
197    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
198    p_commit            IN  VARCHAR2  := FND_API.g_false,
199    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
200 
201    x_return_status     OUT NOCOPY VARCHAR2,
202    x_msg_count         OUT NOCOPY NUMBER,
203    x_msg_data          OUT NOCOPY VARCHAR2,
204 
205    p_approvers_rec         IN  approvers_rec_type
206 );
207 
208 ---------------------------------------------------------------------
209 -- PROCEDURE
210 --    Check_approvers_Items
211 --
212 -- PURPOSE
213 --    Perform the item level checking including unique keys,
214 --    required columns, foreign keys, domain constraints.
215 --
216 -- PARAMETERS
217 --    p_approvers_rec: the record to be validated
218 --    p_validation_mode: JTF_PLSQL_API.g_create/g_update
219 ---------------------------------------------------------------------
220 PROCEDURE Check_approvers_Items (
221    p_approvers_rec       IN  approvers_Rec_Type,
222    p_validation_mode IN  VARCHAR2 := JTF_PLSQL_API.g_create,
223    x_return_status   OUT NOCOPY VARCHAR2
224 );
225 
226 ---------------------------------------------------------------------
227 -- PROCEDURE
228 --    Check_approvers_Record
229 --
230 -- PURPOSE
231 --    Check the record level business rules.
232 --
233 -- PARAMETERS
234 --    p_approvers_rec: the record to be validated; may contain attributes
235 --       as FND_API.g_miss_char/num/date
236 --    p_complete_rec: the complete record after all "g_miss" items
237 --       have been replaced by current database values
238 ---------------------------------------------------------------------
239 PROCEDURE Check_approvers_Record (
240    p_approvers_rec        IN  approvers_Rec_Type,
241    p_complete_rec     IN  approvers_Rec_Type := NULL,
242    x_return_status    OUT NOCOPY VARCHAR2
243 );
244 
245 ---------------------------------------------------------------------
246 -- PROCEDURE
247 --    Init_approvers_Rec
248 --
249 -- PURPOSE
250 --    Initialize all attributes to be FND_API.g_miss_char/num/date.
251 ---------------------------------------------------------------------
252 PROCEDURE Init_approvers_Rec (
253    x_approvers_rec         OUT NOCOPY  approvers_Rec_Type
254 );
255 
256 ---------------------------------------------------------------------
257 -- PROCEDURE
258 --    Complete_approvers_Rec
259 --
260 -- PURPOSE
261 --    For Update_approvers, some attributes may be passed in as
262 --    FND_API.g_miss_char/num/date if the user doesn't want to
263 --    update those attributes. This procedure will replace the
264 --    "g_miss" attributes with current database values.
265 --
266 -- PARAMETERS
267 --    p_approvers_rec: the record which may contain attributes as
268 --       FND_API.g_miss_char/num/date
269 --    x_complete_rec: the complete record after all "g_miss" items
270 --       have been replaced by current database values
271 ---------------------------------------------------------------------
272 PROCEDURE Complete_approvers_Rec (
273    p_approvers_rec      IN  approvers_Rec_Type,
274    x_complete_rec   OUT NOCOPY approvers_Rec_Type
275 );
276 
277 
278 END AMS_approvers_PVT;