DBA Data[Home] [Help]

PACKAGE: APPS.AMS_APPROVAL_DETAILS_PVT

Source


1 PACKAGE AMS_APPROVAL_DETAILS_PVT AUTHID CURRENT_USER AS
2 /* $Header: amsvapds.pls 115.9 2004/03/05 07:02:52 vmodur ship $ */
3 
4 -----------------------------------------------------------
5 -- PACKAGE
6 --    AMS_APPROVAL_DETAILS_PVT
7 --
8 -- PURPOSE
9 --    This package is a Private API for managing Approval details
10 --    in AMS.  It contains specification for pl/sql records and tables
11 --
12 --    AMS_APPROVAL_DETAILS_VL:
13 --    Create_Approval_Details (see below for specification)
14 --    Update_Approval_Details (see below for specification)
15 --    Delete_Approval_Details (see below for specification)
16 --    Lock_Approval_Details (see below for specification)
17 --    Validate_Approval_Details (see below for specification)
18 --
19 --    Check_Approval_Details_Items (see below for specification)
20 --    Check_Approval_Details_Record (see below for specification)
21 --    Init_Approval_Details_Rec
22 --    Complete_Approval_Details_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 -----          Approval Details -----
34 -------------------------------------
35 -- Record for AMS_Approval_Details_VL
36 TYPE Approval_Details_Rec_Type IS RECORD (
37     START_DATE_ACTIVE       DATE
38    , END_DATE_ACTIVE        DATE
39    , APPROVAL_DETAIL_ID     NUMBER
40    , LAST_UPDATE_DATE       DATE
41    , LAST_UPDATED_BY        NUMBER
42    , CREATION_DATE          DATE
43    , CREATED_BY             NUMBER
44    , LAST_UPDATE_LOGIN      NUMBER
45    , OBJECT_VERSION_NUMBER  NUMBER
46    , SECURITY_GROUP_ID      NUMBER
47    , BUSINESS_GROUP_ID      NUMBER
48    , BUSINESS_UNIT_ID       NUMBER
49    , ORGANIZATION_ID        NUMBER
50    , CUSTOM_SETUP_ID        NUMBER
51    , APPROVAL_OBJECT        VARCHAR2(30)
52    , APPROVAL_OBJECT_TYPE   VARCHAR2(30)
53    , APPROVAL_TYPE          VARCHAR2(30)
54    , APPROVAL_PRIORITY      VARCHAR2(30)
55    , APPROVAL_LIMIT_TO      NUMBER
56    , APPROVAL_LIMIT_FROM    NUMBER
57    , SEEDED_FLAG            VARCHAR2(1)
58    , ACTIVE_FLAG            VARCHAR2(1)
59    , CURRENCY_CODE          VARCHAR2(15)
60    , USER_COUNTRY_CODE      VARCHAR2(30)
61    , NAME                   VARCHAR2(240)
62    , DESCRIPTION            VARCHAR2(4000)
63 );
64 
65 
66  --TYPE t_approval_id_table IS TABLE OF Approval_Details_Rec_Type.approval_detail_id%TYPE
67 --      INDEX BY BINARY_INTEGER;
68 
69    TYPE t_approval_id_table IS TABLE OF NUMBER
70         INDEX BY BINARY_INTEGER;
71 
72 
73 --------------------------------------------------------------------
74 -- PROCEDURE
75 --    Create_Approval_Details
76 --
77 -- PURPOSE
78 --    Create Approval Details entry.
79 --
80 -- PARAMETERS
81 --    p_approval_detail_rec: the record representing AMS_APPROVAL_DETAILS_VL view..
82 --    x_approval_detail_id: the approval_detail_id.
83 --
84 -- NOTES
85 --    1. object_version_number will be set to 1.
86 --    2. If approval_detail_id is passed in, the uniqueness will be checked.
87 --       Raise exception in case of duplicates.
88 --    4. If a flag column is passed in, check if it is 'Y' or 'N'.
89 --       Raise exception for invalid flag.
90 --    5. If a flag column is not passed in, default it to 'Y' or 'N'.
91 --    6. Please don't pass in any FND_API.g_mess_char/num/date.
92 --------------------------------------------------------------------
93 PROCEDURE Create_approval_details (
94    p_api_version       IN  NUMBER,
95    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
96    p_commit            IN  VARCHAR2  := FND_API.g_false,
97    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
98 
99    x_return_status     OUT NOCOPY VARCHAR2,
100    x_msg_count         OUT NOCOPY NUMBER,
101    x_msg_data          OUT NOCOPY VARCHAR2,
102 
103    p_approval_details_rec   IN  Approval_Details_Rec_Type,
104    x_approval_detail_id    OUT NOCOPY NUMBER
105 );
106 
107 --------------------------------------------------------------------
108 -- PROCEDURE
109 --    Update_approval_details
110 --
111 -- PURPOSE
112 --    Update an approval details entry.
113 --
114 -- PARAMETERS
115 --    p_approval_details_rec: the record representing AMS_APPROVAL_DETAILS_VL (without the ROW_ID column).
116 --
117 -- NOTES
118 --    1. Raise exception if the object_version_number doesn't match.
119 --    2. If an attribute is passed in as FND_API.g_miss_char/num/date,
120 --       that column won't be updated.
121 --------------------------------------------------------------------
122 PROCEDURE Update_approval_details (
123    p_api_version       IN  NUMBER,
124    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
125    p_commit            IN  VARCHAR2  := FND_API.g_false,
126    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
127 
128    x_return_status     OUT NOCOPY VARCHAR2,
129    x_msg_count         OUT NOCOPY NUMBER,
130    x_msg_data          OUT NOCOPY VARCHAR2,
131 
132    p_approval_details_rec   IN  Approval_Details_Rec_Type
133 );
134 
135 --------------------------------------------------------------------
136 -- PROCEDURE
137 --    Delete_approval_details
138 --
139 -- PURPOSE
140 --    Delete a approval details entry.
141 --
142 -- PARAMETERS
143 --    p_approval_detail_id: the approval_detail_id
144 --    p_object_version: the object_version_number
145 --
146 -- ISSUES
147 --
148 -- NOTES
149 --    1. Raise exception if the object_version_number doesn't match.
150 --------------------------------------------------------------------
151 PROCEDURE Delete_approval_details (
152    p_api_version       IN  NUMBER,
153    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
154    p_commit            IN  VARCHAR2  := FND_API.g_false,
155    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
156 
157    x_return_status     OUT NOCOPY VARCHAR2,
158    x_msg_count         OUT NOCOPY NUMBER,
159    x_msg_data          OUT NOCOPY VARCHAR2,
160 
161    p_approval_detail_id          IN  NUMBER,
162    p_object_version    IN  NUMBER
163 );
164 
165 --------------------------------------------------------------------
166 -- PROCEDURE
167 --    Lock_approval_details
168 --
169 -- PURPOSE
170 --    Lock a approval details entry.
171 --
172 -- PARAMETERS
173 --    p_approval_detail_id: the approval_detail
174 --    p_object_version: the object_version_number
175 --
176 -- ISSUES
177 --
178 -- NOTES
179 --    1. Raise exception if the object_version_number doesn't match.
180 --------------------------------------------------------------------
181 PROCEDURE Lock_approval_details (
182    p_api_version       IN  NUMBER,
183    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
184    p_commit            IN  VARCHAR2  := FND_API.g_false,
185    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
186 
187    x_return_status     OUT NOCOPY VARCHAR2,
188    x_msg_count         OUT NOCOPY NUMBER,
189    x_msg_data          OUT NOCOPY VARCHAR2,
190 
191    p_approval_detail_id          IN  NUMBER,
192    p_object_version    IN  NUMBER
193 );
194 
195 --------------------------------------------------------------------
196 -- PROCEDURE
197 --    Validate_approval_details
198 --
199 -- PURPOSE
200 --    Validate a approval_details entry.
201 --
202 -- PARAMETERS
203 --    p_approval_details_rec: the record representing AMS_APPROVAL_DETAILS_VL (without ROW_ID).
204 --
205 -- NOTES
206 --    1. p_approval_details_rec should be the complete approval_details record.
207 --       There should not be any FND_API.g_miss_char/num/date in it.
208 --    2. If FND_API.g_miss_char/num/date is in the record, then raise
209 --       an exception, as those values are not handled.
210 --------------------------------------------------------------------
211 PROCEDURE Validate_approval_details (
212    p_api_version       IN  NUMBER,
213    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
214    p_commit            IN  VARCHAR2  := FND_API.g_false,
215    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
216 
217    x_return_status     OUT NOCOPY VARCHAR2,
218    x_msg_count         OUT NOCOPY NUMBER,
219    x_msg_data          OUT NOCOPY VARCHAR2,
220 
221    p_approval_details_rec         IN  approval_details_rec_type
222 );
223 
224 ---------------------------------------------------------------------
225 -- PROCEDURE
226 --    Check_approval_details_Items
227 --
228 -- PURPOSE
229 --    Perform the item level checking including unique keys,
230 --    required columns, foreign keys, domain constraints.
231 --
232 -- PARAMETERS
233 --    p_approval_details_rec: the record to be validated
234 --    p_validation_mode: JTF_PLSQL_API.g_create/g_update
235 ---------------------------------------------------------------------
236 PROCEDURE Check_approval_details_Items (
237    p_approval_details_rec       IN  approval_details_Rec_Type,
238    p_validation_mode IN  VARCHAR2 := JTF_PLSQL_API.g_create,
239    x_return_status   OUT NOCOPY VARCHAR2
240 );
241 
242 ---------------------------------------------------------------------
243 -- PROCEDURE
244 --    Check_approval_details_Record
245 --
246 -- PURPOSE
247 --    Check the record level business rules.
248 --
249 -- PARAMETERS
250 --    p_approval_details_rec: the record to be validated; may contain attributes
251 --       as FND_API.g_miss_char/num/date
252 --    p_complete_rec: the complete record after all "g_miss" items
253 --       have been replaced by current database values
254 ---------------------------------------------------------------------
255 PROCEDURE Check_approval_details_Record (
256    p_approval_details_rec        IN  approval_details_Rec_Type,
257    p_complete_rec     IN  approval_details_Rec_Type := NULL,
258    x_return_status    OUT NOCOPY VARCHAR2
259 );
260 
261 ---------------------------------------------------------------------
262 -- PROCEDURE
263 --    Init_approval_details_Rec
264 --
265 -- PURPOSE
266 --    Initialize all attributes to be FND_API.g_miss_char/num/date.
267 ---------------------------------------------------------------------
268 PROCEDURE Init_approval_details_Rec (
269    x_approval_details_rec         OUT NOCOPY  approval_details_Rec_Type
270 );
271 
272 ---------------------------------------------------------------------
273 -- PROCEDURE
274 --    Complete_approval_details_Rec
275 --
276 -- PURPOSE
277 --    For Update_approval_details, some attributes may be passed in as
278 --    FND_API.g_miss_char/num/date if the user doesn't want to
279 --    update those attributes. This procedure will replace the
280 --    "g_miss" attributes with current database values.
281 --
282 -- PARAMETERS
283 --    p_approval_details_rec: the record which may contain attributes as
284 --       FND_API.g_miss_char/num/date
285 --    x_complete_rec: the complete record after all "g_miss" items
286 --       have been replaced by current database values
287 ---------------------------------------------------------------------
288 PROCEDURE Complete_approval_details_Rec (
289    p_approval_details_rec      IN  approval_details_Rec_Type,
290    x_complete_rec   OUT NOCOPY approval_details_Rec_Type
291 );
292 
293 
294 END AMS_approval_details_PVT;