1 PACKAGE wf_messages_vl_pub AUTHID CURRENT_USER AS
2 /* $Header: wfdefs.pls 115.18 2002/12/03 01:12:21 dlam ship $ */
3
4 /*===========================================================================
5 PACKAGE NAME: wf_messages_vl_pub
6
7 DESCRIPTION:
8
9 OWNER: GKELLNER
10
11 TABLES/RECORDS:
12
13 PROCEDURES/FUNCTIONS:
14
15 ============================================================================*/
16
17 /*===========================================================================
18
19 PL*SQL TABLE NAME: wf_messages_vl_tbl_type
20
21 DESCRIPTION: Stores a list of message definitions for
22 the selected item type.
23
24 ============================================================================*/
25 TYPE wf_messages_vl_rec_type IS RECORD
26 (
27 ROW_ID ROWID,
28 TYPE VARCHAR2(8),
29 NAME VARCHAR2(30),
30 PROTECT_LEVEL NUMBER,
31 CUSTOM_LEVEL NUMBER,
32 DEFAULT_PRIORITY NUMBER,
33 READ_ROLE VARCHAR2(320),
34 WRITE_ROLE VARCHAR2(320),
35 DISPLAY_NAME VARCHAR2(80),
36 DESCRIPTION VARCHAR2(240),
37 SUBJECT VARCHAR2(240),
38 HTML_BODY VARCHAR2(4000),
39 BODY VARCHAR2(4000));
40
41 TYPE wf_messages_vl_tbl_type IS TABLE OF
42 wf_messages_vl_pub.wf_messages_vl_rec_type
43 INDEX BY BINARY_INTEGER;
44
45
46 /*===========================================================================
47
48 PL*SQL TABLE NAME: wf_message_attr_vl_tbl_type
49
50 DESCRIPTION: Stores a list of message attributes based on the
51 fetch_message_attributes cursor shown above.
52
53 ============================================================================*/
54 TYPE wf_message_attr_vl_rec_type IS RECORD
55 (
56 message_display_name VARCHAR2(80),
57 attr_default_display_name VARCHAR2(80),
58 lookup_type_display_name VARCHAR2(80),
59 lookup_code_display_name VARCHAR2(80),
60 row_id ROWID,
61 message_type VARCHAR2(8),
62 message_name VARCHAR2(30),
63 name VARCHAR2(30),
64 sequence NUMBER,
65 type VARCHAR2(8),
66 subtype VARCHAR2(8),
67 attach VARCHAR2(1),
68 value_type VARCHAR2(8),
69 protect_level NUMBER,
70 custom_level NUMBER,
71 format VARCHAR2(240),
72 text_default VARCHAR2(4000),
73 number_default NUMBER,
74 date_default DATE,
75 display_name VARCHAR2(80),
76 description VARCHAR2(240)
77 );
78
79 TYPE wf_message_attr_vl_tbl_type IS TABLE OF
80 wf_messages_vl_pub.wf_message_attr_vl_rec_type
81 INDEX BY BINARY_INTEGER;
82
83
84 /*===========================================================================
85 PROCEDURE NAME: fetch_messages
86
87 DESCRIPTION: Fetches all the messages and each message
88 associate attributes for a given item type
89 into a p_wf_messages_vl_tbl table and a
90 p_wf_message_attr_vl_tbl table based on the
91 item type internal eight character name. This
92 function can retrieve a single message
93 definition if the internal name along with the
94 item type name is provided. This is especially
95 useful if you wish to display the details for a
96 single message when it is referenced from some
97 drilldown mechanism.
98
99 The p_wf_messages_vl_tbl table and the
100 p_wf_message_attr_vl_tbl table are synchronized by
101 the select order of both queries. The
102 draw_message_list and draw_message_details functions
103 take advantage of this ordering for performance reasons
104 so they can walk these lists in parallel.
105 When we find an attribute that matches
106 the current message, we copy that attribute to a temp
107 list until we find a new message in the attribute
108 list. When this happens we write out the attribute
109 temp list and move to the next activity.
110
111
112 PARAMETERS:
113
114 p_item_type IN Internal name of the item type
115
116 p_name IN (optional)
117 Internal name of the message
118
119 p_wf_messages_vl_tbl OUT
120 The pl*sql table with the detailed definition of
121 the messages for this item type
122
123 p_wf_message_attr_vl_tbl OUT
124 The pl*sql table with the detailed definition of
125 the message attributes
126
127 ============================================================================*/
128 PROCEDURE fetch_messages
129 (p_item_type IN VARCHAR2,
130 p_name IN VARCHAR2,
131 p_wf_messages_vl_tbl OUT NOCOPY wf_messages_vl_pub.wf_messages_vl_tbl_type,
132 p_wf_message_attr_vl_tbl OUT NOCOPY wf_messages_vl_pub.wf_message_attr_vl_tbl_type);
133
134 /*===========================================================================
135 PROCEDURE NAME: draw_message_list
136
137 DESCRIPTION: Shows the display name of a message along with
138 any message attributes for that message that
139 have been passed in as a html view as a part of
140 a hierical summary list of an item type.
141 This function uses the htp to generate its html
142 output.
143
144 When we find an attribute that matches
145 the message activity, we copy that attribute and all
146 that follow for that message to a temp
147 list until we find a new activity in the attribute
148 list. When this happens we write out the attributes
149 using the draw_message_attr_list.
150
151 PARAMETERS:
152
153 p_wf_messages_vl_tbl IN
154 The pl*sql table with the detailed definition of
155 the messages for this item type
156
157 p_wf_message_attr_vl_tbl IN
158 The pl*sql table with the detailed definition of
159 the message attributes
160
161 p_effective_date IN
162 The effective date that was requested.
163 This is required if you would like to create
164 hotlinks between a summary frame view and your
165 detail frame view. Since the listing are usually
166 implemented as frames the links need to include
167 all the attributes that were used to generate those
168 frames.
169
170 p_indent_level IN
171 How many spaces would you like to indent this
172 listing from the left border of the screen.
173
174 ============================================================================*/
175 PROCEDURE draw_message_list
176 (p_wf_messages_vl_tbl IN wf_messages_vl_pub.wf_messages_vl_tbl_type,
177 p_wf_message_attr_vl_tbl IN wf_messages_vl_pub.wf_message_attr_vl_tbl_type,
178 p_effective_date IN DATE,
179 p_indent_level IN NUMBER);
180
181
182 /*===========================================================================
183 PROCEDURE NAME: fetch_message_display
184
185 DESCRIPTION: fetch the messagedisplay name based on a item
186 type name and an internal item message name
187
188 PARAMETERS:
189 p_item_type IN
190 Internal name of the item type
191
192 p_internal_name IN
193 Internal name of the message
194
195 p_display_name IN
196 Display name of the message
197 ============================================================================*/
198 PROCEDURE fetch_message_display (p_item_type IN VARCHAR2,
199 p_internal_name IN VARCHAR2,
200 p_display_name OUT NOCOPY VARCHAR2);
201
202
203 /*===========================================================================
204 PROCEDURE NAME: draw_message_attr_list
205
206 DESCRIPTION: Shows the display names of message attributes for
207 a given message as a html view as a part of
208 a hierical summary list of an item type.
209 This function uses the htp to generate its html
210 output.
211
212 PARAMETERS:
213
214 p_wf_message_attr_vl_tbl IN
215 The pl*sql table with the detailed definition of
216 the message attributes
217
218 p_effective_date IN
219 The effective date that was requested.
220 This is required if you would like to create
221 hotlinks between a summary frame view and your
222 detail frame view. Since the listing are usually
223 implemented as frames the links need to include
224 all the attributes that were used to generate those
225 frames.
226
227 p_indent_level IN
228 How many spaces would you like to indent this
229 listing from the left border of the screen.
230
231 ============================================================================*/
232 PROCEDURE draw_message_attr_list
233 (p_wf_message_attr_vl_tbl IN wf_messages_vl_pub.wf_message_attr_vl_tbl_type,
234 p_effective_date IN DATE,
235 p_indent_level IN NUMBER);
236
237
238 /*===========================================================================
239 PROCEDURE NAME: draw_message_details
240
241 DESCRIPTION: Shows all of the details for a list of messages
242 along with any message attribute details for that
243 message that have been passed in. The listing is
244 shown as message detail and then corresponding
245 attributes and then another message and then its detail
246
247 When we find an attribute that matches
248 the current message, we copy that attribute and all
249 that follow for that message to a temp
250 list until we find a new message in the attribute
251 list. When this happens we write out the attributes
252 using the draw_message_attr_details function.
253
254
255 PARAMETERS:
256
257 p_wf_messages_vl_tbl IN
258 The pl*sql table with the detailed definition of
259 the messages for this item type
260
261 p_wf_message_attr_vl_tbl IN
262 The pl*sql table with the detailed definition of
263 the message attributes
264
265 p_indent_level IN
266 How many spaces would you like to indent this
267 listing from the left border of the screen.
268
269 ============================================================================*/
270 PROCEDURE draw_message_details
271 (p_wf_messages_vl_tbl IN wf_messages_vl_pub.wf_messages_vl_tbl_type,
272 p_wf_message_attr_vl_tbl IN wf_messages_vl_pub.wf_message_attr_vl_tbl_type,
273 p_indent_level IN NUMBER);
274
275 /*===========================================================================
276 PROCEDURE NAME: draw_message_attr_details
277
278 DESCRIPTION: Shows all of the details for a list of
279 message attributes for that have been passed
280 in.
281
282 PARAMETERS:
283
284
285 p_wf_message_attr_vl_tbl IN
286 The pl*sql table with the detailed definition of
287 the message attributes
288
289 p_indent_level IN
290 How many spaces would you like to indent this
291 listing from the left border of the screen.
292
293 ============================================================================*/
294 PROCEDURE draw_message_attr_details
295 (p_wf_message_attr_vl_tbl IN wf_messages_vl_pub.wf_message_attr_vl_tbl_type,
296 p_indent_level IN NUMBER);
297
298 END wf_messages_vl_pub;