Mercurial > public > html2wiki
comparison test/resources/sysman_handbook.html @ 2:5da2e67620f9
Upgrade to Ivy configuration and begin clean up of tests. Added FreeBSD license.
author | smith@nwoca.org |
---|---|
date | Tue, 25 Jan 2011 17:06:57 -0500 |
parents | |
children | 22ed6d93442c |
comparison
equal
deleted
inserted
replaced
1:b6e94d49a9a9 | 2:5da2e67620f9 |
---|---|
1 <html> | |
2 <a name="first_page"></a> | |
3 | |
4 <!-- This file created using DECdocument Version V3.3h on 25-JAN-2011 16:09:07.97 --> | |
5 <!-- TAG definitions version: V3.3h --> | |
6 <!-- The SDML doctype is: SOFTWARE.REFERENCE --> | |
7 <!-- The output destination was: HTML --> | |
8 <!-- SDML file is: NWB:[SMITH.DEV.SDML]OECN10_SYSMAN_HANDBOOK.SDML --> | |
9 | |
10 <body> | |
11 <head> | |
12 <title>Ohio Educational Computer Network System (OECN)</title> | |
13 <style> | |
14 A:hover {color: green} | |
15 A:active {color: red; background-color: white} | |
16 </style> | |
17 </head> | |
18 <h1 align="center">Ohio Educational Computer Network System (OECN)</h1> | |
19 <h1 align="center">System Manager Manual</h1> | |
20 As Developed by: Ohio Department of Education, State Software | |
21 Development Team | |
22 <p align=center> | |
23 <strong>Revision/Update Information: </strong> | |
24 May, 2001 | |
25 | |
26 <p> | |
27 <hr size=5> | |
28 <h4>Copyright ©1992, 1995 Ohio Department of Education</h4> | |
29 | |
30 <p> | |
31 Permission to reproduce this document is hereby granted, provided that | |
32 all such reproductions include all of this document (including this | |
33 copyright notice), and are not distributed for profit or resale. | |
34 <p> | |
35 <table border=5> | |
36 <tr> | |
37 <td width=120 align=center> | |
38 <a href="oecn10_sysman_handbook_full_contents.html"><font size=+2>Contents</font></a> | |
39 </td> | |
40 </tr> | |
41 </table> | |
42 <a name="post_contents"></a> | |
43 | |
44 <p> | |
45 <hr size=5> | |
46 <a name="menu_processor"><h1>Menu Processor Theory and Implementation</h1></a> | |
47 <br> | |
48 <br> | |
49 | |
50 <p> | |
51 This section contains 6 chapters which describe the OECN Menu Processor | |
52 for the system manager. It includes a complete description of the | |
53 theory and implementation of the menu processor on a VAX/VMS system. | |
54 The 6 chapters are: | |
55 | |
56 <p> | |
57 Introduction | |
58 <br> | |
59 Theory | |
60 <br> | |
61 Implementation | |
62 <br> | |
63 Invoking the Menu Processor | |
64 <br> | |
65 Modifying and Creating Menu Systems | |
66 <br> | |
67 Customizing Menus from the Distribution | |
68 | |
69 <p> | |
70 <hr size=5> | |
71 <a name="menu_intro"><h1>Chapter 1<br>Introduction</h1></a> | |
72 | |
73 <p> | |
74 The OECN Menu processor provides a flexible user menu interface to | |
75 State Software programs. It also can be used to create menus for DCL | |
76 commands, and other layered products. Menu definitions will be provided | |
77 for all state software programs. Individual A-sites will be able to add | |
78 customized menus to the default menu system provided. | |
79 | |
80 <a name="menu_features_head"><h1>1.1 Features</h1></a> | |
81 | |
82 <p> | |
83 The Menu processor provides the following features: | |
84 | |
85 <ul> | |
86 <li>User may access an item by its item number or label. | |
87 <li>Abbreviations are allowed on the current menu. | |
88 <li>Aliases are supplied for all items. The user may enter the label | |
89 name for any item on any menu in the current menu system. | |
90 <li>Help may be obtained for the current menu via the VMS Help utility. | |
91 <li>Users will only see the items on the menu that they are authorized | |
92 to access. | |
93 </ul> | |
94 | |
95 <p> | |
96 Features for the system manager: | |
97 | |
98 <ul> | |
99 <li>May be used for CAPTIVE user accounts. | |
100 <li>Menus or items may be easily added or removed. | |
101 <li>Access to items and menus may be controlled with the standard | |
102 OECN_xxxx VMS security identifiers. | |
103 <li>The OSA utility may be used to customize security. | |
104 <li>A menu system may consist of multiple menu files. This allows | |
105 individual A-sites to add custom menus without modifying the menus | |
106 included in the distribution. | |
107 <li>By default, does not spawn a subprocess when executing a command. | |
108 All commands execute in the current process. This prevents the | |
109 excessive overhead associated with repeatedly spawning subprocesses. | |
110 <li>Optionally, spawns most commands in a subprocess. Spawning commands | |
111 may increase response time for larger VAX processors. This may be | |
112 configured by the system manager. | |
113 <li>May be used from batch if the third parameter to the OECN_MENU | |
114 procedure is used. | |
115 <li>Optional timeout feature that automatically exits the menu system | |
116 if the user remains inactive for a specified period. | |
117 </ul> | |
118 | |
119 <p> | |
120 <hr size=5> | |
121 <a name="menu_theory"><h1>Chapter 2<br>Theory</h1></a> | |
122 | |
123 <p> | |
124 The basic theory behind the Menu processor is fairly simple. The menu | |
125 definitions are stored in an RMS indexed file. The menu definitions are | |
126 flexible enough to allow creation of menus containing any combination | |
127 of DCL commands, programs and information. | |
128 | |
129 <a name="menu_terms_head"><h1>2.1 Definition of Terms</h1></a> | |
130 | |
131 <p> | |
132 First, it will be helpful to define some terms that will be used | |
133 throughout the rest of this document. <p> | |
134 | |
135 <table border=3> | |
136 <caption><a name="menu_terms_tab"><strong>Table 2-1 Menu System Terms</strong></a></caption> | |
137 <tr> | |
138 <th align=center>Term </th> | |
139 <th align=center>Meaning </th> | |
140 </tr> | |
141 <tr> | |
142 <td> | |
143 Menu Processor | |
144 </td> | |
145 <td> | |
146 The program that the user runs to enter a menu system. | |
147 </td> | |
148 </tr> | |
149 <tr> | |
150 <td> | |
151 menu | |
152 </td> | |
153 <td> | |
154 A menu consists of the menu heading and the menu items on that menu. | |
155 </td> | |
156 </tr> | |
157 <tr> | |
158 <td> | |
159 menu name | |
160 </td> | |
161 <td> | |
162 The name of the menu as defined in the MENUEDT program. | |
163 </td> | |
164 </tr> | |
165 <tr> | |
166 <td> | |
167 menu item | |
168 </td> | |
169 <td> | |
170 An item on a menu. An item belongs to a specific menu and must have a | |
171 label that is unique throughout the menu system. | |
172 </td> | |
173 </tr> | |
174 <tr> | |
175 <td> | |
176 label | |
177 </td> | |
178 <td> | |
179 A label is the unique name for an item. It is defined in the MENUEDT | |
180 program and is the label the user will see on the actual menu. | |
181 </td> | |
182 </tr> | |
183 <tr> | |
184 <td> | |
185 menu file | |
186 </td> | |
187 <td> | |
188 A file created by MENUEDT that contains the menu definitions for one | |
189 for more menus. | |
190 </td> | |
191 </tr> | |
192 <tr> | |
193 <td> | |
194 menu system | |
195 </td> | |
196 <td> | |
197 A menu system is a collection of menus that the user has access to. | |
198 This is the | |
199 <strong>logical</strong> menu system as viewed by a specific user. A | |
200 system may consist of one or more physical menu files. | |
201 </td> | |
202 </tr> | |
203 <tr> | |
204 <td> | |
205 menu specification | |
206 </td> | |
207 <td> | |
208 A menu specification is the format for specifying a menu. The | |
209 specification may contain a file and/or a menu name. | |
210 </td> | |
211 </tr> | |
212 <tr> | |
213 <td> | |
214 alias | |
215 </td> | |
216 <td> | |
217 For each item in the menu system an alias is created. It has the same | |
218 name as the item's label. The alias is global to the entire menu | |
219 system, i.e., it crosses all menu file boundaries. The alias must be | |
220 unique within each menu system. | |
221 </td> | |
222 </tr> | |
223 </table> | |
224 | |
225 <a name="menu_files_theory"><h1>2.2 How Menu Files Create a Menu System</h1></a> | |
226 | |
227 <p> | |
228 <a href="oecn10_sysman_handbook_full.html#menu_system_fig">Figure 2-1</a> displays a graphical representation of a possible menu | |
229 system. | |
230 <a name="menu_system_fig"></a> | |
231 <p> | |
232 <strong>Figure 2-1 Conceptual View of a Menu system</strong> | |
233 <hr> | |
234 | |
235 <p> | |
236 <table border=0> | |
237 <tr> | |
238 <td> | |
239 <br> | |
240 <pre> | |
241 +-----------------------Menu-System-------------------+ | |
242 | +Menu-File+ | | |
243 | | | +-Alias-File-+| | |
244 | | +Menu+ | | || | |
245 | | | | | | || | |
246 | | +----+ | | || | |
247 | +----+----+ | || | |
248 | +-------+------------+ +------------+| | |
249 | +---Menu+File--+ +Menu+File-+ +-Secur-File-+| | |
250 | | +Menu+ | | | | || | |
251 | | | | | | +Menu+ | | || | |
252 | | +-+--+ | | | | | | || | |
253 | | +------+ | | +----+ | | || | |
254 | | +Menu+ +Menu+| +----+-----+ +------------+| | |
255 | | | | | || +----+------+ | | |
256 | | +----+ +-+--+| | | | | |
257 | | +------+ | +Menu+File+ +Menu+File+ | | |
258 | | +Menu+ +Menu+| | +Menu+ | | +Menu+ | | | |
259 | | | | | || | | | | | | | | | | |
260 | | +----+ +----+| | +----+ | | +----+ | | | |
261 | +--------------+ +---------+ +---------+ | | |
262 +-----------------------------------------------------+ | |
263 </pre> | |
264 </table> | |
265 | |
266 <p> | |
267 You can see from <a href="oecn10_sysman_handbook_full.html#menu_system_fig">Figure 2-1</a> that a menu system as seen by the user may | |
268 consist of multiple menu files, and a menu file may contain multiple | |
269 menus. This provides considerable flexibility for designing and | |
270 modifying a menu system. | |
271 | |
272 <p> | |
273 The menu system that is included with the distribution will have a | |
274 separate menu file for each OECN state software package. Additionally, | |
275 each major package will have a <strong>local</strong> menu. This local | |
276 menu will be in a separate menu file and left blank. You will be able | |
277 to customize this local menu without disturbing the other menus. | |
278 | |
279 <p> | |
280 A more detailed description of how to modify and create menus will | |
281 follow later in this document. The method used to customize local menus | |
282 will be discussed. | |
283 | |
284 <p> | |
285 Each menu system has one alias file. This file is used to find an | |
286 item's location if the user enters an alias. | |
287 | |
288 <p> | |
289 Also, the menu system may have one local security file. This file is | |
290 optional and created by the OSA utility. See the OECN Software Security | |
291 for VAX/VMS System Manager manual for more information about security | |
292 and the OSA utility. | |
293 | |
294 <a name="menu_specs_head"><h1>2.3 Menu Specifications</h1></a> | |
295 | |
296 <p> | |
297 Throughout this document there are references to <strong>menu | |
298 specifications</strong>. Wherever a menu specification is required the | |
299 following syntax is allowed: | |
300 <table border=0> | |
301 <tr> | |
302 <td> | |
303 <br> | |
304 <pre> | |
305 @menu_file\menu_name | |
306 </pre> | |
307 </td> | |
308 </tr> | |
309 </table> | |
310 <p> | |
311 | |
312 <table border=3> | |
313 <tr> | |
314 <th align=center>Parameter </th> | |
315 <th align=center>Meaning </th> | |
316 </tr> | |
317 <tr> | |
318 <td> | |
319 @menu_file | |
320 </td> | |
321 <td> | |
322 Name of a menu file that contains menu_name. If not specified then | |
323 menu_name is assumed to exist in the current menu file. | |
324 </td> | |
325 </tr> | |
326 <tr> | |
327 <td> | |
328 menu_name | |
329 </td> | |
330 <td> | |
331 A menu within either the specified menu file or the current menu file. | |
332 </td> | |
333 </tr> | |
334 </table> | |
335 | |
336 <p> | |
337 A valid menu specification contains one or both of these components. | |
338 | |
339 <p> | |
340 If a menu name is specified without a menu file then the menu is | |
341 assumed to exist in the current menu file. If there is no current menu | |
342 file then OECN$MENU is used. | |
343 | |
344 <p> | |
345 If a menu file is specified without a menu name then the default menu | |
346 of the menu file's header record is used. | |
347 | |
348 <p> | |
349 If both the menu file and menu name are specified they must be | |
350 separated by a backslash (\). | |
351 | |
352 <p> | |
353 Examples: | |
354 | |
355 <table border=3> | |
356 <tr> | |
357 <th align=center>Specification </th> | |
358 <th align=center>Result </th> | |
359 </tr> | |
360 <tr> | |
361 <td> | |
362 @BUD_MENU\USAS_PRC | |
363 </td> | |
364 <td> | |
365 Goes to the USAS_PRC menu of the BUD_MENU file. | |
366 </td> | |
367 </tr> | |
368 <tr> | |
369 <td> | |
370 @MAIN_MENU | |
371 </td> | |
372 <td> | |
373 Goes to the default menu of the MAIN_MENU file. | |
374 </td> | |
375 </tr> | |
376 <tr> | |
377 <td> | |
378 LOCAL | |
379 </td> | |
380 <td> | |
381 Goes to the LOCAL menu of the current file. | |
382 </td> | |
383 </tr> | |
384 </table> | |
385 | |
386 <a name="alias_file_head"><h1>2.4 The Alias File</h1></a> | |
387 | |
388 <p> | |
389 Each menu system may have exactly one <strong>alias file</strong>. An | |
390 alias file contains a record for each menu item in the menu system. | |
391 This alias record contains a pointer to the proper menu file that | |
392 contains the item. | |
393 | |
394 <p> | |
395 When the user enters a label name that is not on the current menu, the | |
396 alias file is checked for the label. If found then the item is located | |
397 in the appropriate menu file, and, assuming the user has access to the | |
398 item, it is executed. This allows the user to get to any item or menu | |
399 in the menu system without navigating through the intervening menus. | |
400 | |
401 <p> | |
402 The alias file is built automatically by the MENUUTL program. See | |
403 <a href="oecn10_sysman_handbook_full.html#build_alias_head">Section 5.2.1, Building the Alias File</a> for more information about creating the alias file. | |
404 | |
405 <a name="option_exec_sect"><h1>2.5 Option execution</h1></a> | |
406 | |
407 <p> | |
408 By default, the menu processor does <em>not</em> spawn subprocesses to | |
409 execute user options. All commands are executed in the user's current | |
410 process. This implies that menu processor image must exit and restart | |
411 (activate) after each option has completed. This is called | |
412 <strong>"terminate and execute"</strong> mode. This mode may provided | |
413 optimal response time for smaller VAX processors, particularly machines | |
414 with small memory configurations. | |
415 | |
416 <a name="heading_2.5.1"><h2>2.5.1 Spawning Options</h2></a> | |
417 | |
418 <p> | |
419 Another mode that may be chosen by the system manager is "spawn and | |
420 execute". In this mode, <em>most</em> commands are executed in a | |
421 subprocess. The menu processor remains running in the main process and | |
422 does not terminate. Spawning options may reduce response time for | |
423 larger VAX machines with excess physical memory. | |
424 | |
425 <p> | |
426 No firm guidelines can be provided to suggest which mode will provide | |
427 optimal response time and resource utilization for a given system. | |
428 Response time in both modes is determined by machine size, available | |
429 memory, tuning, typical load on the system, etc. Trial and error under | |
430 a typical work load is the only way to determine the best mode. If the | |
431 time required to spawn a process is less than the time required to | |
432 activate the menu image, then spawning is preferable. | |
433 | |
434 <p> | |
435 To implement menu option spawning the system manager must be aware of | |
436 the following: | |
437 | |
438 <ol start=1 > | |
439 <li>Users must have a PRCLM Authorize quota of at least 1. If the user | |
440 executes programs that also spawn processes (e.g., TPU/EVE, WPS) they | |
441 may need a higher PRCLM quota. | |
442 <li>Other user quotas also may need to be increased in order for the | |
443 main and subprocess to have access to sufficient resources. | |
444 <li>BALCSETCNT (balance set count) in SYSGEN must be large enough to | |
445 handle the addition processes. | |
446 <li>Some types of options must be executed in the main process (see | |
447 below). | |
448 </ol> | |
449 | |
450 <p> | |
451 Prior to implementing spawning you must carefully consider whether any | |
452 custom menu files contain any options that fall under #4 above. The | |
453 subprocess that is created by the menu processor is temporary (i.e., | |
454 the subprocess logs out as soon as the option has completed). This | |
455 means that any commands performed in the subprocess will not be | |
456 permanent. If you have options that change user logicals, create | |
457 processes, etc. or anything that must affect both the main process and | |
458 the subprocess, you must modify your custom menu files. | |
459 | |
460 <p> | |
461 The MENUEDT program will allow you to define an item type "DP" (DCL | |
462 command in Parent). These types of items will always be executed in the | |
463 main process using "terminate and execute". These means that any | |
464 commands executed in this way will affect both the main process and | |
465 subprocess. These types of items should be used sparingly and will | |
466 seldom be necessary. The only item in the menu files distributed by | |
467 SSDT that need the "DP" item type was the DETPRT option of the LOCAL | |
468 menu. All other SSDT menu items may be executed in a subprocess. | |
469 | |
470 <a name="heading_2.5.2"><h2>2.5.2 Selecting Execution Mode</h2></a> | |
471 | |
472 <p> | |
473 To select either "terminate and execute" or "spawn and execute" mode, | |
474 the system manager needs only define a single logical. The logical name | |
475 is OECN$MENU_BEHAVIOR and may be defined in the SYSTARTUP procedure. | |
476 The valid values are: TERMINATE or SPAWN. For example, if you want to | |
477 use "spawn and execute", add the following line the SYSTARTUP procedure: | |
478 | |
479 <p> | |
480 <table border=0> | |
481 <tr> | |
482 <td> | |
483 <br> | |
484 <pre> | |
485 $ DEFINE/SYSTEM OECN$MENU_BEHAVIOR "SPAWN" | |
486 </pre> | |
487 </table> | |
488 | |
489 <p> | |
490 This logical also can be defined at the group or process level. If the | |
491 logical is not defined, the default is "TERMINATE". | |
492 | |
493 <a name="timeout_head"><h1>2.6 Inactivity Timeout</h1></a> | |
494 | |
495 <p> | |
496 The menu processor has an optional feature that will cause it to | |
497 automatically exit if the user does not enter a command after a | |
498 specified period of time. This might be a useful security feature for | |
499 user users who remain idle in the menu for long periods of time or | |
500 forget to logout. | |
501 | |
502 <p> | |
503 The system manager may add a command to the OECN$MENU_BEHAVIOR logical | |
504 that will enable the timeout feature. The following syntax may be used: | |
505 | |
506 <p> | |
507 <table border=0> | |
508 <tr> | |
509 <td> | |
510 <br> | |
511 <pre> | |
512 $ DEFINE/SYSTEM OECN$MENU_BEHAVIOR "TIMEOUT=n" | |
513 </pre> | |
514 </table> | |
515 | |
516 <p> | |
517 Where <em>n</em> is the number minutes to wait with no activity. After | |
518 the timeout period expires without any options being entered, the menu | |
519 processor will exit automatically. | |
520 | |
521 <p> | |
522 <center> | |
523 <table border=0 width=75%> | |
524 <tr> | |
525 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
526 size=1 noshade> | |
527 The menu processor simply exits the menu and returns to DCL it does not | |
528 log the user off the system. It is up to the local captive login | |
529 procedure or other mechanism to log the user off. </td> | |
530 </tr> | |
531 </table> | |
532 </center> | |
533 | |
534 <p> | |
535 <hr size=5> | |
536 <a name="menu_implentation_chap"><h1>Chapter 3<br>Implementation</h1></a> | |
537 | |
538 <p> | |
539 Several steps are required in order to implement the Menu Processor on | |
540 your system. The steps are briefly outlined below, detailed | |
541 explanations follow: | |
542 | |
543 <ol start=1 > | |
544 <li> Install the OECN, MENU and HELP distribution packages with | |
545 OECN_INSTALL. | |
546 <li> Establish the necessary OECN logicals. | |
547 <li> Move the menu files and VMS Help libraries from the distribution | |
548 directories to the appropriate directories on your system. | |
549 <li> Create the OECN_MENU symbol. | |
550 <li> Use the VMS Install utility to make the Menu Processor a known, | |
551 shared image. | |
552 </ol> | |
553 | |
554 <a name="installation_head"><h1>3.1 Installation</h1></a> | |
555 | |
556 <p> | |
557 The Menu Processor uses files from the OECN, MENU and HELP packages. | |
558 Install these packages as usual using OECN_INSTALL. For further | |
559 information about OECN_INSTALL see OECN_INSTALL.DOC in the VAX manager | |
560 documentation directory. | |
561 | |
562 <a name="logicals_head"><h1>3.2 Establish OECN Logicals</h1></a> | |
563 | |
564 <p> | |
565 Several logicals are used by the Menu Processor to locate the menu | |
566 files and VMS Help libraries. <p> | |
567 | |
568 <table border=3> | |
569 <caption><a name="logicals_tab"><strong>Table 3-1 Menu Logicals</strong></a></caption> | |
570 <tr> | |
571 <th align=center>Logical </th> | |
572 <th align=center>Purpose </th> | |
573 </tr> | |
574 <tr> | |
575 <td> | |
576 OECN$MENU$FILES | |
577 <sup>1</sup> | |
578 </td> | |
579 <td> | |
580 Device and directory where the menu files are located. | |
581 </td> | |
582 </tr> | |
583 <tr> | |
584 <td> | |
585 OECN$MENU | |
586 <sup>2</sup> | |
587 </td> | |
588 <td> | |
589 Default menu file if none is specified by the user when the Menu | |
590 Processor is invoked. | |
591 </td> | |
592 </tr> | |
593 <tr> | |
594 <td> | |
595 OECN$ALIAS | |
596 <sup>2</sup> | |
597 </td> | |
598 <td> | |
599 Default alias file that is used if none is specified when the Menu | |
600 Processor is invoked. | |
601 </td> | |
602 </tr> | |
603 <tr> | |
604 <td> | |
605 OECN$SECUR | |
606 </td> | |
607 <td> | |
608 Local security file. Optional. Created by OSA utility to define local | |
609 security. | |
610 </td> | |
611 </tr> | |
612 <tr> | |
613 <td> | |
614 OECN$HELP | |
615 <sup>1</sup> | |
616 </td> | |
617 <td> | |
618 Device and directory where the VMS Help libraries are located. | |
619 </td> | |
620 </tr> | |
621 <tr> | |
622 <td> | |
623 OECN$MENU_HELP | |
624 <sup>2</sup> | |
625 </td> | |
626 <td> | |
627 Default menu help library. Used when the user presses | |
628 <kbd>[PF2]</kbd> or ?. | |
629 </td> | |
630 </tr> | |
631 <tr> | |
632 <td> | |
633 OECN_MENU_PROMPT | |
634 </td> | |
635 <td> | |
636 Default prompt to be used in the Menu Processor. Optional. May be | |
637 overridden by the user with a SET PROMPT command. | |
638 </td> | |
639 </tr> | |
640 <tr> | |
641 <td> | |
642 OECN_MENU_MODE | |
643 </td> | |
644 <td> | |
645 Default mode. Optional. May contain the "MENU" or "COMMAND". May be | |
646 overridden by the user with a SET MODE command. | |
647 </td> | |
648 </tr> | |
649 <tr> | |
650 <td> | |
651 OECN$MENU_BEHAVIOR | |
652 </td> | |
653 <td> | |
654 Optional logical that may contain commands to control how the menu | |
655 processor behaves at run-time. This logical is defined by the system | |
656 manager. See <a href="oecn10_sysman_handbook_full.html#behavior_logical">3.2.1</a>. | |
657 </td> | |
658 </tr> | |
659 </table> | |
660 <hr> | |
661 <sup>2</sup> Defined by the OECN_STARTUP procedure. | |
662 <br> | |
663 <sup>1</sup>May be defined as a search list. | |
664 <br> | |
665 <hr> | |
666 | |
667 <p> | |
668 OECN$MENU$FILES and OECN$HELP must be defined in either the SYSTARTUP | |
669 or individual LOGIN.COM files. These logicals may be defined at the | |
670 system, group or process level. For example, the OECN$MENU logical may | |
671 be defined for each user to provide a different default menu. | |
672 | |
673 <a name="behavior_logical"><h2>3.2.1 Specifying options with OECN$MENU_BEHAVIOR logical</h2></a> | |
674 | |
675 <p> | |
676 This section describes the commands that may be placed in the | |
677 OECN$BEHAVIOR logical. The syntax for the logical definition is: | |
678 | |
679 <p> | |
680 <table border=0> | |
681 <tr> | |
682 <td> | |
683 <br> | |
684 <pre> | |
685 $ DEFINE/SYSTEM OECN$MENU_BEHAVIOR "command[,command]..." | |
686 </pre> | |
687 </table> | |
688 | |
689 <p> | |
690 Where <em>[command]</em> is one of the commands in the following table. | |
691 The command(s) must be enclosed in quotes and be in uppercase. When | |
692 multiple commands are specified they must be separated by commas (,). | |
693 This logical can be defined at the system, group, job or process level. | |
694 <p> | |
695 | |
696 <table border=3> | |
697 <caption><a name="Table_3-2"><strong>Table 3-2 Behavior Options</strong></a></caption> | |
698 <tr> | |
699 <th align=center>Command </th> | |
700 <th align=center>Description </th> | |
701 </tr> | |
702 <tr> | |
703 <td> | |
704 TERMINATE | |
705 </td> | |
706 <td> | |
707 Causes the processor to use the " terminate and execute " | |
708 method for executing options. This is the default behavior. | |
709 </td> | |
710 </tr> | |
711 <tr> | |
712 <td> | |
713 SPAWN | |
714 </td> | |
715 <td> | |
716 Causes the processor to spawn all DCL and Program type action items in | |
717 a subprocess. | |
718 </td> | |
719 </tr> | |
720 <tr> | |
721 <td> | |
722 TIMEOUT=n | |
723 </td> | |
724 <td> | |
725 Sets the inactivity timeout interval to n minutes. | |
726 </td> | |
727 </tr> | |
728 <tr> | |
729 <td> | |
730 NOTIMEOUT | |
731 </td> | |
732 <td> | |
733 Disables inactivity timeout. This is the default behavior. | |
734 </td> | |
735 </tr> | |
736 </table> | |
737 | |
738 <p> | |
739 For example, to specify the spawn option and a timeout of 30 minutes | |
740 use the following command: | |
741 | |
742 <p> | |
743 <table border=0> | |
744 <tr> | |
745 <td> | |
746 <br> | |
747 <pre> | |
748 $ DEFINE/SYSTEM OECN$MENU_BEHAVIOR "SPAWN,TIMEOUT=30" | |
749 </pre> | |
750 </table> | |
751 | |
752 <a name="move_files_head"><h1>3.3 Move Files to Appropriate Directories</h1></a> | |
753 | |
754 <p> | |
755 Move the menu files (OECN$ROOT:[MENU.DIST]*.DAT) to the directory | |
756 referenced by OECN$MENU$FILES. | |
757 | |
758 <p> | |
759 Move the VMS Help libraries from the HELP package distribution | |
760 directory to the directory referenced by OECN$HELP. | |
761 | |
762 <p> | |
763 The users of the Menu Processor must have read access to the above | |
764 files. | |
765 | |
766 <p> | |
767 Also move the following files to the OECN$ directory: | |
768 | |
769 <blockquote> | |
770 OECN$ROOT:[OECN.V1P0.DIST]MENU.EXE | |
771 <br>OECN$ROOT:[OECN.V1P0.DIST]OECN_MENU.COM | |
772 </blockquote> | |
773 | |
774 <p> | |
775 The users must have execute access to these files. | |
776 | |
777 <a name="add_symbol_head"><h1>3.4 Add Global Symbol</h1></a> | |
778 | |
779 <p> | |
780 Add the following symbol to either your SYLOGIN.COM or each user's | |
781 LOGIN.COM who will be using the system: | |
782 | |
783 <p> | |
784 <table border=0> | |
785 <tr> | |
786 <td> | |
787 <br> | |
788 <pre> | |
789 $ OECN_MENU :== $OECN$:MENU | |
790 </pre> | |
791 </table> | |
792 | |
793 <p> | |
794 This creates a foreign command that the OECN_MENU.COM procedure uses to | |
795 invoke the Menu Processor. Other symbols may be necessary to make it | |
796 easier for your users to invoke a menu. These symbols will be discussed | |
797 in the <a href="oecn10_sysman_handbook_full.html#invoking_chap">Chapter 4, Invoking the Menu Processor</a>. The OECN_MENU symbol is the only required symbol. | |
798 | |
799 <a name="install_head"><h1>3.5 Install the Menu Processor</h1></a> | |
800 | |
801 <p> | |
802 Although it is not necessary for proper execution of the Menu | |
803 Processor, it is <strong>strongly</strong> recommended that you install | |
804 the Menu Processor as a known image. | |
805 | |
806 <p> | |
807 Because the Menu Processor does not spawn a subprocess it must be | |
808 reactivated after each time the user selects a menu item. If the image | |
809 is not installed, image activation will cause a noticeable delay in the | |
810 Menu Processor. | |
811 | |
812 <p> | |
813 The recommended method of installing the image is to add the following | |
814 commands to your SYSTARTUP.COM: | |
815 | |
816 <p> | |
817 <table border=0> | |
818 <tr> | |
819 <td> | |
820 <br> | |
821 <pre> | |
822 $ INSTALL :== $INSTALL/COMMAND_MODE | |
823 $ INSTALL ADD OECN$:MENU.EXE/OPEN/SHARED/HEADER | |
824 </pre> | |
825 </table> | |
826 | |
827 <p> | |
828 <hr size=5> | |
829 <a name="invoking_chap"><h1>Chapter 4<br>Invoking the Menu Processor</h1></a> | |
830 | |
831 <p> | |
832 The Menu Processor must be invoked via a command procedure that is | |
833 provided as part of the OECN package. The Menu Processor depends on | |
834 this command procedure to perform several vital functions and to | |
835 actually execute any items selected by the user. Absolutely nothing | |
836 useful will happen if the Menu Processor is invoked directly. | |
837 | |
838 <p> | |
839 Additionally, the Menu Processor is invoked by the command procedure | |
840 with a foreign command. Therefore the following symbol definition is | |
841 required. See <a href="oecn10_sysman_handbook_full.html#add_symbol_head">Section 3.4, Add Global Symbol</a>. | |
842 | |
843 <p> | |
844 <table border=0> | |
845 <tr> | |
846 <td> | |
847 <br> | |
848 <pre> | |
849 $ OECN_MENU == "$OECN:MENU" | |
850 </pre> | |
851 </table> | |
852 | |
853 <p> | |
854 To invoke the menu processor the following command must be used: | |
855 | |
856 <p> | |
857 <table border=0> | |
858 <tr> | |
859 <td> | |
860 <br> | |
861 <pre> | |
862 $ @OECN$:OECN_MENU [menu spec] [alias file] [menu_option] | |
863 </pre> | |
864 </table> | |
865 | |
866 <p> | |
867 The OECN_MENU.COM command procedure is provided with the distribution | |
868 and must be used to invoke the menu processor. | |
869 | |
870 <p> | |
871 The first parameter is an optional menu specification that specifies | |
872 the default menu file and menu to be used. If the menu specification is | |
873 not supplied then OECN$MENU is used by default. See <a href="oecn10_sysman_handbook_full.html#menu_specs_head">Section 2.3, Menu Specifications</a> for | |
874 more information about menu specifications. | |
875 | |
876 <p> | |
877 The second optional parameter is the alias file for the menu system | |
878 being invoked. If not specified then OECN$ALIAS is used by default. | |
879 | |
880 <p> | |
881 The third optional parameter is a menu command, option or alias to be | |
882 executed. If this parameter is specified then the menu processor will | |
883 execute the option and return to DCL, the user will | |
884 <strong>not</strong> be left in the menus after the option has finished | |
885 executing. This could be used as a replacement for the DCL RUN command, | |
886 particularly for batch procedures. This would insure that batch | |
887 procedures do the same security checking as interactive processes. | |
888 | |
889 <p> | |
890 <center> | |
891 <table border=0 width=75%> | |
892 <tr> | |
893 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
894 size=1 noshade> | |
895 The menu processor will operate properly in batch only if the third | |
896 parameter is supplied. If the parameter is not specified the menu | |
897 processor will not function in batch. </td> | |
898 </tr> | |
899 </table> | |
900 </center> | |
901 | |
902 <p> | |
903 This command may be defined in a global symbol, invoked from a captive | |
904 login procedure or from inside another procedure. No restrictions are | |
905 placed on the method of invoking the Menu Processor. | |
906 | |
907 <a name="invoke_example_head"><h1>4.1 Examples</h1></a> | |
908 | |
909 <p> | |
910 For most users the following symbol definition is sufficient: | |
911 | |
912 <p> | |
913 <table border=0> | |
914 <tr> | |
915 <td> | |
916 <br> | |
917 <pre> | |
918 $ MENU == "@OECN$:OECN_MENU" | |
919 </pre> | |
920 </table> | |
921 | |
922 <p> | |
923 This will invoke the Menu Processor with the default menu and alias | |
924 file. This will normally, unless changed by you, be the MAIN_MENU file, | |
925 which contains menu items for all state software packages. | |
926 | |
927 <p> | |
928 If users will be using the third parameter (or it will be used from | |
929 batch) then the following symbol might be used: | |
930 | |
931 <p> | |
932 <table border=0> | |
933 <tr> | |
934 <td> | |
935 <br> | |
936 <pre> | |
937 $ MENU == "OECN$:OECN_MENU """" """" " | |
938 </pre> | |
939 </table> | |
940 | |
941 <p> | |
942 This will leave the first two parameters as null (accepting the default | |
943 menu and alias files) and allow the third parameter to be specified | |
944 after the MENU symbol. | |
945 | |
946 <p> | |
947 As another possibility, suppose that you have a payroll user that would | |
948 rather be started out in the USPS menu. In this case put this symbol in | |
949 that user's LOGIN procedure: | |
950 | |
951 <p> | |
952 <table border=0> | |
953 <tr> | |
954 <td> | |
955 <br> | |
956 <pre> | |
957 $ MENU == "@OECN$:OECN_MENU @PAY_MENU" | |
958 </pre> | |
959 </table> | |
960 | |
961 <p> | |
962 This will put the user in the PAY_MENU directly. Note that this does | |
963 not restrict the user to the PAY_MENU, it just starts them out in that | |
964 menu. | |
965 | |
966 <p> | |
967 <hr size=5> | |
968 <a name="modifying_menus_chap"><h1>Chapter 5<br>Modifying and Creating Menu Systems</h1></a> | |
969 | |
970 <p> | |
971 The MENUEDT program is a fully functional maintenance program for | |
972 modifying and creating menu files. Another program, MENUUTL, provides | |
973 several necessary and useful utilities when manipulating the files, | |
974 such as building the alias file and reporting functions. <p> | |
975 | |
976 <table border=3> | |
977 <caption><a name="menu_type_tab"><strong>Table 5-1 Menu Record Types</strong></a></caption> | |
978 <tr> | |
979 <th align=center>Record Type </th> | |
980 <th align=center>Function </th> | |
981 </tr> | |
982 <tr> | |
983 <td> | |
984 File Header Record | |
985 </td> | |
986 <td> | |
987 Contains information about the entire menu file. There is only one file | |
988 header record per file. | |
989 </td> | |
990 </tr> | |
991 <tr> | |
992 <td> | |
993 Menu Header Record | |
994 </td> | |
995 <td> | |
996 Contains information specific to one menu. There is no structural or | |
997 logical limit to the number of menus that may exist in a menu file. | |
998 </td> | |
999 </tr> | |
1000 <tr> | |
1001 <td> | |
1002 Item Record | |
1003 </td> | |
1004 <td> | |
1005 Contains the actual item that appears on a menu. Each item record | |
1006 belongs to one and only one menu. The number of items is limited by the | |
1007 Menu Processor to 50 items (about 4 screens). | |
1008 </td> | |
1009 </tr> | |
1010 </table> | |
1011 | |
1012 <p> | |
1013 The menu files and records form a <em>loose</em> hierarchy. That is, | |
1014 the hierarchy is created by the person developing the menu system. The | |
1015 hierarchy is not enforced by the MENUEDT program or even the Menu | |
1016 Processor. The menus can be connected in an almost limitless number of | |
1017 combinations. It is impossible for the MENUEDT program to know exactly | |
1018 what the runtime environment will be for the menu file. Thus, very | |
1019 little error checking is performed or even attempted. This means that | |
1020 menus that you modify or create should be tested thoroughly before | |
1021 being made available to your users. | |
1022 | |
1023 <a name="using_edt_head"><h1>5.1 Using MENUEDT</h1></a> | |
1024 | |
1025 <p> | |
1026 When you first run the MENUEDT program it will prompt you for the name | |
1027 of the menu file to modify. If the file does not exist it will be | |
1028 created. <p> | |
1029 | |
1030 <table border=3> | |
1031 <caption><a name="edt_options_tab"><strong>Table 5-2 MENUEDT Main Menu Options</strong></a></caption> | |
1032 <tr> | |
1033 <th align=center>Option </th> | |
1034 <th align=center>Function </th> | |
1035 </tr> | |
1036 <tr> | |
1037 <td> | |
1038 Add | |
1039 </td> | |
1040 <td> | |
1041 Adds new records of any type. | |
1042 </td> | |
1043 </tr> | |
1044 <tr> | |
1045 <td> | |
1046 Change | |
1047 </td> | |
1048 <td> | |
1049 Enters change mode for the current record. | |
1050 </td> | |
1051 </tr> | |
1052 <tr> | |
1053 <td> | |
1054 Delete | |
1055 </td> | |
1056 <td> | |
1057 Deletes the current record. | |
1058 </td> | |
1059 </tr> | |
1060 <tr> | |
1061 <td> | |
1062 Top | |
1063 </td> | |
1064 <td> | |
1065 Goes to top of file (File header record). | |
1066 </td> | |
1067 </tr> | |
1068 <tr> | |
1069 <td> | |
1070 Find | |
1071 </td> | |
1072 <td> | |
1073 Finds a record by menu or item name. | |
1074 </td> | |
1075 </tr> | |
1076 <tr> | |
1077 <td> | |
1078 Next | |
1079 </td> | |
1080 <td> | |
1081 Goes to the next record. | |
1082 </td> | |
1083 </tr> | |
1084 <tr> | |
1085 <td> | |
1086 Simulate | |
1087 </td> | |
1088 <td> | |
1089 Simulates how the menu will look to the user. The simulation is | |
1090 approximate since the MENUEDT upper window is smaller than in the Menu | |
1091 Processor. | |
1092 </td> | |
1093 </tr> | |
1094 <tr> | |
1095 <td> | |
1096 Open | |
1097 </td> | |
1098 <td> | |
1099 Closes the current menu file and prompts for a new menu file to open. | |
1100 </td> | |
1101 </tr> | |
1102 <tr> | |
1103 <td> | |
1104 Exit | |
1105 </td> | |
1106 <td> | |
1107 Exits MENUEDT. | |
1108 </td> | |
1109 </tr> | |
1110 </table> | |
1111 | |
1112 <a name="menu_type_head"><h2>5.1.1 Menu File Record Types</h2></a> | |
1113 | |
1114 <p> | |
1115 This section and the following sections show sample screens that are | |
1116 used by MENUEDT to modify the various record types. After each screen | |
1117 is a detailed explanation of each field and its purpose. | |
1118 | |
1119 <a name="file_header_head"><h2>5.1.2 File Header Record</h2></a> | |
1120 | |
1121 <p> | |
1122 The first record in each menu file must be a File Header record and | |
1123 each file must contain exactly one Header record. | |
1124 | |
1125 <p> | |
1126 <table border=0> | |
1127 <tr> | |
1128 <td> | |
1129 <br> | |
1130 <pre> | |
1131 | |
1132 Menu File Header Record: | |
1133 | |
1134 1. Desc: | |
1135 2. Default menu: | |
1136 3. Modify default security identifiers | |
1137 | |
1138 </pre> | |
1139 </table> | |
1140 | |
1141 <p> | |
1142 | |
1143 <table border=3> | |
1144 <caption><a name="file_header_fld_tab"><strong>Table 5-3 File Header Record Fields</strong></a></caption> | |
1145 <tr> | |
1146 <th align=center>Field </th> | |
1147 <th align=center>Description </th> | |
1148 </tr> | |
1149 <tr> | |
1150 <td> | |
1151 Desc | |
1152 </td> | |
1153 <td> | |
1154 This description is used in the heading for all menus in this file. | |
1155 </td> | |
1156 </tr> | |
1157 <tr> | |
1158 <td> | |
1159 Default Menu | |
1160 </td> | |
1161 <td> | |
1162 Is the default menu for this file if the user does not specify a menu | |
1163 when the file is invoked. This menu will normally be the top-level menu | |
1164 for this file. | |
1165 </td> | |
1166 </tr> | |
1167 <tr> | |
1168 <td> | |
1169 Modify default security identifiers | |
1170 </td> | |
1171 <td> | |
1172 Enters the | |
1173 <em>Security Id Maintenance</em> screen to allow default security | |
1174 identifiers to be placed on the menu file. See <a href="oecn10_sysman_handbook_full.html#secur_id_screen_head">Section 5.1.5</a> for more | |
1175 information about security identifiers. | |
1176 </td> | |
1177 </tr> | |
1178 </table> | |
1179 | |
1180 <a name="menu_header_head"><h2>5.1.3 Menu Header Record</h2></a> | |
1181 | |
1182 <p> | |
1183 The Menu Header record contains information about each menu in the | |
1184 file. There must be exactly one Header record for each menu contained | |
1185 in the file. | |
1186 | |
1187 <p> | |
1188 <table border=0> | |
1189 <tr> | |
1190 <td> | |
1191 <br> | |
1192 <pre> | |
1193 | |
1194 Menu header record: | |
1195 | |
1196 1. Menu Name : | |
1197 2. Description : | |
1198 3. Heading Type: | |
1199 4. Help file : | |
1200 5. Help topic : | |
1201 6. Parent Menu : | |
1202 7. Modify Security Identifiers | |
1203 | |
1204 </pre> | |
1205 </table> | |
1206 | |
1207 <p> | |
1208 | |
1209 <table border=3> | |
1210 <caption><a name="menu_header_fld_tab"><strong>Table 5-4 Menu Header Fields</strong></a></caption> | |
1211 <tr> | |
1212 <th align=center>field </th> | |
1213 <th align=center>Description </th> | |
1214 </tr> | |
1215 <tr> | |
1216 <td> | |
1217 Menu Name | |
1218 </td> | |
1219 <td> | |
1220 Name of the menu. This is the name that will be displayed in the menu | |
1221 heading. | |
1222 </td> | |
1223 </tr> | |
1224 <tr> | |
1225 <td> | |
1226 Description | |
1227 </td> | |
1228 <td> | |
1229 This description is used in the heading for this menu. | |
1230 </td> | |
1231 </tr> | |
1232 <tr> | |
1233 <td> | |
1234 Heading Type | |
1235 </td> | |
1236 <td> | |
1237 Indicates what type of menu heading to use for this menu. | |
1238 <table border=3> | |
1239 <tr> | |
1240 <td> | |
1241 A | |
1242 </td> | |
1243 <td> | |
1244 Heading contains both the file description and the menu description. | |
1245 </td> | |
1246 </tr> | |
1247 <tr> | |
1248 <td> | |
1249 B | |
1250 </td> | |
1251 <td> | |
1252 Heading contains only the menu heading description. | |
1253 </td> | |
1254 </tr> | |
1255 </table> | |
1256 </td> | |
1257 </tr> | |
1258 <tr> | |
1259 <td> | |
1260 Help File | |
1261 </td> | |
1262 <td> | |
1263 The VMS Help file that will be used if the user enters HELP at this | |
1264 menu. | |
1265 </td> | |
1266 </tr> | |
1267 <tr> | |
1268 <td> | |
1269 Help topic | |
1270 </td> | |
1271 <td> | |
1272 The initial topic string used when the user enters HELP. | |
1273 </td> | |
1274 </tr> | |
1275 <tr> | |
1276 <td> | |
1277 Parent Menu | |
1278 </td> | |
1279 <td> | |
1280 Must contain the parent menu specification for this menu. This is the | |
1281 menu that the user will return to when they enter /EXIT or ^. If this | |
1282 field is blank then the menu is assumed to be the top level menu of the | |
1283 menu system. | |
1284 </td> | |
1285 </tr> | |
1286 <tr> | |
1287 <td> | |
1288 Modify security identifiers | |
1289 </td> | |
1290 <td> | |
1291 Enters the | |
1292 <em>Security Id Maintenance</em> screen to allow security identifiers | |
1293 to be placed on the menu. See <a href="oecn10_sysman_handbook_full.html#secur_id_screen_head">Section 5.1.5</a> more information about | |
1294 security identifiers. | |
1295 </td> | |
1296 </tr> | |
1297 </table> | |
1298 | |
1299 <a name="menu_item_head"><h2>5.1.4 Menu Item Record</h2></a> | |
1300 | |
1301 <p> | |
1302 One menu item record must be specified for each desired item on a menu. | |
1303 A menu can contain a maximum of 50 item records. If there are less than | |
1304 8 items then the menu will be double spaced, otherwise the menu will be | |
1305 single spaced. If there are more items than will fit on one screen then | |
1306 the menu will be divided into multiple screens. | |
1307 | |
1308 <p> | |
1309 An item may be of one of four types, the value and meaning of the | |
1310 Action field is determined by the Item Type field. The four possible | |
1311 types and the meaning of the Action field are defined in <a href="oecn10_sysman_handbook_full.html#item_types_tab">Table 5-5</a>. | |
1312 <p> | |
1313 | |
1314 <table border=3> | |
1315 <caption><a name="item_types_tab"><strong>Table 5-5 Menu Item Types</strong></a></caption> | |
1316 <tr> | |
1317 <th align=center>Item Type </th> | |
1318 <th align=center>Interpretation of Action Field </th> | |
1319 </tr> | |
1320 <tr> | |
1321 <td> | |
1322 D | |
1323 </td> | |
1324 <td> | |
1325 DCL command to execute | |
1326 </td> | |
1327 </tr> | |
1328 <tr> | |
1329 <td> | |
1330 DP | |
1331 </td> | |
1332 <td> | |
1333 DCL command to execute in Parent process | |
1334 </td> | |
1335 </tr> | |
1336 <tr> | |
1337 <td> | |
1338 P | |
1339 </td> | |
1340 <td> | |
1341 Program filespec to execute | |
1342 </td> | |
1343 </tr> | |
1344 <tr> | |
1345 <td> | |
1346 M | |
1347 </td> | |
1348 <td> | |
1349 Menu specification | |
1350 </td> | |
1351 </tr> | |
1352 <tr> | |
1353 <td> | |
1354 T | |
1355 </td> | |
1356 <td> | |
1357 Ignored | |
1358 </td> | |
1359 </tr> | |
1360 </table> | |
1361 | |
1362 <p> | |
1363 <table border=0> | |
1364 <tr> | |
1365 <td> | |
1366 <br> | |
1367 <pre> | |
1368 | |
1369 Menu Item record: | |
1370 | |
1371 1. Menu Name: | |
1372 2. Label : | |
1373 3. Desc : | |
1374 4. Item Type: | |
1375 5. Action : | |
1376 | |
1377 6. Item order#: | |
1378 7. Modify Security Identifiers | |
1379 | |
1380 </pre> | |
1381 </table> | |
1382 | |
1383 <p> | |
1384 | |
1385 <table border=3> | |
1386 <caption><a name="menu_item_tab"><strong>Table 5-6 Menu Item Fields</strong></a></caption> | |
1387 <tr> | |
1388 <th align=center>Field </th> | |
1389 <th align=center>Description </th> | |
1390 </tr> | |
1391 <tr> | |
1392 <td> | |
1393 Menu Name | |
1394 <sup>1</sup> | |
1395 </td> | |
1396 <td> | |
1397 Name of the menu that this item belongs to. | |
1398 </td> | |
1399 </tr> | |
1400 <tr> | |
1401 <td> | |
1402 Label | |
1403 <sup>1</sup> | |
1404 </td> | |
1405 <td> | |
1406 Label of this item that the user will use to reference this item. | |
1407 </td> | |
1408 </tr> | |
1409 <tr> | |
1410 <td> | |
1411 Desc | |
1412 </td> | |
1413 <td> | |
1414 Description displayed for this item. | |
1415 </td> | |
1416 </tr> | |
1417 <tr> | |
1418 <td> | |
1419 Item Type | |
1420 </td> | |
1421 <td> | |
1422 Indicates what type of item this is: | |
1423 <table border=3> | |
1424 <tr> | |
1425 <td> | |
1426 D | |
1427 </td> | |
1428 <td> | |
1429 DCL command | |
1430 </td> | |
1431 </tr> | |
1432 <tr> | |
1433 <td> | |
1434 DP | |
1435 </td> | |
1436 <td> | |
1437 DCL in Parent process | |
1438 </td> | |
1439 </tr> | |
1440 <tr> | |
1441 <td> | |
1442 P | |
1443 </td> | |
1444 <td> | |
1445 Program to be executed | |
1446 </td> | |
1447 </tr> | |
1448 <tr> | |
1449 <td> | |
1450 M | |
1451 </td> | |
1452 <td> | |
1453 Menu item | |
1454 </td> | |
1455 </tr> | |
1456 <tr> | |
1457 <td> | |
1458 T | |
1459 </td> | |
1460 <td> | |
1461 Text Item | |
1462 </td> | |
1463 </tr> | |
1464 </table> | |
1465 </td> | |
1466 </tr> | |
1467 <tr> | |
1468 <td> | |
1469 Action | |
1470 </td> | |
1471 <td> | |
1472 Contains the action to be performed when this item is selected. See | |
1473 <a href="oecn10_sysman_handbook_full.html#action_values_head">Section 5.1.4.1</a> for more information. | |
1474 </td> | |
1475 </tr> | |
1476 <tr> | |
1477 <td> | |
1478 Item order # | |
1479 </td> | |
1480 <td> | |
1481 This field is used to order the items on the menu. By default the items | |
1482 are in alphabetical order by Item Label. If you want to change the | |
1483 order of the items then you may put a number in the Item Order# field. | |
1484 This number does not affect the number that the user will use to invoke | |
1485 the item, it only affects the physical order of the items on the menu. | |
1486 </td> | |
1487 </tr> | |
1488 <tr> | |
1489 <td> | |
1490 Modify security identifiers | |
1491 </td> | |
1492 <td> | |
1493 Enters the | |
1494 <em>Security Id Maintenance</em> screen to allow security identifiers | |
1495 to be placed on the item. See section <a href="oecn10_sysman_handbook_full.html#secur_id_screen_head">Section 5.1.5</a> for more information | |
1496 about security identifiers. | |
1497 </td> | |
1498 </tr> | |
1499 </table> | |
1500 <hr> | |
1501 <sup>1</sup>Key fields of the menu file. However the MENUEDT program | |
1502 allows these fields to be changed. | |
1503 <br> | |
1504 <hr> | |
1505 | |
1506 <a name="action_values_head"><h3>5.1.4.1 Values for Action Field</h3></a> | |
1507 | |
1508 <p> | |
1509 Much of the Menu Processor's flexibility is provided by the values that | |
1510 may be placed in the Action field. The Action field and the Item Type | |
1511 field together determine what will happen when the user chooses an item | |
1512 from a menu. | |
1513 <p> | |
1514 <strong>Item Type D (DCL)</strong> | |
1515 <br> | |
1516 | |
1517 <p> | |
1518 If Type = "D" then Action must contain a valid DCL command. Any DCL | |
1519 command may be specified, including command procedures. These commands | |
1520 may be executed in subprocess depending on the setting of | |
1521 OECN$MENU_BEHAVIOR (See <a href="oecn10_sysman_handbook_full.html#option_exec_sect">Section 2.5</a>). For example, the following are | |
1522 valid for Action: | |
1523 | |
1524 <blockquote> | |
1525 MAIL | |
1526 <br>@PURGE_TEXT_FILES | |
1527 <br>Write sys$output "Hello there." | |
1528 </blockquote> | |
1529 | |
1530 <p> | |
1531 If the DCL command requires or allows parameters to be specified you | |
1532 may place a tilde (~) at the location where the parameters should be | |
1533 placed. | |
1534 | |
1535 <p> | |
1536 As a simple example, assume that you have a print procedure that allows | |
1537 the filename and the number of copies as parameters. Item Label is | |
1538 PRINT and the name of the command procedure is OECN$UTL:PRINT.COM. On | |
1539 the PRINT item record you would put the following in the Action field: | |
1540 | |
1541 <p> | |
1542 <table border=0> | |
1543 <tr> | |
1544 <td> | |
1545 <br> | |
1546 <pre> | |
1547 @OECN$UTL:PRINT ~ ~ | |
1548 </pre> | |
1549 </table> | |
1550 | |
1551 <p> | |
1552 When the user enters the PRINT item from the Menu Processor they may | |
1553 specify the parameters on one line. For example, the user could enter: | |
1554 | |
1555 <p> | |
1556 <table border=0> | |
1557 <tr> | |
1558 <td> | |
1559 <br> | |
1560 <pre> | |
1561 Menu> PRINT MYFILE.TXT 10 | |
1562 </pre> | |
1563 </table> | |
1564 | |
1565 <p> | |
1566 The DCL command that would be executed by the Menu Processor would be: | |
1567 | |
1568 <p> | |
1569 <table border=0> | |
1570 <tr> | |
1571 <td> | |
1572 <br> | |
1573 <pre> | |
1574 $ @OECN$UTL:PRINT MYFILE.TXT 10 | |
1575 </pre> | |
1576 </table> | |
1577 | |
1578 <p> | |
1579 Up to 8 parameters may be specified. Parameters containing spaces must | |
1580 be enclosed in quotes. (Parameters may not contain quotes.) Lowercase | |
1581 characters are preserved inside of quotes. Parameters are replaced from | |
1582 left to right. No other parsing of the parameters is done. Parameters | |
1583 are always considered to be optional, if the user does not specify a | |
1584 parameter then the tilde (~) will be replaced by a space. | |
1585 <p> | |
1586 <strong>Item Type DP (DCL in Parent)</strong> | |
1587 <br> | |
1588 | |
1589 <p> | |
1590 Type "DP" is identical to type "D" except that the Action line is | |
1591 always executed in the parent process. This only has an effect if the | |
1592 menu processor is in "spawn and execute" mode (See <a href="oecn10_sysman_handbook_full.html#option_exec_sect">Section 2.5</a>). | |
1593 | |
1594 <p> | |
1595 This item type should be used sparingly and only when the command | |
1596 <em>must</em> be executed in the parent process. This is only necessary | |
1597 when the commands being executed must affect both the parent and | |
1598 subprocess. Examples of such commands are: | |
1599 | |
1600 <ul> | |
1601 <li>Commands that change security identifiers | |
1602 <li>Commands that modify menu logicals or modes | |
1603 <li>Commands that spawn subprocesses with the /NOWAIT qualifier | |
1604 </ul> | |
1605 | |
1606 <p> | |
1607 <strong>Item Type P (Program)</strong> | |
1608 <br> | |
1609 | |
1610 <p> | |
1611 If Type = "P" then the Action field contains the full VMS file | |
1612 specification for an executable image to be executed by the DCL RUN | |
1613 command. The distinction between programs and DCL commands is made | |
1614 primarily for compatibility with the HP version of the Menu Processor. | |
1615 However, future VAX releases may take advantage of this distinction. | |
1616 <p> | |
1617 <strong>Item Type M (Menu)</strong> | |
1618 <br> | |
1619 | |
1620 <p> | |
1621 If Type = "M" then the Action field must contain a valid menu | |
1622 specification. This type of item allows the user to move from one menu | |
1623 to another at a lower level. The menu specified may be in the current | |
1624 menu file or may specify a completely different menu file. See | |
1625 <a href="oecn10_sysman_handbook_full.html#menu_specs_head">Section 2.3</a> for more information about menu specifications. | |
1626 <p> | |
1627 <strong>Item Type T (Text)</strong> | |
1628 <br> | |
1629 | |
1630 <p> | |
1631 If Type = "T" then the action line is ignored. Text items are used to | |
1632 put information or subheadings on a menu. For text items, the | |
1633 Description field is simply displayed on the menu without a label or an | |
1634 option number. | |
1635 | |
1636 <a name="secur_id_screen_head"><h2>5.1.5 Menu Security Screen</h2></a> | |
1637 | |
1638 <p> | |
1639 The <strong>Modify Security Identifier</strong> screen allows you to | |
1640 require that the user has specific VMS identifiers before they are | |
1641 allowed access to certain menu elements. | |
1642 | |
1643 <p> | |
1644 Security may be placed on any level: File, Menu or Item. If the user | |
1645 does not have access to a menu item, it will not appear on the menu. | |
1646 | |
1647 <p> | |
1648 Three levels of access can be specified for each identifier that | |
1649 appears on the Security Identifier screen: Read-only, Standard or Group | |
1650 Manager. See <a href="oecn10_sysman_handbook_full.html#security_ids">Section 5.1.5.1</a> for more information about how these | |
1651 identifiers are derived. | |
1652 | |
1653 <p> | |
1654 The following screen shows an example of a menu element that requires | |
1655 the user to have read-only access to the OECN_PPS identifier or | |
1656 standard access to the OECN_SALSIM identifier. Note that the user must | |
1657 only have one of the selected identifiers. Of course, users with | |
1658 OECN_SYSMAN access have access to all menu elements regardless of these | |
1659 identifiers. | |
1660 | |
1661 <p> | |
1662 <table border=0> | |
1663 <tr> | |
1664 <td> | |
1665 <br> | |
1666 <pre> | |
1667 1) OECN_EDCIMS 9) OECN_SYSMAN | |
1668 2) OECN_EIS 10) OECN_USAS | |
1669 3) OECN_OECN 11) OECN_USPS | |
1670 R 4) OECN_PPS 12) OECN_VIS | |
1671 5) OECN_PVS 13) OECN_USER1 | |
1672 S 6) OECN_SALSIM 14) OECN_USER2 | |
1673 7) OECN_SECIMS 15) OECN_USER3 | |
1674 8) OECN_SECIMS_GRPMAN 16) OECN_USER4 | |
1675 | |
1676 (R = Read-Only, S = Standard, G = Group Manager) | |
1677 | |
1678 </pre> | |
1679 </table> | |
1680 | |
1681 <p> | |
1682 Security will be propagated through the menu structure. If security is | |
1683 not specified for a menu element, then security will be inherited from | |
1684 the level above it. The following list details the rules that are used | |
1685 to determine how security is inherited. | |
1686 | |
1687 <ol start=1 > | |
1688 <li>If a menu item has no security specified for it, then security will | |
1689 be inherited from the menu header record to which the item belongs. | |
1690 <li>If a menu header has no security, then it will inherit its security | |
1691 from its parent's menu header record. This occurs until a parent record | |
1692 is found that contains security information, or the top-level menu is | |
1693 found within the current menu file. | |
1694 <li>The top-level menu of each menu file, will inherit security from | |
1695 the file header record. | |
1696 <li>If no security is specified, after rule #3 above, then there is no | |
1697 security required to access the menu element. | |
1698 </ol> | |
1699 | |
1700 <p> | |
1701 The identifiers OECN_USER1 through OECN_USER4 are for use locally at | |
1702 the A-sites. You may assign these identifiers in any manner you wish. | |
1703 For example, you may want to allow specific users to access VMS Mail. | |
1704 You could use OECN_USER1 to restrict a MAIL menu item to those users. | |
1705 These identifiers will not be used by SSDT in any State Software | |
1706 programs. | |
1707 | |
1708 <p> | |
1709 If four identifiers are not enough for your site, you may add new ones. | |
1710 Up to 16 identifier positions have been reserved for use at the A-site | |
1711 level. See OECN_IDS.LIB in OECN$LIB: for instructions. | |
1712 | |
1713 <a name="security_ids"><h3>5.1.5.1 Security Identifiers</h3></a> | |
1714 | |
1715 <p> | |
1716 The security identifiers that appear on the Security Identifier screen | |
1717 are the "standard" identifiers. Three possible identifiers | |
1718 exist for each standard identifier, which are used to specify three | |
1719 levels of access. These alternate identifiers are derived by adding a | |
1720 suffix to the standard identifier. | |
1721 | |
1722 <p> | |
1723 The following table lists the three access levels, in order of lowest | |
1724 level access to the highest. <p> | |
1725 | |
1726 <table border=3> | |
1727 <caption><a name="security_level_tbl"><strong>Table 5-7 Security Access Levels</strong></a></caption> | |
1728 <tr> | |
1729 <th align=center>Access Level </th> | |
1730 <th align=center>Suffix </th> | |
1731 <th align=center>Description </th> | |
1732 </tr> | |
1733 <tr> | |
1734 <td> | |
1735 Read-Only | |
1736 </td> | |
1737 <td> | |
1738 _RO | |
1739 </td> | |
1740 <td> | |
1741 If a user holds the identifier then read-only access is granted. This | |
1742 user may execute read-only programs or have access to read-only | |
1743 functions within programs. | |
1744 </td> | |
1745 </tr> | |
1746 <tr> | |
1747 <td> | |
1748 Standard | |
1749 </td> | |
1750 <td> | |
1751 none | |
1752 </td> | |
1753 <td> | |
1754 If a user holds this identifier then the user is granted | |
1755 "standard" access to the identifier. This user is assumed to | |
1756 be a standard read-write user of the corresponding package. | |
1757 </td> | |
1758 </tr> | |
1759 <tr> | |
1760 <td> | |
1761 Group Manager | |
1762 </td> | |
1763 <td> | |
1764 _GM | |
1765 </td> | |
1766 <td> | |
1767 Users that hold this identifier are granted access to "group | |
1768 manager" functions. This user is assumed to hold special | |
1769 privileges within the corresponding package. | |
1770 </td> | |
1771 </tr> | |
1772 </table> | |
1773 | |
1774 <p> | |
1775 For example, for the OECN_USPS identifier there are really three | |
1776 identifiers that may be granted to a user. These identifiers are: | |
1777 | |
1778 <blockquote> | |
1779 OECN_USPS_RO | |
1780 <br>OECN_USPS | |
1781 <br>OECN_USPS_GM | |
1782 </blockquote> | |
1783 | |
1784 <p> | |
1785 All these access levels, and therefore all the identifiers, exist for | |
1786 all packages, even if the package itself does not implement the | |
1787 identifiers. In other words, the Menu Processor will test for all the | |
1788 identifiers, even if the individual package does not. | |
1789 | |
1790 <p> | |
1791 It also should be noted that the access levels will be applied to the | |
1792 A-site specific identifiers. That is, there will also be OECN_USER1_RO | |
1793 and OECN_USER1_GM identifiers available for use at the A-site level. | |
1794 | |
1795 <a name="menuutl_head"><h1>5.2 Using MENUUTL</h1></a> | |
1796 | |
1797 <p> | |
1798 The MENUUTL program provides some necessary functions for building, | |
1799 maintaining and documenting a menu system. The options provided are: | |
1800 | |
1801 <ol start=1 > | |
1802 <li>Build the Alias File | |
1803 <li>Simulated Menu Listing | |
1804 <li>Detailed Menu Report | |
1805 <li>Hierarchical Menu Listing | |
1806 </ol> | |
1807 | |
1808 <a name="build_alias_head"><h2>5.2.1 Building the Alias File</h2></a> | |
1809 | |
1810 <p> | |
1811 The first and the most important option of MENUUTL is the alias file | |
1812 build option. The alias file contains a pointer for each menu item in | |
1813 the system. Therefore, whenever you add or remove menu items from a | |
1814 menu file you must rebuild the alias file. | |
1815 | |
1816 <p> | |
1817 MENUUTL makes this process rather simple. All you have to do is run | |
1818 MENUUTL and choose option 1. MENUUTL will ask the following questions: | |
1819 | |
1820 <p> | |
1821 <table border=0> | |
1822 <tr> | |
1823 <td> | |
1824 <br> | |
1825 <pre> | |
1826 Physical name of top level menu file:___________ | |
1827 </pre> | |
1828 </table> | |
1829 | |
1830 <p> | |
1831 Enter the physical filespec of the top-level menu file. This is the | |
1832 current physical location of the top-level menu file. | |
1833 | |
1834 <p> | |
1835 <table border=0> | |
1836 <tr> | |
1837 <td> | |
1838 <br> | |
1839 <pre> | |
1840 Logical name of top level menu file:_____________ | |
1841 </pre> | |
1842 </table> | |
1843 | |
1844 <p> | |
1845 Enter the logical filespec of the top level menu file. This should be | |
1846 the logical name of the file that will be used when the user accesses | |
1847 the menu system. | |
1848 | |
1849 <p> | |
1850 <center> | |
1851 <table border=0 width=75%> | |
1852 <tr> | |
1853 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
1854 size=1 noshade> | |
1855 The physical and logical name should normally be the same. </td> | |
1856 </tr> | |
1857 </table> | |
1858 </center> | |
1859 | |
1860 <p> | |
1861 <table border=0> | |
1862 <tr> | |
1863 <td> | |
1864 <br> | |
1865 <pre> | |
1866 Enter new alias filename: ___________________ | |
1867 </pre> | |
1868 </table> | |
1869 | |
1870 <p> | |
1871 Enter the name of the new alias file to be built. The alias file is | |
1872 always rebuilt from scratch and a new version is created. | |
1873 | |
1874 <p> | |
1875 After prompting for these values, MENUUTL will begin reading through | |
1876 the specified menu file and add an alias for each item found. It will | |
1877 also search for references to other menu files. If such references are | |
1878 found, MENUUTL will search those files for menu items and add aliases | |
1879 for each one. | |
1880 | |
1881 <p> | |
1882 <center> | |
1883 <table border=0 width=75%> | |
1884 <tr> | |
1885 <td><center><font size=+2><strong>Important</strong></font></center><hr | |
1886 size=1 noshade> | |
1887 MENUUTL uses the OECN$MENU$FILES logical to search for the menu files | |
1888 in the same manner as will be used by the Menu Processor. Therefore, | |
1889 the runtime environment for MENUUTL must be the same as when the Menu | |
1890 Processor will be invoked. </td> | |
1891 </tr> | |
1892 </table> | |
1893 </center> | |
1894 | |
1895 <p> | |
1896 As stated earlier, all aliases must be unique across the entire menu | |
1897 system. If MENUUTL finds a duplicate alias name, an error message will | |
1898 displayed and the duplicate will not be added. Processing will continue | |
1899 and the alias file will be usable, but the alias for the duplicate item | |
1900 will not exist. | |
1901 | |
1902 <p> | |
1903 <center> | |
1904 <table border=0 width=75%> | |
1905 <tr> | |
1906 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
1907 size=1 noshade> | |
1908 You may also use the OECN$:BUILD_ALIAS.COM command procedure to build | |
1909 the alias file. This procedure will automatically build a new alias | |
1910 file using the current values of OECN$MENU$FILES, OECN$MENU and | |
1911 OECN$ALIAS. You can run this procedure after installing a new | |
1912 distribution or customizing menu files. If you frequently modify menu | |
1913 files, you could even run the procedure periodically in batch to ensure | |
1914 that the alias file is always up-to-date. </td> | |
1915 </tr> | |
1916 </table> | |
1917 </center> | |
1918 | |
1919 <a name="simulate_list_head"><h2>5.2.2 Simulated Menu Listing</h2></a> | |
1920 | |
1921 <p> | |
1922 This option will read through the specified menu file and create a | |
1923 simulated menu listing. The listing will display the menu in as close | |
1924 an approximation as possible on a hardcopy printer. The option will | |
1925 only report on one menu file at a time and will be sorted in | |
1926 alphabetical order by menu name. | |
1927 | |
1928 <a name="detailed_list_head"><h2>5.2.3 Detailed Menu Listing</h2></a> | |
1929 | |
1930 <p> | |
1931 The detailed menu report lists all available information about the | |
1932 specified menu file. This report is particularly useful for double | |
1933 checking the action fields and security. | |
1934 | |
1935 <a name="hier_list_head"><h2>5.2.4 Hierarchical Listing</h2></a> | |
1936 | |
1937 <p> | |
1938 This report will display the structure of the menu system. The menus | |
1939 are listed in the proper order as they appear on the menu. This option | |
1940 will prompt for the top level menu file and menu where the listing is | |
1941 to start. You need not necessarily start at the top of the entire menu | |
1942 system. | |
1943 | |
1944 <a name="osa_head"><h1>5.3 OSA</h1></a> | |
1945 | |
1946 <p> | |
1947 The OSA, OECN Security Authorization, Utility may be used in | |
1948 conjunction with the OECN Menu Processor to fine tune security access. | |
1949 OSA can be used to enable user's access to individual programs to be | |
1950 granted or denied. This <em>local security</em> is defined by each | |
1951 A-site and is maintained separately from the menu system included on | |
1952 the OECN distribution. (See also VMS Manager's Guide) | |
1953 | |
1954 <p> | |
1955 <hr size=5> | |
1956 <a name="custom_chap"><h1>Chapter 6<br>Customizing Menus from the Distribution</h1></a> | |
1957 | |
1958 <p> | |
1959 This chapter describes the recommended procedure for customizing the | |
1960 menu files from the distribution. Following this procedure will ensure | |
1961 that you can install future releases with minimum effort and maintain a | |
1962 consistent user interface across the state. | |
1963 | |
1964 <p> | |
1965 Each major package has its own menu file. The file name for the primary | |
1966 menu file ends with _MENU and has an extension of .DAT. For example, | |
1967 the USAS menu file is named BUD_MENU.DAT. On the main menu of each | |
1968 package there is an item that links to a <em>local</em> menu file. This | |
1969 local menu file is an empty menu file that you may customize as you | |
1970 wish. The local menu filenames end with _LCL. Therefore, the USAS local | |
1971 menu is named: BUD_LCL.DAT. | |
1972 | |
1973 <p> | |
1974 It is recommended that you only modify the *_LCL menu files. If you | |
1975 modify the other primary menu files, you will not be able to install | |
1976 updated menu files in the future without making all of your | |
1977 modifications over again. | |
1978 | |
1979 <p> | |
1980 <center> | |
1981 <table border=0 width=75%> | |
1982 <tr> | |
1983 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
1984 size=1 noshade> | |
1985 Security for all menu items may be customized, even if they are part of | |
1986 the distribution, without modifying the menu files. This is | |
1987 accomplished by using the OECN Security Authorization (OSA) utility. | |
1988 See the <em>OECN Software Security for the VMS System Manager</em> | |
1989 manual for information about the OSA utility and local security. </td> | |
1990 </tr> | |
1991 </table> | |
1992 </center> | |
1993 | |
1994 <a name="local_head"><h1>6.1 Modifying a Local Menu File</h1></a> | |
1995 | |
1996 <p> | |
1997 Following is the recommend procedure for modifying one or more menu | |
1998 files. | |
1999 | |
2000 <ol start=1 > | |
2001 <li>Redefine the OECN$MENU$FILES to be a search list. | |
2002 <li>Modify the Menu Files | |
2003 <li>Build a New Alias File | |
2004 <li>Redefine OECN$MENU$FILES permanently | |
2005 </ol> | |
2006 | |
2007 <a name="redefine_logical_head"><h2>6.1.1 Redefine the OECN$MENU$FILES logical</h2></a> | |
2008 | |
2009 <p> | |
2010 The first step is to redefine OECN$MENU$FILES as a search list. For | |
2011 consistency with other customized files, it is recommended that you use | |
2012 OECN$CUSTOM. However, you may use any directory that you wish. The rest | |
2013 of this chapter assumes that you are placing the customized menu files | |
2014 in OECN$CUSTOM. For example: | |
2015 | |
2016 <p> | |
2017 <table border=0> | |
2018 <tr> | |
2019 <td> | |
2020 <br> | |
2021 <pre> | |
2022 $ DEFINE/SYSTEM OECN$MENU$FILES - | |
2023 _$ OECN$CUSTOM,DUA0:[ODE.MENU.DIST] | |
2024 </pre> | |
2025 </table> | |
2026 | |
2027 <p> | |
2028 This will cause the Menu Processor and MENUUTL to search first through | |
2029 OECN$CUSTOM and then the distribution menu files. | |
2030 | |
2031 <p> | |
2032 <center> | |
2033 <table border=0 width=75%> | |
2034 <tr> | |
2035 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
2036 size=1 noshade> | |
2037 You may want to make this logical assignment in your current process, | |
2038 instead of at the SYSTEM level, while changing the menu files. This | |
2039 will prevent any users from getting into a half completed menu. </td> | |
2040 </tr> | |
2041 </table> | |
2042 </center> | |
2043 | |
2044 <a name="heading_6.1.2"><h2>6.1.2 Modify the Menu Files</h2></a> | |
2045 | |
2046 <p> | |
2047 Copy the *_LCL.DAT menu files that you want to modify from the | |
2048 distribution into OECN$CUSTOM. Then use MENUEDT to make the desired | |
2049 modifications. By making all modifications in OECN$CUSTOM: will insure | |
2050 that installing future releases will not overlay your customized local | |
2051 menus. | |
2052 | |
2053 <p> | |
2054 Use the Menu Processor and MENUUTL to test the new menus as needed. If | |
2055 you're creating new menus, be sure that the users have read access to | |
2056 the new files. | |
2057 | |
2058 <a name="heading_6.1.3"><h2>6.1.3 Build a New Alias File</h2></a> | |
2059 | |
2060 <p> | |
2061 After all desired changes have been made, use MENUUTL to rebuild the | |
2062 alias file. You may put the alias file in OECN$CUSTOM or simply replace | |
2063 the current alias file in OECN$ALIAS. If you change the location of the | |
2064 alias file be sure to redefine the OECN$ALIAS logical. | |
2065 | |
2066 <p> | |
2067 You may build the alias file manually by running MENUUTL, or you may | |
2068 use the BUILD_ALIAS.COM procedure in the OECN$ directory. | |
2069 | |
2070 <a name="heading_6.1.4"><h2>6.1.4 Redefine OECN$MENU$FILES Permanently</h2></a> | |
2071 | |
2072 <p> | |
2073 If you have not already done so, define the logical OECN$MENU$FILES to | |
2074 be a search list as above at the SYSTEM level. | |
2075 | |
2076 <p> | |
2077 At this point your users should have access to the customized menus. | |
2078 | |
2079 <a name="heading_6.2"><h1>6.2 After a Distribution</h1></a> | |
2080 | |
2081 <p> | |
2082 If you modify the local menu files in this way, your changes will not | |
2083 be affected by any future releases. Changes made by SSDT will | |
2084 automatically be installed when you copy the distribution menu files to | |
2085 the OECN$MENU$FILES directory. | |
2086 | |
2087 <p> | |
2088 However, you will have to rebuild the alias file after installing each | |
2089 distribution. After a package has been installed and the menu files | |
2090 moved to thier proper location, you must rebuild the alias file. | |
2091 | |
2092 <p> | |
2093 You may build the alias file manually by running MENUUTL, or you may | |
2094 use the BUILD_ALIAS.COM procedure in the OECN$ directory. The | |
2095 BUILD_ALIAS.COM procedure will automatically build a new alias file | |
2096 using the files in OECN$MENU$FILES. You can run the procedure | |
2097 interactvely by typing: | |
2098 | |
2099 <p> | |
2100 <table border=0> | |
2101 <tr> | |
2102 <td> | |
2103 <br> | |
2104 <pre> | |
2105 $ @OECN$:BUILD_ALIAS | |
2106 </pre> | |
2107 </table> | |
2108 | |
2109 <p> | |
2110 Or you can submit it for batch processing using DCL SUBMIT. By default, | |
2111 BUILD_ALIAS will rebuild the default menu system based on the current | |
2112 values of OECN$MENU$FILES, OECN$MENU and OECN$ALIAS logicals. If you | |
2113 have other menu systems on your system, you can pass parameters to | |
2114 BUILD_ALIAS to indicate the location and names of the menu and alias | |
2115 files. See the comments in BUILD_ALIAS.COM for more information about | |
2116 using this procedure. | |
2117 | |
2118 <a name="intercept_head"><h1>6.3 Intercepting Menu Actions</h1></a> | |
2119 | |
2120 <p> | |
2121 Sometimes it is desirable, or necessary, to redefine the action | |
2122 associated with a menu item. For instance, you may want to force | |
2123 certain actions prior to running a particular program or force certain | |
2124 options to run in batch. | |
2125 | |
2126 <p> | |
2127 This may be done by intercepting the action line of specific options | |
2128 <em>without</em> modifying the menu files supplied by SSDT. You must | |
2129 write a DCL command procedure that will replace the action line you are | |
2130 going to intercept. Then assign a special logical to point to this | |
2131 command procedure. | |
2132 | |
2133 <p> | |
2134 The logical must be defined as follows: | |
2135 | |
2136 <p> | |
2137 <table border=0> | |
2138 <tr> | |
2139 <td> | |
2140 <br> | |
2141 <pre> | |
2142 $ DEFINE/SYSTEM OECN$MENU_ACTION_label filespec | |
2143 </pre> | |
2144 </table> | |
2145 | |
2146 <p> | |
2147 Where <em>label</em> is the menu option label that you want to | |
2148 intercept and <em>filespec</em> is the full filespec of the DCL command | |
2149 procedure. The logical may be defined at the system, group or process | |
2150 level, so you may intercept the action line for different classes of | |
2151 users. | |
2152 | |
2153 <p> | |
2154 <center> | |
2155 <table border=0 width=75%> | |
2156 <tr> | |
2157 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
2158 size=1 noshade> | |
2159 If the logical is defined system-wide it will affect all menu systems | |
2160 that you have active on your system. If you have multiple menu systems | |
2161 that contain the same label then they will all be affected. If this is | |
2162 not what you want you may need to define this logical at the group or | |
2163 process level. </td> | |
2164 </tr> | |
2165 </table> | |
2166 </center> | |
2167 | |
2168 <p> | |
2169 After this logical is defined the command procedure will be executed | |
2170 <em>instead of</em> the action line defined by the menu file. | |
2171 | |
2172 <p> | |
2173 The following parameters will be passed to the command procedure : | |
2174 | |
2175 <table border=3> | |
2176 <tr> | |
2177 <td> | |
2178 P1 | |
2179 </td> | |
2180 <td> | |
2181 Menu label name that invoked the procedure | |
2182 </td> | |
2183 </tr> | |
2184 <tr> | |
2185 <td> | |
2186 P2 | |
2187 </td> | |
2188 <td> | |
2189 Original action line defined by the menu file | |
2190 </td> | |
2191 </tr> | |
2192 <tr> | |
2193 <td> | |
2194 P3-P8 | |
2195 </td> | |
2196 <td> | |
2197 Other parameters entered by the user | |
2198 </td> | |
2199 </tr> | |
2200 </table> | |
2201 | |
2202 <p> | |
2203 The procedure may use these parameters as it wishes or ignore them. | |
2204 | |
2205 <p> | |
2206 For example, suppose that you want to automatically execute a backup of | |
2207 the USPS files prior to the user running BUDDIS. The following | |
2208 procedure, called PAY:BUDDIS_ACTION, might be used: | |
2209 | |
2210 <p> | |
2211 <table border=0> | |
2212 <tr> | |
2213 <td> | |
2214 <br> | |
2215 <pre> | |
2216 $! | |
2217 $! PAY:BUDDIS_ACTION.COM -- Procedure used by the BUDDIS menu option | |
2218 $! | |
2219 $ on error then exit | |
2220 $ | |
2221 $ @PAY:SAVEPAY ! A-site procedure to perform disk backup set of | |
2222 $ ! USPS files. | |
2223 $ | |
2224 $ DEFINE/USER SYS$INPUT SYS$COMMAND | |
2225 $ RUN OECN$PAY:BUDDIS | |
2226 $ | |
2227 $ EXIT | |
2228 </pre> | |
2229 </table> | |
2230 | |
2231 <p> | |
2232 The following logical definition would be made to intercept the BUDDIS | |
2233 action for all users: | |
2234 | |
2235 <p> | |
2236 <table border=0> | |
2237 <tr> | |
2238 <td> | |
2239 <br> | |
2240 <pre> | |
2241 $ DEFINE/SYSTEM OECN$MENU_ACTION_BUDDIS PAY:BUDDIS_ACTION | |
2242 </pre> | |
2243 </table> | |
2244 | |
2245 <p> | |
2246 <hr size=5> | |
2247 <a name="batch_mail_chap"><h1>Chapter 7<br>Batch Mail Message System Manager Guide</h1></a> | |
2248 | |
2249 <a name="heading_7.1"><h1>7.1 Overview</h1></a> | |
2250 | |
2251 <p> | |
2252 The command procedure BATCH_MAIL_MESSAGE.COM can be used to send a VMS | |
2253 mail message via a batch job. This is useful for messages with large | |
2254 audiences where the user does not wish to tie up their terminal for an | |
2255 extended period of time. | |
2256 | |
2257 <a name="heading_7.2"><h1>7.2 Sending a Mail Message via Batch</h1></a> | |
2258 | |
2259 <p> | |
2260 To use the command procedure for generic mail messages: | |
2261 | |
2262 <p> | |
2263 Create the desired mail message using a text file. | |
2264 | |
2265 <p> | |
2266 Submit the procedure as follows supplying the necessary parameter | |
2267 values: | |
2268 | |
2269 <p> | |
2270 <table border=0> | |
2271 <tr> | |
2272 <td> | |
2273 <br> | |
2274 <pre> | |
2275 $ SUBMIT OECN$:BATCH_MAIL_MESSAGE/PARAMETER=("P1","P2","P3","P4") | |
2276 </pre> | |
2277 </table> | |
2278 | |
2279 <p> | |
2280 Where: | |
2281 | |
2282 <ul> | |
2283 <li>P1 - Name of the text file to be mailed. | |
2284 <li>P2 - VMS mail address the text file will be sent to. | |
2285 <li>P3 - Text that is to be displayed on the Subject Line of the | |
2286 message. | |
2287 <li>P4 - Y/N (yes/no) flag that indicates whether or not to delete the | |
2288 text file containing the message after it is sent. | |
2289 </ul> | |
2290 | |
2291 <p> | |
2292 | |
2293 <hr size=5> | |
2294 <a name="oecn_view_chap"><h1>Chapter 8<br>OECN VIEW Utility</h1></a> | |
2295 | |
2296 <a name="heading_8.1"><h1>8.1 Overview</h1></a> | |
2297 | |
2298 <p> | |
2299 The OECN_VIEW utility allows users to view text files on the screen. It | |
2300 can be used for report files produced by OECN state software or other | |
2301 text documents. OECN_VIEW is a TPU based product, layered on DEC/EVE. | |
2302 | |
2303 <p> | |
2304 By default, OECN_VIEW will search for files in OECN$OUT which have the | |
2305 following extensions: *.TXT, *.LIS, *.DOC, *.RPT, *.LPT, *.RPT. These | |
2306 are the only files that OECN_VIEW will show to the user when they use | |
2307 the "Go_File" function or invoke VIEW without a file name. | |
2308 | |
2309 <p> | |
2310 However, A-sites may customize both the directory and/or the extension | |
2311 if desired. Define the OECN_VIEW_DIRECTORY logical to define the | |
2312 directory(ies) to be searched. It may be a search-list. The default for | |
2313 OECN_VIEW_DIRECTORY is OECN$OUT. | |
2314 | |
2315 <p> | |
2316 In order to change the file extensions, define the logical | |
2317 OECN_VIEW_FILES to be a search list containing the filespecs to search. | |
2318 Each entry in the search list must refer to OECN_VIEW_DIRECTORY. | |
2319 | |
2320 <p> | |
2321 Examples of the logicals are given below: | |
2322 | |
2323 <a name="heading_8.2"><h1>8.2 OECN_VIEW.COM</h1></a> | |
2324 | |
2325 <p> | |
2326 The OECN_VIEW.COM command procedure is found in OECN$. It is used to | |
2327 define the two logicals, OECN_VIEW_DIRECTORY and OECN_VIEW_FILES. | |
2328 Observe the following notes from this procedure. | |
2329 | |
2330 <p> | |
2331 <table border=0> | |
2332 <tr> | |
2333 <td> | |
2334 <br> | |
2335 <pre> | |
2336 | |
2337 | |
2338 $!+ | |
2339 $! Notes: | |
2340 $! | |
2341 $! This procedure is a shell for the OECN_VIEW utility. It provides | |
2342 $! defaults for the file directory and file types that the user may view. | |
2343 $! | |
2344 $! A-sites can configure VIEW to behave differently if desired by defining | |
2345 $! the following logicals: | |
2346 $! | |
2347 $! OECN_VIEW_DIRECTORY = Defines the directory OECN_VIEW will search | |
2348 $! when user uses the 'Go File' command or invokes | |
2349 $! VIEW without a file name. This logical may | |
2350 $! be a search list. The default is OECN$OUT. | |
2351 $! | |
2352 $! OECN_VIEW_FILES = Filespecs which user can see when the use | |
2353 $! 'Go file'. The logical should be a searchlist | |
2354 $! containing wildcard specfications for the files | |
2355 $! names or types the user can view. Each | |
2356 $! equivalence string must refer to OECN_VIEW_DIRECTORY | |
2357 $! for the device/directory. That is, OECN_VIEW_FILES | |
2358 $! should specify just the wildcard filename and type. | |
2359 $!- | |
2360 | |
2361 | |
2362 </pre> | |
2363 </table> | |
2364 | |
2365 <a name="heading_8.2.1"><h2>8.2.1 Customizing OECN VIEW</h2></a> | |
2366 | |
2367 <p> | |
2368 The following sample command file shows how to customize the | |
2369 directories and the file extensions to be viewed. | |
2370 | |
2371 <p> | |
2372 <table border=0> | |
2373 <tr> | |
2374 <td> | |
2375 <br> | |
2376 <pre> | |
2377 | |
2378 | |
2379 $!+ | |
2380 $! VIEW_EXAMPLES.com | |
2381 $! | |
2382 $! Example of using OECN_VIEW to view shared documents. This | |
2383 $! command procedure may be added to a local menu to allow | |
2384 $! users to view documents on-line. | |
2385 $! | |
2386 $! In this example, users are given the ability to view internet documents. | |
2387 $! Allows users to view *.TXT and *.DOC files in the directory | |
2388 $! PUB:[INTERNET_DOCS]. | |
2389 $! | |
2390 $! - | |
2391 $ set noon | |
2392 $ set noverify | |
2393 $ | |
2394 $ define/user OECN_VIEW_DIRECTORY PUB:[PUBDOM.NWOCA.INTERNET_DOCS] | |
2395 $ | |
2396 $ define/user OECN_VIEW_FILES OECN_VIEW_DIRECTORY:*.TXT,- | |
2397 OECN_VIEW_DIRECTORY:*.DOC | |
2398 $ | |
2399 $ @oecn$:oecn_view | |
2400 $ | |
2401 $exit | |
2402 | |
2403 | |
2404 | |
2405 </pre> | |
2406 </table> | |
2407 | |
2408 <a name="heading_8.2.2"><h2>8.2.2 Creating a DCL Command</h2></a> | |
2409 | |
2410 <p> | |
2411 The VIEW utility works automatically from the MENU. However, you could | |
2412 define a symbol to execute VIEW from DCL. | |
2413 | |
2414 <p> | |
2415 For example, define: | |
2416 | |
2417 <p> | |
2418 <table border=0> | |
2419 <tr> | |
2420 <td> | |
2421 <br> | |
2422 <pre> | |
2423 | |
2424 LOOK := = @OECN$:OECN_VIEW | |
2425 | |
2426 </pre> | |
2427 </table> | |
2428 | |
2429 <p> | |
2430 Then use the LOOK command from the $ prompt. | |
2431 | |
2432 <a name="heading_8.2.3"><h2>8.2.3 OECN_EDIT</h2></a> | |
2433 | |
2434 <p> | |
2435 The OECN_VIEW utility uses a special editor called OECN_EDIT. Its | |
2436 purpose is to provide I/O routines to allow TPU to automatically read | |
2437 and translate VFC files into text. Please see <a href="oecn10_sysman_handbook_full.html#oecn_edit_chap">Chapter 9, OECN EDIT Utility</a>, for more | |
2438 details. | |
2439 <p> | |
2440 | |
2441 <hr size=5> | |
2442 <a name="oecn_edit_chap"><h1>Chapter 9<br>OECN EDIT Utility</h1></a> | |
2443 | |
2444 <a name="heading_9.1"><h1>9.1 Overview</h1></a> | |
2445 | |
2446 <p> | |
2447 OECN_EDIT is a foreign command replacement for the EDIT/TPU DCL | |
2448 command. It is completely command line (qualifier and parameter) | |
2449 compatible with EDIT/TPU. Its purpose is to provide I/O routines to | |
2450 allow TPU to automatically read and translate VFC files into text. When | |
2451 using OECN_EDIT, all VFC files read by TPU are converted into text with | |
2452 form-feed and line-feed characters to preserve formatting. All other | |
2453 file types are NOT affected by OECN_EDIT and are read normally by TPU. | |
2454 This is different from the default TPU editor, which ignores VFC | |
2455 formatting. OECN_EDIT is used by the OECN_VIEW.COM procedure to allow | |
2456 VFC files to be viewed correctly. However, it may also be used with any | |
2457 TPU section file as an editor. | |
2458 | |
2459 <a name="heading_9.2"><h1>9.2 Using OECN_EDIT</h1></a> | |
2460 | |
2461 <p> | |
2462 In order to use OECN_EDIT as your interface to TPU, define the | |
2463 following symbol: | |
2464 | |
2465 <p> | |
2466 <table border=0> | |
2467 <tr> | |
2468 <td> | |
2469 <br> | |
2470 <pre> | |
2471 | |
2472 $ EDIT := = $OECN$:OECN_EDIT/TPU | |
2473 | |
2474 </pre> | |
2475 </table> | |
2476 | |
2477 <p> | |
2478 Note: The /TPU qualifier is required. | |
2479 | |
2480 <p> | |
2481 You may also include other qualifiers which you would normally use with | |
2482 EDIT/TPU, such as /SECTION, /UNIT, etc. OECN_EDIT will use the normal | |
2483 EVE section and initialization files by default. | |
2484 <p> | |
2485 | |
2486 <hr size=5> | |
2487 <a name="oecn_keymap_chap"><h1>Chapter 10<br>OECN KEYMAP Utility</h1></a> | |
2488 | |
2489 <a name="heading_10.1"><h1>10.1 Overview</h1></a> | |
2490 | |
2491 <p> | |
2492 The OECN_KEYMAP utility allows users to select a terminal emulator, | |
2493 such as REFLECTIONS, EXCURSIONS, or PERSONA. Using this utility defines | |
2494 the logical OECN$KEY_MAP to point to a .INI file containing the desired | |
2495 keymapping. The mapping allows you to re-label the standard function | |
2496 keys. You cannot actually reassign the program functions to different | |
2497 keys. That is, from the programs point of view, the user is required to | |
2498 press a VT200 F11 for the "Find" function. However, you can assign F11 | |
2499 to any PC key you wish in the emulator and then relabel F11 on the | |
2500 screen to match the PC keyboard. | |
2501 | |
2502 <a name="heading_10.2"><h1>10.2 Using KEYMAP</h1></a> | |
2503 | |
2504 <p> | |
2505 Upon selecting the KEYMAP option from the OECN menu the user is given a | |
2506 list of keymapping options to select from. This menu of options is | |
2507 built by searching for all files named OECN$KEYMAP*.INI in either the | |
2508 OECN$ or the OECN$CUSTOM directory. If the same filename is found in | |
2509 both directories, only the one in OECN$CUSTOM will be used. The | |
2510 description used in the menu will be determined by whether or not a | |
2511 "DESCRIPTION=xxx" command is used. If the command is found in the .INI | |
2512 file, the description will be used for the menu, otherwise the filename | |
2513 will be used in the menu. | |
2514 | |
2515 <p> | |
2516 When a user selects their option, the name of the .INI file selected is | |
2517 recorded in a file called OECN$KEYMAP.DAT in their SYS$LOGIN directory. | |
2518 If keymapping is turned off, the OECN$KEYMAP.DAT file is deleted from | |
2519 the SYS$LOGIN directory. | |
2520 | |
2521 <p> | |
2522 The OECN_LOGIN procedure has been modified to look for the existence of | |
2523 this file and define the OECN$KEY_MAP logical to point to the .INI file | |
2524 found in the .DAT file. After selecting their option in KEYMAP, | |
2525 OECN_LOGIN will be immediately executed causing the logical to be | |
2526 defined for that process. Then, each time the user logs in, OECN_LOGIN | |
2527 will check for the OECN$KEYMAP.DAT file and set the OECN$KEY_MAP | |
2528 logical appropriately for that process. | |
2529 | |
2530 <p> | |
2531 The following standard .INI files have been created: | |
2532 | |
2533 <ul> | |
2534 <li>OECN$KEYMAP_EXCURSIONS.INI | |
2535 <li>OECN$KEYMAP_PERSONA.INI | |
2536 <li>OECN$KEYMAP_REFLECTIONS_MAC.INI | |
2537 <li>OECN$KEYMAP_REFLECTIONS_PC.INI | |
2538 </ul> | |
2539 | |
2540 <p> | |
2541 These files may be used as a starting point to create other .INI files | |
2542 for other terminal emulators that may be in use by districts or to | |
2543 support customized key mappings for districts. Instructions are | |
2544 included at the top of the .INI files which explain how the files need | |
2545 to be formatted and which keys are able to be mapped. It is recommended | |
2546 that the new .INI file be placed in the OECN$CUSTOM directory and be | |
2547 given a different name if it is to be an additional menu option. It is | |
2548 also recommended that the description inside the .INI file be changed | |
2549 to something meaningful to the user as this is what they will see in | |
2550 the KEYMAP menu. | |
2551 <p> | |
2552 | |
2553 <hr size=5> | |
2554 <a name="oecn_setupenv_chap"><h1>Chapter 11<br>OECN SETUPENV Utility</h1></a> | |
2555 | |
2556 <a name="heading_11.1"><h1>11.1 Overview</h1></a> | |
2557 | |
2558 <p> | |
2559 SETUPENV is a general purpose utility for establishing or switching to | |
2560 user environments. The goal of the utility is to provide a single place | |
2561 to configure the software environment (primarily logicals) for given | |
2562 entities and allow user processes to configure based on these | |
2563 environment settings. | |
2564 | |
2565 <p> | |
2566 The concept for SETUPENV is similar to the BUNNY/FROG utilities | |
2567 available from NOACSC. However, it is intended to be more flexible and | |
2568 capable of configuring multiple environments. SETUPENV is not tailored | |
2569 to any particular software product. It may be used in the configuration | |
2570 of state software, McSIS, InfOhio, or any other software that requires | |
2571 logicals in establishing a user's environment. | |
2572 | |
2573 <p> | |
2574 The general goals of the utility are as follows: | |
2575 | |
2576 <ol start=1 > | |
2577 <li>To provide a single location for all configuration information. | |
2578 <li>To provide a means for processes to establish a default context | |
2579 during login. | |
2580 <li>To provide a means for users to change contexts using an | |
2581 interactive (or DCL) interface. | |
2582 <li>To allow DAS personnel the ability to switch to any context using | |
2583 the same rules as a user's process. | |
2584 <li>To provide compatibility with BUNNY, FROG, and USE to make the | |
2585 transisition to the new utility easier. | |
2586 <li>To provide DCL and API interfaces which allow other utilities the | |
2587 ability to find and establish contexts. | |
2588 <li>To provide support for common OpenVMS configuration methods in use | |
2589 by DA Sites, including group tables and shared logical tables. | |
2590 </ol> | |
2591 | |
2592 <a name="heading_11.2"><h1>11.2 Getting Started</h1></a> | |
2593 | |
2594 <p> | |
2595 The SETUPENV utility is very flexible allowing the capability to deal | |
2596 with the variety of possible setups in use at the OECN DA Sites. This | |
2597 flexibility leads to a significant number of options in both the DCL | |
2598 command interface and options available in the OECN$SETUP | |
2599 initialization file. However, it is unlikely that any one DA Site will | |
2600 need all of the features provided by SETUPENV. Most sites will only | |
2601 need a limited set of options. | |
2602 | |
2603 <p> | |
2604 To get started with SETUPENV it is recommended that a simple OECN$SETUP | |
2605 file with a minimal set of options for just a few entities be created. | |
2606 Starting small will give the opportunity to experiment with the utility | |
2607 to see how, or if, it can fit into your environment. | |
2608 | |
2609 <a name="heading_11.2.1"><h2>11.2.1 Entity Types</h2></a> | |
2610 | |
2611 <p> | |
2612 SETUPENV manages a user's context by assuming that any given process | |
2613 will have one context in each of the four entity "types". The current | |
2614 types of entities are: | |
2615 | |
2616 <ul> | |
2617 <li>DISTRICT | |
2618 <li>BUILDING | |
2619 <li>LIBRARY | |
2620 <li>OTHER | |
2621 </ul> | |
2622 | |
2623 <p> | |
2624 Therefore, a user may have one entity selected in each of these types | |
2625 and change the context for one entity without affecting the others. For | |
2626 example, a user might have a context in DISTRICT_A and BLG_B but be | |
2627 eligible to switch into several different LIBRARY entities. SETUPENV | |
2628 will allow the user to switch into different libraries without | |
2629 affecting the current district and building. | |
2630 | |
2631 <p> | |
2632 Entities can be linked together to form logical hierarchies. For | |
2633 example, a district entity might define the context for USPS, USAS, and | |
2634 EMIS. A building entity might define the context for McSIS. When a user | |
2635 selects a building, it may be desirable for the user's process to also | |
2636 select the corresponding district entity so that the EMIS logicals are | |
2637 switched automatically. SETUPENV can handle these relationships using | |
2638 the PARENT attribute in the OECN$SETUP file. Please refer to the PARENT | |
2639 attribute for more information. | |
2640 <p> | |
2641 | |
2642 <a name="heading_11.2.2"><h2>11.2.2 DCL Command Syntax</h2></a> | |
2643 <br> | |
2644 | |
2645 <p> | |
2646 SETUPENV must be defined as a foreign command: | |
2647 <br> | |
2648 | |
2649 <p> | |
2650 <table border=0> | |
2651 <tr> | |
2652 <td> | |
2653 <br> | |
2654 <pre> | |
2655 | |
2656 $ SETUPENV :== $OECN$:SETUPENV | |
2657 | |
2658 </pre> | |
2659 </table> | |
2660 | |
2661 <p> | |
2662 Syntax: | |
2663 <br> | |
2664 | |
2665 <p> | |
2666 <table border=0> | |
2667 <tr> | |
2668 <td> | |
2669 <br> | |
2670 <pre> | |
2671 | |
2672 $ SETUPENV [entry_code...] | |
2673 [/MENU] | |
2674 [/NEXT] | |
2675 [/RESET] | |
2676 [/LOGIN[=([SIS],[INFOHIO],[BY_ACCESS],[USERNAME[=n]])] | |
2677 [/TYPE={DISTRICT,BUILDING,OTHER,ALL] | |
2678 [/LOG] | |
2679 [/[NO]PROMPT] | |
2680 [/CATEGORIES={wildcard}] | |
2681 [/APPLICATION={application}] | |
2682 [/ARCHIVE=[archive_code]] | |
2683 [/[NO]RESTRICT_IRNS] | |
2684 [/PRINT] | |
2685 [/USE] | |
2686 [/BUNNY] | |
2687 [/FROG] | |
2688 | |
2689 | |
2690 </pre> | |
2691 </table> | |
2692 | |
2693 <ul> | |
2694 <li><strong>ENTRY_CODE</strong> indicates the entry(s) to be selected | |
2695 from the OECN$SETUP.INI file. The INI file indicates the environment to | |
2696 be established for each entry. Multiple entries may be set by enclosing | |
2697 the entry codes in quotes separated by commas. When setting multiple | |
2698 entries, the first entry is considered to be the primary entry. | |
2699 <li><strong>/MENU</strong> indicates the user should be presented a | |
2700 menu to select an entry based on their process security. /MENU is the | |
2701 default for interactive processes when there are no other qualifiers | |
2702 and no parameter specified. | |
2703 <li><strong>/RESET</strong> attempts to reset the current process to | |
2704 it's original state. Any "reset" entries existing on the INI file are | |
2705 used to determine which logicals should be reset. If there are no reset | |
2706 entries on the INI file, the LNM$FILE_DEV logical will be the only one | |
2707 returned to it's original state. | |
2708 <li><strong>/LOGIN</strong> instructs SETUPENV to attempt to determine | |
2709 the user's default login context. If a specific entry code(s) is | |
2710 specified with /LOGIN, the specified entry will override the defaults. | |
2711 The following flags may be included to control how SETUPENV/LOGIN | |
2712 determines the default entries: | |
2713 | |
2714 <ul> | |
2715 <li><strong>SIS</strong> searches the process' rightslist for | |
2716 identifiers in the format SIS_x. For the first such identifier "x" is | |
2717 used as the default entry. | |
2718 <li><strong>INFOHIO</strong> searches the process' rightslist for | |
2719 identifiers in the format INFOHIO_x. For the first such identifier "x" | |
2720 is used as the default entry. In order to avoid potential conflicts | |
2721 with SIS entry codes, SETUPENV will first look for an entry named | |
2722 "x_LIB". If and x_LIB entry is found, it will be used as the default | |
2723 InfOhio entry, otherwise just "x" will be used. | |
2724 <li><strong>BY_ACCESS</strong> indicates that SETUPENV should determine | |
2725 the user's default entry by checking security access to the entries. | |
2726 SETUPENV will scan OECN$SETUP file and find the first entry of each | |
2727 type (DISTRICT, BUILDING, LIBRARY, OTHER) to which the user has access | |
2728 making this the default. BY_ACCESS should only be used by DA Sites who | |
2729 have carefully placed proper identifiers on entries to allow access to | |
2730 appropriate users. | |
2731 <li><strong>USERNAME=n</strong> uses the first "n" characters of the | |
2732 username as the entry code. This is useful for sites who use a username | |
2733 prefix to indicate districts and who have set up matching entry codes | |
2734 in the OECN$SETUP file. | |
2735 </ul> | |
2736 <br>SETUPENV/LOGIN will also (unconditionally) search for an identifier | |
2737 called "SETUPENV_xxx". If the user has such an identifier, then it is | |
2738 always used as the default entry, superceding the default provided by | |
2739 the above flags. This serves as a means to provide a specific default | |
2740 for users who may have access to multiple entries. | |
2741 | |
2742 <p> | |
2743 <center> | |
2744 <table border=0 width=75%> | |
2745 <tr> | |
2746 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
2747 size=1 noshade> | |
2748 When /LOGIN is specified, SETUPENV will not issue errors if a default | |
2749 entry can not be found. This allows SETUPENV/LOGIN to be used in | |
2750 system-wide login procedures even for users who do not normally need a | |
2751 specific software context. </td> | |
2752 </tr> | |
2753 </table> | |
2754 </center> | |
2755 <li><strong>/NEXT</strong> indicates that the next entry should be | |
2756 selected based on the current or specified entry. If an entry is | |
2757 specified as a parameter, then the entry selected will be the one | |
2758 immediately following it. Otherwise, the values of the | |
2759 OECN$SETUP_CURRENT_* logicals are used to determine the current entry. | |
2760 The primary purpose of /NEXT is to allow DCL procedures to process all | |
2761 or selected entries sequentially. | |
2762 | |
2763 <p> | |
2764 <center> | |
2765 <table border=0 width=75%> | |
2766 <tr> | |
2767 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
2768 size=1 noshade> | |
2769 If /TYPE is not specified to indicate the type of the next entry, then | |
2770 the /TYPE defaults to the same type as the current entry | |
2771 (OECN$SETUP_ENTRY). That is, by default, /NEXT moves to the same type | |
2772 of entry as the current entry. If there is no current entry, then the | |
2773 default is DISTRICT. </td> | |
2774 </tr> | |
2775 </table> | |
2776 </center> | |
2777 <li><strong>/TYPE</strong> may be used in conjunction with /NEXT or | |
2778 /MENU to determine the type of entry that may be considered. For | |
2779 example, if /TYPE=DISTRICT is specified with /NEXT, then only district | |
2780 entries will be considered. The default for /NEXT is DISTRICT. The | |
2781 default for /MENU is ALL. | |
2782 <li><strong>/CATEGORIES</strong> may be used with /NEXT or /MENU to | |
2783 select only entries where the CATEGORIES attribute matches the | |
2784 specified wildcard. | |
2785 <li><strong>/APPLICATION</strong> may be used with /NEXT to select only | |
2786 entries containing the specified application. Only one application may | |
2787 be specified and it must exactly match an application specified on the | |
2788 entries APPLICATION attribute. | |
2789 <li><strong>/[NO]PROMPT</strong> causes the user's DCL prompt and OECN | |
2790 Menu prompt to be set to a value representing the entry(s) selected. | |
2791 /NOPROMPT is the default. | |
2792 <li><strong>/LOG</strong> indicates an informational message should be | |
2793 displayed indicating the entry selected. If multiple entries are set as | |
2794 a result of the command, only the primary entry is displayed. | |
2795 <li><strong>/ARCHIVE[=archive_code]</strong> indicates which archive is | |
2796 to be selected. If a specific archive is provided and it exists for the | |
2797 entry, then the logical and table definitions for the archive will be | |
2798 set. If no archive is specified, then the first archive for the | |
2799 selected entry will be used. If /ARCHIVE is specifed with /MENU, the | |
2800 archvives will be presented to the user as seperate choices on the menu. | |
2801 <li><strong>/RESTRICT_IRNS</strong> determines if SETUPENV should | |
2802 attempt to define the OECN$EMIS_RESTRICT_IRNS logical. This logical is | |
2803 set by checking all the entries which have a relationship (parent, | |
2804 child, or sibling) based on the PARENT attributes. For each such entry, | |
2805 the users access to the entries is checked (based on the IDENTIFIER | |
2806 attributes). If the user has access to the entry, then the IRN of the | |
2807 entry is added to the OECN$EMIS_RESTRIC_IRNS logical. | |
2808 <li><strong>/PRINT</strong> attempts to determine the user's default | |
2809 printer using a convention from NOACSC. The "owner" field for the | |
2810 current user is retrieved from SYSUAF. If the owner field contains a | |
2811 slash (/) the characters after the slash are tested to see if it | |
2812 contains a valid queue name. If not, "$PRINT" is appended to the string | |
2813 from the owner field and is again tested as a queue. If either value | |
2814 translates to a valid queue name (other than SYS$PRINT), then SYS$PRINT | |
2815 is defined as a logical to point to the queue. The OECN_PRT symbol is | |
2816 also defined to print to the queue. | |
2817 <li><strong>/EMIS</strong> places SETUPENV in "EMIS" mode. In this | |
2818 mode, SETUPENV simulates the behavior of EMIS_SELECT.COM. The | |
2819 OECN$EMIS_DBS file is read and handled in the same manner as | |
2820 EMIS_SELECT. In this mode, the meaning of the "entry code" parameter is | |
2821 the DBS code of the EMIS database, instead of a SETUPENV entry code. | |
2822 The following qualifiers are valid with /EMIS: | |
2823 | |
2824 <ul> | |
2825 <li>/NEXT | |
2826 <li>/RESET | |
2827 <li>/MENU | |
2828 <li>/CATEGORIES | |
2829 <li>/LOG | |
2830 </ul> | |
2831 <br>See the "EMIS_SELECT Compatibility" section for more information. | |
2832 <li><strong>/USE, /BUNNY, /FROG</strong> provide compatibility with the | |
2833 corresponding NOACSC's utilities. When one of these qualifiers is | |
2834 specified, the utility accepts the corresponding utilitie's qualifiers | |
2835 and converts them to the nearest SETUPENV equivalent. See the "NOACSC | |
2836 Compatibility" section for more information. | |
2837 </ul> | |
2838 | |
2839 <h2>Usage Notes</h2> | |
2840 | |
2841 <p> | |
2842 When /NEXT is used, if the specified or next entry cannot be found | |
2843 SETUPENV exits with an error severity. | |
2844 | |
2845 <p> | |
2846 After successfully selecting an entry, OECN_LOGIN.COM is executed to | |
2847 ensure the users OECN$x logicals are set correctly. If the DAS has | |
2848 established the OECN_LOGIN_EPILOGUE procedure, it will subsequently be | |
2849 executed. This provides a means for the DAS to customize the behavior | |
2850 and do any additional processing after an entry is selected. | |
2851 | |
2852 <p> | |
2853 Likewise, when /EMIS is specified, EMIS_SELECT_EPILOGUE and | |
2854 EMIS_SWITCH_FY will be invoked after successfully selecting a database. | |
2855 | |
2856 <a name="heading_11.3"><h1>11.3 Logicals Created By SETUPENV</h1></a> | |
2857 | |
2858 <p> | |
2859 After successfully selecting an entry, SETUPENV establishes a series of | |
2860 logicals (OECN$SETUP_*) to describe the current context and to maintain | |
2861 it's own context for subsequent invocations of SETUPENV. These logicals | |
2862 may be used by DCL procedures but should never be modified or | |
2863 deassigned (use SETUPENV/RESET to deassign the logicals if necessary). | |
2864 | |
2865 <p> | |
2866 The logical OECN$SETUP_ENTRY contains the current selected entry. This | |
2867 is the primary entry that was specified as a parameter, selected via | |
2868 the menu, or selected using /NEXT. | |
2869 | |
2870 <p> | |
2871 The logical OECN$SETUP_ARCHIVE contains the archive code if one was | |
2872 selected using /ARCHIVE or the menu. | |
2873 | |
2874 <p> | |
2875 One logical is defined for each of the entry types that has been | |
2876 selected. A user can have one context in up to four different "types" | |
2877 of entries: DISTRICT, BUILDING, LIBRARY, OTHER. For each type that has | |
2878 been selected, the corresponding logical will be defined: | |
2879 | |
2880 <ul> | |
2881 <li>OECN$SETUP_CURRENT_DISTRICT | |
2882 <li>OECN$SETUP_CURRENT_BUILDING | |
2883 <li>OECN$SETUP_CURRENT_LIBRARY | |
2884 <li>OECN$SETUP_CURRENT_OTHER | |
2885 </ul> | |
2886 | |
2887 <p> | |
2888 The logical will not exist for types that have not been selected. | |
2889 | |
2890 <p> | |
2891 The value of the OECN$SETUP_CURRENT_* logicals is a string that | |
2892 describes the selected entry. The format for the string entry is: | |
2893 | |
2894 <p> | |
2895 <table border=0> | |
2896 <tr> | |
2897 <td> | |
2898 <br> | |
2899 <pre> | |
2900 | |
2901 "entry_code,irn,categories,applications" | |
2902 | |
2903 Where: entry_code the entry for this type | |
2904 irn from IRN attribute | |
2905 categories space delimited list of categories | |
2906 from CATEGORIES attribute | |
2907 applications space delimited list of applications | |
2908 from APPLICATIONS attribute | |
2909 | |
2910 </pre> | |
2911 </table> | |
2912 | |
2913 <p> | |
2914 This string is formatted in a manner that is easily parsed using the | |
2915 F$ELEMENT lexical function. | |
2916 | |
2917 <p> | |
2918 The following logicals may also be defined depending on the selected | |
2919 entries relationship with other entries: | |
2920 | |
2921 <ul> | |
2922 <li><strong>OECN$SETUP_PARENT</strong>---Contains the PARENT entry for | |
2923 the current entry | |
2924 <li><strong>OECN$SETUP_CHILDREN</strong>---Contains a list, separated | |
2925 by commas, of the children for the current entry. That is, a list of | |
2926 entries which contain a PARENT pointing to the current entry. | |
2927 <li><strong>OECN$SETUP_SIBLINGS</strong>---Contains a list, separated | |
2928 by commas, of "siblings" (excluding the current entry). That is, a list | |
2929 of entries that share the same parent entry. | |
2930 </ul> | |
2931 | |
2932 <p> | |
2933 Any of the logicals that do not apply to an entry will not be defined | |
2934 (e.g. for a parent entry, the siblings logical will not be defined). | |
2935 | |
2936 <a name="heading_11.4"><h1>11.4 OECN$SETUP.INI</h1></a> | |
2937 | |
2938 <p> | |
2939 The OECN$SETUP initialization file defines the environment for various | |
2940 entities which use OECN (or other) software products. The default | |
2941 filename is OECN$CUSTOM:OECN$SETUP.INI. OECN$SETUP may be defined as a | |
2942 logical to override the location and filename. | |
2943 | |
2944 <p> | |
2945 Each "section" in the INI file describes an "entity". An entity might | |
2946 be a district, building, library or other entity where a specific | |
2947 context needs to be established. When the SETUPENV utility is executed | |
2948 to select an entity, the context is defined as specified in the rules | |
2949 for that section. | |
2950 | |
2951 <p> | |
2952 The parameters and formats for each section are as follows: | |
2953 | |
2954 <ul> | |
2955 <li><strong>SECTION={entity_code}</strong> <br>The SECTION statement | |
2956 begins a new entity definition. The entity code may be up to 12 | |
2957 alphanumeric digits. This is the code used to select the entry and is | |
2958 seen on the menu. This code must uniquely identify each entity | |
2959 regardless of type (i.e. You must not specify a district and building | |
2960 entity with the same code). | |
2961 <li><strong>DESCRIPTION="text"</strong> <br>Text description for menu | |
2962 <li><strong>TYPE={DISTRICT|BUILDING|LIBRARY|OTHER}</strong> | |
2963 <br>Indicates the type of entity. If TYPE is not specified, the default | |
2964 is DISTRICT. A user can have context in each of these types at one time. | |
2965 <li><strong>CATEGORIES="string"</strong> <br>An unformatted string that | |
2966 may further define the entry. Except where otherwise indicated, the | |
2967 categories are site defined. It might be used as flags to indicate | |
2968 processes that may be run against the entry. Entries may be selected by | |
2969 category using the /CATEGORIES qualifer. The categories for each | |
2970 selected type is also returned to DCL via the OECN$SETUP_CURRENT_* | |
2971 logicals. | |
2972 <li><strong>APPLICATIONS={app}[,...]</strong> <br>List of applications | |
2973 used by the entry. Each application is a site defined code of up to 10 | |
2974 characters. Five applications may be specified on each APPLICATIONS | |
2975 line. Multiple APPLICATIONS lines may be specified if needed. | |
2976 <br><strong>Note:</strong> Although the applications are site defined, | |
2977 the SSDT and other software providers may require specific application | |
2978 codes. It is recommended that you use these codes for established | |
2979 applications: | |
2980 | |
2981 <blockquote> | |
2982 USPS | |
2983 <br> USAS | |
2984 <br> EMIS | |
2985 <br> EIS | |
2986 <br> VIS | |
2987 <br> SIS (McSIS) | |
2988 <br> INFOHIO | |
2989 </blockquote> | |
2990 <li><strong>IRN={irn}</strong> <br>Optional IRN for the entry. Returned | |
2991 to DCL via the OECN$SETUP_CURRENT logical and optionally used in the | |
2992 OECN$EMIS_RESTRICT_IRNS logical. | |
2993 <li><strong>PROMPT="prompt string"</strong> <br>Optionally specifies | |
2994 the prompt string to be used if this entry is selected. This value | |
2995 overrides the default prompt. The default prompt is the list of entry | |
2996 codes currently selected. | |
2997 <li><strong>ARCHIVE={archive_code},[description],[table]...</strong> | |
2998 <br> Declares this entity to have an "archive". Archives can be | |
2999 selected using the /ARCHIVE qualifier. If a code is specified on the | |
3000 /ARCHIVE qualifier, then the corresponding archive items are also | |
3001 processed when the entry is selected. When /ARCHIVE is used with /MENU, | |
3002 then the archive definitions are listed on the menu as separate items | |
3003 which the user can select. <br>The optional table parameter indicates | |
3004 additional table(s) which should be placed in the LNM$FILE_DEV search | |
3005 path. If specified, they will be placed on the path before the other | |
3006 shared tables (TABLE and GROUP_TABLE). This permits definitions for | |
3007 archive logicals to be placed in special shared logical tables for use | |
3008 as an archive. <br>A multiple ARCHIVE attributes might be included for | |
3009 each fiscal year, or it may be a generic archive setting which requires | |
3010 an additional step (outside of SETUPENV) to complete establishing the | |
3011 archive environment. The usefulness of this attribute depends largely | |
3012 on how the DAS currently has archives defined and whether/how they are | |
3013 user selectable. | |
3014 <li><strong>LOGICAL={logical_name[@archive_code]}[,CONCEALED] | |
3015 [,IF_EXISTS],[values]...</strong> <br> Specifies a process logical to | |
3016 define. Multiple values may be included to define a search list. If a | |
3017 logical name is specified without any values, then the logical will be | |
3018 deassigned. <br> If the CONCEALED keyword is included, then the logical | |
3019 will be concealed. <br><strong>Conditional Logicals</strong> <br>The | |
3020 IF_EXISTS keyword causes the logical to be defined conditionally based | |
3021 on the presence of the file specified in the value. The logical will | |
3022 only be created if the file specified in the first value exists. In | |
3023 this case, the value should contain a complete filespec. For example an | |
3024 EMIS entry might specify: | |
3025 | |
3026 <p> | |
3027 <table border=0> | |
3028 <tr> | |
3029 <td> | |
3030 <br> | |
3031 <pre> | |
3032 | |
3033 LOGICAL=OECN$EMIS_STU_SEARCH,IF_EXISTS,OECN$EMIS$DTA:EMSALT.IDX | |
3034 LOGICAL=OECN$EMIS$DTA,CONCEALED,EMIS_ROOT:[LIVE] | |
3035 </pre> | |
3036 </table> | |
3037 | |
3038 <br> In this case, OECN$EMIS_STU_SEARCH will only be defined if the | |
3039 OECN$EMIS$DTA:EMSALT.IDX file exists. | |
3040 | |
3041 <p> | |
3042 <center> | |
3043 <table border=0 width=75%> | |
3044 <tr> | |
3045 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3046 size=1 noshade> | |
3047 SETUPENV defines logicals in the reverse order that they appear in the | |
3048 section. Therefore, conditional logicals should be placed prior to any | |
3049 logicals which they refer to. </td> | |
3050 </tr> | |
3051 </table> | |
3052 </center> | |
3053 <br><strong>Archive Logicals</strong> <br>If an optional archive code | |
3054 is included after the logical name (by specifying the archive code | |
3055 after an "@") then the logical will only be defined if the | |
3056 corresponding ARCHIVE code is selected (via the /ARCHIVE qualifier or | |
3057 the menu). Logicals which contain the archive code will be processed | |
3058 after any normal logicals and therefore will supercede any previous | |
3059 definition of the same logical. <br> The archive code on each logical | |
3060 should match an archive code specified in an ARCHIVE attribute. The | |
3061 ARCHIVE attribute will provide the description for the menu when the | |
3062 archive is displayed. | |
3063 <li><strong>SYMBOL={symbol_name}[,symbol_value]</strong> <br>Sets a | |
3064 global symbol. If a value is not specified, then the symbol is deleted. | |
3065 <strong>Note:</strong> The symbol and value must be made up of | |
3066 printable characters. Non-printable values may not be included (in the | |
3067 current version of SETUPENV). | |
3068 <li><strong>PARENT={entry}</strong> <br>Indicates a parent entry of | |
3069 this entry. Parent entries may be nested (i.e. parents of an entry may | |
3070 themselves have a parent). This facility allows multiple entries to | |
3071 share another entry as a parent. For example, if all buildings share | |
3072 the district definition of EMIS_ROOT, then EMIS_ROOT can be defined in | |
3073 the district entry and each building specify the district as PARENT. | |
3074 <br>When the user selects an entry which contains the PARENT attribute, | |
3075 then settings for the parent will be set prior to the logicals for the | |
3076 selected entry. Therefore, selecting a building entry will also | |
3077 automatically select the corresponding district (parent) entry. | |
3078 <li><strong>GROUP_TABLE={octal_group_number}</strong> <br>Specifies | |
3079 this entry uses a GROUP logical name table for some of it's logical | |
3080 definitions. This setting only applies if someone outside the group | |
3081 attempts to set this entry. If so, the entry's group table will be | |
3082 added to the process' LNM$FILE_DEV path. Otherwise, if the user is in | |
3083 the specified group, it's assumed that the default definition of | |
3084 LNM$FILE_DEV already includes LNM$GROUP. | |
3085 <li><strong>TABLE={logical_name_table},...</strong> <br>Indicates that | |
3086 this entry uses a sharable logical name table(s) (other than a group | |
3087 table) for some of its logicals. When this entry is selected, the | |
3088 logical table will be added to the processes LNM$FILE_DEV logical path. | |
3089 Up to four tables may be specified. | |
3090 <li><strong>IDENTIFIER={ident_specification}</strong> <br>Indicates an | |
3091 ACE entry used to control access to the entry. This is used when /MENU | |
3092 is specified to control which entries the user is allowed to see. It is | |
3093 also used when determining which entry to select as default when | |
3094 /LOGIN=BY_ACCESS is specified. <br>The format of the identifier | |
3095 specification is the same as the "IDENTIFIER=" portion of a standard | |
3096 identifier ACE entry. If the specification includes a comma then the | |
3097 specification must be enclosed in quotes. Multiple IDENTIFIER lines may | |
3098 be included for an entry. If so, standard ACL processing applies for | |
3099 determining access. Examples: | |
3100 | |
3101 <blockquote> | |
3102 IDENTIFIER="[101,*]" | |
3103 <br>IDENTIFIER=SIS_BLDA | |
3104 <br>IDENTIFIER="OECN_USAS+ARCHBOLD_FISCAL" | |
3105 </blockquote> | |
3106 | |
3107 <p> | |
3108 <center> | |
3109 <table border=0 width=75%> | |
3110 <tr> | |
3111 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3112 size=1 noshade> | |
3113 IDENTIFIER does not necessarily restrict users from selecting a | |
3114 specific entry. If a specific entry is specified on the command line | |
3115 (manually or via a DCL procedure), SETUPENV will establish the context | |
3116 regardless of the IDENTIFIER attributes. This is useful for sites who | |
3117 do not need, or do not desire, to code specific identifiers into the | |
3118 OECN$SETUP file. </td> | |
3119 </tr> | |
3120 </table> | |
3121 </center> | |
3122 </ul> | |
3123 | |
3124 <a name="heading_11.4.1"><h2>11.4.1 Special "Reset" Entries</h2></a> | |
3125 | |
3126 <p> | |
3127 Prior to setting any given entry, SETUPENV will attempt to process | |
3128 special sections named "$RESET_type". If a $RESET section of the | |
3129 appropriate type exists in the INI file, it will be processed prior to | |
3130 setting an entry. | |
3131 | |
3132 <p> | |
3133 The following reset sections may be specified: | |
3134 | |
3135 <ul> | |
3136 <li>$RESET_DISTRICT | |
3137 <li>$RESET_BUILDING | |
3138 <li>$RESET_LIBRARY | |
3139 <li>$RESET_OTHER | |
3140 </ul> | |
3141 | |
3142 <p> | |
3143 When a user selects an entry of a specific type, the corresponding | |
3144 reset section is invoked prior to setting the environment for the | |
3145 selected entry. | |
3146 | |
3147 <p> | |
3148 This is useful in cases where some entries specify a process logical | |
3149 but others use a group logical. In order to switch from one entry to | |
3150 another, it is necessary to deassign the common logical from the | |
3151 process table prior to switching to the group logicals. | |
3152 | |
3153 <p> | |
3154 For example, consider that DISTRICT_A has a process logical definition | |
3155 of OECN$DTA. But DISTRICT_B has a group logical for OECN$DTA. Switching | |
3156 from DISTRICT_A to DISTRICT_B requires that the OECN$DTA be deassigned | |
3157 so the group logical is visable. SETUPENV does not attempt to keep | |
3158 track of this, rather it permits you to create a $RESET entry for each | |
3159 type to deassign logicals appropriate for your site. For example, | |
3160 $RESET could be defined as: | |
3161 | |
3162 <blockquote> | |
3163 SECTION=$RESET_DISTRICT | |
3164 <br>LOGICAL=OECN$DTA | |
3165 <br>LOGICAL=OECN$OUT,"SYS$DISK:[]" | |
3166 </blockquote> | |
3167 | |
3168 <p> | |
3169 The above entry would cause SETUPENV to deassign OECN$DTA and define | |
3170 OECN$OUT to the default directory prior to setting any valid entry. In | |
3171 general, you should explicitly deassign any logicals in the reset | |
3172 section that are defined in any entry of the same type. | |
3173 | |
3174 <a name="heading_11.4.2"><h2>11.4.2 Sample OECN$SETUP File</h2></a> | |
3175 | |
3176 <p> | |
3177 Below is a very simple OECN$SETUP.INI file which defines entries for | |
3178 one district and two buildings. The setup file can contain many such | |
3179 entries for as many districts and buildings provided that the entry | |
3180 codes are unique. | |
3181 | |
3182 <p> | |
3183 <table border=0> | |
3184 <tr> | |
3185 <td> | |
3186 <br> | |
3187 <pre> | |
3188 | |
3189 SECTION=SAMPLE | |
3190 TYPE=DISTRICT | |
3191 DESCRIPTION="Sample City Schools" | |
3192 LOGICAL=EMIS_ROOT, FSA:[EMIS_SAMPLE.],CONCEALED | |
3193 LOGICAL=OECN$DTA, FSA:[SAMPLE] | |
3194 LOGICAL=OECN$FORM_DIRDEP, OECN$PAY:DIRPRT.FRM | |
3195 | |
3196 SECTION=SAME | |
3197 TYPE=BUILDING | |
3198 DESCRIPTION="Sample Elementary School" | |
3199 PARENT=SAMPLE | |
3200 TABLE=SIS_SAME | |
3201 IDENTIFIER=SIS_SAME | |
3202 | |
3203 SECTION=SAMH | |
3204 TYPE=BUILDING | |
3205 DESCRIPTION="Sample High School" | |
3206 PARENT=SAMPLE | |
3207 TABLE=SIS_SAMH | |
3208 IDENTIFIER=SIS_SAMH | |
3209 | |
3210 SECTION=$RESET_DISTRICT | |
3211 LOGICAL=EMIS_ROOT | |
3212 LOGICAL=OECN$DTA | |
3213 LOGICAL=OECN$FORM_DIRDEP | |
3214 </pre> | |
3215 </table> | |
3216 | |
3217 <p> | |
3218 In this example, the buildings point to the district using the PARENT | |
3219 attribute. This creates the appropriate relationship. When the user | |
3220 selects one of the buildings, the corresponding logicals from the | |
3221 district entry will also be set. | |
3222 | |
3223 <p> | |
3224 Also notice that the district entry uses LOGICAL's to define the | |
3225 individual logicals. But the building entries use shared logical tables | |
3226 created outside of SETUPENV. | |
3227 | |
3228 <p> | |
3229 The special $RESET_DISTRICT section is provided to ensure that the | |
3230 district logical get reset appropriately prior to setting an entry. | |
3231 | |
3232 <a name="heading_11.4.3"><h2>11.4.3 Special "APPLICATION" Entries</h2></a> | |
3233 | |
3234 <p> | |
3235 If an entry is defined with one or more APPLICATION attributes, then | |
3236 SETUPENV will search for an entry named "$APP_app", where "app" is the | |
3237 application code. This allows logicals, symbols or tables that are | |
3238 common for an application to be grouped into shared entries. Consider | |
3239 the following example: | |
3240 | |
3241 <p> | |
3242 <table border=0> | |
3243 <tr> | |
3244 <td> | |
3245 <br> | |
3246 <pre> | |
3247 SECTION=DISTRICT_A | |
3248 TYPE=DISTRICT | |
3249 APPLICATION=USAS | |
3250 LOGICAL=DISTRICT_ROOT,CONCEAL,DISK1:[DISTRICT_A.] | |
3251 | |
3252 SECTION=DISTRICT_B | |
3253 TYPE=DISTRICT | |
3254 APPLICATION=USAS | |
3255 LOGICAL=DISTRICT_ROOT,CONCEAL,DISK1:[DISTRICT_B.] | |
3256 | |
3257 SECTION=DISTRICT_C | |
3258 TYPE=DISTRICT | |
3259 LOGICAL=DISTRICT_ROOT,CONCEAL,DISK1:[DISTRICT_C.] | |
3260 | |
3261 SECTION=$APP_USAS | |
3262 LOGICAL=OECN$DTA,DISTRICT_ROOT:[DATA] | |
3263 </pre> | |
3264 </table> | |
3265 | |
3266 <p> | |
3267 In this example, the DISTRICT_ROOT logical would be defined for all | |
3268 three districts. However, OECN$DTA would only be defined for DISTRICT_A | |
3269 and DISTRICT_B because they have APPLICATION=USAS. DISTRICT_C does not | |
3270 have the application attribute and so would not invoke the $APP_USAS | |
3271 entry. | |
3272 | |
3273 <p> | |
3274 <center> | |
3275 <table border=0 width=75%> | |
3276 <tr> | |
3277 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3278 size=1 noshade> | |
3279 Note: The above is for example only. In practice, OECN$DTA might be | |
3280 more efficiently defined as a system logical. </td> | |
3281 </tr> | |
3282 </table> | |
3283 </center> | |
3284 | |
3285 <p> | |
3286 Application entries do not have a corresponding "reset" section. | |
3287 Logicals defined in this manner may need to be included in the | |
3288 appropriate "$RESET_type" section to ensure they are reset. | |
3289 | |
3290 <a name="heading_11.4.4"><h2>11.4.4 Special "INCLUDE" Section</h2></a> | |
3291 | |
3292 <p> | |
3293 A special section may be specified in any INI file called $INCLUDE. | |
3294 This section may specify other INI files to be included and processed | |
3295 with the primary INI file. The $INCLUDE section may only contain "FILE" | |
3296 attributes to indicate the file(s) to be included. | |
3297 | |
3298 <p> | |
3299 The $INCLUDE section permits INI files to be split into manageable | |
3300 segments or for INI files to be generated automatically. For example, | |
3301 you might create one INI file for each district and it's associated | |
3302 buildings. Or a separate utility may have information for creating | |
3303 subsets of the INI file. For example, the primary OECN$SETUP.INI might | |
3304 have: | |
3305 | |
3306 <p> | |
3307 <table border=0> | |
3308 <tr> | |
3309 <td> | |
3310 <br> | |
3311 <pre> | |
3312 SECTION=$INCLUDE | |
3313 FILE=OECN$CUSTOM:DISTRICT_A.INI | |
3314 FILE=OECN$CUSTOM:DISTRICT_B.INI | |
3315 FILE=OECN$CUSTOM:DISTRICT_C.INI | |
3316 </pre> | |
3317 </table> | |
3318 | |
3319 <p> | |
3320 Each INI file may also have an $INCLUDE section to indicate other files | |
3321 to be included. There is a maximum of 100 files that may be included | |
3322 throughout all INI files. | |
3323 | |
3324 <p> | |
3325 <center> | |
3326 <table border=0 width=75%> | |
3327 <tr> | |
3328 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3329 size=1 noshade> | |
3330 There is a performance penalty incurred for splitting INI files into | |
3331 many parts. SETUPENV must read the primary and all included files each | |
3332 time it is invoked. </td> | |
3333 </tr> | |
3334 </table> | |
3335 </center> | |
3336 | |
3337 <p> | |
3338 Duplicate entries are handled by merging the entries together. For | |
3339 example, if two included files both contain an entry for DISTRICT_A, | |
3340 then the attributes (e.g. LOGICAL attributes ) from both sections will | |
3341 be combined into a single entry. If duplicate entries specify | |
3342 attributes that only occur once per entry, then the last INI file to be | |
3343 loaded supercedes the previous value. | |
3344 | |
3345 <p> | |
3346 The INI files are NOT processed as they are encountered in the file. | |
3347 Rather they represent a list of INI files that need to be processed. | |
3348 SETUPENV will complete processing of the current file prior to begin | |
3349 processing the next file. Therefore, included INI files will always be | |
3350 processed after the file that included it (although perhaps not | |
3351 immediately after). In general, you should not depend on files being | |
3352 processed in any particular order. | |
3353 | |
3354 <a name="heading_11.4.5"><h2>11.4.5 Limits</h2></a> | |
3355 | |
3356 <p> | |
3357 Certain limits which apply to the OECN$SETUP.INI file are shown in the | |
3358 table below. Limits are 'per entry' unless otherwise noted. <p> | |
3359 | |
3360 <table border=3> | |
3361 <caption><a name="Table_11-1"><strong>Table 11-1 wide</strong></a></caption> | |
3362 <tr> | |
3363 <th align=center>Attribute </th> | |
3364 <th align=center>Maximum Length </th> | |
3365 <th align=center>Limit </th> | |
3366 </tr> | |
3367 <tr> | |
3368 <td> | |
3369 FILE (in $INCLUDE section) | |
3370 </td> | |
3371 <td> | |
3372 50 | |
3373 </td> | |
3374 <td> | |
3375 100 total in all files | |
3376 </td> | |
3377 </tr> | |
3378 <tr> | |
3379 <td> | |
3380 SECTION | |
3381 </td> | |
3382 <td> | |
3383 12 | |
3384 </td> | |
3385 <td> | |
3386 500 total in all files | |
3387 </td> | |
3388 </tr> | |
3389 <tr> | |
3390 <td> | |
3391 DESC | |
3392 </td> | |
3393 <td> | |
3394 40 | |
3395 </td> | |
3396 <td> | |
3397 1 | |
3398 </td> | |
3399 </tr> | |
3400 <tr> | |
3401 <td> | |
3402 TYPE | |
3403 </td> | |
3404 <td> | |
3405 12 | |
3406 </td> | |
3407 <td> | |
3408 1 | |
3409 </td> | |
3410 </tr> | |
3411 <tr> | |
3412 <td> | |
3413 IRN | |
3414 </td> | |
3415 <td> | |
3416 6 | |
3417 </td> | |
3418 <td> | |
3419 1 | |
3420 </td> | |
3421 </tr> | |
3422 <tr> | |
3423 <td> | |
3424 CATEGORIES | |
3425 </td> | |
3426 <td> | |
3427 40 | |
3428 </td> | |
3429 <td> | |
3430 1 | |
3431 </td> | |
3432 </tr> | |
3433 <tr> | |
3434 <td> | |
3435 APPLICATIONS | |
3436 </td> | |
3437 <td> | |
3438 10 | |
3439 </td> | |
3440 <td> | |
3441 15 (five per line) | |
3442 </td> | |
3443 </tr> | |
3444 <tr> | |
3445 <td> | |
3446 ARCHIVE | |
3447 </td> | |
3448 <td> | |
3449 6 | |
3450 </td> | |
3451 <td> | |
3452 20 | |
3453 </td> | |
3454 </tr> | |
3455 <tr> | |
3456 <td> | |
3457 ARCHIVE (tables) | |
3458 </td> | |
3459 <td> | |
3460 32 | |
3461 </td> | |
3462 <td> | |
3463 3 per archive | |
3464 </td> | |
3465 </tr> | |
3466 <tr> | |
3467 <td> | |
3468 PROMPT | |
3469 </td> | |
3470 <td> | |
3471 40 | |
3472 </td> | |
3473 <td> | |
3474 1 | |
3475 </td> | |
3476 </tr> | |
3477 <tr> | |
3478 <td> | |
3479 IDENTIFIERS | |
3480 </td> | |
3481 <td> | |
3482 80 | |
3483 </td> | |
3484 <td> | |
3485 unlimited * | |
3486 </td> | |
3487 </tr> | |
3488 <tr> | |
3489 <td> | |
3490 LOGICAL (name) | |
3491 </td> | |
3492 <td> | |
3493 50 | |
3494 </td> | |
3495 <td> | |
3496 unlimited * | |
3497 </td> | |
3498 </tr> | |
3499 <tr> | |
3500 <td> | |
3501 LOGCIAL (value) | |
3502 </td> | |
3503 <td> | |
3504 80 | |
3505 </td> | |
3506 <td> | |
3507 4 per logical | |
3508 </td> | |
3509 </tr> | |
3510 <tr> | |
3511 <td> | |
3512 SYMBOL (name) | |
3513 </td> | |
3514 <td> | |
3515 24 | |
3516 </td> | |
3517 <td> | |
3518 unlimited * | |
3519 </td> | |
3520 </tr> | |
3521 <tr> | |
3522 <td> | |
3523 SYMBOL (value) | |
3524 </td> | |
3525 <td> | |
3526 50 | |
3527 </td> | |
3528 <td> | |
3529 1 per symbol | |
3530 </td> | |
3531 </tr> | |
3532 <tr> | |
3533 <td> | |
3534 TABLE | |
3535 </td> | |
3536 <td> | |
3537 50 | |
3538 </td> | |
3539 <td> | |
3540 unlimited * | |
3541 </td> | |
3542 </tr> | |
3543 <tr> | |
3544 <td> | |
3545 GROUP | |
3546 </td> | |
3547 <td> | |
3548 Octal Value | |
3549 </td> | |
3550 <td> | |
3551 1 | |
3552 </td> | |
3553 </tr> | |
3554 <tr> | |
3555 <td> | |
3556 PARENT | |
3557 </td> | |
3558 <td> | |
3559 12 | |
3560 </td> | |
3561 <td> | |
3562 1 | |
3563 </td> | |
3564 </tr> | |
3565 </table> | |
3566 | |
3567 <p> | |
3568 <center> | |
3569 <table border=0 width=75%> | |
3570 <tr> | |
3571 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3572 size=1 noshade> | |
3573 * = Attributes which are "unlimited" are limited by virtual memory | |
3574 available to the user. Very large INI files with large numbers of | |
3575 logicals or symbols may exhaust virtual memory. </td> | |
3576 </tr> | |
3577 </table> | |
3578 </center> | |
3579 | |
3580 <a name="heading_11.5"><h1>11.5 EMIS_SELECT Compatibility</h1></a> | |
3581 | |
3582 <p> | |
3583 The /EMIS qualifier provides functional compatibility with the | |
3584 EMIS_SELECT.COM procedure. In this mode, SETUPENV will read the | |
3585 existing OECN$EMIS_DBS file and convert it to equivalent setup entries. | |
3586 The primary advantage of using SETUPENV over EMIS_SELECT is it's | |
3587 ability to use the /NEXT qualifier to process databases sequentially. | |
3588 SETUPENV also provides a slightly improved user interface over the DCL | |
3589 version. | |
3590 | |
3591 <p> | |
3592 <center> | |
3593 <table border=0 width=75%> | |
3594 <tr> | |
3595 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3596 size=1 noshade> | |
3597 SETUPENV/EMIS can be used even if the DAS has not created an | |
3598 OECN$SETUP.INI file. </td> | |
3599 </tr> | |
3600 </table> | |
3601 </center> | |
3602 | |
3603 <p> | |
3604 When SETUPENV/EMIS reads the OECN$EMIS_DBS, it creates a special entry | |
3605 which is equavalent to: | |
3606 | |
3607 <p> | |
3608 <table border=0> | |
3609 <tr> | |
3610 <td> | |
3611 <br> | |
3612 <pre> | |
3613 SECTION=$EMIS_dbscode | |
3614 DESCRIPTION=description from DBS | |
3615 CATEGORIES=RP_x FY_fy flags ! See below | |
3616 LOGICAL=OECN$EMIS$DTA,dev:[dir] ! From DBS line | |
3617 IDENTIFIER=OECN_SYSMAN ! If the DBS line contained "HIDE" | |
3618 </pre> | |
3619 </table> | |
3620 | |
3621 <p> | |
3622 The CATEGORIES is constructed based on the optional reporting period | |
3623 and flags parameter from the DBS line. The CATAGORIES value will always | |
3624 be in the format "RP_x FY_fy flags". Where x is the reporting period | |
3625 and "fy" is the fiscal year from the EMIS configuration. If the DBS | |
3626 included any additional flags (other than HIDE), they will also be | |
3627 included in the categories. | |
3628 | |
3629 <p> | |
3630 One implication of the above is that the /CATEGORIES qualifier can be | |
3631 used to select specific reporting periods. For example: | |
3632 | |
3633 <p> | |
3634 <table border=0> | |
3635 <tr> | |
3636 <td> | |
3637 <br> | |
3638 <pre> | |
3639 $ SETUPENV/EMIS/NEXT/CATEGORIES="*RP_N*" | |
3640 </pre> | |
3641 </table> | |
3642 | |
3643 <p> | |
3644 Would select the next EMIS database for reporting period N. | |
3645 | |
3646 <p> | |
3647 <center> | |
3648 <table border=0 width=75%> | |
3649 <tr> | |
3650 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3651 size=1 noshade> | |
3652 SETUPENV will invoke the DA Site's EMIS_SELECT_EPILOGUE procedure if it | |
3653 exists. However, the EMIS_SELECT_PROLOGUE is not supported. DA Sites | |
3654 that depend on the prologue procedure should contact the SSDT for a | |
3655 work around. </td> | |
3656 </tr> | |
3657 </table> | |
3658 </center> | |
3659 | |
3660 <a name="heading_11.5.1"><h2>11.5.1 Converting OECN$EMIS_DBS to OECN$SETUP</h2></a> | |
3661 | |
3662 <p> | |
3663 It is possible to completely convert from using the OECN$EMIS_DBS file | |
3664 to corresponding entries in OECN$SETUP.INI. To do so, simply create | |
3665 sections in the OECN$SETUP file as shown in the previous section. The | |
3666 entry code must be prefixed with "$EMIS_". The corresponding code | |
3667 should be removed from OECN$EMIS_DBS, otherwise they will both be | |
3668 processed. | |
3669 | |
3670 <p> | |
3671 To retain compatibility with EMIS_SELECT, you should be certain to | |
3672 define the CATEGORIES attribute in the same format as shown. When | |
3673 entries are stored in the OECN$SETUP file, SETUPENV will not access the | |
3674 EMIS database to retrieve the fiscal year, therefore you should | |
3675 explicitly include FY_fy in the CATEGORIES attribute. | |
3676 | |
3677 <p> | |
3678 One advantage of converting DBS entries into OECN$SETUP is that the | |
3679 entry definitions are not limited to defining a single logical | |
3680 (OECN$EMIS$DTA). The $EMIS_ entries can contain any other valid | |
3681 attribute types, including TABLE, APPLICATION, SYMBOL, etc. | |
3682 | |
3683 <p> | |
3684 <center> | |
3685 <table border=0 width=75%> | |
3686 <tr> | |
3687 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
3688 size=1 noshade> | |
3689 At the time of this writing, the original EMIS_SELECT.COM procedure is | |
3690 still invoked by the EMIS_SELECT menu option. Therefore, if you wish to | |
3691 switch to SETUPENV immediately, you would have to modify the EMIS menu | |
3692 or customize the EMIS_SELECT.COM procedure. In the future, | |
3693 EMIS_SELECT.COM will be modified by the SSDT to use SETUPENV/EMIS | |
3694 instead of the current DCL procedure. </td> | |
3695 </tr> | |
3696 </table> | |
3697 </center> | |
3698 | |
3699 <a name="heading_11.6"><h1>11.6 NOACSC Compatiblity</h1></a> | |
3700 | |
3701 <p> | |
3702 SETUPENV is similar to the USE, BUNNY, and FROG utilities provided by | |
3703 NOACSC. In some respects SETUPENV is based on these utilities. While | |
3704 SETUPENV is not 100% compatible with these utilities, it does attempt | |
3705 to simulate most of the behaviors and should be able to co-exist with | |
3706 them. | |
3707 | |
3708 <p> | |
3709 To provide an easier transition for sites who are using NOACSC's | |
3710 utilities, SETUPENV also provides command line compatibility with the | |
3711 utilities. The following sections provide information regarding | |
3712 compatibility with each of the utilities. | |
3713 | |
3714 <p> | |
3715 Symbols may be established for each of the utilities to invoke SETUPENV | |
3716 in the appropriate compatibility mode: | |
3717 | |
3718 <p> | |
3719 <table border=0> | |
3720 <tr> | |
3721 <td> | |
3722 <br> | |
3723 <pre> | |
3724 USE :== $OECN$:SETUPENV/USE | |
3725 BUNNY :== $OECN$:SETUPENV/BUNNY | |
3726 FROG :== $OECN$:SETUPENV/FROG | |
3727 </pre> | |
3728 </table> | |
3729 | |
3730 <p> | |
3731 This should allow SETUPENV to be used without modifying any existing | |
3732 command procedures. | |
3733 | |
3734 <a name="heading_11.6.1"><h2>11.6.1 USE Compatibliity</h2></a> | |
3735 | |
3736 <p> | |
3737 If /USE is specified as the first qualifier to SETUPENV, then the | |
3738 original USE qualifiers are accepted. The table below lists the USE | |
3739 qualifiers and the corresponding qualifier/behavor for SETUPENV. | |
3740 /PROMPT is the default for /USE. | |
3741 | |
3742 <p> | |
3743 The SETUPENV /PRINTER qualifier is the default. However, instead of | |
3744 defining SYS$PRINT, LCL$PRINT is defined to point the queue from the | |
3745 owner field. | |
3746 | |
3747 <table border=3> | |
3748 <tr> | |
3749 <th align=center>Qualifier </th> | |
3750 <th align=center>SETUPENV Implementation </th> | |
3751 </tr> | |
3752 <tr> | |
3753 <td> | |
3754 /OUTPUT | |
3755 </td> | |
3756 <td> | |
3757 Not implemented | |
3758 </td> | |
3759 </tr> | |
3760 <tr> | |
3761 <td> | |
3762 /ARCHIVE=nnnn | |
3763 </td> | |
3764 <td> | |
3765 /ARCHIVE=nnnn | |
3766 </td> | |
3767 </tr> | |
3768 <tr> | |
3769 <td> | |
3770 /HOME | |
3771 </td> | |
3772 <td> | |
3773 /RESET | |
3774 </td> | |
3775 </tr> | |
3776 <tr> | |
3777 <td> | |
3778 /PRIMARY_RUN | |
3779 </td> | |
3780 <td> | |
3781 /LOGIN=(SIS,INFOHIO,USERNAME=2)/NOPROMPT | |
3782 </td> | |
3783 </tr> | |
3784 </table> | |
3785 | |
3786 <h2>Notable Differences:</h2> | |
3787 | |
3788 <ul> | |
3789 <li>The USE default for /ARCHIVE is provided by the .CLD file (which is | |
3790 changed annually to provide a new default). SETUPENV's default is the | |
3791 first ARCHIVE for the entry. Therefore, to remain compatible with USE, | |
3792 archives should be placed with the most recent year first in the | |
3793 entry's section. | |
3794 <li>USE determines which logicals to set based on the security | |
3795 identfiers held by the user (e.g. OECN$EIS$DTA is only set if OECN_EIS | |
3796 is held). SETUPENV sets all logicals specified for the entry regardless | |
3797 of security identifiers. | |
3798 <li>SETUPENV does not set PMDF_SIGNATURE. Sites depending on this | |
3799 should add the following line to SYLOGIN: | |
3800 | |
3801 <p> | |
3802 <table border=0> | |
3803 <tr> | |
3804 <td> | |
3805 <br> | |
3806 <pre> | |
3807 | |
3808 $ if f$search("SYS$LOGIN:PMDF_SIGNATURE.DOC").nes."" - | |
3809 then define PMDF_SIGNATURE "@SYS$LOGIN:PMDF_SIGNATURE.DOC" | |
3810 | |
3811 </pre> | |
3812 </table> | |
3813 | |
3814 </ul> | |
3815 | |
3816 <a name="heading_11.6.2"><h2>11.6.2 BUNNY Compatibility</h2></a> | |
3817 | |
3818 <p> | |
3819 If /BUNNY is specified as the first qualifier to SETUPENV, then the | |
3820 original BUNNY qualifiers are accepted. | |
3821 | |
3822 <p> | |
3823 The SETUPENV defaults when /BUNNY is specified are: | |
3824 | |
3825 <p> | |
3826 <table border=0> | |
3827 <tr> | |
3828 <td> | |
3829 <br> | |
3830 <pre> | |
3831 $ SETUPENV/BUNNY/PROMPT/EMIS=NORESTRICT_IRNS | |
3832 </pre> | |
3833 </table> | |
3834 | |
3835 <p> | |
3836 These defaults are affected by the original BUNNY qualifiers per the | |
3837 following table. | |
3838 <p> | |
3839 | |
3840 <table border=3> | |
3841 <tr> | |
3842 <th align=center>Qualifier </th> | |
3843 <th align=center>SETUPENV Implementation </th> | |
3844 </tr> | |
3845 <tr> | |
3846 <td> | |
3847 /ARCHIVE=nnnn | |
3848 </td> | |
3849 <td> | |
3850 /ARCHIVE=nnnn | |
3851 </td> | |
3852 </tr> | |
3853 <tr> | |
3854 <td> | |
3855 /CURRENT_BUILDING | |
3856 </td> | |
3857 <td> | |
3858 not implemented | |
3859 </td> | |
3860 </tr> | |
3861 <tr> | |
3862 <td> | |
3863 /EMIS | |
3864 </td> | |
3865 <td> | |
3866 not implemented (logicals defined by entry) | |
3867 </td> | |
3868 </tr> | |
3869 <tr> | |
3870 <td> | |
3871 /INFOHIO | |
3872 </td> | |
3873 <td> | |
3874 /LOGIN=INFOHIO | |
3875 </td> | |
3876 </tr> | |
3877 <tr> | |
3878 <td> | |
3879 /PRIMARY_RUN | |
3880 </td> | |
3881 <td> | |
3882 /LOGIN=(SIS,INFOHIO)/NOPROMPT | |
3883 </td> | |
3884 </tr> | |
3885 <tr> | |
3886 <td> | |
3887 /LOGICAL_ONLY | |
3888 </td> | |
3889 <td> | |
3890 /NOPROMPT | |
3891 </td> | |
3892 </tr> | |
3893 <tr> | |
3894 <td> | |
3895 /RESTRICT_IRNS | |
3896 </td> | |
3897 <td> | |
3898 EMIS=RESTRICT_IRNS | |
3899 </td> | |
3900 </tr> | |
3901 <tr> | |
3902 <td> | |
3903 /SCHEDULE_BUILDER | |
3904 </td> | |
3905 <td> | |
3906 Chains to SIS$EXE:SISMENU_CMSB.EXE | |
3907 </td> | |
3908 </tr> | |
3909 </table> | |
3910 | |
3911 <p> | |
3912 For interactive processes, if neither /PRIMARY_RUN nor /LOGICALS_ONLY | |
3913 is specified then SETUPENV/BUNNY chains to SISMENU.EXE, unless | |
3914 overridden by /SCHEDULE_BUILDER. | |
3915 | |
3916 <h2>Notable Differences:</h2> | |
3917 | |
3918 <ul> | |
3919 <li>SETUPENV does not define the ESC, PROFF or T80. These symbols | |
3920 cannot be placed in the OECN$SETUP SYMBOL attributes because they | |
3921 contain non-printable characters (not supported). Therefore, these | |
3922 symbols must be placed in a SYLOGIN procedure. | |
3923 <li>/CURRENT_BUILDING is not supported. SETUPENV does not have ability | |
3924 to set an entry based on the value of an existing logical. | |
3925 <li>If /ARCHIVE is specified without a value, the default is the first | |
3926 ARCHIVE attribute for the selected entry. | |
3927 </ul> | |
3928 | |
3929 <a name="heading_11.6.3"><h2>11.6.3 FROG Compatibility</h2></a> | |
3930 | |
3931 <p> | |
3932 If /FROG is specified as the first qualifier to SETUPENV, then the | |
3933 original FROG qualifiers are accepted. | |
3934 | |
3935 <p> | |
3936 The SETUPENV defaults when /BUNNY is specified are: | |
3937 | |
3938 <p> | |
3939 <table border=0> | |
3940 <tr> | |
3941 <td> | |
3942 <br> | |
3943 <pre> | |
3944 $ SETUPENV/FROG/PROMPT | |
3945 </pre> | |
3946 </table> | |
3947 | |
3948 <p> | |
3949 These defaults are affected by the original BUNNY qualifiers per the | |
3950 following table. | |
3951 | |
3952 <table border=3> | |
3953 <tr> | |
3954 <th align=center>Qualifier </th> | |
3955 <th align=center>SETUPENV Implementation </th> | |
3956 </tr> | |
3957 <tr> | |
3958 <td> | |
3959 /CURRENT_BUILDING | |
3960 </td> | |
3961 <td> | |
3962 Not implemeneted | |
3963 </td> | |
3964 </tr> | |
3965 <tr> | |
3966 <td> | |
3967 /LOGICALS_ONLY | |
3968 </td> | |
3969 <td> | |
3970 /NOPROMPT | |
3971 </td> | |
3972 </tr> | |
3973 <tr> | |
3974 <td> | |
3975 /PRIMARY_RUN | |
3976 </td> | |
3977 <td> | |
3978 LOGIN=INFOHIO | |
3979 </td> | |
3980 </tr> | |
3981 <tr> | |
3982 <td> | |
3983 /PRINTER | |
3984 </td> | |
3985 <td> | |
3986 /PRINTER (see below) | |
3987 </td> | |
3988 </tr> | |
3989 <tr> | |
3990 <td> | |
3991 /OPAC=RESTRICTED | |
3992 </td> | |
3993 <td> | |
3994 Chains to "@LIS_MGR:OPAC" | |
3995 </td> | |
3996 </tr> | |
3997 <tr> | |
3998 <td> | |
3999 /OPAC=UNRESTRICTED | |
4000 </td> | |
4001 <td> | |
4002 Chains to "@LIS_MGR:OPAC R" | |
4003 </td> | |
4004 </tr> | |
4005 </table> | |
4006 | |
4007 <p> | |
4008 For interactive processes, if neither /PRIMARY_RUN nor /LOGICALS_ONLY | |
4009 is specified then SETUPENV/FROG chains to "@LIS_MGR:LISMENU SYSADM.M"., | |
4010 unless overridden by /OPAC | |
4011 | |
4012 <h2>Notable Differences:</h2> | |
4013 | |
4014 <ul> | |
4015 <li>/PRINTER behaves the same as SETUPENV's /PRINT qualifier, except | |
4016 that /FROG/PRINTER attempts to find a queue named entry$PRINT where | |
4017 "entry" is the selected entry. If found, entry$PRINT is assigned to | |
4018 SYS$PRINT. If the user has a queue definition in their SYSUAF Owner | |
4019 field, it overrides the entry$PRINT queue. | |
4020 <li>For non-DAS staff, SYS$PRINT is unconditionally assigned to | |
4021 LCL$PRINT as a job logical (which might be occluded). | |
4022 <li>SETUPENV/FROG does not attempt to define the large number of | |
4023 symbols created by FROG. These should either be placed in an | |
4024 $APP_INFOHIO entry, or moved to a global login procedure. Symbols | |
4025 containing non-printable characters (e.g. CLEAR) must be moved to a | |
4026 global procedure. | |
4027 </ul> | |
4028 | |
4029 <p> | |
4030 | |
4031 <a name="heading_11.7"><h1>11.7 OECN$SETUPENV API</h1></a> | |
4032 SETUPENV provides a callable API which can be used by programs to | |
4033 select entries. The API parallels the qualifier functions and syntax. | |
4034 | |
4035 <a name="heading_11.7.1"><h2>11.7.1 Working Storage Field(s)</h2></a> | |
4036 | |
4037 <p> | |
4038 <center> | |
4039 <table border=0 width=75%> | |
4040 <tr> | |
4041 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
4042 size=1 noshade> | |
4043 Picture for string field are maximum sizes that will be used by | |
4044 OECN$SETUPENV. The string fields are based by descriptor, so the field | |
4045 sizes are not required to be the exact size. </td> | |
4046 </tr> | |
4047 </table> | |
4048 </center> | |
4049 | |
4050 <p> | |
4051 <table border=0> | |
4052 <tr> | |
4053 <td> | |
4054 <br> | |
4055 <pre> | |
4056 | |
4057 01 WS-FUNCTION PIC S9(4) COMP VALUE 0. | |
4058 88 SET-DB VALUE 0. | |
4059 88 NEXT-DB VALUE 1. | |
4060 88 RESET-DB VALUE 2. | |
4061 88 MENU-SELECTION VALUE 3. | |
4062 88 LOOKUP-DB VALUE 4. | |
4063 88 LOGIN-DEFAULTS VALUE 5. | |
4064 01 WS-FLAGS. | |
4065 03 WS-SIS-DEFAULT PIC X. | |
4066 03 WS-INFOHIO-DEFAULT PIC X. | |
4067 03 WS-BY-ACCESS PIC X. | |
4068 03 WS-BY-USERNAME PIC X. | |
4069 03 WS-EMIS-RESTRICT PIC X. | |
4070 03 WS-EMIS-SELECT PIC X. | |
4071 03 FILLER PIC X(26). | |
4072 01 WS-SELECTED-DB PIC X(40). | |
4073 01 WS-SEL-TYPE PIC X(25). | |
4074 01 WS-SEL-CATEGORIES PIC X(40). | |
4075 01 WS-SEL-APPLICATION PIC X(10). | |
4076 01 WS-SEL-ARCHIVE PIC X(6). | |
4077 01 WS-TYPE PIC X(25). | |
4078 01 WS-DESC PIC X(40). | |
4079 01 WS-IRN PIC X(6). | |
4080 01 WS-CATEGORIES PIC X(40). | |
4081 01 WS-APPLICATIONS PIC X(80). | |
4082 01 WS-PROMPT-STRING PIC X(40). | |
4083 01 WS-ARCHIVE PIC X(6). | |
4084 01 WS-STATUS PIC S9(9) COMP. | |
4085 88 OECN__NORMAL VALUE EXTERNAL OECN__NORMAL. | |
4086 88 OECN__NOMORE VALUE EXTERNAL OECN__NOMORE. | |
4087 88 OECN__NOTFOUND VALUE EXTERNAL OECN__NOTFOUND. | |
4088 01 WS-RELATIONSHIPS. | |
4089 03 WS-RELATION-COUNT PIC S9(4) COMP. | |
4090 03 WS-RELATIONSHIP | |
4091 OCCURS 0 TO 40 TIMES DEPENDING | |
4092 ON WS-RELATION-COUNT. | |
4093 05 WS-RELATION-TYPE PIC X. | |
4094 88 WS-RELATION-PARENT VALUE "P". | |
4095 88 WS-RELATION-SIBLING VALUE "S". | |
4096 88 WS-RELATION-CHILD VALUE "C". | |
4097 05 WS-RELATION-ENTRY PIC X(12). | |
4098 </pre> | |
4099 </table> | |
4100 | |
4101 <p> | |
4102 | |
4103 <a name="heading_11.7.2"><h2>11.7.2 COBOL Call Arguments</h2></a> | |
4104 | |
4105 <table border=0> | |
4106 <tr> | |
4107 <td> | |
4108 <br> | |
4109 <pre> | |
4110 CALL "OECN$SETUPENV" | |
4111 USING | |
4112 WS-FUNCTION | |
4113 BY DESCRIPTOR WS-FLAGS | |
4114 BY DESCRIPTOR WS-SELECTED-DB | |
4115 BY DESCRIPTOR WS-SEL-TYPE | |
4116 BY DESCRIPTOR WS-SEL-CATEGORIES | |
4117 BY DESCRIPTOR WS-SEL-APPLICATION | |
4118 BY DESCRIPTOR WS-SEL-ARCHIVE | |
4119 BY DESCRIPTOR WS-TYPE | |
4120 BY DESCRIPTOR WS-DESC | |
4121 BY DESCRIPTOR WS-IRN | |
4122 BY DESCRIPTOR WS-CATEGORIES | |
4123 BY DESCRIPTOR WS-APPLICATIONS | |
4124 BY DESCRIPTOR WS-RELATIONSHIPS | |
4125 BY DESCRIPTOR WS-PROMPT-STRING | |
4126 BY DESCRIPTOR WS-ARCHIVE | |
4127 GIVING WS-STATUS. | |
4128 </pre> | |
4129 </table> | |
4130 | |
4131 <p> | |
4132 <center> | |
4133 <table border=0 width=75%> | |
4134 <tr> | |
4135 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
4136 size=1 noshade> | |
4137 The arguments passed by descriptor may be OMITTED if the return value | |
4138 is not desired. However, the argument list must not be shortened, that | |
4139 is, the caller should explictly include the OMITTED keyword. </td> | |
4140 </tr> | |
4141 </table> | |
4142 </center> | |
4143 | |
4144 <a name="heading_11.7.3"><h2>11.7.3 Argument Descriptions:</h2></a> | |
4145 | |
4146 <blockquote> | |
4147 <strong>WS-FUNCTION (read)</strong> | |
4148 | |
4149 <blockquote> | |
4150 Indicates the function to perform. Behavior matches the corresponding | |
4151 DCL qualifiers. | |
4152 <br>The LOOKUP-DB function is specific to the API and not implemented | |
4153 via the DCL command. LOOKUP-DB returns the information about the | |
4154 specified entry without actually setting the logicals. This allows a | |
4155 program to retrieve information about an entry without switching | |
4156 contexts. | |
4157 </blockquote> | |
4158 <br> | |
4159 <br><strong>WS-FLAGS</strong> | |
4160 | |
4161 <blockquote> | |
4162 List of one character flags which modify the behavior of the API. | |
4163 Unless noted otherwise, the flags should either contain a spaces or a | |
4164 "Y" if the flag is on. | |
4165 <br>The following flags are applicable when the LOGIN-DEFAULTS function | |
4166 is requested: | |
4167 </blockquote> | |
4168 | |
4169 <p> | |
4170 <table border=0> | |
4171 <tr> | |
4172 <td> | |
4173 <br> | |
4174 <pre> | |
4175 WS-SIS-DEFAULT Same as /LOGIN=SIS | |
4176 WS-INFOHIO-DEFAULT Same as /LOGIN=INFOHIO | |
4177 WS-BY-ACCESS Same as /LOGIN=BY_ACCESS | |
4178 WS-BY-USERNAME If set, just contain | |
4179 an ascii numeric value indicating | |
4180 the number of characters to use | |
4181 from the username as the entry | |
4182 code. e.g. Placing "2" in | |
4183 this flag, is the same as | |
4184 /LOGIN=USERNAME=2 | |
4185 WS-EMIS-RESTRICT Same as /RESTRICT_IRNS | |
4186 WS-EMIS-SELECT is the same as /EMIS | |
4187 </pre> | |
4188 </table> | |
4189 | |
4190 <br> | |
4191 <br><strong>WS-SELECT-DB (modify, by descriptor)</strong> | |
4192 | |
4193 <blockquote> | |
4194 Entry(s) from INI file to select. Optional if MENU or NEXT functions | |
4195 are being performed. The actual entry selected is also returned in this | |
4196 parameter. | |
4197 </blockquote> | |
4198 <br> | |
4199 <br><strong>WS-SEL-TYPE (read, by descriptor)</strong> | |
4200 <br> | |
4201 <br><strong>WS-SEL-CATEGORIES (read, by descriptor)</strong> | |
4202 | |
4203 <blockquote> | |
4204 Values to restrict entries by type and/or categories. | |
4205 <br>Same as /TYPE and /CATEGORIES qualifiers. | |
4206 </blockquote> | |
4207 <br> | |
4208 <br><strong>WS-SEL-APPLICATION (read, by descriptor)</strong> | |
4209 | |
4210 <blockquote> | |
4211 Value to select by application. Same as /APPLICATION qualifier. | |
4212 </blockquote> | |
4213 <br> | |
4214 <br><strong>WS-TYPE (write, by descriptor)</strong> | |
4215 <br> | |
4216 <br><strong>WS-DESC (write, by descriptor)</strong> | |
4217 <br> | |
4218 <br><strong>WS-IRN (write, by descriptor)</strong> | |
4219 <br> | |
4220 <br><strong>WS-CATEGORIES (write, by descriptor)</strong> | |
4221 | |
4222 <blockquote> | |
4223 Return values which describe the entry. Same values that are also | |
4224 placed in the OECN$SETUP_CURRENT Logical. | |
4225 </blockquote> | |
4226 <br> | |
4227 <br><strong>WS-APPLICATIONS (write, by descriptor)</strong> | |
4228 | |
4229 <blockquote> | |
4230 Space delimited list of appliations associated with the current entry. | |
4231 </blockquote> | |
4232 <br> | |
4233 <br><strong>WS-PROMPT-STRING (write, by descriptor)</strong> | |
4234 | |
4235 <blockquote> | |
4236 The string SETUPENV would use to create the DCL and Menu prompt if | |
4237 /PROMPT is specified. Note: The API never sets the prompt. The calling | |
4238 routine may use this string to set the prompts, if desired. | |
4239 </blockquote> | |
4240 <br> | |
4241 <br><strong>WS-RELATIONSHIPS (write, by descriptor)</strong> | |
4242 | |
4243 <blockquote> | |
4244 A structure that describes the selected entries relationship to other | |
4245 entries based on the PARENT attributes. Currently three types of | |
4246 relationships are defined: Parent, sibling or children. The types of | |
4247 entries returned in this table will vary depending on the entry | |
4248 selected. | |
4249 | |
4250 <p> | |
4251 <center> | |
4252 <table border=0 width=75%> | |
4253 <tr> | |
4254 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
4255 size=1 noshade> | |
4256 Calling routines should not assume that only these three types of | |
4257 relationships exist. Future versions of the API may return other | |
4258 relationships. </td> | |
4259 </tr> | |
4260 </table> | |
4261 </center> | |
4262 <br> | |
4263 <br><strong>WS-ARCHIVE</strong> | |
4264 | |
4265 <blockquote> | |
4266 Contains code of archive if one was selected. | |
4267 </blockquote> | |
4268 </blockquote> | |
4269 | |
4270 <a name="heading_11.7.4"><h2>11.7.4 Return Status</h2></a> | |
4271 | |
4272 <p> | |
4273 OECN$SETUP returns one of the following conditions: | |
4274 | |
4275 <table border=3> | |
4276 <tr> | |
4277 <td> | |
4278 OECN__NORMAL | |
4279 </td> | |
4280 <td> | |
4281 = | |
4282 </td> | |
4283 <td> | |
4284 Function completed successfully (Item selected or reset) | |
4285 </td> | |
4286 </tr> | |
4287 <tr> | |
4288 <td> | |
4289 OECN__NOMORE | |
4290 </td> | |
4291 <td> | |
4292 = | |
4293 </td> | |
4294 <td> | |
4295 When using "next" function, no more matching entries were found. | |
4296 </td> | |
4297 </tr> | |
4298 <tr> | |
4299 <td> | |
4300 OECN__NOTFOUND | |
4301 </td> | |
4302 <td> | |
4303 = | |
4304 </td> | |
4305 <td> | |
4306 Specified entry was not found. | |
4307 </td> | |
4308 </tr> | |
4309 <tr> | |
4310 <td> | |
4311 OECN__INVNEXT | |
4312 </td> | |
4313 <td> | |
4314 = | |
4315 </td> | |
4316 <td> | |
4317 Invalid combination of TYPE and current entry for NEXT function. Must | |
4318 specify a starting entry or valid select type. | |
4319 </td> | |
4320 </tr> | |
4321 </table> | |
4322 | |
4323 <a name="heading_11.7.5"><h2>11.7.5 Description</h2></a> | |
4324 | |
4325 <p> | |
4326 The OECN$SETUPENV routine does basically everything that the SETUPENV | |
4327 DCL interface does; however, there are some notable exceptions. Here is | |
4328 a list that the callable interface does NOT provide: | |
4329 | |
4330 <ol start=1 > | |
4331 <li>Does not simulate /USE, /BUNNY or /FROG behaviors. Those qualifiers | |
4332 are handled by the SETUPENV utility and are not exposed to the callable | |
4333 interface. | |
4334 <li>Does not modify the Menu or DCL prompts (a string is returned for | |
4335 setting the prompt if desired). | |
4336 <li>Does not invoke OECN_LOGIN or EMIS_SWITCH_FY to ensure that the | |
4337 correct state software logicals are defined based on the version of the | |
4338 data files. If the calling program depends on files/programs in any of | |
4339 the OECN$x logicals, it should take it's own action to ensure the | |
4340 correct version is selected (or contact the SSDT if this is important). | |
4341 <li>Does not implement the function of /PRINTER | |
4342 </ol> | |
4343 | |
4344 <p> | |
4345 | |
4346 <hr size=5> | |
4347 <a name="sysman_ump_chap"><h1>Chapter 12<br>Installing and Using UMP - User Mail Profile System</h1></a> | |
4348 | |
4349 <a name="heading_12.1"><h1>12.1 Overview</h1></a> | |
4350 | |
4351 <p> | |
4352 The UMP package provides a means for DA-sites to maintain user e-mail | |
4353 profiles in a standard way. This will provides an efficient means of | |
4354 sending mail to a large variety of users across the state. It will also | |
4355 allows for the creation of an electronic "white pages phone directory" | |
4356 which permits an easy way to lookup an e-mail address for any user on | |
4357 the OECN network. | |
4358 | |
4359 <a name="heading_12.1.1"><h2>12.1.1 Feature List</h2></a> | |
4360 | |
4361 <p> | |
4362 UMP provides the following features: | |
4363 | |
4364 <ul> | |
4365 <li>Ability to add/modify user profiles. | |
4366 <li>Allows end-user to modify their own profile. | |
4367 <li>Permits 'group managers' to manage other user profiles within their | |
4368 group | |
4369 <li>Imports an existing distribution list and creates a basic user | |
4370 profile (NM or PMDF style distribution lists). | |
4371 <li>Ability to provide complete 'centralized naming' facility for both | |
4372 local and remote addresses, including ability to create user aliases | |
4373 independent of username or mailbox address. | |
4374 <li>Exports user profiles into the following formats: | |
4375 | |
4376 <blockquote> | |
4377 - NM | |
4378 <br>- PMDF style distribution lists | |
4379 <br>- PMDF DIRECTORY DAEMON format | |
4380 </blockquote> | |
4381 <li>Handles OECN standard distribution lists and allows local | |
4382 distribution lists to be added. | |
4383 <li>Includes a utility to create distribution lists based on VMS | |
4384 identifiers. | |
4385 <li>Includes a utility to check UMP profiles against SYSUAF. | |
4386 <li>Includes a utility to run during login to determine if user has | |
4387 modified their own profile. | |
4388 <li>Includes a utility to transmit UMP data into the CSO white pages | |
4389 directory. | |
4390 <li>Tracks whether the user has modified/updated their own profile. | |
4391 Optionally, users who have not updated their own profile will be asked | |
4392 if they wish to update their user mail profile during login. | |
4393 </ul> | |
4394 | |
4395 <a name="heading_12.1.2"><h2>12.1.2 Web Attachments for OECN state-wide mail</h2></a> | |
4396 | |
4397 <p> | |
4398 A special feature of the OECN state-wide lists is the ability to | |
4399 "web-ify" attachments send to the OECN lists. As messages addressed to | |
4400 the OECN lists pass through the central OECN mail server, they are | |
4401 inspected for certain attachment types. If a suitable attachment type | |
4402 is discovered, it is placed on a public web site and the original | |
4403 attachment is replaced by a web link (URL) pointing to the documents | |
4404 location. Thus, only a single copy of each attachment must be stored on | |
4405 the OECN web server and will not be delivered to each user's mailbox. | |
4406 | |
4407 <p> | |
4408 Each user subscribed to UMP has the option of receiving the original | |
4409 message with the attachments or the version containing web links | |
4410 instead of attachments. Most users will benefit from receiving web | |
4411 links instead of attachments (reduced local storage, shorter download | |
4412 times and reduce risk of viruses. However, some users may prefer the | |
4413 original attachments, especially if they download their mail for | |
4414 disconnected (off-line) reading. | |
4415 | |
4416 <p> | |
4417 The benefit of web attachments to DA Sites can be signficant. Without | |
4418 web attachments, any message containing a large attachment must be | |
4419 delivered to each user's mailbox separately consuming considerable disk | |
4420 space and computer resources to deliver. | |
4421 | |
4422 <p> | |
4423 However, each DA Site may decide how, and if, to implement OECN web | |
4424 attachments for their users. Converting existing users to web | |
4425 attachments may cause confusion or concerns. Therefore, DA Sites are | |
4426 encouraged not to switch existing users to web attachments without | |
4427 training or notification. | |
4428 | |
4429 <a name="heading_12.1.2.1"><h3>12.1.2.1 Enabling Web Attachments</h3></a> | |
4430 | |
4431 <p> | |
4432 Web attachments are only enabled for each DA Site upon request. If you | |
4433 wish your users to have the ability to request web attachments, you | |
4434 must set ENABLE_OECN_WEBATTACH to "YES" and send mail to | |
4435 listmaster@oecn.k12.oh.us. The listmaster will verify the correct | |
4436 configuration of your UMP configuration and enable web attachments if | |
4437 appropriate. Your request may be denied if you have a non-standard UMP | |
4438 configuration. In that case, the listmaster will explain the problem(s) | |
4439 with your configuration. | |
4440 | |
4441 <p> | |
4442 To see if web attachments are enabled for your site, look for the SITE | |
4443 command in OECN$UMP_STANDARD.INI and see if the "webatt" parameter is | |
4444 set for your domain. If this parameter is set, then web attachments are | |
4445 already enabled. Note: You can not change OECN$UMP_STANDARD.INI | |
4446 yourself. Only the OECN listmaster can make the change that affects the | |
4447 OECN mail server. | |
4448 | |
4449 <a name="heading_12.1.3"><h2>12.1.3 Files</h2></a> | |
4450 | |
4451 <p> | |
4452 The following sections describe the files used and produced by the UMP | |
4453 system. | |
4454 <p> | |
4455 <strong>Files and Procedures Used</strong> | |
4456 <br> | |
4457 | |
4458 <table border=3> | |
4459 <tr> | |
4460 <th align=center>File/Procedure </th> | |
4461 <th align=center>Use </th> | |
4462 </tr> | |
4463 <tr> | |
4464 <td> | |
4465 OECN$UMP_LOCAL.INI | |
4466 </td> | |
4467 <td> | |
4468 Contains A-site specific information and list codes. | |
4469 </td> | |
4470 </tr> | |
4471 <tr> | |
4472 <td> | |
4473 OECN$UMP_STANDARD.INI | |
4474 </td> | |
4475 <td> | |
4476 Contains OECN_wide list codes and definitions. | |
4477 </td> | |
4478 </tr> | |
4479 <tr> | |
4480 <td> | |
4481 IMPORT_NM_LISTS.COM | |
4482 </td> | |
4483 <td> | |
4484 Used to import data from NM style distribution lists into user profiles. | |
4485 </td> | |
4486 </tr> | |
4487 <tr> | |
4488 <td> | |
4489 IMPORT_PMDF_LISTS.COM | |
4490 </td> | |
4491 <td> | |
4492 Used to import data from PMDF style distribution lists into user | |
4493 profiles. | |
4494 </td> | |
4495 </tr> | |
4496 <tr> | |
4497 <td> | |
4498 EXPORT_LISTS.COM | |
4499 </td> | |
4500 <td> | |
4501 Used to generate both NM and PMDF style distribution lists. | |
4502 </td> | |
4503 </tr> | |
4504 <tr> | |
4505 <td> | |
4506 EXPORT_DD.COM | |
4507 </td> | |
4508 <td> | |
4509 Used to generate a file suitable for loading into a PMDF DIRECTORY | |
4510 DAEMON database. | |
4511 </td> | |
4512 </tr> | |
4513 <tr> | |
4514 <td> | |
4515 UMP_SEND_CSO.COM | |
4516 </td> | |
4517 <td> | |
4518 Used to transmit UMP data to the CSO white pages directory. | |
4519 </td> | |
4520 </tr> | |
4521 </table> | |
4522 <p> | |
4523 <strong>Files Created</strong> | |
4524 <br> | |
4525 | |
4526 <p> | |
4527 The table below describes the files created by UMP. Unless otherwise | |
4528 specified, the files are created in OECN$UMP:. | |
4529 | |
4530 <table border=3> | |
4531 <tr> | |
4532 <th align=center>File </th> | |
4533 <th align=center>Description </th> | |
4534 </tr> | |
4535 <tr> | |
4536 <td> | |
4537 MAIL_*_A.DIS | |
4538 </td> | |
4539 <td> | |
4540 One file for each distribution list. This file contains addresses of | |
4541 users who have requested to receive original attachments sent to an | |
4542 OECN list.. | |
4543 </td> | |
4544 </tr> | |
4545 <tr> | |
4546 <td> | |
4547 MAIL_*_W.DIR | |
4548 </td> | |
4549 <td> | |
4550 One file for each distribution list. This file contains addresses of | |
4551 user who have requested web links to attachments sent to the an OECN | |
4552 lists. | |
4553 </td> | |
4554 </tr> | |
4555 <tr> | |
4556 <td> | |
4557 MAIL_ALIASES.DAT | |
4558 </td> | |
4559 <td> | |
4560 Alias file defining aliases for UMP generated lists. This file is | |
4561 intended to be loaded into the PMDF alias database or included into the | |
4562 PMDF alias file. | |
4563 </td> | |
4564 </tr> | |
4565 <tr> | |
4566 <td> | |
4567 USER_ALIASES.TXT | |
4568 </td> | |
4569 <td> | |
4570 Alias file defining aliases for UMP remote users to create centralized | |
4571 naming. This file is intended to be loaded into the PMDF alias database. | |
4572 </td> | |
4573 </tr> | |
4574 <tr> | |
4575 <td> | |
4576 USER_RESERVE.TXT | |
4577 </td> | |
4578 <td> | |
4579 File containing reversing entries for users to create centralized | |
4580 naming. This file is intended to be loaded into the PMDF reverse | |
4581 database. | |
4582 </td> | |
4583 </tr> | |
4584 </table> | |
4585 | |
4586 <a name="heading_12.2"><h1>12.2 UMP Menu and Profile Screen</h1></a> | |
4587 | |
4588 <p> | |
4589 The program may be executed by typing: | |
4590 | |
4591 <p> | |
4592 <table border=0> | |
4593 <tr> | |
4594 <td> | |
4595 <br> | |
4596 <pre> | |
4597 $RUN OECN$:UMP | |
4598 </pre> | |
4599 </table> | |
4600 | |
4601 <p> | |
4602 at the $ prompt or from the menu system, type: | |
4603 | |
4604 <p> | |
4605 <table border=0> | |
4606 <tr> | |
4607 <td> | |
4608 <br> | |
4609 <pre> | |
4610 Menu>UMP | |
4611 </pre> | |
4612 </table> | |
4613 | |
4614 <p> | |
4615 <strong>The Main UMP Menu</strong> | |
4616 <br> | |
4617 | |
4618 <p> | |
4619 The following menu will appear: | |
4620 | |
4621 <p> | |
4622 <table border=0> | |
4623 <tr> | |
4624 <td> | |
4625 <br> | |
4626 <pre> | |
4627 | |
4628 | |
4629 ___________________________________________________________________ | |
4630 | | | |
4631 | UMP - User Mail Profile Maintenance | | |
4632 | ------------------------------------------------------------- | | |
4633 | 1. PERSONAL - Modify Personal Profile | | |
4634 | 2. MAINTAIN - Maintain User Profiles | | |
4635 | 3. EXIT - Exit program | | |
4636 | | | |
4637 | | | |
4638 | | | |
4639 | | | |
4640 | | | |
4641 | | | |
4642 | | | |
4643 | | | |
4644 | Menu: UMP Option> | | |
4645 | | | |
4646 | XXX Accept XX Help XX Exit XXX Next | | |
4647 |_________________________________________________________________| | |
4648 | |
4649 | |
4650 | |
4651 </pre> | |
4652 </table> | |
4653 | |
4654 <p> | |
4655 <strong>Profile Screen</strong> | |
4656 <br> | |
4657 | |
4658 <p> | |
4659 When you execute the UMP program and select the MAINTAIN option, a User | |
4660 Mail Profile screen similar to the following will appear: | |
4661 | |
4662 <p> | |
4663 <table border=0> | |
4664 <tr> | |
4665 <td> | |
4666 <br> | |
4667 <pre> | |
4668 | |
4669 | |
4670 ___________________________________________________________________________ | |
4671 | | | |
4672 | Updated 12-DEC-1995 16:26 | | |
4673 | | | |
4674 | Username DOE Group Node NWOCAC User Type STAFF | | |
4675 | Internet Host/Mailbox NWOCA.ORG | | |
4676 | Name Doe, John Phone | | |
4677 | Title NBEC/NWOCA SSDT Documentalist/Supp Fax | | |
4678 | Position Code Cell/Pager | | |
4679 | Alternate | | |
4680 | District IRN | | |
4681 | Building IRN | | |
4682 | County Henry | | |
4683 | District/Organization NBEC/NWOCA | | |
4684 | Street Address | | |
4685 | City, State, Zip | | |
4686 | Comment | | |
4687 | URL | | |
4688 | Site information | | |
4689 | Management Groups | | |
4690 | | | |
4691 | | | |
4692 | UMP: User Mail Profile for OECN Users | | |
4693 | XX Top XXX Find XXX Lockmode | | |
4694 | XX Help XXX Add XXX Set Defaults | | |
4695 | XX Exit XXX Delete XXX Email Lists | | |
4696 | XXX Next XXX Modify | | |
4697 |_________________________________________________________________________| | |
4698 | |
4699 | |
4700 </pre> | |
4701 </table> | |
4702 | |
4703 <p> | |
4704 <strong>EMAIL Lists</strong> | |
4705 <br> | |
4706 | |
4707 <p> | |
4708 In order to view the Email lists you currently subscribe to, press the | |
4709 <kbd>[Email Lists]</kbd> key. A screen similar to the following will | |
4710 appear giving both OECN statewide and local distribution lists. | |
4711 | |
4712 <p> | |
4713 <table border=0> | |
4714 <tr> | |
4715 <td> | |
4716 <br> | |
4717 <pre> | |
4718 | |
4719 ___________________________________________________________________________ | |
4720 | User DOE Name Doe, John | | |
4721 | Subscribe by name _________________ | | |
4722 | Receive OECN attachments as web links? Y | | |
4723 |Subscribed? -- Subscribed Distribution Lists -- | | |
4724 | -- OECN lists -- | | |
4725 | Y MAIL_STAFF DAS Staff [Restricted] | | |
4726 | Y MAIL_SUPT_PUB Superintendents-Pub [Restricted] | | |
4727 | Y MAIL_TREAS Treasuere [Restricted] | | |
4728 | -- NWOCA lists -- | | |
4729 | Y MAIL_SSDT SSDT Staff | | |
4730 | Y MAIL_STAFF_EMIS EMIS Staff | | |
4731 | Y MAIL_STAFF_FIS Fiscal Staff | | |
4732 | | | |
4733 | | | |
4734 | | | |
4735 | | | |
4736 | | | |
4737 | Press <Show All Lists> to see all available lists | | |
4738 | | | |
4739 | UMP: E-mail Distribution Lists 1 of 1 | | |
4740 | XXX Accept (Resort) XX Cancel XX Prev Screen | | |
4741 | XX First Screen XXX Last Screen XX Next Screen | | |
4742 | XX Help XXX Show All Lists | | |
4743 | XX Exit Dist Lists XXX Exit Dist Lists | | |
4744 | | | |
4745 |_________________________________________________________________________| | |
4746 | |
4747 </pre> | |
4748 </table> | |
4749 | |
4750 <p> | |
4751 The field "Receive OECN attachments as web links?" indicates if the | |
4752 user wishes to receive links, instead of attachments, for files sent to | |
4753 the OECN state-wide lists. | |
4754 | |
4755 <p> | |
4756 You may subscribe or unsubscribe to any unrestricted list by entering | |
4757 the name of the list in the indicated field at the top of the screen | |
4758 and pressing the <kbd>[Accept]</kbd> key. | |
4759 <p> | |
4760 <strong>Table of Email Distribution Lists</strong> | |
4761 <br> | |
4762 | |
4763 <p> | |
4764 In order to see the available distribution lists, press the <kbd>[Show | |
4765 All Lists]</kbd> key. A set of screens such as the following will | |
4766 appear: | |
4767 | |
4768 <p> | |
4769 <table border=0> | |
4770 <tr> | |
4771 <td> | |
4772 <br> | |
4773 <pre> | |
4774 | |
4775 | |
4776 ___________________________________________________________________________ | |
4777 | | | |
4778 | User DOE Name Doe, John | | |
4779 | Subscribe by name _________________ | | |
4780 | Receive OECN attachments as web links? Y | | |
4781 | Subscribed? -- All Available Distribution Lists -- | | |
4782 | -- OECN lists -- | | |
4783 | MAIL_CSTAFF C-site staff (obsolete) | | |
4784 | MAIL_EMIS EMIS Coordinators [Restricted] | | |
4785 | _ MAIL_LIBRARIAN Librarian | | |
4786 | MAIL_PRINC_NONPUB Principals-Nonpublic [Restricted] | | |
4787 | MAIL_PRINC_PUB Principals-Public [Restricted] | | |
4788 | MAIL_PRINC_ELEM Principals-Elementary [Restricted] | | |
4789 | MAIL_PRINC_SEC Principals-Secondary [Restricted] | | |
4790 | _ MAIL_SPECED Special Education | | |
4791 | Y MAIL_STAFF DAS Staff [Restricted] | | |
4792 | MAIL_SUPT_NONPUB Superintendents-Nonpublic [Restricted] | | |
4793 | Y MAIL_SUPT_PUB Superintendents-Pub [Restricted] | | |
4794 | MAIL_SUPT_CITY Superintendents-City [Restricted] | | |
4795 | MAIL_SUPT_COUNTY Superintendents-County [Restricted] | | |
4796 | This is the first screen | | |
4797 | | | |
4798 | UMP: E-mail Distribution Lists 1 of 6 | | |
4799 | XXX Accept (Resort) XX Cancel XX Prev Screen | | |
4800 | XX First Screen XXX Last Screen XX Next Screen | | |
4801 | XX Help XXX Show Subscribed | | |
4802 | XX Exit Dist Lists XXX Exit Dist Lists | | |
4803 |_________________________________________________________________________| | |
4804 | |
4805 | |
4806 </pre> | |
4807 </table> | |
4808 | |
4809 <a name="heading_12.3"><h1>12.3 Startup Procedure</h1></a> | |
4810 | |
4811 <p> | |
4812 Follow the steps below to install UMP on your system: | |
4813 | |
4814 <ol start=1 > | |
4815 <li>Create the system logical OECN$UMP to point to the device and | |
4816 directory where profile and distribution lists will be created. You | |
4817 should NOT use the same directory as your NM: or OECN$MAIL directories. | |
4818 You should create a new directory to contain these files. | |
4819 <li>Use OECN_INSTALL and INSTALL PACKAGE as usual to install the OECN | |
4820 package. | |
4821 <li>If installing for the first time, copy OECN$UMP_LOCAL.INI to | |
4822 OECN$UMP with world:read protection. | |
4823 <br> | |
4824 <br> Modify OECN$UMP_LOCAL.INI to contain A-site specific information. | |
4825 You must specify A-site name, DECnet node, and internet host names, | |
4826 etc. See the .INI file for more information. | |
4827 <li>Run the UMP.EXE program and choose the MAINTAIN option. Then exit | |
4828 the program. This will create empy .IDX files in OECN$UMP. Set the | |
4829 protections on the *.IDX files to W:RW. | |
4830 </ol> | |
4831 | |
4832 <p> | |
4833 | |
4834 <a name="heading_12.4"><h1>12.4 Loading Initial Data</h1></a> | |
4835 Load existing distribution lists. If using NM style distribution lists, | |
4836 then use: | |
4837 <br> | |
4838 $ @OECN$:IMPORT_NM_LISTS | |
4839 | |
4840 <p> | |
4841 If using PMDF style lists created by SWOCA's PUBDOM OECNMAIL utilities, | |
4842 then use: | |
4843 <br> | |
4844 $ @OECN$:IMPORT_PMDF_LISTS | |
4845 | |
4846 <p> | |
4847 Then run OECN$:UMP/MAINTAIN to review the user profiles. It should have | |
4848 set, at least, the username, DECnet node, and host/domain. If the NM | |
4849 lists were loaded, it will also have the name, district and county from | |
4850 the NM lists. If a user was on more than one list, the user profile | |
4851 will have multiple list codes. | |
4852 | |
4853 <p> | |
4854 After running the import, the protection on the UMP*.IDX files should | |
4855 be set to W:RW. | |
4856 | |
4857 <p> | |
4858 You may, if desired, import from both the NM and PMDF style lists. | |
4859 Unique usernames will only be added once, and a user will not be | |
4860 assigned to the same list more than once. Running both imports | |
4861 essentially "merges" the NM and PMDF lists. This might be useful if you | |
4862 are uncertain which of your lists is more correct. | |
4863 | |
4864 <a name="heading_12.5"><h1>12.5 Importing Other Lists</h1></a> | |
4865 | |
4866 <p> | |
4867 The IMPORT_NM_LISTS.COM and IMPORT_PMDF_LISTS.COM only import the | |
4868 standard NM lists or lists created by SWOCA's OECN$MAIL utilities. If | |
4869 you have other local lists which contain users you want to assign to a | |
4870 list (either a standard list or a local list), you can use the | |
4871 UMPIMPORT.EXE utility directly. | |
4872 | |
4873 <p> | |
4874 The UMPIMPORT utiltiy can read an existing list (either NM or PMDF | |
4875 format) and assign the users to the distribution list code you specify. | |
4876 The UMPIMPORT utility takes three parameters in the following form: | |
4877 <br> | |
4878 | |
4879 <p> | |
4880 <table border=0> | |
4881 <tr> | |
4882 <td> | |
4883 <br> | |
4884 <pre> | |
4885 $ UMPIMPORT :== $OECN$:UMPIMPORT | |
4886 $ UMPIMPORT {NM|PMDF} {code} {file} | |
4887 </pre> | |
4888 </table> | |
4889 | |
4890 <p> | |
4891 The first parameter indicates if the list to be imported is a NM list | |
4892 or a PMDF list. NM style lists must contain at least the DECnet | |
4893 address. PMDF style lists must contain internet addresses. The second | |
4894 parameter is the distribution list code to assign to the users. The | |
4895 code must be defined in either OECN$UMP_STANDARD.INI or | |
4896 OECN$UMP_LOCAL.INI. The final parameter is the file to import. See | |
4897 either IMPORT_NM_LISTS.COM or IMPORT_PMDF_LISTS.COM for examples of | |
4898 using UMPIMPORT.EXE. | |
4899 <p> | |
4900 | |
4901 <a name="heading_12.6"><h1>12.6 INI File Commands</h1></a> | |
4902 The following INI commands are used in either the OECN$UMP_LOCAL.INI or | |
4903 the OECN$UMP_STANDARD.INI files. The following is a summary of these | |
4904 commands. See either of these files for more examples of their use. <p> | |
4905 | |
4906 <table border=3> | |
4907 <caption><a name="Table_12-1"><strong>Table 12-1 Table of INI File Commands</strong></a></caption> | |
4908 <tr> | |
4909 <th align=center> </th> | |
4910 <th align=center>Command </th> | |
4911 <th align=center> </th> | |
4912 <th align=center>Fields </th> | |
4913 <th align=center>Explanation </th> | |
4914 </tr> | |
4915 <tr> | |
4916 <td> | |
4917 * | |
4918 </td> | |
4919 <td> | |
4920 SET_ASITE | |
4921 </td> | |
4922 <td> | |
4923 = | |
4924 </td> | |
4925 <td> | |
4926 "{Asite}" | |
4927 </td> | |
4928 <td> | |
4929 A-site acronym. Required field. | |
4930 </td> | |
4931 </tr> | |
4932 <tr> | |
4933 <td> | |
4934 * | |
4935 </td> | |
4936 <td> | |
4937 SET_NODE | |
4938 </td> | |
4939 <td> | |
4940 = | |
4941 </td> | |
4942 <td> | |
4943 "{Node}" | |
4944 </td> | |
4945 <td> | |
4946 Default DECnet node, cluster prefered. Required field. | |
4947 </td> | |
4948 </tr> | |
4949 <tr> | |
4950 <td> | |
4951 * | |
4952 </td> | |
4953 <td> | |
4954 SET_DOMAIN | |
4955 </td> | |
4956 <td> | |
4957 = | |
4958 </td> | |
4959 <td> | |
4960 "{Domain}" | |
4961 </td> | |
4962 <td> | |
4963 Default domain. Used as default for user profile and PMDF aliases. For | |
4964 example, SET_DOMAIN = "NWOCA.ORG". Required field. | |
4965 </td> | |
4966 </tr> | |
4967 <tr> | |
4968 <td> | |
4969 * | |
4970 </td> | |
4971 <td> | |
4972 SET_USER_TYPE | |
4973 </td> | |
4974 <td> | |
4975 = | |
4976 </td> | |
4977 <td> | |
4978 "{Code}" | |
4979 </td> | |
4980 <td> | |
4981 Default for "User Type" field. | |
4982 </td> | |
4983 </tr> | |
4984 <tr> | |
4985 <td> | |
4986 * | |
4987 </td> | |
4988 <td> | |
4989 LOCAL_LIST_PREFIX | |
4990 </td> | |
4991 <td> | |
4992 = | |
4993 </td> | |
4994 <td> | |
4995 "{Prefix}" | |
4996 </td> | |
4997 <td> | |
4998 Alias prefix for local distribution lists. Example, LOCAL_LIST_PREFIX = | |
4999 "Local_". May be null if local lists are not to be prefixed. | |
5000 </td> | |
5001 </tr> | |
5002 <tr> | |
5003 <td> | |
5004 | |
5005 </td> | |
5006 <td> | |
5007 LOCAL_HOST | |
5008 </td> | |
5009 <td> | |
5010 = | |
5011 </td> | |
5012 <td> | |
5013 "{hostname}" | |
5014 </td> | |
5015 <td> | |
5016 This parameter defines host name(s) which should be considered "local" | |
5017 to the current system. You may include multiple LOCAL_HOST lines if | |
5018 needed. If a users "internet mailbox/host" field contins a local | |
5019 address, then a user alias will not be created for them. Use this | |
5020 parameter if you change the domain specified by SET_DOMAIN but you | |
5021 still have user profiles which refer to the old address. Without this | |
5022 parameter, UMP will consider profiles with the old domain to be remote | |
5023 users and will create aliases for them. | |
5024 </td> | |
5025 </tr> | |
5026 <tr> | |
5027 <td> | |
5028 * | |
5029 </td> | |
5030 <td> | |
5031 PROCESS_CHANNEL | |
5032 </td> | |
5033 <td> | |
5034 = | |
5035 </td> | |
5036 <td> | |
5037 "{process_channel_name}" | |
5038 </td> | |
5039 <td> | |
5040 This parameter may be used to set the name of the reprocess channel to | |
5041 be used for processing UMP distribution lists. By default, UMPEXPORT | |
5042 will assume the reprocess channel is named reprocess.domain_name where | |
5043 domain_name is the domain from the SET_DOMAIN parameter. | |
5044 </td> | |
5045 </tr> | |
5046 <tr> | |
5047 <td> | |
5048 * | |
5049 </td> | |
5050 <td> | |
5051 DIRECTORY_DOMAIN | |
5052 </td> | |
5053 <td> | |
5054 = | |
5055 </td> | |
5056 <td> | |
5057 "{directory_daemon_domain}" | |
5058 </td> | |
5059 <td> | |
5060 This parameter may be used to specifically set the name of the | |
5061 directory daemon domain, if any. If this parameter is not specified | |
5062 then UMPEXPORT will assume that the directory daemon is named | |
5063 PO.domain_name where domain_name is the deomain from the SET_DOMAIN | |
5064 parameter. | |
5065 </td> | |
5066 </tr> | |
5067 <tr> | |
5068 <td> | |
5069 | |
5070 </td> | |
5071 <td> | |
5072 REWRITE | |
5073 </td> | |
5074 <td> | |
5075 = | |
5076 </td> | |
5077 <td> | |
5078 "{user@host}","{To_Domain}" | |
5079 </td> | |
5080 <td> | |
5081 Used by the UMPEXPORT to rewrite a particular domain to a | |
5082 "pseudo_domain" for public use in the CSO (White Pages) and for address | |
5083 reverals. The pseudo_domain may be name of your directory channel or an | |
5084 alias for the local host. For example, REWRITE = *,"po.nwoca.org". In | |
5085 this example, the command would cause all of NWOCA's users to have an | |
5086 email address of "username@po.nwoca.org" regardless of their real host | |
5087 name. In this way, remote users will not learn the real host name | |
5088 (which may change). REWRITE supports full wildcarding on the "From" | |
5089 domain portion of the parameter. The user@host may be a wildcard | |
5090 pattern which matches user email address from the UMP profiles. The | |
5091 new_host is the domain that the address will be rewritten to. This | |
5092 parameter allows you better control over how addresses are published in | |
5093 the CSO database (OECN White Pages) and address reversal | |
5094 </td> | |
5095 </tr> | |
5096 <tr> | |
5097 <td> | |
5098 | |
5099 </td> | |
5100 <td> | |
5101 CSO_REWRITE | |
5102 </td> | |
5103 <td> | |
5104 = | |
5105 </td> | |
5106 <td> | |
5107 Synonym for REWRITE | |
5108 </td> | |
5109 <td> | |
5110 | |
5111 </td> | |
5112 </tr> | |
5113 <tr> | |
5114 <td> | |
5115 * | |
5116 </td> | |
5117 <td> | |
5118 ERRORS_TO | |
5119 </td> | |
5120 <td> | |
5121 = | |
5122 </td> | |
5123 <td> | |
5124 "{Email_Address}" | |
5125 </td> | |
5126 <td> | |
5127 Address for "errors-to" parameter on mailing lists. If not preset, the | |
5128 "errors_to" address defaults to "postmaster". | |
5129 </td> | |
5130 </tr> | |
5131 <tr> | |
5132 <td> | |
5133 * | |
5134 </td> | |
5135 <td> | |
5136 EMPTY_ADDRESS | |
5137 </td> | |
5138 <td> | |
5139 = | |
5140 </td> | |
5141 <td> | |
5142 "{Email_Address}" | |
5143 </td> | |
5144 <td> | |
5145 Email address to place in any empty distribution list to prevent | |
5146 bounces to mail sent to an empty list. Defaults to "empty@bitbucket" | |
5147 which is suitable if the default "bitbucket" channel is defined. | |
5148 </td> | |
5149 </tr> | |
5150 <tr> | |
5151 <td> | |
5152 * | |
5153 </td> | |
5154 <td> | |
5155 ENABLE_OECN_WEBATTACH | |
5156 </td> | |
5157 <td> | |
5158 = | |
5159 </td> | |
5160 <td> | |
5161 {YES|NO} | |
5162 </td> | |
5163 <td> | |
5164 Enables users to request and receive "web attachments" sent to the OECN | |
5165 lists. Default is "YES". Set to "NO" to prevent users from requesting | |
5166 web attachments. | |
5167 </td> | |
5168 </tr> | |
5169 <tr> | |
5170 <td> | |
5171 * | |
5172 </td> | |
5173 <td> | |
5174 OECN_WEBATTACH_DEFAULT | |
5175 </td> | |
5176 <td> | |
5177 = | |
5178 </td> | |
5179 <td> | |
5180 {YES|NO} | |
5181 </td> | |
5182 <td> | |
5183 Specifies the "web attachment" default for new users. By default, new | |
5184 users will receive web links instead of attachments. Set this to NO if | |
5185 you wish new users to recieve the original attachments. | |
5186 </td> | |
5187 </tr> | |
5188 <tr> | |
5189 <td> | |
5190 * | |
5191 </td> | |
5192 <td> | |
5193 ALLOW_USER_ALIAS | |
5194 </td> | |
5195 <td> | |
5196 = | |
5197 </td> | |
5198 <td> | |
5199 {YES|NO} | |
5200 </td> | |
5201 <td> | |
5202 Indicates whether the 'Alias' and 'From' fields should be activated. | |
5203 When set to NO (the default), the alias and from fields will be | |
5204 disabled. When set to YES, the fields will be active. Note: When set to | |
5205 YES, the DAS must customize thier procedures to load the | |
5206 USER_ALIASES.TXT and USER_REVERSE.TXT file into the appropriate PMDF | |
5207 database. | |
5208 </td> | |
5209 </tr> | |
5210 <tr> | |
5211 <td> | |
5212 | |
5213 </td> | |
5214 <td> | |
5215 LISTPARMS | |
5216 </td> | |
5217 <td> | |
5218 = | |
5219 </td> | |
5220 <td> | |
5221 "{named parameter}" | |
5222 </td> | |
5223 <td> | |
5224 Specifies named parameter(s) to added to the MAIL_ and local aliases | |
5225 created by UMP. Multiple named parameters may be specified using | |
5226 multiple LISTPARMS lines. The named parameters will be included on all | |
5227 MAIL_* and local UMP aliases. See the PMDF Managers Guide for | |
5228 information about named parameters. Note: Too many named parameters may | |
5229 prevent the alias from fitting in the PMDF Alias database. In that | |
5230 case, the MAIL_ALIASES.DAT file must be included into the PMDF alias | |
5231 file and the configuration compiled nightly. | |
5232 </td> | |
5233 </tr> | |
5234 <tr> | |
5235 <td> | |
5236 * | |
5237 </td> | |
5238 <td> | |
5239 PROTECT_SITE_INFO | |
5240 </td> | |
5241 <td> | |
5242 = | |
5243 </td> | |
5244 <td> | |
5245 [YES|NO] | |
5246 </td> | |
5247 <td> | |
5248 Protect "Site Info" field in UMP. The default is "YES". | |
5249 </td> | |
5250 </tr> | |
5251 <tr> | |
5252 <td> | |
5253 | |
5254 </td> | |
5255 <td> | |
5256 TYPE | |
5257 </td> | |
5258 <td> | |
5259 = | |
5260 </td> | |
5261 <td> | |
5262 {Type},"{Description}" | |
5263 </td> | |
5264 <td> | |
5265 Defines a distribution list type. Types 01---0z are reserved for OECN | |
5266 use. Types 10---zz are available for DAS use. Types must be defined | |
5267 prior to using a DEFINE_CODE line. | |
5268 </td> | |
5269 </tr> | |
5270 <tr> | |
5271 <td> | |
5272 | |
5273 </td> | |
5274 <td> | |
5275 DEFINE_CODE | |
5276 </td> | |
5277 <td> | |
5278 = | |
5279 </td> | |
5280 <td> | |
5281 [Type-],{Code},"{Description}", {List_Name},[User_Modifiable], | |
5282 [Master_Code] | |
5283 </td> | |
5284 <td> | |
5285 Type is a two digit no., considered above. Code is a 1 to 8 character | |
5286 code used in the UMP maintenance program. List_Name is the file name | |
5287 suffix used to create the distribution list filename. User_Modifiable | |
5288 (Y,N) allows the user to subscribe or unsubscribe to the list. The | |
5289 default is "NO", which means that the list is restricted. Master_Code | |
5290 contains the master list code to which a sublist refers. In the case of | |
5291 a master list, this field also contains the master list code. See the | |
5292 section, Defining Local Distribution Lists, for more details. | |
5293 <p>The default list type for codes in the OECN - wide file is 01. e.g. | |
5294 in the OECN$UMP_STANDARD.INI file, DEFINE_CODE=COUN,... is equivalent | |
5295 to DEFINE_CODE=01-COUN,... | |
5296 <p>If the first character of the distribution codes is a hyphen (--), | |
5297 the distribution list is obsolete and should be phased out. This means | |
5298 that the export routines will not force creation of an alias pointing | |
5299 to empty distribution lists and will not assign these empty lists as a | |
5300 sub-list of a master list. | |
5301 </td> | |
5302 </tr> | |
5303 <tr> | |
5304 <td> | |
5305 | |
5306 </td> | |
5307 <td> | |
5308 TYPE_RESTRICT | |
5309 </td> | |
5310 <td> | |
5311 = | |
5312 </td> | |
5313 <td> | |
5314 {Type},{Method},{Value} | |
5315 </td> | |
5316 <td> | |
5317 For example, TYPE_RESTRICT= 02,SUBSCRIBED,01-STF, restricts type 02 | |
5318 lists to users who are also subscribed to the list 01-STF. See the | |
5319 section below on Restricting Types, for more information and kinds of | |
5320 restrictions. | |
5321 </td> | |
5322 </tr> | |
5323 <tr> | |
5324 <td> | |
5325 | |
5326 </td> | |
5327 <td> | |
5328 CONVERT | |
5329 </td> | |
5330 <td> | |
5331 = | |
5332 </td> | |
5333 <td> | |
5334 {From_Code},{To_Code} | |
5335 </td> | |
5336 <td> | |
5337 This command will automatically convert an "old" distribution list code | |
5338 to a "new" one. For example, CONVERT = 01-PM,02-PM. The "From_Code" is | |
5339 the old (original) distribution list code, and "To_Code" is the new | |
5340 distribution list code. Note, that codes must specify both the type and | |
5341 code (e.g. 01-PM). You should NOT rely on the default prefix when | |
5342 specifying conversions. See the section below for more information on | |
5343 conversions. | |
5344 </td> | |
5345 </tr> | |
5346 <tr> | |
5347 <td> | |
5348 | |
5349 </td> | |
5350 <td> | |
5351 NM_MAP | |
5352 </td> | |
5353 <td> | |
5354 = | |
5355 </td> | |
5356 <td> | |
5357 {From_Code},{To_Code} | |
5358 </td> | |
5359 <td> | |
5360 The command causes codes to be mapped to produce a single old-style NM | |
5361 distribution list for compatibility with NM_SEARCH. | |
5362 </td> | |
5363 </tr> | |
5364 <tr> | |
5365 <td> | |
5366 | |
5367 </td> | |
5368 <td> | |
5369 SITE | |
5370 </td> | |
5371 <td> | |
5372 = | |
5373 </td> | |
5374 <td> | |
5375 "{Domain}",{CSO_ID} | |
5376 </td> | |
5377 <td> | |
5378 This command defines the OECN DAS host name. Each SITE in this section | |
5379 will be included in the OECN_xxxx distribution lists. It also specifies | |
5380 each site's CSO white pages identifiers. A range of CSO ids has been | |
5381 allocated to each site. These fields should not be modified. This | |
5382 command should not be placed in the OECN$UMP_LOCAL.INI file. | |
5383 </td> | |
5384 </tr> | |
5385 </table> | |
5386 <hr> | |
5387 <blockquote> | |
5388 * This command can appear at most one time in the Local INI file. | |
5389 </blockquote> | |
5390 <hr> | |
5391 <p> | |
5392 | |
5393 <a name="heading_12.7"><h1>12.7 Export NM and PMDF Style Lists</h1></a> | |
5394 A procedure called OECN$:EXPORT_LISTS.COM to is used to create the NM | |
5395 and PMDF style distribution lists and associated aliases. It is | |
5396 recommended that each DAS write a custom DCL procedure which invokes | |
5397 EXPORT_LIST.COM which also contains any local commands to add aliases, | |
5398 etc. This procedure should be scheduled to run nightly to keep the | |
5399 aliases and distributions lists up to date. See <a href="oecn10_sysman_handbook_full.html#exam_build_proc">Section 12.18</a> for an | |
5400 example procedure which takes advantage of most of UMP's features. | |
5401 | |
5402 <p> | |
5403 To run the procedure: | |
5404 <br> | |
5405 | |
5406 <p> | |
5407 <table border=0> | |
5408 <tr> | |
5409 <td> | |
5410 <br> | |
5411 <pre> | |
5412 $ @OECN$:EXPORT_LISTS "{options}" | |
5413 </pre> | |
5414 </table> | |
5415 | |
5416 <p> | |
5417 The P1 parameter should specify one or more of the following options | |
5418 separated by commas: | |
5419 | |
5420 <table border=3> | |
5421 <tr> | |
5422 <th align=center>Option </th> | |
5423 <th align=center>Description </th> | |
5424 </tr> | |
5425 <tr> | |
5426 <td> | |
5427 REBUILD | |
5428 </td> | |
5429 <td> | |
5430 Rebuild the PMDF alias database from scratch using the alias file(s) | |
5431 from UMPEXPORT. Use REBUILD if you allow UMP to control all the aliases | |
5432 in your database, or if you add additional aliases after | |
5433 EXPORT_LISTS.COM is executed. | |
5434 </td> | |
5435 </tr> | |
5436 <tr> | |
5437 <td> | |
5438 MERGE | |
5439 </td> | |
5440 <td> | |
5441 (Default) Merge the UMP aliases with the existing PMDF_ALIAS_DATABASE. | |
5442 Use this option if you control/rebuild the alias files prior to | |
5443 executing EXPORT_LISTS.COM Note: If this option is used then UMP will | |
5444 always add aliases and old UMP aliases will not be deleted unless you | |
5445 are rebuilding the database yourself elsewhere. | |
5446 </td> | |
5447 </tr> | |
5448 <tr> | |
5449 <td> | |
5450 | |
5451 </td> | |
5452 <td> | |
5453 Note: REBUILD and MERGE are mutually exclusive. | |
5454 </td> | |
5455 </tr> | |
5456 <tr> | |
5457 <td> | |
5458 USER | |
5459 </td> | |
5460 <td> | |
5461 Indicates that the USER_ALIASES.TXT and USER_REVERSE.TXT should be | |
5462 loaded into PMDF_ALIAS_DATABASE and PMDF_REVERSE_DATABASE, | |
5463 respectively. This should option should be specified if the DAS is | |
5464 using remote addresses or user alias features of UMP. | |
5465 </td> | |
5466 </tr> | |
5467 <tr> | |
5468 <td> | |
5469 DEFER | |
5470 </td> | |
5471 <td> | |
5472 Defers placing updated PMDF databases back into the PMDF production | |
5473 directories. This permits the DAS procedure to add additional aliases | |
5474 to the database before being used by PMDF. If this option is specified | |
5475 then the DAS's procedures are responsible for moving the databases back | |
5476 into the PMDF production directories. The PMDF database files created | |
5477 are: OECN$UMP:ALIASES.DAT (Alias database) OECN$UMP:REVERSE.DAT | |
5478 (reverse database). | |
5479 </td> | |
5480 </tr> | |
5481 </table> | |
5482 | |
5483 <p> | |
5484 If you are using UMP as your only source of PMDF database aliases, you | |
5485 should specify REBUILD. This will ensure that any old or obsolete | |
5486 aliases are not retained in your database. | |
5487 | |
5488 <p> | |
5489 However, if you have other aliases which you are building into your | |
5490 local PMDF alias database, you must take local action to periodically | |
5491 rebuild the PMDF alias database using your own aliases. This is | |
5492 necessary to ensure that old aliases are not retained in your PMDF | |
5493 alias database. | |
5494 | |
5495 <p> | |
5496 If you are unfamilar with how aliases work in PMDF and how the alias | |
5497 database (PMDF_ALIAS_DATABASE) and the alias file (PMDF_ALIAS_FILE) | |
5498 interact, we recommend that you do the following: | |
5499 | |
5500 <ul> | |
5501 <li>Allow UMP's EXPORT_LISTS.COM to rebuild the alias database from | |
5502 scratch (by specifying the REBUILD option). This will give UMP complete | |
5503 control over the aliases and ensure that no obsolete aliases are | |
5504 retained. | |
5505 <li>Place any local aliases (those not created by UMP) in your | |
5506 PMDF_ALIAS_FILE. This file is not used by UMP and will allow you to | |
5507 create local aliases without them being wiped out by UMP. | |
5508 Alternatively, you can specify the DEFER option in EXPORT_LIST and | |
5509 write procedure which adds additional aliases prior to moving the | |
5510 databases into PMDF_TABLE:. | |
5511 </ul> | |
5512 | |
5513 <a name="heading_12.7.1"><h2>12.7.1 Centralized Naming</h2></a> | |
5514 | |
5515 <p> | |
5516 This section describes several ways in which UMP can be used to provide | |
5517 centrialized naming in a PMDF configuration. Centralized naming | |
5518 provides means to provide stable user email addresses regardless of | |
5519 where the users mail is actually being delivered. This section assumes | |
5520 you are already familar with the basic concepts of centralized naming | |
5521 in PMDF. | |
5522 | |
5523 <a name="heading_12.7.1.1"><h3>12.7.1.1 Remote Mail Boxes</h3></a> | |
5524 | |
5525 <p> | |
5526 UMP can provide centralized naming for users who have "remote" | |
5527 mailboxes. Using UMP's centralized naming, a user can have an address | |
5528 such as USER@das.org even if thier mail is being delivered to a | |
5529 different address (mailbox), regardless of where that mailbox resides. | |
5530 The centralized naming may be used to deliver mail to remote systems on | |
5531 behalf of the user, or simply as a means of forwarding mail without | |
5532 resorting to VMS Mail forwarding. | |
5533 | |
5534 <p> | |
5535 Examples of "remote" users include: | |
5536 | |
5537 <ul> | |
5538 <li>Users who wish to have thier OECN mail delivered to a different | |
5539 account (e.g. on the same system or on a third-party ISP) | |
5540 <li>Users who's mailbox exists on a school district mail server or | |
5541 another DAS mail server. | |
5542 <li>Users who's mailbox is in PMDF popstore | |
5543 </ul> | |
5544 | |
5545 <p> | |
5546 The primary benefit of centralized naming is that it permits a user to | |
5547 have a stable mailing address even if the actual mailbox changes in the | |
5548 future. Everyone with an DAS can have the same host name in thier | |
5549 address regardless of where the mailbox reside. | |
5550 | |
5551 <p> | |
5552 UMP determines if a user requires an alias based on the "Internet | |
5553 Host/Mailbox" field on the profile. If the "Internet Host/Mailbox" | |
5554 field contains a different mailbox or a "remote" hostname, then the | |
5555 user is considered "remote" and an alias is generated. The definition | |
5556 of "remote" is if the host name portion of the address does not match | |
5557 the value of SET_DOMAIN or any LOCAL_HOST in the OECN$UMP_LOCAL.INI. | |
5558 For each user which UMP determines requires an alias, an line is | |
5559 written to USER_ALIASES.TXT. A line is also written to | |
5560 USER_REVERSE.TXT. USER_REVERSE.TXT contains the appropriate "address | |
5561 reversal" entry which allows PMDF to adjust the user's "From:" address | |
5562 for outgoing mail. | |
5563 | |
5564 <p> | |
5565 Both USER_ALIASES.TXT and USER_REVERSE.TXT are suitable for loading | |
5566 into the PMDF_ALIAS_DATABASE and PMDF_REVERSE_DATABASE, respectively. | |
5567 The use of these files is optional and is up to each DAS to determine | |
5568 if they are useful in their configuration. EXPORT_LIST will not load | |
5569 the files into PMDF by default. You must either set the USER option in | |
5570 EXPORT_LISTS or write a custom procedure to load these files after | |
5571 EXPORT_LISTS is executed. | |
5572 | |
5573 <p> | |
5574 Please note, the USER_REVERSE.TXT is only effective if mail sent by the | |
5575 user is routed through your system. For remote systems running mailers | |
5576 which send internet mail directly (such as a remote VMS system running | |
5577 PMDF), you must use that system's mechanisms for rewriting "From" | |
5578 address lines. For instance, on a remote PMDF system, adding a REVERSE | |
5579 mapping to the PMDF_MAPPING_FILE may be appropriate. Alternatively, you | |
5580 could take steps to ensure that all outgoing mail is routed through the | |
5581 system containing the UMP reversing entries. | |
5582 | |
5583 <p> | |
5584 When exporting CSO, the user's real mailbox will be exported by | |
5585 default. You can control this by using the REWRITE line in the local | |
5586 INI file to rewrite addresses to either the DAS domain, a host alias, | |
5587 or the directory channel. If you do this, be sure that you are loading | |
5588 the appropriate file into either PMDF_ALIAS_DATABASE or your directory | |
5589 channel. An address rewritten in this manner will be rewritten back to | |
5590 the username or alias on the UMP profile (not the username in the | |
5591 mailbox field). | |
5592 | |
5593 <a name="heading_12.7.1.2"><h3>12.7.1.2 User Aliases</h3></a> | |
5594 | |
5595 <p> | |
5596 UMP provides the ability to create a user-specific alias independent of | |
5597 the username or actual mailbox. For example, a username of | |
5598 "SMITH@nwoca.org" could have an alias of "dave.smith@nwoca.org". | |
5599 Furthermore, the user alias may optionally be used as the user's | |
5600 backward pointing (From:) address. This permits the user to have an | |
5601 easier to remember address as well as obscuring the actual username for | |
5602 security purposes. | |
5603 | |
5604 <p> | |
5605 The user aliases in UMP are implemented as two fields on the UMP | |
5606 profile called "Alias" and "From". The alias is a 32 character field | |
5607 which may consist of letters, digits or dots (.). The alias is required | |
5608 to have a least one dot to avoid duplicates with VMS usernames. The | |
5609 'From' field is a flag indicating if the alias should be used as the | |
5610 profile's official "From:" address. If the "From" flag is set to 'N', | |
5611 then the alias is merely an alternative address for the user and will | |
5612 be published in the CSO (White Pages). If the flag is set to 'Y', then | |
5613 an entry will be added into the USER_REVERSE.TXT to reverse the | |
5614 backward pointing addresses for any mail sent by the user. | |
5615 | |
5616 <p> | |
5617 The 'Alias' and 'From' fields may only be modified by a system or group | |
5618 manager. That is, end-users cannot specify thier own alias or reversal. | |
5619 This allows the appropriate manager to control the alias standards. It | |
5620 also prevents users from changing thier alias or 'From:' address | |
5621 frequently without understanding the implications or attempting to | |
5622 forge mail messages. | |
5623 | |
5624 <p> | |
5625 Group managers are required to specify an "alias prefix" which matches | |
5626 one of the group codes they are responsible for. For example, if a | |
5627 group manager is responsible for the groups "AA,AB", then they may only | |
5628 specify aliases beginning with "aa." or "ab.". This helps ensure | |
5629 uniqueness in the mailbox namespace when multiple group managers are | |
5630 responsbile for different groups of profiles. | |
5631 | |
5632 <p> | |
5633 Since the DAS must take additional configuration steps in PMDF to | |
5634 implement aliases and address reversal, the 'Alias' and 'From' fields | |
5635 are disabled by default. The DAS must take explicit action (see below) | |
5636 to implement this feature. | |
5637 | |
5638 <a name="heading_12.7.1.2.1"><h4>12.7.1.2.1 Implementing User Aliases</h4></a> | |
5639 | |
5640 <p> | |
5641 The following steps must be performed in order to activate the user | |
5642 alias and address reversal using UMP: | |
5643 | |
5644 <ol start=1 > | |
5645 <li>Configure PMDF to use the 'reverse database' on the appropriate | |
5646 channels. This feature is enabled by default in a standard PMDF | |
5647 configuration. See the PMDF documentation for more information. | |
5648 <li>Set ALLOW_USER_ALIAS to YES in OECN$UMP_LOCAL.INI. This flag | |
5649 enables the 'Alias' and 'From' fields in UMP. | |
5650 <li>Invoke EXPORT_LISTS.COM using the USER option to cause the | |
5651 USER_ALIASES.TXT and USER_REVERSE.TXT files to be loaded into the | |
5652 appropriate database. See <a href="oecn10_sysman_handbook_full.html#exam_build_proc">Section 12.18, Example Procedure for Periodic Rebuilds</a> for an example procedure which | |
5653 invokes EXPORT_LISTS.COM. | |
5654 </ol> | |
5655 | |
5656 <a name="heading_12.8"><h1>12.8 Distribution List Codes</h1></a> | |
5657 | |
5658 <p> | |
5659 Each distribution list code has a "type" prefix. The type value allows | |
5660 distribution lists to be organized into subsets independent of the | |
5661 list's name and allows restrictions to be placed on lists so users only | |
5662 see lists that may apply to them. The type codes also ensure that lists | |
5663 defined by the OECN do not conflict with those created by the DAS. | |
5664 | |
5665 <p> | |
5666 This version uses an 8 character code in the following format: | |
5667 <br> | |
5668 TT-CCCCCC | |
5669 | |
5670 <p> | |
5671 Where TT is the distribution list "type" (or category) and CCCCCC is | |
5672 the distribution list code. The following types are predefined by UMP: | |
5673 | |
5674 <table border=3> | |
5675 <tr> | |
5676 <td> | |
5677 | |
5678 </td> | |
5679 <td> | |
5680 01 | |
5681 </td> | |
5682 <td> | |
5683 OECN-wide user distribution lists | |
5684 </td> | |
5685 </tr> | |
5686 <tr> | |
5687 <td> | |
5688 | |
5689 </td> | |
5690 <td> | |
5691 02 | |
5692 </td> | |
5693 <td> | |
5694 OECN DAS staff-only lists | |
5695 </td> | |
5696 </tr> | |
5697 <tr> | |
5698 <td> | |
5699 | |
5700 </td> | |
5701 <td> | |
5702 10 | |
5703 </td> | |
5704 <td> | |
5705 Default type for lists defined by DAS | |
5706 </td> | |
5707 </tr> | |
5708 </table> | |
5709 | |
5710 <p> | |
5711 Types beginning with "0" are reserved for OECN use. All other types | |
5712 (any type not starting with "0) are available for use by the DAS. | |
5713 Currently, a maximum of 100 types can be defined. | |
5714 | |
5715 <p> | |
5716 Type 10 is predefined and available for DAS use. To add additional | |
5717 types add a line to the local ini file, like: | |
5718 <br> | |
5719 TYPE=tt,"description" | |
5720 | |
5721 <p> | |
5722 For example: | |
5723 <br> | |
5724 TYPE=11,"NWOCA Staff Lists" | |
5725 | |
5726 <p> | |
5727 Once a type has been defined, you may use the type in subsequent | |
5728 DEFINE_CODE lines, for example: | |
5729 <br> | |
5730 DEFINE_CODE = 11-STFRCP, "Staff Recipes", STAFF_RECIPIES | |
5731 <br> | |
5732 DEFINE_CODE = 11-STFJOK, "Staff Jokes", STAFF_JOKES | |
5733 | |
5734 <p> | |
5735 This creates two lists called MAIL_STAFF_RECIPIES and MAIL_STAFF_JOKES. | |
5736 When displayed in UMP, they will be sorted and displayed under a | |
5737 subheading called "NWOCA Staff lists". | |
5738 <p> | |
5739 <strong>Restricting Types to Particular Users</strong> | |
5740 <br> | |
5741 | |
5742 <p> | |
5743 Using types allows you to organize your lists into categories for | |
5744 presentation to the user. But it may also be useful to restrict | |
5745 categories of lists to particular types of users. UMP allows you to | |
5746 apply several types of restrictions based on the user's profile | |
5747 information. | |
5748 | |
5749 <p> | |
5750 Note that type restrictions do NOT affect whether or not a user can | |
5751 subscribe or unsubscribe from a given list. Each DEFINE_CODE line | |
5752 determines whether a list is user-subscribable. The type restrictions | |
5753 only limit whether the user can see a list or not. | |
5754 | |
5755 <p> | |
5756 Please note that the type restrictions are not intended as rigid | |
5757 security. Since some of the criteria is based on user modifiable | |
5758 fields, it is possible for a user to enter incorrect information and | |
5759 get assigned to the wrong lists. For example, a user might enter | |
5760 another district's IRN which allows them to subscribe to another | |
5761 districts lists. However, if the user changes the IRN back to the | |
5762 correct value, UMP will remove them from any incorrectly assigned lists. | |
5763 | |
5764 <p> | |
5765 To apply a restriction to a type value, use one of the following | |
5766 commands in the local ini file: | |
5767 <br> | |
5768 | |
5769 <table border=3> | |
5770 <tr> | |
5771 <td> | |
5772 TYPE_RESTRICT=tt,SUBSCRIBED,tt-cccccc | |
5773 </td> | |
5774 <td> | |
5775 Restricts type tt to users who are also subscribed to list tt-ccccc. | |
5776 </td> | |
5777 </tr> | |
5778 <tr> | |
5779 <td> | |
5780 TYPE_RESTRICT=tt,IRN,nnnnnn | |
5781 </td> | |
5782 <td> | |
5783 Restrict type to users who have a district or building IRN matching | |
5784 nnnnnn | |
5785 </td> | |
5786 </tr> | |
5787 <tr> | |
5788 <td> | |
5789 TYPE_RESTRICT=tt,TYPE,xxxx | |
5790 </td> | |
5791 <td> | |
5792 Restrict type to users with a 'user type' field matching xxxxx. | |
5793 </td> | |
5794 </tr> | |
5795 <tr> | |
5796 <td> | |
5797 TYPE_RESTRICT=tt,COUNTY,xxxx | |
5798 </td> | |
5799 <td> | |
5800 Restrict type to users with a 'county' field matching xxxx. | |
5801 </td> | |
5802 </tr> | |
5803 <tr> | |
5804 <td> | |
5805 TYPE_RESTRICT=tt,USERNAME,wildcard | |
5806 </td> | |
5807 <td> | |
5808 Restrict type to users with a 'username' field matching wildcard mask. | |
5809 </td> | |
5810 </tr> | |
5811 </table> | |
5812 | |
5813 <p> | |
5814 Multiple TYPE_RESTRICT lines may be added for a single list type. In | |
5815 this case, the restrictions form a logical OR operation. That is, if | |
5816 the user matches any one of the criteria, they will have access to the | |
5817 type. | |
5818 | |
5819 <p> | |
5820 For example, to restrict the type 11 lists (from the example in the | |
5821 previous section) to DAS staff members, the following restriction could | |
5822 be applied: | |
5823 <br> | |
5824 | |
5825 <p> | |
5826 <table border=0> | |
5827 <tr> | |
5828 <td> | |
5829 <br> | |
5830 <pre> | |
5831 TYPE_RESTRICT=11, SUBSCRIBED, 01-STF | |
5832 </pre> | |
5833 </table> | |
5834 | |
5835 <p> | |
5836 This will restrict all type 11 lists to users who are also subscribed | |
5837 to the standard DAS staff list. | |
5838 | |
5839 <a name="heading_12.9"><h1>12.9 Auto Conversion of Distribution List Codes (Optional)</h1></a> | |
5840 | |
5841 <p> | |
5842 Because of the features provided by the distribution list types, it may | |
5843 be desirable for DAS's to change their existing distribution list | |
5844 codes. By default, during the conversion, all distribution list codes | |
5845 in the LOCAL INI file are prefixed with type 10. For instance, if a DAS | |
5846 has defined several "staff" lists, you may wish to separate these into | |
5847 a separate type and restrict them to staff members only. | |
5848 | |
5849 <p> | |
5850 To help facilitate this, an optional command is available for the LOCAL | |
5851 INI file called CONVERT. The CONVERT command takes the following form: | |
5852 <br> | |
5853 <em>CONVERT={old_code},{new_code}</em> | |
5854 | |
5855 <p> | |
5856 For example, to convert an existing code of 10-SEM (Staff EMIS) to | |
5857 11-STFEMS, place the following line in the LOCAL.INI: | |
5858 <br> | |
5859 CONVERT=10-SEM, 11-STFEMS | |
5860 | |
5861 <p> | |
5862 Note that the prefix is required even if you did not use the prefix | |
5863 when defining the code originally. Remember that any codes defined by | |
5864 the local ini file default to type 10, so if a code was defined without | |
5865 a type, it's type is 10. | |
5866 | |
5867 <p> | |
5868 When changing a existing code using a CONVERT line, you should change | |
5869 the DEFINE_CODE line to reflect the new code at the time you add the | |
5870 CONVERT line. You should not reuse old codes until you are certain they | |
5871 no longer exist in the UMDDAT file. After you are certain the old code | |
5872 no longer exists in the UMDDAT file, you may remove the CONVERT line | |
5873 from your INI file. | |
5874 | |
5875 <p> | |
5876 Adding the CONVERT line and revising the DEFINE_CODE line, is all that | |
5877 must be done to convert an existing list. UMP and it's utilities will | |
5878 automatically convert the code as needed "on-the-fly". If you look at | |
5879 the UMDDAT.IDX file after making a conversion, you may notice that some | |
5880 users have the new code and others still have the old code. This is the | |
5881 expected behavior. The new code will not be physically written to the | |
5882 file until the record is changed with UMP's Modify function. | |
5883 | |
5884 <p> | |
5885 If you are creating locally written programs to update or report on | |
5886 user's distribution list codes, it may be confusing to have both the | |
5887 old and new codes on file. In this case, you may run the UMPUPDATE | |
5888 program to force the conversion on all records. | |
5889 | |
5890 <a name="heading_12.10"><h1>12.10 Defining Local Distribution Lists</h1></a> | |
5891 | |
5892 <p> | |
5893 To define a local distribution list, you need to add several additional | |
5894 lines to the OECN$UMP_LOCAL.INI file. | |
5895 | |
5896 <p> | |
5897 You will probally need to use the ini commands: | |
5898 <br> | |
5899 LOCAL_LIST_PREFIX, TYPE, TYPE_RESTRICT, DEFINE_CODE | |
5900 <p> | |
5901 <strong>Example 1</strong> | |
5902 <br> | |
5903 | |
5904 <p> | |
5905 The following example illustrates how to define a local distribution | |
5906 list for payroll clerks. | |
5907 | |
5908 <p> | |
5909 Add the following lines to the OECN$UMP_LOCAL.INI file: | |
5910 | |
5911 <p> | |
5912 <table border=0> | |
5913 <tr> | |
5914 <td> | |
5915 <br> | |
5916 <pre> | |
5917 TYPE = 12,"Local Payroll Clerks" | |
5918 DEFINE_CODE = 12-PAYCLK,"Payroll Clerks",PAYROLL_CLERK | |
5919 </pre> | |
5920 </table> | |
5921 | |
5922 <p> | |
5923 In order to actually subscribe to this distribution list, a user or DAS | |
5924 person, will have to access the user's UMP profile, bring up the list | |
5925 of available distribution lists, and subscribe the person. | |
5926 <p> | |
5927 <strong>Example 2</strong> | |
5928 <br> | |
5929 | |
5930 <p> | |
5931 As another example, suppose you wish to set up a distribution list for | |
5932 staff jokes, restrict the list to just those users who have access to | |
5933 DAS staff lists, create sublists for fiscal, programming, and EMIS | |
5934 jokes, and set a prefix for local lists. | |
5935 | |
5936 <p> | |
5937 Add the following lines to the OECN$UMP_LOCAL.INI file: | |
5938 | |
5939 <p> | |
5940 <table border=0> | |
5941 <tr> | |
5942 <td> | |
5943 <br> | |
5944 <pre> | |
5945 | |
5946 LOCAL_LIST_PREFIX = "local_" | |
5947 TYPE = 11, "Local Staff Lists" | |
5948 TYPE_RESTRICT = 11,SUBSCRIBED,01-STF | |
5949 DEFINE_CODE = 11-STFJOK,"Staff Jokes",STAFF_JOKES,Y,11-STFJOK | |
5950 DEFINE_CODE = 11-FISJOK,"Fiscal Jokes",FISCAL_JOKES,Y,11-STFJOK | |
5951 DEFINE_CODE = 11-PRGJOK,"Programmer Jokes",PROGRAMMER_JOKES,Y,11-STFJOK | |
5952 DEFINE_CODE = 11-EMSJOK,"EMIS Jokes",EMIS_JOKES,Y,11-STFJOK | |
5953 </pre> | |
5954 </table> | |
5955 | |
5956 <p> | |
5957 Then those users who are subscribed to the 01-STF list will see the | |
5958 following entry when they access the table of available lists in the | |
5959 UMP program. | |
5960 <br> | |
5961 -- LOCAL STAFF LISTS -- | |
5962 <br> | |
5963 ---LOCAL_STAFF_JOKES Staff Jokes | |
5964 <br> | |
5965 ---LOCAL_FISCAL_JOKES Fiscal Jokes | |
5966 <br> | |
5967 ---LOCAL_PROGRAMER_JOKES Programmer Jokes | |
5968 <br> | |
5969 ---LOCAL_EMIS_JOKES EMIS Jokes | |
5970 <br> | |
5971 | |
5972 <p> | |
5973 Users who are not subscrbed to the list 01-STF would see not entries | |
5974 for "Local Staff Lists" including the heading itself. | |
5975 | |
5976 <p> | |
5977 Note that the three sublists point to the master list, 11-STFJOK in the | |
5978 DEFINE_CODE lines. This makes these sublists, so that mail addressed to | |
5979 one of these sublists will be delivered to anyone on this list and | |
5980 anyone on the master list, but not to users on any of the other | |
5981 sublists. Also, mail addressed to the master list will be delivered to | |
5982 everyone on any of the sublists. | |
5983 | |
5984 <a name="heading_12.11"><h1>12.11 Profile Group Management</h1></a> | |
5985 | |
5986 <p> | |
5987 UMP provides the ability to segregate profiles into <strong>management | |
5988 groups</strong> and delegate responsibility for the groups to selected | |
5989 individuals. Once delegated, the group manager has nearly complete | |
5990 control over the content of the profiles in the groups they are | |
5991 responsible for. They may add, change or delete profiles within their | |
5992 group and assign profiles to unrestricted distribution lists. | |
5993 | |
5994 <p> | |
5995 <center> | |
5996 <table border=0 width=75%> | |
5997 <tr> | |
5998 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
5999 size=1 noshade> | |
6000 Group managers may not add or remove profiles from the restricted | |
6001 distribution lists. These lists (MAIL_STAFF, MAIL_SUPT_PUB, etc.) are | |
6002 the responsibility of the DA-site and may not be delegated. </td> | |
6003 </tr> | |
6004 </table> | |
6005 </center> | |
6006 | |
6007 <p> | |
6008 User profiles are assigned to groups simply by placing a value in the | |
6009 'Group' field on the UMP profile. If desired, the field may be massed | |
6010 changed using Datatrieve by modifying the GRP field in the UMP_HEADER | |
6011 domain or UMP view. This value is a protected field and may only be | |
6012 changed by DAS personnel or a group manager associated with the group. | |
6013 | |
6014 <p> | |
6015 A user may be granted management rights to one or more groups by | |
6016 entering a comma separated list of groups in the 'Management Groups' | |
6017 field. A limit of ten comma separated groups may be included. The | |
6018 following standard wildcards are supported in the management groups | |
6019 field: | |
6020 | |
6021 <table border=3> | |
6022 <tr> | |
6023 <td> | |
6024 * | |
6025 </td> | |
6026 <td> | |
6027 Any sequence of zero or more characters | |
6028 </td> | |
6029 </tr> | |
6030 <tr> | |
6031 <td> | |
6032 % | |
6033 </td> | |
6034 <td> | |
6035 Exactly one character | |
6036 </td> | |
6037 </tr> | |
6038 <tr> | |
6039 <td> | |
6040 # | |
6041 </td> | |
6042 <td> | |
6043 Exactly one numeric character | |
6044 </td> | |
6045 </tr> | |
6046 <tr> | |
6047 <td> | |
6048 @ | |
6049 </td> | |
6050 <td> | |
6051 Exactly one alphabetic character | |
6052 </td> | |
6053 </tr> | |
6054 </table> | |
6055 | |
6056 <p> | |
6057 The user with any value in the 'Management Groups' field will be | |
6058 permitted access to the MAINTAIN option in UMP. No special security | |
6059 identifiers are required. The user will be able to view any profile on | |
6060 the system, but will only be permitted to modify or delete profiles | |
6061 associated with one of their groups. If a group manager adds a profile, | |
6062 they must enter a group which matches their group management field. | |
6063 | |
6064 <p> | |
6065 The value of the group field is entirely arbitrary. The DAS may assign | |
6066 the groups in any fashion desirable. Most likely, a group would be | |
6067 created for all users in a district and one or more group managers | |
6068 would be assigned to manage that district's profiles. However, groups | |
6069 could be further defined by building, or perhaps by classes of users | |
6070 (teachers, administrators, etc.). Since wildcards are supported, it is | |
6071 possible to devise complex hierarchies of groups which permit different | |
6072 users various levels of access. | |
6073 | |
6074 <p> | |
6075 Group managers should be carefully instructed regarding local | |
6076 conventions for the various UMP fields. In particular, if the DAS uses | |
6077 the USER_ALIAS.TXT to route mail to remote mailboxes, then proper use | |
6078 of the UMP 'Internet Host/Mailbox' field is critical to ensure proper | |
6079 mail delivery. Likewise, if the DAS uses the 'User Type' field to | |
6080 control which profiles are sent to the OECN White Pages, then the | |
6081 correct values must be provided to the group manager. | |
6082 | |
6083 <a name="heading_12.12"><h1>12.12 Export DIRECTORY DAEMON File (optional)</h1></a> | |
6084 | |
6085 <p> | |
6086 You have the option of exporting to a DIRECTORY DAEMON database. | |
6087 Executing the EXPORT_DD.COM file will produce a file suitable for | |
6088 loading into a PMDF DIRECTORY-DAEMON data file. The procedure only | |
6089 produces a DIRECTORY-DAEMON.TXT file in the OECN$UMP directory. You | |
6090 must execute the appropriate PMDF CRDB command to create the indexed | |
6091 file database and place it in the PMDF_ROOT:[DIRECTORY] with the | |
6092 appropriate filename for your pseudo-domain. | |
6093 | |
6094 <p> | |
6095 EXPORT_DD creates several aliases for each user. For example, the | |
6096 following aliases would be created for username "SMITH" and a profile | |
6097 name "Dave Smith": | |
6098 | |
6099 <table border=3> | |
6100 <tr> | |
6101 <td> | |
6102 SMITH | |
6103 </td> | |
6104 <td> | |
6105 SMITH@nwoca.org | |
6106 </td> | |
6107 </tr> | |
6108 <tr> | |
6109 <td> | |
6110 dave.smith | |
6111 </td> | |
6112 <td> | |
6113 SMITH@po.NWOCA.ORG | |
6114 </td> | |
6115 </tr> | |
6116 <tr> | |
6117 <td> | |
6118 smith.dave | |
6119 </td> | |
6120 <td> | |
6121 SMITH@po.NWOCA.ORG | |
6122 </td> | |
6123 </tr> | |
6124 <tr> | |
6125 <td> | |
6126 d.smith | |
6127 </td> | |
6128 <td> | |
6129 SMITH@po.NWOCA.ORG | |
6130 </td> | |
6131 </tr> | |
6132 <tr> | |
6133 <td> | |
6134 smith.d | |
6135 </td> | |
6136 <td> | |
6137 SMITH@po.NWOCA.ORG | |
6138 </td> | |
6139 </tr> | |
6140 </table> | |
6141 | |
6142 <p> | |
6143 Notice that the first alias (the username alias) sends directly to the | |
6144 user's "real" address. The other aliases (dotted names) send to the | |
6145 username at the directory channel. Since the username should be unique, | |
6146 the first alias should never cause a bounce. The other addresses may | |
6147 cause a bounce if they are not unique (the sender is notified of the | |
6148 duplicates and their addresses). Since only dotted names and their | |
6149 addresses are returned to the sender, the sender never learns the | |
6150 "real" address. This helps isolate remote users from knowning the real | |
6151 host names of the recipient. | |
6152 | |
6153 <p> | |
6154 The directory channel for the DAS is assumed to be "po." plus the value | |
6155 of the SET_DOMAIN line from the OECN$UMP_LOCAL.INI file. For instance, | |
6156 for nwoca.org, the directory channel is assumed to be po.nwoca.org. If | |
6157 the DAS is using a different name for the directory channel, you may | |
6158 place the following line in the OECN$UMP_LOCAL.INI file: | |
6159 <br> | |
6160 <em>DIRECTORY_DOMAIN=pseudo.domain</em> | |
6161 | |
6162 <p> | |
6163 See the PMDF System Adminstrators Guide for more information about the | |
6164 directory daemon, channels and pseudo-domains. | |
6165 | |
6166 <a name="heading_12.13"><h1>12.13 Submit UMP Data to OECN CSO Database</h1></a> | |
6167 | |
6168 <p> | |
6169 The CSO nameserver is a public domain software system which allows a | |
6170 single database to be built containing name and address information. | |
6171 The CSO is much flexible and allows client/server access to the | |
6172 database anywhere on the network. Users can use GOPHER, LYNX or other | |
6173 web browsers to perform queries. A utility called PH is also available | |
6174 to perform direct queries against the central database. | |
6175 | |
6176 <p> | |
6177 To transmit UMP data for loading into the CSO database, each DAS should | |
6178 run the UMP_SEND_CSO.COM command procedure once per week. This command | |
6179 procedure will extract the UMP database into CSO format and send it to | |
6180 NWOCA.ORG for loading into CSO. | |
6181 | |
6182 <p> | |
6183 Unless instructed otherwise, please do not routinely run UMP_SEND_CSO | |
6184 more than once per week. In general, a single weekly run is sufficient | |
6185 to keep the OECN White Pages up to date. However, situations will arise | |
6186 where an extra run of UMP_SEND_CSO is necessary or desirable. For | |
6187 example, if you change domain names, or load a large number of new | |
6188 users or make significant changes to the the profiles. In these cases, | |
6189 feel free to make a special run of UMP_SEND_CSO. | |
6190 | |
6191 <p> | |
6192 NWOCA's system will run an update routine at approximately midnight | |
6193 each night to load any files submitted during the day. Therefore, the | |
6194 CSO data on file at the server will be updated the day after you run | |
6195 UMP_SEND_CSO. This schedule means that your CSO data will be at most | |
6196 one week behind when compared to your current UMP database. | |
6197 | |
6198 <p> | |
6199 If you are also using EXPORT_DD.COM to build a DIRECTORY-DAEMON | |
6200 database, you may wish to have the email addresses in the CSO database | |
6201 reflect your directory daemon address, rather than your user's real | |
6202 addresses. In this case, you may add the following line to your | |
6203 OECN$UMP_LOCAL.INI file: | |
6204 | |
6205 <p> | |
6206 <table border=0> | |
6207 <tr> | |
6208 <td> | |
6209 <br> | |
6210 <pre> | |
6211 REWRITE=*,"pseudo_domain" | |
6212 </pre> | |
6213 </table> | |
6214 | |
6215 <p> | |
6216 Where "pseudo_domain" is the domain name of your directory channel, for | |
6217 example, NWOCA uses the following line: | |
6218 | |
6219 <p> | |
6220 <table border=0> | |
6221 <tr> | |
6222 <td> | |
6223 <br> | |
6224 <pre> | |
6225 REWRITE=*,"po.nwoca.org" | |
6226 </pre> | |
6227 </table> | |
6228 | |
6229 <p> | |
6230 This line would cause all of NWOCA's users to have an email address of | |
6231 username@po.nwoca.org regardless of their real host. In this way, | |
6232 remote users will not learn the real host name (which may change). | |
6233 | |
6234 <a name="heading_12.14"><h1>12.14 Master List/Sub-list Handling</h1></a> | |
6235 | |
6236 <p> | |
6237 Starting with the 29-Aug-95 version of UMPEXPORT, the master lists are | |
6238 handled differently than in the past. Previously, there were master | |
6239 lists which pointed to the respective sub-lists. But this caused | |
6240 duplicate messages if the user was on more than one sub-list. With this | |
6241 version, the master lists will contain the actual email addresses of | |
6242 the users who are on the master list or any of the sub-lists. | |
6243 | |
6244 <p> | |
6245 There were also "compatibility" codes which were used for the original | |
6246 NM distribution list codes. This proved too cumbersome and confusing. | |
6247 Therefore, a new method of handling the master lists was implemented | |
6248 which essentially combines the master lists with the NM-compatibilty | |
6249 lists. | |
6250 | |
6251 <p> | |
6252 The codes PRN, SPT and TRS were previously indicated as "Obsolete-NM" | |
6253 codes. This is no longer the case. These codes are now "master list" | |
6254 codes (and indicated as such on the UMP help screen). If a user is | |
6255 coded as having a "master list" code, they will placed on the master | |
6256 list _and_ will also be placed on _all_ of the sub-lists for that code. | |
6257 | |
6258 <p> | |
6259 If a user is coded on one of the sub-lists, they will be placed on that | |
6260 sub-list and the corresponding master list. | |
6261 | |
6262 <p> | |
6263 These changes provides two advantages: | |
6264 | |
6265 <ol start=1 > | |
6266 <li>It provides a simple way of placing a single user on all sub-lists | |
6267 using a single code. For example, if a DAS staff member wishes to be | |
6268 placed on all the MAIL_TREAS_xxx lists, they may simply be given the | |
6269 TRS master code. This will cause them to be placed on the master list | |
6270 and all of TRS's sub-lists. | |
6271 <li>Users which have not yet been recoded to one of the more specific | |
6272 lists will automatically be placed on the master and all sub-lists. | |
6273 This ensures that users who have not been recoded to the appropriate | |
6274 list will still receive mail sent to any of the lists. | |
6275 </ol> | |
6276 | |
6277 <p> | |
6278 <center> | |
6279 <table border=0 width=75%> | |
6280 <tr> | |
6281 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
6282 size=1 noshade> | |
6283 This change means that it is somewhat less important to get your users | |
6284 migrated off of the old distribution list codes. However, if you leave | |
6285 users on the master list codes, they may receive mail that was not | |
6286 intended for them. For example, if mail is sent to mail_supt_jvsd, it | |
6287 will be received by all users who are on the SPT or SJV lists. </td> | |
6288 </tr> | |
6289 </table> | |
6290 </center> | |
6291 | |
6292 <a name="heading_12.15"><h1>12.15 UMPCHECK - Verifying UMP Profiles against SYSUAF (Optional)</h1></a> | |
6293 | |
6294 <p> | |
6295 UMPCHECK is a utility which reads the UMP profiles and compares the | |
6296 usernames to the SYSUAF file. It reports usernames which do not exist, | |
6297 have been disusered or dismailed. Optionally, UMPCHECK can delete | |
6298 profiles for such usernames. By default, UMPCHECK only checks profiles | |
6299 when the user's DECnet node name matches the values of the SYS$NODE or | |
6300 SYS$CLUSTER_NODE logicals. Other users are considered to be remote | |
6301 users and are not verified against the current node's SYSUAF. UMPCHECK | |
6302 must be run as a foreign command and accepts the following syntax: | |
6303 <br> | |
6304 <em>$ UMPCHECK {CHECK|DELETE|DELETE/CONFIRM} [nodes,...]</em> | |
6305 | |
6306 <p> | |
6307 The first parameter is the function to perform: | |
6308 | |
6309 <table border=3> | |
6310 <tr> | |
6311 <td> | |
6312 CHECK | |
6313 </td> | |
6314 <td> | |
6315 -- | |
6316 </td> | |
6317 <td> | |
6318 Verify the UMP profiles against the SYSUAF and report usernames which | |
6319 are invalid, disusered or dismailed. | |
6320 </td> | |
6321 </tr> | |
6322 <tr> | |
6323 <td> | |
6324 DELETE | |
6325 </td> | |
6326 <td> | |
6327 -- | |
6328 </td> | |
6329 <td> | |
6330 Unconditionally deletes local usernames which are invalid, disusered or | |
6331 dismailed. | |
6332 </td> | |
6333 </tr> | |
6334 <tr> | |
6335 <td> | |
6336 DELETE/ | |
6337 <br> CONFIRM | |
6338 </td> | |
6339 <td> | |
6340 -- | |
6341 </td> | |
6342 <td> | |
6343 Same as DELETE but prompts whether each username should be deleted or | |
6344 not. | |
6345 </td> | |
6346 </tr> | |
6347 </table> | |
6348 | |
6349 <p> | |
6350 <center> | |
6351 <table border=0 width=75%> | |
6352 <tr> | |
6353 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
6354 size=1 noshade> | |
6355 The function must be specified exactly as shown above without | |
6356 abbreviation and there may not be spaces between DELETE and /CONFIRM. | |
6357 </td> | |
6358 </tr> | |
6359 </table> | |
6360 </center> | |
6361 | |
6362 <p> | |
6363 The second parameter indicates the node names of the users to be | |
6364 validated against the current SYSUAF. By default, the node names used | |
6365 are the current values of the SYS$NODE and SYS$CLUSTER_NODE logicals. | |
6366 <p> | |
6367 | |
6368 <a name="heading_12.16"><h1>12.16 UMP_LOGIN - To Prompt Users to Enter Profiles During Login (Optional)</h1></a> | |
6369 UMP_LOGIN.COM may be run during login to determine if the user has ever | |
6370 modified their own profile. If they have not entered their profile, | |
6371 UMP_LOGIN will ask them if they would like to do so immediately and | |
6372 place them in the UMP profile. | |
6373 | |
6374 <p> | |
6375 You may invoke UMP_LOGIN.COM at any point during login when appropriate | |
6376 for your users. For example, SYLOGIN or other procedure appropriate for | |
6377 your system. If you want UMP_LOGIN to be invoked automatically by | |
6378 OECN_LOGIN, you may create a file in OECN$CUSTOM called | |
6379 OECN_LOGIN_EPILOGUE.COM and execute OECN$:UMP_LOGIN from there. | |
6380 | |
6381 <p> | |
6382 If you use UMP_LOGIN.COM you may wish to use the VMS INSTALL utility to | |
6383 install OECN$:UMPMODIFIED.EXE as a known image to speed up the login | |
6384 process. | |
6385 | |
6386 <a name="heading_12.17"><h1>12.17 UMPID2DIS - Creating Distribution Lists from VMS Identifiers (Optional)</h1></a> | |
6387 | |
6388 <p> | |
6389 UMPID2DIS.EXE is an optional utility which builds PMDF style | |
6390 distribution lists containing all users who hold a specified | |
6391 identifier. This may be used by sites who wish to build distribution | |
6392 lists for all users of a given package. These distribution lists are | |
6393 not standard OECN-wide lists. | |
6394 | |
6395 <p> | |
6396 UMPID2DIS will only work correctly on your system if your UIC's are | |
6397 unique. That is, each user (holder of an identifier) has their own | |
6398 unique UIC. If two users hold the same UIC identifier, only one of them | |
6399 will be output to the lists. | |
6400 | |
6401 <p> | |
6402 To create a distribution list for users holding a given identifier, use | |
6403 the following commands: | |
6404 <br> | |
6405 $ ID2DIS :== $OECN$:UMPID2DIS | |
6406 <br> | |
6407 $ ID2DIS {identifier},... {distribution_list_file} | |
6408 | |
6409 <blockquote> | |
6410 where "identifier" is the identifier. If you specify an OECN_ | |
6411 identifier, users who hold the standard identifier or the _RO and _GM | |
6412 variants will be included in the list. You may specify multiple | |
6413 identifiers separated by commas (no spaces). If a user holds more than | |
6414 one of the identifiers, they will only be included on the list once. | |
6415 <br> | |
6416 <br> "distribution_list_file" is the filename to contain the | |
6417 distribution list. If a device and extention are not included, the | |
6418 default is OECN$UMP:.DIS. | |
6419 </blockquote> | |
6420 | |
6421 <p> | |
6422 Only users that meet the following criteria will be output to the list: | |
6423 | |
6424 <table border=3> | |
6425 <tr> | |
6426 <td> | |
6427 | |
6428 </td> | |
6429 <td> | |
6430 1) | |
6431 </td> | |
6432 <td> | |
6433 The user holds one or more of the specified identifiers. | |
6434 </td> | |
6435 </tr> | |
6436 <tr> | |
6437 <td> | |
6438 | |
6439 </td> | |
6440 <td> | |
6441 2) | |
6442 </td> | |
6443 <td> | |
6444 The UAF flags DISUSER and DISMAIL are not set. | |
6445 </td> | |
6446 </tr> | |
6447 <tr> | |
6448 <td> | |
6449 | |
6450 </td> | |
6451 <td> | |
6452 3) | |
6453 </td> | |
6454 <td> | |
6455 The username has a valid UMP profile. | |
6456 </td> | |
6457 </tr> | |
6458 </table> | |
6459 | |
6460 <p> | |
6461 Note that UMPID2DIS does NOT create the PMDF alias to point to the | |
6462 distribution list. If aliases are desired for the list you must use | |
6463 PMDF CRDB or PMDF DB to create the PMDF aliases. | |
6464 | |
6465 <p> | |
6466 For example, NWOCA could use the following commands to create a | |
6467 distribution list for all NWOCA USPS users: | |
6468 <br> | |
6469 $ ID2DIS := $OECN$:UMPID2DIS | |
6470 <br> | |
6471 $ | |
6472 <br> | |
6473 $ ID2DIS OECN_USPS NWOCA_USPS | |
6474 <br> | |
6475 $ | |
6476 <br> | |
6477 $ PMDF DB | |
6478 <br> | |
6479 open pmdf_alias_database | |
6480 <br> | |
6481 override on | |
6482 <br> | |
6483 add "nwoca_usps" "nwoca_usps-list@reprocess.nwoca.org" | |
6484 <br> | |
6485 add "nwoca_usps-list" "<oecn$ump:nwoca_usps.dis,*,*,postmaster,*, | |
6486 USPS" | |
6487 <br> | |
6488 $ EXIT | |
6489 | |
6490 <a name="exam_build_proc"><h1>12.18 Example Procedure for Periodic Rebuilds</h1></a> | |
6491 | |
6492 <p> | |
6493 Periodically, each site should run EXPORT_LISTS.COM to update the | |
6494 distribution lists from the UMP data. Most likely you will want to run | |
6495 EXPORT_LISTS nightly. You should also run it anytime that you recreate | |
6496 your PMDF alias database from scratch or make significant modifications | |
6497 to the UMP profiles. | |
6498 | |
6499 <p> | |
6500 If you have PMDF's directory channel configured, you should run | |
6501 EXPORT_DD.COM and build a new directory daemon database. You may also | |
6502 to use UMPID2DIS to create distribution lists based on VMS identifiers. | |
6503 | |
6504 <p> | |
6505 You will most likely want to write a DCL command procedure to execute | |
6506 all of the appropriate steps in a single batch job, and then schedule | |
6507 it with DECscheduler. Attached is a sample of such a procedure which is | |
6508 currently in use at NWOCA. You may wish to use this as a starting point | |
6509 for your own procedure. | |
6510 | |
6511 <p> | |
6512 <table border=0> | |
6513 <tr> | |
6514 <td> | |
6515 <br> | |
6516 <pre> | |
6517 | |
6518 | |
6519 $!+ | |
6520 $! NWOCA_EXPORT_UMP.COM | |
6521 $! | |
6522 $! This procedure run the UMP routines to export distribution list, build | |
6523 $! aliases, etc. | |
6524 $! | |
6525 $! - | |
6526 $! | |
6527 $ SET PROC/PRIV=(BYPASS,SYSPRV,SYSNAM,SYSLCK) | |
6528 $ SET VERIFY | |
6529 $ SET DEFAULT OECN$UMP | |
6530 $!+ | |
6531 $! Temporarily suspend mail processing while lists are being | |
6532 $! created and datbases rebuilt. | |
6533 $!- | |
6534 $ STOP/QUEUE/NEXT MAIL$BATCH | |
6535 $!+ | |
6536 $! Export distribution lists and rebuild PMDF databases. | |
6537 $!- | |
6538 $ @OECN$:EXPORT_LISTS "REBUILD,USER,DEFER" STAFFR | |
6539 $ ! | |
6540 $ ! Merge aliases for mail addressed to former MAVCA users. | |
6541 $ ! May be removed after MAVCA.OHIO.GOV goes away. | |
6542 $ ! | |
6543 $ pmdf crdb /long/nofast/nodup/strip OECN$UMP:MAVCA_ALIASES.DAT oecn$ump:aliases.dat | |
6544 $ | |
6545 $!+ | |
6546 $! Create directory daemon text file. | |
6547 $!- | |
6548 $ @OECN$:EXPORT_DD | |
6549 $!+ | |
6550 $! Build new directory daemon database. Build into a temp file in case | |
6551 $! someone attempts to use database while in progress. | |
6552 $!- | |
6553 $ pmdf crdb/duplicate/stat oecn$ump:directory_daemon.txt - | |
6554 oecn$ump:directory_daemon.tmp | |
6555 $ copy oecn$ump:directory_daemon.tmp - | |
6556 pmdf_root:[directories]PO$NWOCA$ORG.DAT | |
6557 $ set prot=w:re pmdf_root:[directories]PO$NWOCA$ORG.DAT | |
6558 $ purge pmdf_root:[directories]PO$NWOCA$ORG.DAT | |
6559 $ delete/nolog oecn$ump:directory_daemon.tmp;* | |
6560 $! | |
6561 $! Build distribution list based on VMS identifiers | |
6562 $! | |
6563 $ ID2DIS := $OECN$:UMPID2DIS | |
6564 $ | |
6565 $ ID2DIS OECN_USPS,OECN_SYSMAN NWOCA_USPS NM_USPS.DIS | |
6566 $ ID2DIS OECN_PPS,OECN_SYSMAN NWOCA_PPS NM_PPS.DIS | |
6567 $ ID2DIS OECN_USAS,OECN_SYSMAN NWOCA_USAS NM_USAS.DIS | |
6568 $ ID2DIS OECN_EMIS,OECN_EMIS_STU,OECN_EMIS_STF,OECN_EMIS_SFU,OECN_EMIS_GEN,OECN_EMIS_FIN,OECN_SYSMAN NWOCA_EMIS NM_EMIS_USERS.DIS | |
6569 $ ID2DIS OECN_EIS,OECN_SYSMAN NWOCA_EIS NM_EIS.DIS | |
6570 $ ID2DIS OECN_VIS,OECN_SYSMAN NWOCA_VIS NM_VIS.DIS | |
6571 $ ID2DIS OECN_SECIMS,OECN_SYSMAN NWOCA_SECIMS NM_SECIMS.DIS | |
6572 $ ID2DIS NWOCA_INFOHIO NWOCA_INFOHIO NM_INFOHIO.DIS | |
6573 $ COPY OECN$UMP:nm_*.dis/sinc NM:/PROT=W:R | |
6574 $ | |
6575 $! Create aliases for NWOCA's identifier lists | |
6576 $ PMDF DB | |
6577 open oecn$ump:aliases.dat | |
6578 override on | |
6579 add "mail_hs_counselors" "mail_counselor_sec" | |
6580 | |
6581 add "nwoca_usps" "nwoca_usps-list@reprocess.nwoca.org" | |
6582 add "nwoca_usps-list" "<oecn$ump:nwoca_usps.dis,*,*,postmaster,*, USPS" | |
6583 | |
6584 add "nwoca_PPS" "nwoca_PPS-list@reprocess.nwoca.org" | |
6585 add "nwoca_PPS-list" "<oecn$ump:nwoca_PPS.dis,*,*,postmaster,*, PPS" | |
6586 | |
6587 add "nwoca_USAS" "nwoca_USAS-list@reprocess.nwoca.org" | |
6588 add "nwoca_USAS-list" "<oecn$ump:nwoca_USAS.dis,*,*,postmaster,*, USAS" | |
6589 | |
6590 add "nwoca_EMIS" "nwoca_EMIS-list@reprocess.nwoca.org" | |
6591 add "nwoca_EMIS-list" "<oecn$ump:nwoca_EMIS.dis,*,*,postmaster,*, EMIS" | |
6592 | |
6593 add "nwoca_EIS" "nwoca_EIS-list@reprocess.nwoca.org" | |
6594 add "nwoca_EIS-list" "<oecn$ump:nwoca_EIS.dis,*,*,postmaster,*, EIS" | |
6595 | |
6596 add "nwoca_VIS" "nwoca_VIS-list@reprocess.nwoca.org" | |
6597 add "nwoca_VIS-list" "<oecn$ump:nwoca_VIS.dis,*,*,postmaster,*, VIS" | |
6598 | |
6599 add "nwoca_SECIMS" "nwoca_SECIMS-list@reprocess.nwoca.org" | |
6600 add "nwoca_SECIMS-list" "<oecn$ump:nwoca_SECIMS.dis,*,*,postmaster,*, SECIMS" | |
6601 | |
6602 add "nwoca_INFOHIO" "nwoca_INFOHIO-list@reprocess.nwoca.org" | |
6603 add "nwoca_INFOHIO-list" "<oecn$ump:nwoca_INFOHIO.dis,*,*,postmaster,*, INFOhio" | |
6604 $ | |
6605 $!+ | |
6606 $! Create VMS Mail forwarding addresses for same aliases | |
6607 $!- | |
6608 $ mail := mail | |
6609 $ mail | |
6610 set forward/user=nwoca_usps in%nwoca_usps | |
6611 set forward/user=nwoca_pps in%nwoca_pps | |
6612 set forward/user=nwoca_usas in%nwoca_usas | |
6613 set forward/user=nwoca_emis in%nwoca_emis | |
6614 set forward/user=nwoca_eis in%nwoca_eis | |
6615 set forward/user=nwoca_vis in%nwoca_vis | |
6616 set forward/user=nwoca_secims in%nwoca_secims | |
6617 set forward/user=nwoca_infohio in%nwoca_infohio | |
6618 $ | |
6619 $ | |
6620 $!+ | |
6621 $! Create a MAIL_ALL distribution list. Will contain all user profiles | |
6622 $! which are subscribed to one or more distribution list (non-duplicated | |
6623 $! addresses). | |
6624 $!- | |
6625 $ delete /nolog/noconfirm mail_all.*;* | |
6626 $ append mail_*.dis/sinc mail_all.tmp/new | |
6627 $ sort/nodupli mail_all.tmp mail_all.dis | |
6628 $ set prot=w:r mail_all.dis;* | |
6629 $ | |
6630 $ PMDF DB | |
6631 open oecn$ump:aliases.dat | |
6632 override on | |
6633 add "mail_all" "mail_all-list@reprocess.nwoca.org" | |
6634 add "mail_all-list" "<oecn$ump:mail_all.dis,*,*,postmaster,*, All NWOCA users" | |
6635 $ mail := mail | |
6636 $ mail | |
6637 set forward/user=mail_all in%mail_all | |
6638 $ | |
6639 $ purge oecn$ump:*.* | |
6640 $ | |
6641 $!+ | |
6642 $! All local aliases have been added to databases. | |
6643 $! Place the new databases back into PMDF production | |
6644 $! directory. | |
6645 $!- | |
6646 $ copy/nolog oecn$ump:aliases.dat PMDF_ALIAS_DATABASE | |
6647 $ set file pmdf_alias_database/prot=w:re | |
6648 $ purge/keep=3/nolog pmdf_alias_database | |
6649 $ | |
6650 $ copy/nolog oecn$ump:reverse.dat PMDF_REVERSE_DATABASE | |
6651 $ set file pmdf_reverse_database/prot=w:re | |
6652 $ purge/keep=3/nolog pmdf_reverse_database | |
6653 $ | |
6654 $!+ | |
6655 $! All done. Restart dispatcher to ensure services open | |
6656 $! the fresh databases. | |
6657 $ PMDF RESTART DISPATCHER | |
6658 $ START/QUEUE MAIL$BATCH | |
6659 $ | |
6660 $ EXIT | |
6661 | |
6662 | |
6663 </pre> | |
6664 </table> | |
6665 | |
6666 <p> | |
6667 | |
6668 <a name="heading_12.19"><h1>12.19 Multiple Non-Clustered Systems</h1></a> | |
6669 DAS's with a single VMS system, or a single VMS cluster, need not be | |
6670 concerned with this section. | |
6671 | |
6672 <p> | |
6673 The UMP system is currently designed assuming that each A-site will | |
6674 have a single set of UMP files regardless of how many independent | |
6675 (non-VMSclustered) systems. This provides a single point of | |
6676 adminstration for DAS personnel and makes building the PMDF | |
6677 distribution lists and aliases easier. At present, there are no plans | |
6678 to implement multiple UMP files on multiple systems while still being | |
6679 able to produce a single set of distribution lists for the entire DAS. | |
6680 This may be added in the future if a well defined need arises. | |
6681 | |
6682 <p> | |
6683 However, it would be useful if remote users could modify their own user | |
6684 profiles without having to log into the system which contains the UMP | |
6685 files. This section describes a secure way of providing remote users | |
6686 access to their own UMP profiles. | |
6687 | |
6688 <p> | |
6689 Use the following procedure to establish remote access to the UMP | |
6690 system. | |
6691 | |
6692 <ol start=1 > | |
6693 <li>Choose a system to contain the UMP files. This would normally be | |
6694 your cluster or the system primarily responsible for mail delivery. | |
6695 This will be called the "server" system. | |
6696 <li>Put UMP on the server normally as described in the "Setup" section. | |
6697 Users on this system will use the UMP program directly from this system. | |
6698 <li>Create a username on the server called UMP_SERVER. This should be | |
6699 non-prived, network-only access. The login directory for this account | |
6700 can be the OECN$UMP directory, or it can have a separate login | |
6701 directory. | |
6702 <li>On the server define the OECN$UMP logical as normal. | |
6703 <li>On the server use AUTHORIZE to define network proxies into the | |
6704 server for each remote system. For example: | |
6705 <br> | |
6706 UAF> ADD/PROXY node::* UMP_SERVER <br> Where "node" is the DECnet | |
6707 node name of the remote node. <br> This will give any user on one of | |
6708 your non-server nodes proxy access to the UMP_SERVER. | |
6709 <li>On each node (client) that you want to have access to the server, | |
6710 define OECN$UMP as follows (assuming MAIN:: is the server): | |
6711 <br> | |
6712 $ DEFINE OECN$UMP "MAIN""UMP_SERVER""::OECN$UMP:" <br> Also, copy the | |
6713 UMP.EXE file to the OECN$: directory on the client node. Set up the | |
6714 users to run the local copy of the .EXE. | |
6715 <li>Copy the *.INI files from the server to the client system. and | |
6716 define the following logicals: | |
6717 <br> | |
6718 $ DEFINE OECN$UMP_STANDARD dev:[dir]OECN$UMP_STANDARD.INI | |
6719 <br> | |
6720 $ DEFINE OECN$UMP_LOCAL dev:[dir]OECN$UMP_LOCAL.INI <br> Modify the | |
6721 OECN$UMP_LOCAL.INI file to contain the local system's DECnet node name | |
6722 and internet host. This will ensure that each user's profile is built | |
6723 using the local system's node names. | |
6724 </ol> | |
6725 | |
6726 <p> | |
6727 If you do the above, each node will appear to have local access to the | |
6728 UMP files, and you will end up with a central DAS-wide database to | |
6729 build your distribution lists from. The server node will be the only | |
6730 one that needs to run the EXPORT_LISTS.COM to produce the mail_ and | |
6731 oecn_ for your DAS. | |
6732 | |
6733 <a name="heading_12.20"><h1>12.20 Programming Considerations</h1></a> | |
6734 | |
6735 <p> | |
6736 DAS programmers may wish to use DTR, COBOL or other high level language | |
6737 to query or manipulate the UMP data files. This section contains a | |
6738 brief description of the UMP data files and special considerations. DTR | |
6739 and COBOL definitions are provided with the software release for this | |
6740 purpose. The COBOL definitions are contained in UMPDAT.LIB and | |
6741 UMDDAT.LIB in OECN$LIB. The DTR definitions are in the domains | |
6742 OECN$CDD_OECN.UMP_HEADER and OECN$CDD_OECN.UMP_DIST. OECN$CDD_UMP.UMPS | |
6743 is a view which joins the header and distribution list code. | |
6744 | |
6745 <p> | |
6746 The UMP data is stored in two files in OECN$UMP: | |
6747 | |
6748 <table border=3> | |
6749 <tr> | |
6750 <td> | |
6751 UMPDAT.IDX | |
6752 </td> | |
6753 <td> | |
6754 Contains profile information. Keys: | |
6755 <ul> | |
6756 <li>Primary: Group + Username | |
6757 <li>Secondary: Username (no duplicates) | |
6758 <li>Secondary: Alias (no duplicates) | |
6759 </ul> | |
6760 </td> | |
6761 </tr> | |
6762 <tr> | |
6763 <td> | |
6764 UMDDAT.IDX | |
6765 </td> | |
6766 <td> | |
6767 Contains the distribution lists the user is subscribed to. Each record | |
6768 represents a single distribution list assignment. The distribution | |
6769 lists are stored as a code value defined by the OECN$UMP_STANDARD.INI | |
6770 or OECN$UMP_LOCAL.INI files. Primary key: Username + | |
6771 Distribution_list_code | |
6772 </td> | |
6773 </tr> | |
6774 </table> | |
6775 | |
6776 <a name="heading_12.20.1"><h2>12.20.1 Field Requirements</h2></a> | |
6777 | |
6778 <p> | |
6779 Some fields in UMP may display to the user differently than is | |
6780 physically stored in the file. Other fields have specific requirements. | |
6781 Please note the following: | |
6782 | |
6783 <ul> | |
6784 <li>The ALIAS field must always contain a value. If the user does not | |
6785 have a specific alias, then the ALIAS must be set equal to the USERNAME | |
6786 field. | |
6787 <li>A number of fields are calculated by UMP as needed and may or may | |
6788 not be stored physically in the field. For example, if the ORGANIZATION | |
6789 field is blank, but the DISTRICT_IRN is not, then UMP will calculate | |
6790 the ORGANIZATION name using the OEDS file. However, UMP will not | |
6791 necessarily store the calculated value. If you are developing programs | |
6792 which depend on these values being stored on the file, you may run | |
6793 UMPUPDATE.EXE prior to your program. UMPUPDATE will calculate the files | |
6794 and store them on the file. | |
6795 <li>Distribution list codes are always stored in internal format | |
6796 (ttxxxx) as defined by the INI files. In order to manipulate | |
6797 distribution codes, you must know the lists internal value. | |
6798 <li>The LAST_UPDATE field is a VMS quadword date. | |
6799 <li>MODIFIED_FLAG contains "Y" if the user has modified their own | |
6800 profile. Any other value indicates the profile is new and has not been | |
6801 modified by the user. | |
6802 </ul> | |
6803 | |
6804 <p> | |
6805 | |
6806 <hr size=5> | |
6807 <a name="vfc2pdf_chap"><h1>Chapter 13<br>VFC2PDF - Converting Text Files to PDF Format</h1></a> | |
6808 | |
6809 <p> | |
6810 VFC2PDF converts VFC or plain text files into PDF (Portable Document | |
6811 Format) files. After a report is converted to PDF format, it can be | |
6812 transferred to a PC or a MAC. It can also be viewed or printed using | |
6813 the Adobe Acrobat viewer. By using this utility, it becomes much easier | |
6814 to publish documents on public Internet web sites, CDrom, etc. | |
6815 <h3>accessing the program</h3> | |
6816 <blockquote> | |
6817 <br> | |
6818 <br> | |
6819 | |
6820 <p> | |
6821 The program may be executed by typing: | |
6822 | |
6823 <p> | |
6824 <table border=0> | |
6825 <tr> | |
6826 <td> | |
6827 <br> | |
6828 <pre> | |
6829 Menu>VFC2PDF | |
6830 | |
6831 </pre> | |
6832 </table> | |
6833 | |
6834 <p> | |
6835 at the Menu or from the $ prompt by typing: | |
6836 | |
6837 <p> | |
6838 <table border=0> | |
6839 <tr> | |
6840 <td> | |
6841 <br> | |
6842 <pre> | |
6843 $ VFC2PDF/[qual 1]/.../[qual n] {input_file} [output_file]) | |
6844 | |
6845 </pre> | |
6846 </table> | |
6847 | |
6848 </blockquote> | |
6849 | |
6850 <p> | |
6851 By executing from the Menu, you have no control over the default | |
6852 formatting options. | |
6853 | |
6854 <p> | |
6855 By executing from the $ prompt, you can control the output, including | |
6856 the use of wildcards. By default, VFC2PDF will attempt to choose | |
6857 appropriate orientation, font sizes and margins based on the record | |
6858 length of the input file. However, these values may be controlled by | |
6859 using qualifiers as given below. | |
6860 | |
6861 <p> | |
6862 <center> | |
6863 <table border=0 width=75%> | |
6864 <tr> | |
6865 <td><center><font size=+2><strong>Note</strong></font></center><hr | |
6866 size=1 noshade> | |
6867 A foreign command must be defined for VFC2PDF, such as: | |
6868 <br> | |
6869 ($ VFC2PDF :== $OECN$:VFC2PDF). </td> | |
6870 </tr> | |
6871 </table> | |
6872 </center> | |
6873 <p> | |
6874 <strong>Syntax</strong> | |
6875 <br> | |
6876 | |
6877 <p> | |
6878 <table border=0> | |
6879 <tr> | |
6880 <td> | |
6881 <br> | |
6882 <pre> | |
6883 | |
6884 | |
6885 VFC2PDF {input_file} [output_file] | |
6886 | |
6887 /ORIENTATION={PORTAIT|LANDSCAPE} | |
6888 /FONT_SIZE={points} | |
6889 /FONT_STYLE=([NORMAL],[BOLD],[ITALIC]) | |
6890 /VERTICAL_SPACING={points} | |
6891 /TOP_MARGIN={points} | |
6892 /LEFT_MARGIN={points} | |
6893 /LOG | |
6894 /PAGE_LENGTH={max_lines_per_page} | |
6895 /LINE_WIDTH={characters_per_line} (defaults to record size) | |
6896 /INFORMATION=([AUTHOR="author"], | |
6897 [CREATOR="creator (defaults to username)"], | |
6898 [TITLE="title (defaults to filename)"], | |
6899 [SUBJECT="subject"]) | |
6900 /[NO]COMPRESS | |
6901 | |
6902 | |
6903 </pre> | |
6904 </table> | |
6905 | |
6906 <p> | |
6907 <strong>Defaults</strong> | |
6908 <br> | |
6909 | |
6910 <p> | |
6911 <table border=0> | |
6912 <tr> | |
6913 <td> | |
6914 <br> | |
6915 <pre> | |
6916 | |
6917 | |
6918 PORTRAIT: /FONT_SIZE=11 /VERTICAL_SPACING=11 /LEFT_MARGIN=45 | |
6919 /PAGE_LENGTH=66 | |
6920 LANDSCAPE: /FONT_SIZE=9 /VERTICAL_SPACING=9 /LEFT_MARGIN=30 | |
6921 /PAGE_LENGTH=66 | |
6922 If /LINE_WIDTH is greater than 132: | |
6923 /FONT_SIZE=7 /VERTICAL_SPACING=9 /LEFT_MARGIN=30 | |
6924 | |
6925 | |
6926 </pre> | |
6927 </table> | |
6928 | |
6929 <p> | |
6930 <strong>Notes</strong> | |
6931 <br> | |
6932 | |
6933 <p> | |
6934 <table border=0> | |
6935 <tr> | |
6936 <td> | |
6937 <br> | |
6938 <pre> | |
6939 | |
6940 | |
6941 - Wildcards are supported in the input specification. If wildcards | |
6942 are used, the output_file may be omitted or must not include a file | |
6943 name. Output files will be written to the default directory unless | |
6944 the second parameter contains an output directory. | |
6945 | |
6946 - All qualifiers are optional. If /ORIENTATION is omitted, then | |
6947 it will be selected automatically based on the record length of the | |
6948 input file. Line lengths over 80 characters will be printed in LANDSCAPE, | |
6949 otherwise PORTRAIT will be used. | |
6950 | |
6951 Note: Record size determination is based on the MRS (Maximum Record | |
6952 Size) in the RMS header. For formats where MRS is not set, | |
6953 VFC2PDF will assume 80 characters. | |
6954 | |
6955 | |
6956 </pre> | |
6957 </table> | |
6958 | |
6959 <h3>transfer options</h3> | |
6960 <blockquote> | |
6961 <br> | |
6962 | |
6963 <p> | |
6964 There are several methods available to transfer the PDF formated file | |
6965 to a PC or MAC. | |
6966 | |
6967 <p> | |
6968 One method is to use some FTP utility. | |
6969 | |
6970 <p> | |
6971 Another procedure, which seems to work well in Netscape, is to specify | |
6972 an FTP URL as: | |
6973 | |
6974 <p> | |
6975 <table border=0> | |
6976 <tr> | |
6977 <td> | |
6978 <br> | |
6979 <pre> | |
6980 | |
6981 ftp://username@host.org/ | |
6982 | |
6983 | |
6984 </pre> | |
6985 </table> | |
6986 | |
6987 <p> | |
6988 Netscape will prompt you for a password and connect with an | |
6989 authenticated FTP. | |
6990 | |
6991 <p> | |
6992 A second simple method is to mail the file(s) to yourself as follows: | |
6993 | |
6994 <p> | |
6995 <table border=0> | |
6996 <tr> | |
6997 <td> | |
6998 <br> | |
6999 <pre> | |
7000 | |
7001 EMAIL>send/file/noedit/nocc/subj="PDF Files" filename.pdf | |
7002 | |
7003 | |
7004 </pre> | |
7005 </table> | |
7006 | |
7007 <p> | |
7008 or for multiple PDF files: | |
7009 | |
7010 <p> | |
7011 <table border=0> | |
7012 <tr> | |
7013 <td> | |
7014 <br> | |
7015 <pre> | |
7016 | |
7017 EMAIL>send/file/noedit/nocc/subj="PDF Files" *.pdf | |
7018 | |
7019 | |
7020 </pre> | |
7021 </table> | |
7022 | |
7023 <p> | |
7024 For the above, "noedit" means No Edit feature, and "nocc" means No | |
7025 Carbon Copy desired. | |
7026 | |
7027 <p> | |
7028 Once the files are sent, the user can open the message with their | |
7029 browser, or WEB-Mail, or some other client, and then save it to their | |
7030 desktop or print from there. | |
7031 </blockquote> | |
7032 <p> | |
7033 <table border=2> | |
7034 <tr> | |
7035 <td width=150 align=center><a href="oecn10_sysman_handbook_full_contents.html">Contents</a></td> | |
7036 </tr> | |
7037 </table> | |
7038 </body> | |
7039 </html> |