[Home] [Help]
TYPE BODY: APPS.PO_VALIDATION_RESULTS_TYPE
Source
1 TYPE BODY PO_VALIDATION_RESULTS_TYPE AS
2 /* $Header: PO_VALIDATION_RESULTS_TYPE.sql 120.4 2005/12/22 03:31 bao noship $ */
3
4 /**
5 * Start of Comments
6 * Function:
7 * Creates an empty instance of this type, with all attributes set to NULL.
8 * Generally, this constructor should not be used by outside callers.
9 * Returns:
10 * An empty instance of this type.
11 * End of Comments
12 */
13 CONSTRUCTOR FUNCTION PO_VALIDATION_RESULTS_TYPE RETURN SELF AS RESULT
14 IS
15 BEGIN
16 RETURN;
17 END;
18
19 /**
20 * Creates a new instance of this type, with all attributes initialized
21 * to empty tables.
22 */
23 STATIC FUNCTION new_instance
24 RETURN PO_VALIDATION_RESULTS_TYPE
25 IS
26 l_instance PO_VALIDATION_RESULTS_TYPE;
27 BEGIN
28 l_instance := PO_VALIDATION_RESULTS_TYPE();
29 l_instance.initialize();
30 RETURN l_instance;
31 END new_instance;
32
33 /**
34 * Start of Comments
35 * Pre-reqs: None.
36 * Modifies: None.
37 * Locks: None.
38 * Function:
39 * Retrieves the set of validation results from PO_VALIDATION_RESULTS_GT
40 * into an object of this type.
41 * Parameters:
42 * IN:
43 * p_result_set_id
44 * Identifies the results to gather.
45 * Returns: A new object containing the results from the table.
46 * End of Comments
47 */
48 STATIC FUNCTION get_result_set_from_gt(
49 p_result_set_id IN NUMBER
50 )
51 RETURN PO_VALIDATION_RESULTS_TYPE
52 IS
53 d_mod CONSTANT VARCHAR2(100) := PO_LOG.get_package_base('PO_VALIDATION_RESULTS_TYPE.GET_RESULT_SET_FROM_GT');
54 d_position NUMBER := 0;
55
56 x_results PO_VALIDATION_RESULTS_TYPE;
57 BEGIN
58
59 IF PO_LOG.d_proc THEN
60 PO_LOG.proc_begin(d_mod,'p_result_set_id',p_result_set_id);
61 END IF;
62
63 d_position := 1;
64
65 x_results := PO_VALIDATION_RESULTS_TYPE();
66
67 d_position := 10;
68
69 SELECT
70 vr.validation_id -- validation id
71 , vr.result_type
72 , vr.entity_type
73 , vr.entity_id
74 , vr.entity_interface_id
75 , vr.column_name
76 , vr.column_val
77 , vr.message_application
78 , vr.message_name
79 , vr.token1_name
80 , vr.token1_value
81 , vr.token2_name
82 , vr.token2_value
83 , vr.token3_name
84 , vr.token3_value
85 , vr.token4_name
86 , vr.token4_value
87 , vr.token5_name
88 , vr.token5_value
89 , vr.token6_name
90 , vr.token6_value
91 BULK COLLECT INTO
92 x_results.validation_id
93 , x_results.result_type
94 , x_results.entity_type
95 , x_results.entity_id
96 , x_results.entity_interface_id
97 , x_results.column_name
98 , x_results.column_val
99 , x_results.message_application
100 , x_results.message_name
101 , x_results.token1_name
102 , x_results.token1_value
103 , x_results.token2_name
104 , x_results.token2_value
105 , x_results.token3_name
106 , x_results.token3_value
107 , x_results.token4_name
108 , x_results.token4_value
109 , x_results.token5_name
110 , x_results.token5_value
111 , x_results.token6_name
112 , x_results.token6_value
113 FROM
114 PO_VALIDATION_RESULTS_GT vr
115 WHERE
116 vr.result_set_id = p_result_set_id
117 ;
118
119 IF PO_LOG.d_proc THEN
120 PO_LOG.log(PO_LOG.c_PROC_RETURN,d_mod,NULL,'x_results',x_results);
121 END IF;
122 RETURN x_results;
123
124 EXCEPTION
125 WHEN OTHERS THEN
126 IF PO_LOG.d_exc THEN
127 PO_LOG.exc(d_mod,d_position,NULL);
128 END IF;
129 RAISE;
130
131 END get_result_set_from_gt;
132
133 /**
134 * Start of Comments
135 * Pre-reqs: None.
136 * Modifies: SELF.
137 * Locks: None.
138 * Function:
139 * Sets all of the attributes of this object to be empty tables
140 * of the appropriate type.
141 * End of Comments
142 */
143 MEMBER PROCEDURE initialize
144 IS
145 BEGIN
146 VALIDATION_ID := PO_TBL_NUMBER();
147 RESULT_TYPE := PO_TBL_VARCHAR30();
148 ENTITY_TYPE := PO_TBL_VARCHAR30();
149 ENTITY_ID := PO_TBL_NUMBER();
150 ENTITY_INTERFACE_ID := PO_TBL_NUMBER();
151 COLUMN_NAME := PO_TBL_VARCHAR30();
152 COLUMN_VAL := PO_TBL_VARCHAR4000();
153 MESSAGE_APPLICATION := PO_TBL_VARCHAR30();
154 MESSAGE_NAME := PO_TBL_VARCHAR30();
155 TOKEN1_NAME := PO_TBL_VARCHAR30();
156 TOKEN1_VALUE := PO_TBL_VARCHAR4000();
157 TOKEN2_NAME := PO_TBL_VARCHAR30();
158 TOKEN2_VALUE := PO_TBL_VARCHAR4000();
159 TOKEN3_NAME := PO_TBL_VARCHAR30();
160 TOKEN3_VALUE := PO_TBL_VARCHAR4000();
161 TOKEN4_NAME := PO_TBL_VARCHAR30();
162 TOKEN4_VALUE := PO_TBL_VARCHAR4000();
163 TOKEN5_NAME := PO_TBL_VARCHAR30();
164 TOKEN5_VALUE := PO_TBL_VARCHAR4000();
165 TOKEN6_NAME := PO_TBL_VARCHAR30();
166 TOKEN6_VALUE := PO_TBL_VARCHAR4000();
167 END initialize;
168
169
170 MEMBER PROCEDURE extend
171 IS
172 BEGIN
173 VALIDATION_ID.EXTEND();
174 RESULT_TYPE.EXTEND();
175 ENTITY_TYPE.EXTEND();
176 ENTITY_ID.EXTEND();
177 ENTITY_INTERFACE_ID.EXTEND();
178 COLUMN_NAME.EXTEND();
179 COLUMN_VAL.EXTEND();
180 MESSAGE_APPLICATION.EXTEND();
181 MESSAGE_NAME.EXTEND();
182 TOKEN1_NAME.EXTEND();
183 TOKEN1_VALUE.EXTEND();
184 TOKEN2_NAME.EXTEND();
185 TOKEN2_VALUE.EXTEND();
186 TOKEN3_NAME.EXTEND();
187 TOKEN3_VALUE.EXTEND();
188 TOKEN4_NAME.EXTEND();
189 TOKEN4_VALUE.EXTEND();
190 TOKEN5_NAME.EXTEND();
191 TOKEN5_VALUE.EXTEND();
192 TOKEN6_NAME.EXTEND();
193 TOKEN6_VALUE.EXTEND();
194 END extend;
195
196 /**
197 * Start of Comments
198 * Pre-reqs: The attribute tables have been initialized.
199 * Modifies: SELF.
200 * Function:
201 * Adds a record to this result set.
202 * End of Comments
203 */
204 MEMBER PROCEDURE add_result(
205 p_validation_id IN VARCHAR2 DEFAULT NULL
206 , p_result_type IN VARCHAR2 DEFAULT NULL
207 , p_entity_type IN VARCHAR2
208 , p_entity_id IN NUMBER
209 , p_entity_interface_id IN NUMBER DEFAULT NULL
210 , p_column_name IN VARCHAR2
211 , p_column_val IN VARCHAR2 DEFAULT NULL
212 , p_message_application IN VARCHAR2 DEFAULT NULL
213 , p_message_name IN VARCHAR2
214 , p_token1_name IN VARCHAR2 DEFAULT NULL
215 , p_token1_value IN VARCHAR2 DEFAULT NULL
216 , p_token2_name IN VARCHAR2 DEFAULT NULL
217 , p_token2_value IN VARCHAR2 DEFAULT NULL
218 , p_token3_name IN VARCHAR2 DEFAULT NULL
219 , p_token3_value IN VARCHAR2 DEFAULT NULL
220 , p_token4_name IN VARCHAR2 DEFAULT NULL
221 , p_token4_value IN VARCHAR2 DEFAULT NULL
222 , p_token5_name IN VARCHAR2 DEFAULT NULL
223 , p_token5_value IN VARCHAR2 DEFAULT NULL
224 , p_token6_name IN VARCHAR2 DEFAULT NULL
225 , p_token6_value IN VARCHAR2 DEFAULT NULL
226 )
227 IS
228 l_count NUMBER;
229 BEGIN
230 SELF.extend();
231
232 l_count := result_type.COUNT();
233 VALIDATION_ID(l_count) := p_validation_id;
234 RESULT_TYPE(l_count) := NVL(p_result_type,PO_VALIDATIONS.c_result_type_FAILURE);
235 ENTITY_TYPE(L_COUNT) := p_entity_type;
236 ENTITY_ID(L_COUNT) := p_entity_id;
237 ENTITY_INTERFACE_ID(L_COUNT) := p_entity_interface_id;
238 COLUMN_NAME(L_COUNT) := p_column_name;
239 COLUMN_VAL(L_COUNT) := p_column_val;
240 MESSAGE_APPLICATION(L_COUNT) := NVL(p_message_application,'PO');
241 MESSAGE_NAME(L_COUNT) := p_message_name;
242 TOKEN1_NAME(L_COUNT) := p_token1_name;
243 TOKEN1_VALUE(L_COUNT) := p_token1_value;
244 TOKEN2_NAME(L_COUNT) := p_token2_name;
245 TOKEN2_VALUE(L_COUNT) := p_token2_value;
246 TOKEN3_NAME(L_COUNT) := p_token3_name;
247 TOKEN3_VALUE(L_COUNT) := p_token3_value;
248 TOKEN4_NAME(L_COUNT) := p_token4_name;
249 TOKEN4_VALUE(L_COUNT) := p_token4_value;
250 TOKEN5_NAME(L_COUNT) := p_token5_name;
251 TOKEN5_VALUE(L_COUNT) := p_token5_value;
252 TOKEN6_NAME(L_COUNT) := p_token6_name;
253 TOKEN6_VALUE(L_COUNT) := p_token6_value;
254
255 END add_result;
256
257 /**
258 * Appends the input results to this results object.
259 */
260 MEMBER PROCEDURE append(
261 p_results IN PO_VALIDATION_RESULTS_TYPE
262 )
263 IS
264 l_count NUMBER;
265 BEGIN
266
267 IF (p_results IS NOT NULL AND p_results.result_type IS NOT NULL) THEN
268
269 l_count := SELF.result_type.COUNT();
270
271 FOR i IN 1 .. p_results.result_type.COUNT() LOOP
272
273 SELF.extend();
274 l_count := l_count + 1;
275 SELF.validation_id(l_count) := p_results.validation_id(i);
276 SELF.result_type(l_count) := NVL(p_results.result_type(i),PO_VALIDATIONS.c_result_type_FAILURE);
277 SELF.entity_type(l_count) := p_results.entity_type(i);
278 SELF.ENTITY_ID(l_count) := p_results.entity_id(i);
279 SELF.ENTITY_INTERFACE_ID(l_count) := p_results.entity_interface_id(i);
280 SELF.COLUMN_NAME(l_count) := p_results.column_name(i);
281 SELF.COLUMN_VAL(l_count) := p_results.column_val(i);
282 SELF.MESSAGE_APPLICATION(l_count) := NVL(p_results.message_application(i),'PO');
283 SELF.MESSAGE_NAME(l_count) := p_results.message_name(i);
284 SELF.TOKEN1_NAME(l_count) := p_results.token1_name(i);
285 SELF.TOKEN1_VALUE(l_count) := p_results.token1_value(i);
286 SELF.TOKEN2_NAME(l_count) := p_results.token2_name(i);
287 SELF.TOKEN2_VALUE(l_count) := p_results.token2_value(i);
288 SELF.TOKEN3_NAME(l_count) := p_results.token3_name(i);
289 SELF.TOKEN3_VALUE(l_count) := p_results.token3_value(i);
290 SELF.TOKEN4_NAME(l_count) := p_results.token4_name(i);
291 SELF.TOKEN4_VALUE(l_count) := p_results.token4_value(i);
292 SELF.TOKEN5_NAME(l_count) := p_results.token5_name(i);
293 SELF.TOKEN5_VALUE(l_count) := p_results.token5_value(i);
294 SELF.TOKEN6_NAME(l_count) := p_results.token6_name(i);
295 SELF.TOKEN6_VALUE(l_count) := p_results.token6_value(i);
296
297 END LOOP;
298
299 END IF;
300
301 END append;
302
303 END;