
MACRO SPITBOL VERSION 3.5(1.01)  21-APR-1981 15:30
VAX - VMS  *Set Site-ID in SYSID.MAR!*  _DBB2:[CLARK.TOOLS]RNODIS.SPT;4         


                                                                        PAGE 1

        * RNODIS - Creates a MAIL Distribution List
        *	from a RUNOFF Distribution List
1       
2       	tab = '	'
3       	splitup = FENCE '.br;'  BREAK(tab) . full_name  tab
        +			(BREAK(tab) | REM) . dec_address  (tab | RPOS(0))
        +			REM . engnet_address
4       
5       	TERMINAL = 'Enter the name of a RUNOFF Distribution List'
6       	input_name = TRIM(TERMINAL)			:F(END)
7       	input_name '.'					:S(open_input)
8       	input_name = input_name '.RNO'
9       open_input
10          	INPUT( 'runoff_list', 1, input_name )
11      
12      	output_name = input_name
13      	output_name '.' REM = '.DIS'
14      	OUTPUT( 'mail_list', 2, output_name )
        *+
        *   Read one line from the RUNOFF distribution list.
        *-
15      read	image = TRIM(runoff_list)			:F(done)
        *+
        *   Select appropriate processing base on the content of the line.
        *-
16      	image FENCE '.REQUIRE'				:S(require)
        *+
        *   Extract relevant fields from the line and validate these fields.
        *-
17      	image splitup					:F(read)
18      	IDENT(full_name,'#')				:S(read)
19      	engnet_address FENCE '(' REM =
20      	IDENT(engnet_address)				:S(no_engnet)
        *+
        *   Remove non-trivial space from network name.
        *-
21      no_hash	full_name '#' = ' '				:S(no_hash)
        *+
        *   Generate a network name and a comment (except for "@" names)
        *-
22      	engnet_address FENCE '@'			:S(just_name)
23      name_and_comment
24      	mail_list = RPAD(engnet_address,6 + 2 + 9) '  ! '
        +		RPAD(full_name,19) '  ' dec_address	:(read)
25      just_name
26      	mail_list = engnet_address			:(read)
        *+
        *   Generate a MAIL "require" line.
        *-
27      require
28      	image "'" ARB . require_name '.' LEN(3) "'" 	:F(bad_require)
29      	mail_list = '@' require_name '.DIS'		:(read)
        *+
        *   Error Messages

                                                                        PAGE 2

        *-
30      no_engnet
31      	TERMINAL = 'No ENGnet address for ' full_name '  ' dec_address
        +							:(read)
32      bad_require
33      	TERMINAL = 'Invalid .REQUIRE entry: ' image	:(read)
34      
35      done	TERMINAL = output_name ' Created'
36      END

STORE USED     1529
STORE LEFT     11348
COMP ERRORS    0
REGENERATIONS  0
COMP TIME-MSEC 270


NORMAL END
IN STATEMENT   36
RUN TIME-MSEC  190
STMTS EXECUTED 228
MCSEC / STMT   833
REGENERATIONS  0

