DBA Data[Home] [Help]

PACKAGE BODY: APPS.EGO_USER_ATTRS_DATA_PUB

Source


1 PACKAGE BODY EGO_USER_ATTRS_DATA_PUB AS
2 /* $Header: EGOPEFBB.pls 120.4.12010000.6 2009/12/07 08:43:30 iyin ship $ */
3 
4 
5 G_ADD_ERRORS_TO_FND_STACK       VARCHAR2(1) := 'Y';
6 
7                           ----------------
8                           -- Procedures --
9                           ----------------
10 
11 PROCEDURE Process_User_Attrs_Data (
12         p_api_version                   IN   NUMBER
13        ,p_object_name                   IN   VARCHAR2
14        ,p_attributes_row_table          IN   EGO_USER_ATTR_ROW_TABLE
15        ,p_attributes_data_table         IN   EGO_USER_ATTR_DATA_TABLE
16        ,p_pk_column_name_value_pairs    IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
17        ,p_class_code_name_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
18        ,p_user_privileges_on_object     IN   EGO_VARCHAR_TBL_TYPE DEFAULT NULL
19        ,p_entity_id                     IN   NUMBER     DEFAULT NULL
20        ,p_entity_index                  IN   NUMBER     DEFAULT NULL
21        ,p_entity_code                   IN   VARCHAR2   DEFAULT NULL
22        ,p_debug_level                   IN   NUMBER     DEFAULT 0
23        ,p_init_error_handler            IN   VARCHAR2   DEFAULT FND_API.G_FALSE
24        ,p_write_to_concurrent_log       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
25        ,p_init_fnd_msg_list             IN   VARCHAR2   DEFAULT FND_API.G_FALSE
26        ,p_log_errors                    IN   VARCHAR2   DEFAULT FND_API.G_FALSE
27        ,p_add_errors_to_fnd_stack       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
28        ,p_commit                        IN   VARCHAR2   DEFAULT FND_API.G_FALSE
29        ,x_failed_row_id_list            OUT NOCOPY VARCHAR2
30        ,x_return_status                 OUT NOCOPY VARCHAR2
31        ,x_errorcode                     OUT NOCOPY NUMBER
32        ,x_msg_count                     OUT NOCOPY NUMBER
33        ,x_msg_data                      OUT NOCOPY VARCHAR2
34 ) IS
35 
36   BEGIN
37 
38     EGO_USER_ATTRS_DATA_PVT.Process_User_Attrs_Data
39     (
40         p_api_version                   => p_api_version
41        ,p_object_name                   => p_object_name
42        ,p_attributes_row_table          => p_attributes_row_table
43        ,p_attributes_data_table         => p_attributes_data_table
44        ,p_pk_column_name_value_pairs    => p_pk_column_name_value_pairs
45        ,p_class_code_name_value_pairs   => p_class_code_name_value_pairs
46        ,p_user_privileges_on_object     => p_user_privileges_on_object
47        ,p_entity_id                     => p_entity_id
48        ,p_entity_index                  => p_entity_index
49        ,p_entity_code                   => p_entity_code
50        ,p_debug_level                   => p_debug_level
51        ,p_init_error_handler            => p_init_error_handler
52        ,p_write_to_concurrent_log       => p_write_to_concurrent_log
53        ,p_init_fnd_msg_list             => p_init_fnd_msg_list
54        ,p_log_errors                    => p_log_errors
55        ,p_add_errors_to_fnd_stack       => p_add_errors_to_fnd_stack
56        ,p_commit                        => p_commit
57        ,x_failed_row_id_list            => x_failed_row_id_list
58        ,x_return_status                 => x_return_status
59        ,x_errorcode                     => x_errorcode
60        ,x_msg_count                     => x_msg_count
61        ,x_msg_data                      => x_msg_data
62     );
63 
64 END Process_User_Attrs_Data;
65 
66 /* Overload method with additional parameters x_extension_id, x_mode */
67 
68 PROCEDURE Process_User_Attrs_Data (
69         p_api_version                   IN   NUMBER
70        ,p_object_name                   IN   VARCHAR2
71        ,p_attributes_row_table          IN   EGO_USER_ATTR_ROW_TABLE
72        ,p_attributes_data_table         IN   EGO_USER_ATTR_DATA_TABLE
73        ,p_pk_column_name_value_pairs    IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
74        ,p_class_code_name_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
75        ,p_user_privileges_on_object     IN   EGO_VARCHAR_TBL_TYPE DEFAULT NULL
76        ,p_entity_id                     IN   NUMBER     DEFAULT NULL
77        ,p_entity_index                  IN   NUMBER     DEFAULT NULL
78        ,p_entity_code                   IN   VARCHAR2   DEFAULT NULL
79        ,p_debug_level                   IN   NUMBER     DEFAULT 0
80        ,p_init_error_handler            IN   VARCHAR2   DEFAULT FND_API.G_FALSE
81        ,p_write_to_concurrent_log       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
82        ,p_init_fnd_msg_list             IN   VARCHAR2   DEFAULT FND_API.G_FALSE
83        ,p_log_errors                    IN   VARCHAR2   DEFAULT FND_API.G_FALSE
84        ,p_add_errors_to_fnd_stack       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
85        ,p_commit                        IN   VARCHAR2   DEFAULT FND_API.G_FALSE
86        ,x_extension_id                  OUT NOCOPY NUMBER
87        ,x_mode                          OUT NOCOPY VARCHAR2
88        ,x_failed_row_id_list            OUT NOCOPY VARCHAR2
89        ,x_return_status                 OUT NOCOPY VARCHAR2
90        ,x_errorcode                     OUT NOCOPY NUMBER
91        ,x_msg_count                     OUT NOCOPY NUMBER
92        ,x_msg_data                      OUT NOCOPY VARCHAR2
93 ) IS
94 
95     -------------------------------------------------------------------------
96     -- COM item uda validations
97     -- trudave
98     -------------------------------------------------------------------------
99     -- Telco profile value
100     /*profile_value varchar2(1) := fnd_profile.value('EGO_ENABLE_P4T');
101 
102     -- attribute group
103     l_com_attr_group_type VARCHAR2(40);
104     l_com_attr_group_name VARCHAR2(30) := NULL;
105     l_com_attr_group_id NUMBER;
106     l_attributes_row_table EGO_USER_ATTR_ROW_TABLE;
107 
108     -- attribute
109     l_com_attr_int_name VARCHAR2(30);
110     l_attributes_data_table  EGO_USER_ATTR_DATA_TABLE;
111     l_curr_data_element      EGO_USER_ATTR_DATA_OBJ;
112 
113     -- pk
114     l_pk_column_name_value_pairs       EGO_COL_NAME_VALUE_PAIR_ARRAY;
115     l_curr_pk_col_name_val_element      EGO_COL_NAME_VALUE_PAIR_OBJ;
116     l_revision_id NUMBER;
117 
118     -- catalog category
119     l_class_code_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
120     l_curr_class_cd_val_element         EGO_COL_NAME_VALUE_PAIR_OBJ;
121 
122     -- declarations
123     l_row_identifier NUMBER;
124     l_data_row_identifier NUMBER;
125 
126     -- output
127     l_telco_return_status VARCHAR2(1);
128     l_error_messages EGO_COL_NAME_VALUE_PAIR_ARRAY := EGO_COL_NAME_VALUE_PAIR_ARRAY();
129     l_error_col_name_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY :=EGO_COL_NAME_VALUE_PAIR_ARRAY();
130     l_error_element EGO_COL_NAME_VALUE_PAIR_OBJ;
131 
132 
133     l_next_attr_group BOOLEAN := FALSE;
134     l_validate_data BOOLEAN := FALSE;
135     l_mark_error_record BOOLEAN := FALSE;
136 
137 
138     l_error_attr_name  VARCHAR2(1000);
139     l_error_attr_group_name VARCHAR2(30);
140     l_name VARCHAR2(30);
141     l_err_value VARCHAR2(150);
142     l_error_message VARCHAR2(30);
143     l_error_row_identifier NUMBER;
144     l_error_message_name     VARCHAR2(30);
145     l_token_table            ERROR_HANDLER.Token_Tbl_Type;
146     l_error_occured 	     EXCEPTION;
147 
148     message_list  ERROR_HANDLER.Error_Tbl_Type; */
149 
150   BEGIN
151 
152     --------------------------------------------------------------------------
153     -- Processing PIM Telco Item Attribute Groups - Attributes starts
154     -- trudave
155     --------------------------------------------------------------------------
156     /*l_telco_return_status := 'S';
157 
158     IF (profile_value = 'Y') THEN
159       IF (p_object_name = 'EGO_ITEM') THEN
160         l_attributes_row_table := p_attributes_row_table;
161 	l_pk_column_name_value_pairs := p_pk_column_name_value_pairs;
162        	ERROR_HANDLER.Initialize;
163         FOR i IN p_attributes_row_table.FIRST .. p_attributes_row_table.LAST
164         LOOP
165           l_row_identifier := p_attributes_row_table(i).ROW_IDENTIFIER;
166           l_com_attr_group_type := p_attributes_row_table(i).ATTR_GROUP_TYPE;
167           l_com_attr_group_name := p_attributes_row_table(i).ATTR_GROUP_NAME;
168           l_com_attr_group_id := p_attributes_row_table(i).ATTR_GROUP_ID;
169 	  l_revision_id := p_attributes_row_table(i).DATA_LEVEL_1;
170           l_pk_column_name_value_pairs.EXTEND();
171           l_pk_column_name_value_pairs(l_pk_column_name_value_pairs.LAST) := EGO_COL_NAME_VALUE_PAIR_OBJ( 'REVISION_ID', l_revision_id);
172 
173           FOR j IN p_attributes_data_table.FIRST .. p_attributes_data_table.LAST
174           LOOP
175 	    l_data_row_identifier := p_attributes_data_table(j).ROW_IDENTIFIER;
176 	    IF (l_row_identifier = l_data_row_identifier) THEN
177               l_curr_data_element := p_attributes_data_table(j);
178               IF ( l_attributes_data_table IS NULL) THEN
179 	        l_attributes_data_table := EGO_USER_ATTR_DATA_TABLE();
180               END IF;
181               l_attributes_data_table.EXTEND();
182               l_attributes_data_table(l_attributes_data_table.LAST) := l_curr_data_element;
183             END IF;
184           END LOOP;
185           IF (EGO_COM_ATTR_VALIDATION.Is_Attribute_Group_Telco(l_com_attr_group_name,l_com_attr_group_type)) THEN
186             EGO_COM_ATTR_VALIDATION.Validate_Attributes (
187                         p_attr_group_type                  => l_com_attr_group_type
188                        ,p_attr_group_name                  => l_com_attr_group_name
189                        ,p_attr_group_id                    => l_com_attr_group_id
190                        ,p_attr_name_value_pairs            => l_attributes_data_table
191                        ,p_pk_column_name_value_pairs       => l_pk_column_name_value_pairs
192                        ,x_return_status                    => l_telco_return_status
193                        ,x_error_messages                   => l_error_messages
194 	               );
195           END IF;
196 
197 	  IF (l_telco_return_status = 'E') THEN
198 
199             l_error_attr_name := NULL;
200             l_error_attr_group_name := NULL;
201 
202             FOR i IN l_error_messages.FIRST .. l_error_messages.LAST
203 	    LOOP
204               l_name := l_error_messages(i).NAME;
205 	      l_err_value := l_error_messages(i).VALUE;
206 	      l_error_row_identifier := l_row_identifier;
207 	      IF (l_name = 'ATTR_GROUP_NAME') THEN
208 	        l_error_attr_group_name := l_err_value;
209               END IF;
210 	      IF (l_name = 'ERROR_MESSAGE_NAME') THEN
211 	        l_error_message := l_err_value;
212               END IF;
213 	      IF (l_name = 'ATTR_INT_NAME') THEN
214 	        l_error_attr_name := l_err_value;
215 	        l_mark_error_record := TRUE;
216               END IF;
217 
218               IF (l_mark_error_record) THEN
219 
220 	        l_token_table(1).TOKEN_NAME := 'ATTR_GROUP_NAME';
221                 l_token_table(1).TOKEN_VALUE := l_error_attr_group_name;
222                 l_error_message_name := l_error_message;
223 
224                 ERROR_HANDLER.Add_Error_Message(
225                    p_message_name      => l_error_message_name
226                   ,p_application_id    => 'EGO'
227                   ,p_token_tbl         => l_token_table
228                   ,p_message_type      => FND_API.G_RET_STS_ERROR
229                   ,p_row_identifier    => l_error_row_identifier
230                   ,p_entity_id         => p_entity_id -- G_ENTITY_ID
231                   ,p_entity_index      => p_entity_index
232                   ,p_entity_code       => p_entity_code -- G_ENTITY_CODE
233                   ,p_addto_fnd_stack   => G_ADD_ERRORS_TO_FND_STACK
234                   );
235                 l_token_table.DELETE();
236               END IF; -- if error record marked
237             END LOOP; -- loop l_error_messages
241         x_msg_count := ERROR_HANDLER.Get_Message_Count();
238           END IF; -- if l_telco_return_status
239         END LOOP; -- loop for attribute groups objects for COM item uda ends
240 
242 
243       END IF; -- if object_name - EGO_ITEM -ends
244 
245     END IF; -- if P4T profile option ends
246 
247     -- Processing PIM Telco Item Attribute Groups - Attributes ends
248     IF l_telco_return_status = 'S' THEN */
249 
250       EGO_USER_ATTRS_DATA_PVT.Process_User_Attrs_Data
251       (
252         p_api_version                   => p_api_version
253        ,p_object_name                   => p_object_name
254        ,p_attributes_row_table          => p_attributes_row_table
255        ,p_attributes_data_table         => p_attributes_data_table
256        ,p_pk_column_name_value_pairs    => p_pk_column_name_value_pairs
257        ,p_class_code_name_value_pairs   => p_class_code_name_value_pairs
258        ,p_user_privileges_on_object     => p_user_privileges_on_object
259        ,p_entity_id                     => p_entity_id
260        ,p_entity_index                  => p_entity_index
261        ,p_entity_code                   => p_entity_code
262        ,p_debug_level                   => p_debug_level
263        ,p_init_error_handler            => p_init_error_handler
264        ,p_write_to_concurrent_log       => p_write_to_concurrent_log
265        ,p_init_fnd_msg_list             => p_init_fnd_msg_list
266        ,p_log_errors                    => p_log_errors
267        ,p_add_errors_to_fnd_stack       => p_add_errors_to_fnd_stack
268        ,p_commit                        => p_commit
269        ,x_extension_id                  => x_extension_id
270        ,x_mode                          => x_mode
271        ,x_failed_row_id_list            => x_failed_row_id_list
272        ,x_return_status                 => x_return_status
273        ,x_errorcode                     => x_errorcode
274        ,x_msg_count                     => x_msg_count
275        ,x_msg_data                      => x_msg_data
276       );
277     /*ELSE
278       x_return_status := 'E';
279     END IF; */
280 
281 END Process_User_Attrs_Data;
282 
283 ----------------------------------------------------------------------
284 
285 
286 PROCEDURE Get_User_Attrs_Data (
287         p_api_version                   IN   NUMBER
288        ,p_object_name                   IN   VARCHAR2
289        ,p_pk_column_name_value_pairs    IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
290        ,p_attr_group_request_table      IN   EGO_ATTR_GROUP_REQUEST_TABLE
291        ,p_user_privileges_on_object     IN   EGO_VARCHAR_TBL_TYPE DEFAULT NULL
292        ,p_entity_id                     IN   VARCHAR2   DEFAULT NULL
293        ,p_entity_index                  IN   NUMBER     DEFAULT NULL
294        ,p_entity_code                   IN   VARCHAR2   DEFAULT NULL
295        ,p_debug_level                   IN   NUMBER     DEFAULT 0
296        ,p_init_error_handler            IN   VARCHAR2   DEFAULT FND_API.G_FALSE
297        ,p_init_fnd_msg_list             IN   VARCHAR2   DEFAULT FND_API.G_FALSE
298        ,p_add_errors_to_fnd_stack       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
299        ,p_commit                        IN   VARCHAR2   DEFAULT FND_API.G_FALSE
300        ,x_attributes_row_table          OUT NOCOPY EGO_USER_ATTR_ROW_TABLE
301        ,x_attributes_data_table         OUT NOCOPY EGO_USER_ATTR_DATA_TABLE
302        ,x_return_status                 OUT NOCOPY VARCHAR2
303        ,x_errorcode                     OUT NOCOPY NUMBER
304        ,x_msg_count                     OUT NOCOPY NUMBER
305        ,x_msg_data                      OUT NOCOPY VARCHAR2
306 ) IS
307 
308   BEGIN
309 
310     EGO_USER_ATTRS_DATA_PVT.Get_User_Attrs_Data
311     (
312         p_api_version                   => p_api_version
313        ,p_object_name                   => p_object_name
314        ,p_pk_column_name_value_pairs    => p_pk_column_name_value_pairs
315        ,p_attr_group_request_table      => p_attr_group_request_table
316        ,p_user_privileges_on_object     => p_user_privileges_on_object
317        ,p_entity_id                     => p_entity_id
318        ,p_entity_index                  => p_entity_index
319        ,p_entity_code                   => p_entity_code
320        ,p_debug_level                   => p_debug_level
321        ,p_init_error_handler            => p_init_error_handler
322        ,p_init_fnd_msg_list             => p_init_fnd_msg_list
323        ,p_add_errors_to_fnd_stack       => p_add_errors_to_fnd_stack
324        ,p_commit                        => p_commit
325        ,x_attributes_row_table          => x_attributes_row_table
326        ,x_attributes_data_table         => x_attributes_data_table
327        ,x_return_status                 => x_return_status
328        ,x_errorcode                     => x_errorcode
329        ,x_msg_count                     => x_msg_count
330        ,x_msg_data                      => x_msg_data
331     );
332 
333 END Get_User_Attrs_Data;
334 
335 ----------------------------------------------------------------------
336 
337 PROCEDURE Copy_User_Attrs_Data (
338         p_api_version                   IN   NUMBER
339        ,p_application_id                IN   NUMBER
340        ,p_object_id                     IN   NUMBER     DEFAULT NULL
341        ,p_object_name                   IN   VARCHAR2   DEFAULT NULL
342        ,p_old_pk_col_value_pairs        IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
343        ,p_old_data_level_id             IN   NUMBER     DEFAULT NULL --bug 8941665
344        ,p_old_dtlevel_col_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY DEFAULT NULL
345        ,p_new_pk_col_value_pairs        IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
346        ,p_new_data_level_id             IN   NUMBER     DEFAULT NULL --bug 8941665
347        ,p_new_dtlevel_col_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY DEFAULT NULL
348        ,p_new_cc_col_value_pairs        IN   EGO_COL_NAME_VALUE_PAIR_ARRAY DEFAULT NULL
352        ,p_commit                        IN   VARCHAR2   DEFAULT FND_API.G_FALSE
349        ,p_init_error_handler            IN   VARCHAR2   DEFAULT FND_API.G_FALSE
350        ,p_init_fnd_msg_list             IN   VARCHAR2   DEFAULT FND_API.G_FALSE
351        ,p_add_errors_to_fnd_stack       IN   VARCHAR2   DEFAULT FND_API.G_FALSE
353        ,x_return_status                 OUT NOCOPY VARCHAR2
354        ,x_errorcode                     OUT NOCOPY NUMBER
355        ,x_msg_count                     OUT NOCOPY NUMBER
356        ,x_msg_data                      OUT NOCOPY VARCHAR2
357 ) IS
358 
359   BEGIN
360 
361     EGO_USER_ATTRS_DATA_PVT.Copy_User_Attrs_Data
362     (
363         p_api_version                   => p_api_version
364        ,p_application_id                => p_application_id
365        ,p_object_id                     => p_object_id
366        ,p_object_name                   => p_object_name
367        ,p_old_pk_col_value_pairs        => p_old_pk_col_value_pairs
368        ,p_old_data_level_id             => p_old_data_level_id  --bug 8941665
369        ,p_old_dtlevel_col_value_pairs   => p_old_dtlevel_col_value_pairs
370        ,p_new_pk_col_value_pairs        => p_new_pk_col_value_pairs
371        ,p_new_data_level_id             => p_new_data_level_id  --bug 8941665
372        ,p_new_dtlevel_col_value_pairs   => p_new_dtlevel_col_value_pairs
373        ,p_init_error_handler            => p_init_error_handler
374        ,p_init_fnd_msg_list             => p_init_fnd_msg_list
375        ,p_add_errors_to_fnd_stack       => p_add_errors_to_fnd_stack
376        ,p_commit                        => p_commit
377        ,x_return_status                 => x_return_status
378        ,x_errorcode                     => x_errorcode
379        ,x_msg_count                     => x_msg_count
380        ,x_msg_data                      => x_msg_data
381     );
382 
383 END Copy_User_Attrs_Data;
384 
385 PROCEDURE Validate_Required_Attrs (
386         p_api_version                   IN   NUMBER
387        ,p_object_name                   IN   VARCHAR2
388                                                      -- FND_OBJECTS.OBJECT_NAME
389        ,p_pk_column_name_value_pairs    IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
390                                                  -- Attr values to be validated
391        ,p_class_code_name_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
392        ,p_data_level_name               IN   EGO_DATA_LEVEL_B.DATA_LEVEL_NAME%TYPE := NULL
393        ,p_data_level_name_value_pairs   IN   EGO_COL_NAME_VALUE_PAIR_ARRAY
394        ,p_attr_group_type_table         IN   EGO_VARCHAR_TBL_TYPE
395                                 -- FND_DESCRIPTIVE_FLEXS.APPLICATION_TABLE_NAME
396        ,p_entity_id                     IN   NUMBER
397        ,p_entity_index                  IN   NUMBER
398        ,p_entity_code                   IN   VARCHAR2
399        ,p_debug_level                   IN   NUMBER
400        ,p_init_error_handler            IN   VARCHAR2
401        ,p_write_to_concurrent_log       IN   VARCHAR2
402        ,p_init_fnd_msg_list             IN   VARCHAR2
403        ,p_log_errors                    IN   VARCHAR2
404        ,p_add_errors_to_fnd_stack       IN   VARCHAR2
405        ,x_attributes_req_table          OUT NOCOPY EGO_USER_ATTR_TABLE
406        ,x_return_status                 OUT NOCOPY VARCHAR2
407        ,x_errorcode                     OUT NOCOPY NUMBER
408        ,x_msg_count                     OUT NOCOPY NUMBER
409        ,x_msg_data                      OUT NOCOPY VARCHAR2
410 ) IS
411   BEGIN
412 
413     EGO_USER_ATTRS_DATA_PVT.Validate_Required_Attrs
414     (
415         p_api_version                   => p_api_version
416        ,p_object_name                   => p_object_name
417        ,p_pk_column_name_value_pairs    => p_pk_column_name_value_pairs
418        ,p_class_code_name_value_pairs   => p_class_code_name_value_pairs
419        ,p_data_level_name               => p_data_level_name
420        ,p_data_level_name_value_pairs   => p_data_level_name_value_pairs
421        ,p_attr_group_type_table         => p_attr_group_type_table
422        ,p_entity_id                     => p_entity_id
423        ,p_entity_index                  => p_entity_index
424        ,p_entity_code                   => p_entity_code
425        ,p_debug_level                   => p_debug_level
426        ,p_init_error_handler            => p_init_error_handler
427        ,p_write_to_concurrent_log       => p_write_to_concurrent_log
428        ,p_init_fnd_msg_list             => p_init_fnd_msg_list
429        ,p_log_errors                    => p_log_errors
430        ,p_add_errors_to_fnd_stack       => p_add_errors_to_fnd_stack
431        ,x_attributes_req_table          => x_attributes_req_table
432        ,x_return_status                 => x_return_status
433        ,x_errorcode                     => x_errorcode
434        ,x_msg_count                     => x_msg_count
435        ,x_msg_data                      => x_msg_data
436     );
437 
438 END Validate_Required_Attrs;
439 ----------------------------------------------------------------------
440 
441 
442 /*
443  * Build_Attr_Group_Row_Object builds and trturns an instance of
444  * EGO_USER_ATTR_ROW_OBJ using the passed in infomation.
445 */
446 
447 FUNCTION Build_Attr_Group_Row_Object( p_row_identifier       IN    NUMBER
448                                      ,p_attr_group_id        IN    NUMBER   DEFAULT NULL
449                                      ,p_attr_group_app_id    IN    NUMBER
450                                      ,p_attr_group_type      IN    VARCHAR2
451                                      ,p_attr_group_name      IN    VARCHAR2
452                                      ,p_data_level           IN    VARCHAR2 DEFAULT NULL
453                                      ,p_data_level_1         IN    VARCHAR2 DEFAULT NULL
454                                      ,p_data_level_2         IN    VARCHAR2 DEFAULT NULL
458                                      ,p_transaction_type     IN    VARCHAR2
455                                      ,p_data_level_3         IN    VARCHAR2 DEFAULT NULL
456                                      ,p_data_level_4         IN    VARCHAR2 DEFAULT NULL
457                                      ,p_data_level_5         IN    VARCHAR2 DEFAULT NULL
459                                      )
460 RETURN EGO_USER_ATTR_ROW_OBJ
461 IS
462 BEGIN
463 RETURN EGO_USER_ATTR_ROW_OBJ ( p_row_identifier
464                               ,p_attr_group_id
465                               ,p_attr_group_app_id
466                               ,p_attr_group_type
467                               ,p_attr_group_name
468                               ,p_data_level
469                               ,p_data_level_1
470                               ,p_data_level_2
471                               ,p_data_level_3
472                               ,p_data_level_4
473                               ,p_data_level_5
474                               ,p_transaction_type
475                              );
476 
477 END Build_Attr_Group_Row_Object;
478 
479 /*
480  * Build_Attr_Group_Row_Table builds up the EGO_USER_ATTR_ROW_TABLE.
481  * an instance of EGO_USER_ATTR_ROW_OBJ is built using the passed in
482  * infomation and appended to the table here.
483 */
484 
485 FUNCTION Build_Attr_Group_Row_Table(  p_attr_group_row_table IN    EGO_USER_ATTR_ROW_TABLE
486                                      ,p_row_identifier       IN    NUMBER
487                                      ,p_attr_group_id        IN    NUMBER   DEFAULT NULL
488                                      ,p_attr_group_app_id    IN    NUMBER
489                                      ,p_attr_group_type      IN    VARCHAR2
490                                      ,p_attr_group_name      IN    VARCHAR2
491                                      ,p_data_level           IN    VARCHAR2 DEFAULT NULL
492                                      ,p_data_level_1         IN    VARCHAR2 DEFAULT NULL
493                                      ,p_data_level_2         IN    VARCHAR2 DEFAULT NULL
494                                      ,p_data_level_3         IN    VARCHAR2 DEFAULT NULL
495                                      ,p_data_level_4         IN    VARCHAR2 DEFAULT NULL
496                                      ,p_data_level_5         IN    VARCHAR2 DEFAULT NULL
497                                      ,p_transaction_type     IN    VARCHAR2
498                                      )
499 RETURN EGO_USER_ATTR_ROW_TABLE
500 IS
501  l_user_Attr_row_tab       EGO_USER_ATTR_ROW_TABLE;
502 BEGIN
503  IF (p_attr_group_row_table IS NULL) THEN
504    l_user_Attr_row_tab := EGO_USER_ATTR_ROW_TABLE();
505    l_user_Attr_row_tab.EXTEND();
506  ELSE
507    l_user_Attr_row_tab := p_attr_group_row_table;
508    l_user_Attr_row_tab.EXTEND();
509  END IF;
510 
511  l_user_Attr_row_tab(l_user_Attr_row_tab.LAST) := Build_Attr_Group_Row_Object( p_row_identifier    => p_row_identifier
512                                                                               ,p_attr_group_id     => p_attr_group_id
513                                                                               ,p_attr_group_app_id => p_attr_group_app_id
514                                                                               ,p_attr_group_type   => p_attr_group_type
515                                                                               ,p_attr_group_name   => p_attr_group_name
516                                                                               ,p_data_level        => p_data_level
517                                                                               ,p_data_level_1      => p_data_level_1
518                                                                               ,p_data_level_2      => p_data_level_2
519                                                                               ,p_data_level_3      => p_data_level_3
520                                                                               ,p_data_level_4      => p_data_level_4
521                                                                               ,p_data_level_5      => p_data_level_5
522                                                                               ,p_transaction_type  => p_transaction_type
523                                                                              );
524  RETURN l_user_Attr_row_tab;
525 
526 END Build_Attr_Group_Row_Table;
527 
528 /*
529  * Build_Attr_Group_Request_Obj creates and returns an instance of
530  * EGO_ATTR_GROUP_REQUEST_OBJ using the passed in infomation.
531  */
532 
533 FUNCTION Build_Attr_Group_Request_Obj(p_attr_group_id      IN   NUMBER   DEFAULT NULL
534                                         ,p_application_id     IN   NUMBER
535                                         ,p_attr_group_type    IN   VARCHAR2
536                                         ,p_attr_group_name    IN   VARCHAR2
537                                         ,p_data_level         IN   VARCHAR2 DEFAULT NULL
538                                         ,p_data_level_1       IN   VARCHAR2 DEFAULT NULL
539                                         ,p_data_level_2       IN   VARCHAR2 DEFAULT NULL
540                                         ,p_data_level_3       IN   VARCHAR2 DEFAULT NULL
541                                         ,p_data_level_4       IN   VARCHAR2 DEFAULT NULL
542                                         ,p_data_level_5       IN   VARCHAR2 DEFAULT NULL
543                                         ,p_attr_name_list     IN   VARCHAR2 DEFAULT NULL
544                                        )
545 RETURN EGO_ATTR_GROUP_REQUEST_OBJ
546 IS
547 BEGIN
548 
549 RETURN EGO_ATTR_GROUP_REQUEST_OBJ (p_attr_group_id
550                                   ,p_application_id
551                                   ,p_attr_group_type
552                                   ,p_attr_group_name
553                                   ,p_data_level
554                                   ,p_data_level_1
555                                   ,p_data_level_2
559                                   ,p_attr_name_list
556                                   ,p_data_level_3
557                                   ,p_data_level_4
558                                   ,p_data_level_5
560                                   );
561 
562 END Build_Attr_Group_Request_Obj;
563 
564 /*
565  * Build_Attr_Group_Request_Table builds up the EGO_ATTR_GROUP_REQUEST_TABLE.
566  * An instance of EGO_ATTR_GROUP_REQUEST_OBJ is built using the passed in
567  * infomation and appended to the table here.
568  */
569 
570 FUNCTION Build_Attr_Group_Request_Table( p_ag_req_table       IN   EGO_ATTR_GROUP_REQUEST_TABLE
571                                         ,p_attr_group_id      IN   NUMBER   DEFAULT NULL
572                                         ,p_application_id     IN   NUMBER
573                                         ,p_attr_group_type    IN   VARCHAR2
574                                         ,p_attr_group_name    IN   VARCHAR2
575                                         ,p_data_level         IN   VARCHAR2 DEFAULT NULL
576                                         ,p_data_level_1       IN   VARCHAR2 DEFAULT NULL
577                                         ,p_data_level_2       IN   VARCHAR2 DEFAULT NULL
578                                         ,p_data_level_3       IN   VARCHAR2 DEFAULT NULL
579                                         ,p_data_level_4       IN   VARCHAR2 DEFAULT NULL
580                                         ,p_data_level_5       IN   VARCHAR2 DEFAULT NULL
581                                         ,p_attr_name_list     IN   VARCHAR2 DEFAULT NULL
582                                        )
583 RETURN EGO_ATTR_GROUP_REQUEST_TABLE
584 IS
585 l_req_table EGO_ATTR_GROUP_REQUEST_TABLE;
586 BEGIN
587 
588  IF (l_req_table IS NULL) THEN
589    l_req_table := EGO_ATTR_GROUP_REQUEST_TABLE();
590    l_req_table.EXTEND();
591  ELSE
592    l_req_table := p_ag_req_table;
593    l_req_table.EXTEND();
594  END IF;
595 
596  l_req_table(l_req_table.LAST) := Build_Attr_Group_Request_Obj(p_attr_group_id   => p_attr_group_id
597                                                                  ,p_application_id  => p_application_id
598                                                                  ,p_attr_group_type => p_attr_group_type
599                                                                  ,p_attr_group_name => p_attr_group_name
600                                                                  ,p_data_level      => p_data_level
601                                                                  ,p_data_level_1    => p_data_level_1
602                                                                  ,p_data_level_2    => p_data_level_2
603                                                                  ,p_data_level_3    => p_data_level_3
604                                                                  ,p_data_level_4    => p_data_level_4
605                                                                  ,p_data_level_5    => p_data_level_5
606                                                                  ,p_attr_name_list  => p_attr_name_list
607                                                                  );
608 
609  RETURN l_req_table;
610 
611 
612 END Build_Attr_Group_Request_Table;
613 
614 
615 
616 
617 
618 
619 
620 
621 
622 END EGO_USER_ATTRS_DATA_PUB;
623