home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
MBUG
/
MBUG107.ARC
/
REFERENC.LBR
/
WSFILE.RQF
/
WSFILE.REF
Wrap
Text File
|
1979-12-31
|
13KB
|
498 lines
* DATE 04/24/85 22:00
* wsfile.ref
REST from rdata.mem additive
ERAS
STOR 'T' TO select
STOR 'N' TO under
STOR 'N' TO under1
STOR 'Y' TO ans
@ 02,10 SAY 'This Module will make a special MailMerge file for WordStar'
@ 04,10 SAY 'Some people prefer to underline the title or subtitle (or both).'
@ 05,10 SAY 'Do you want to underline the main title (Y/N) ? '
@ 05,60 GET under PICTURE '!'
READ
@ 06,10 SAY 'Do you want to underline the subtitle (Y/N) ? '
@ 06,60 GET under1 PICTURE '!'
READ
@ 08,10 SAY 'Do you want the list alphabetically by <A>uthor or <T>itle ? '
@ 08,74 GET select PICTURE '!'
READ
DO WHIL @(select,'AT')=0
@ 08,74 GET select PICTURE '!'
READ
ENDD
CLEA GETS
IF select = 'A'
SET index TO &dr.:&aindex
ELSE
SET INDEX TO &dr.:&tindex
ENDI
RELE select
CLEA GETS
GO TOP
@ 10,10 SAY 'Do you want to prepare a WordStar file using the entire database ?'
@ 10,75 GET ans PICTURE '!'
READ
DO WHIL @(ans,'YN')=0
@ 10,75 GET ans PICTURE '!'
READ
ENDD
IF ans = 'Y'
STOR 1 TO counter
ACCE 'Enter Name of the WordStar-MailMerge file ' TO file:dat
DO WHIL file:dat = ' '
ACCE 'Enter Name of the WordStar-MailMerge file ' TO file:dat
ENDD
STOR !(file:dat) TO file:dat
STOR $(file:dat,1,8) TO file:dat
STOR file:dat+'.DOC' TO file:doc
STOR file:dat+'.DAT' TO file:dat
ERAS
@ 03,10 SAY 'Creating WordStar-MailMerge Document file: '+file:doc
SET CONSOLE OFF
SET ALTERNATE TO &file:doc
SET ALTERNATE ON
? '.OP'
? '.DF '+file:dat
? '.RV author,title1,title2,jrnlcite,edition,pageno,edtrans,publdata,librdata,chron,type,worksdis,comments'
? '.. select only items you need in your report labeling them, for example, as'
? '.. &author&,&title1&. Where you will sometimes have blank data fields, use'
? '.. the mailmerge option &title2/O&, &author/O&'
SET ALTERNATE OFF
SET CONSOLE ON
@ 05,10 SAY ' Creating WordStar-MailMerge Data file: '+file:dat
?
?
?? 'Writing record # '
SET CONSOLE OFF
SET ALTERNATE TO &file:dat
DO WHIL .NOT. EOF
SET CONSOLE OFF
SET ALTERNATE ON
STOR $(title1,1,60) TO tit1
STOR $(title1,61,60) TO tit2
IF tit2 = ' '
STOR TRIM(tit1) TO title
ELSE
STOR TRIM(tit1)+' '+TRIM(tit2) TO title
ENDIF
STOR $(worksdis,1,60) TO work1
STOR $(worksdis,61,60) TO work2
IF work2 = ' '
STOR TRIM(work1) TO work
ELSE
STOR TRIM(work1)+' '+TRIM(work2) TO work
ENDI
STOR $(comments,1,60) TO com1
STOR $(comments,61,60) TO com2
STOR $(comments,121,40) TO com3
IF com3 = ' '
STOR com2 TO comm
ELSE
STOR TRIM(com2) + ' ' + TRIM(com3) TO comm
ENDI
IF comm = ' '
STOR TRIM(com1) TO com
ELSE
STOR TRIM(com1)+' '+TRIM(comm) TO com
ENDIF
?
IF author = ' '
?? ','
ELSE
?? CHR(34)+TRIM(author)+CHR(34)+','
ENDI
IF title = ' '
?? ','
ELSE
IF under = 'Y'
?? CHR(34)+CHR(19)+TRIM(title)+CHR(19)+CHR(34)+','
ELSE
?? CHR(34)+TRIM(title)+CHR(34)+','
ENDI
ENDI
IF title2 = ' '
?? ','
ELSE
IF under1 = 'Y'
?? CHR(34)+CHR(19)+TRIM(title2)+CHR(19)+CHR(34)+','
ELSE
?? CHR(34)+TRIM(title2)+CHR(34)+','
ENDI
ENDI
IF journal = ' '
?? ','
ELSE
?? CHR(34)+TRIM(journal)+CHR(34)+','
ENDI
IF edition = ' '
?? ','
ELSE
?? CHR(34)+TRIM(edition)+CHR(34)+','
ENDI
IF pageno = ' '
?? ','
ELSE
?? CHR(34)+TRIM(pageno)+CHR(34)+','
ENDI
IF edtrans = ' '
?? ','
ELSE
?? CHR(34)+TRIM(edtrans)+CHR(34)+','
ENDI
IF publdat = ' '
?? ','
ELSE
?? CHR(34)+TRIM(publdat)+CHR(34)+','
ENDI
IF librdat = ' '
?? ','
ELSE
?? CHR(34)+TRIM(librdat)+CHR(34)+','
ENDI
IF chron = ' '
?? ','
ELSE
?? CHR(34)+TRIM(chron)+CHR(34)+','
ENDI
IF type = ' '
?? ','
ELSE
?? CHR(34)+TRIM(type)+CHR(34)+','
ENDI
IF work = ' '
?? ','
ELSE
?? CHR(34)+TRIM(work)+CHR(34)+','
ENDI
IF com = ' '
?? ','
ELSE
?? CHR(34)+TRIM(com)+CHR(34)+','
ENDI
SET ALTERNATE OFF
SKIP
SET CONSOLE ON
?? CHR(8) + CHR(8)+CHR(8)+CHR(8)+CHR(8)+CHR(8)+STR(COUNTER,5)
STOR COUNTER + 1 TO COUNTER
ENDD while not EOF
ELSE
ERAS
SET COLON OFF
STOR 'Selective WordStar MailMerge Module' TO mode
@ 0,26 SAY mode
@ 1, 0 SAY "+---------------------------------------"
@ 1,39 SAY "---------------------------------------+"
@ 2,10 SAY "To perform selective file preparation input only information"
@ 3,10 SAY "which is required for the search. Where more than one selection"
@ 4,10 SAY "in a field, you must perform multiple searches."
@ 7, 6 SAY "Author:"
@ 8, 5 SAY "Title 1:"
@ 9, 5 SAY "Title 2:"
@ 10, 3 SAY "Jrnl Cite:"
@ 11, 5 SAY "Edition:"
@ 11,47 SAY "Page No:"
@ 12, 4 SAY "Ed/Trans:"
@ 13, 0 SAY "Publish data:"
@ 14, 0 SAY "Library data:"
@ 15, 7 SAY "Chron:"
@ 16, 8 SAY "Type:"
@ 17, 2 SAY "Works disc:"
@ 18, 4 SAY "Comments:"
@ 19,47 SAY "Updated:"
@ 20, 0 SAY " -------------------------------------------------"
@ 20,50 SAY "-----------------------------"
STOR ' ' TO extra
STOR 0 TO count
STOR '.NOT.*' TO finder
STOR f TO first
STOR ' ' TO blnks
STOR blnks+$(blnks,1,20) TO mauthor
STOR blnks+$(blnks,1,20) TO mtitle1
STOR $(blnks,1,20) TO mtitle2
STOR $(blnks,1,20) TO mjournal
STOR $(blnks,1,18) TO medition
STOR $(blnks,1,18) TO mpageno
STOR $(blnks,1,20) TO medtran
STOR $(blnks,1,20) TO mpubldat
STOR $(blnks,1,20) TO mlibrdat
STOR $(blnks,1,20) TO mchron
STOR $(blnks,1,18) TO mtype
STOR $(blnks,1,20) TO mworks
STOR $(blnks,1,20) TO mcomment
STOR $(blnks,1,8) TO mdayu
@ 7,14 GET mauthor
@ 8,14 GET mtitle1
@ 9,14 GET mtitle2
@ 10,14 GET mjournal
@ 11,14 GET medition
@ 11,56 GET mpageno
@ 12,14 GET medtran
@ 13,14 GET mpubldat
@ 14,14 GET mlibrdat
@ 15,14 GET mchron
@ 16,14 GET mtype
@ 17,14 GET mworks
@ 18,14 GET mcomment
@ 19,56 GET mdayu
READ
CLEA GETS
STOR t TO continue
STOR f TO toolong
IF mauthor <> ' '
STOR TRIM(finder) +".AND.'"+TRIM(!(mauthor))+"'"+'$!(author)' TO finder
ENDI
RELE mauthor
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mtitle1 <> ' ' .AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mtitle1))+"'" TO mtitle11
STOR TRIM(finder) + mtitle11+'$!(title1)' TO finder
ENDI
RELE mtitle1, mtitle11
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mtitle2 <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mtitle2))+"'" TO mtitle21
STOR TRIM(finder) +mtitle21+'$!(title2)' TO finder
ENDI
RELE mtitle2, mtitle21
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mjournal <> ' ' .AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mjournal))+"'" TO mjourna1
STOR TRIM(finder) + mjourna1+'$!(journal)' TO finder
ENDI
IF LEN(finder) > 140
STOR t TO toolong
ENDI
RELE mjournal, mjourna1
IF medition <> ' '.AND. (.NOT. toolong)
STOR ".AND.'"+TRIM(!(medition))+"'" TO medit1
STOR TRIM(finder) +medit1+'$!(edition)' TO finder
ENDI
RELE medition, medit1
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mpubldat <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mpubldat))+"'" TO mpubl1
STOR TRIM(finder) + mpubl1+'$!(publdat)' TO finder
ENDI
RELE mpubldat, mpubl1
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mlibrdat <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mlibrdat))+"'" TO mlibrd1
STOR TRIM(finder) + mlibrd1+'$!(librdat)' TO finder
ENDI
RELE mlibrdat, mlibrd1
IF LEN(finder) >140
STOR t TO toolong
ENDI
IF mchron <> ' ' .AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mchron))+"'" TO mchron1
STOR TRIM(finder) +mchron1+'$!(chron)' TO finder
ENDI
IF LEN(finder) > 140
STOR t TO toolong
ENDI
RELE mchron, mchron1
IF mtype <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mtype))+"'" TO mtype1
STOR TRIM(finder) +mtype1+'$!(type)' TO finder
ENDI
RELE mtype, mtype1
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mworks <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mworks))+"'" TO mworkd1
STOR TRIM(finder) +mworkd1+'$!(worksdis)' TO finder
ENDI
RELE mworks, mworkd1
IF LEN(finder) > 140
STOR t TO toolong
ENDI
IF mcomment <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mcomment))+"'" TO mcomm1
STOR TRIM(finder) +mcomm1+'$!(comments)' TO finder
ENDI
RELE mcomment, mcomm1
IF LEN(finder) > 200
STOR t TO toolong
ENDI
IF mdayu <> ' '.AND.(.NOT.toolong)
STOR ".AND.'"+TRIM(!(mdayu))+"'" TO mdayu1
STOR TRIM(finder) +mdayu1+'$!(dayu)' TO finder
ENDI
RELE mdayu, mayu1
IF LEN(finder) > 200
STOR t TO toolong
ENDI
SET COLON ON
IF LEN(finder) < 12
STOR "*" TO finder
STOR ' STANDARD = deleted files ' TO extra
ENDI
IF toolong
ERAS
@ 10,10 SAY 'The search string is too long - you can have no more than'
@ 11,10 SAY '200 characters in the string and the field names. Please'
@ 12,10 SAY 'try again'
@ 13,30 SAY 'Hit any key to continue'
STOR f TO continue
SET CONSOL OFF
WAIT
SET CONSOL ON
ENDI
RELE toolong
ERAS
IF continue
STOR 1 TO counter
ACCE 'Enter Name of the WordStar-MailMerge file ' TO file:dat
DO WHIL file:dat = ' '
ACCE 'Enter Name of the WordStar-MailMerge file ' TO file:dat
ENDD
STOR !(file:dat) TO file:dat
STOR $(file:dat,1,8) TO file:dat
STOR file:dat+'.DOC' TO file:doc
STOR file:dat+'.DAT' TO file:dat
ERAS
@ 03,10 SAY 'Creating WordStar-MailMerge Document file: '+file:doc
SET CONSOLE OFF
SET ALTERNATE TO &file:doc
SET ALTERNATE ON
? '.OP'
? '.DF '+file:dat
? '.RV author,title1,title2,jrnlcite,edition,pageno,edtrans,publdata,librdata,chron,type,worksdis,comments'
? '.. select only items you need in your report labeling them, for example, as'
? '.. &author&,&title1&. Where you will sometimes have blank data fields, use'
? '.. the mailmerge option &title2/O&, &author/O&'
SET ALTERNATE OFF
SET CONSOLE ON
@ 05,10 SAY ' Creating WordStar-MailMerge Data file: '+file:dat
?
?
?? 'Writing record # '
SET CONSOLE OFF
SET ALTERNATE TO &file:dat
LOCA for &finder
DO WHIL .NOT. EOF
SET CONSOLE OFF
SET ALTERNATE ON
STOR $(title1,1,60) TO tit1
STOR $(title1,61,60) TO tit2
IF tit2 = ' '
STOR TRIM(tit1) TO title
ELSE
STOR TRIM(tit1)+' '+TRIM(tit2) TO title
ENDIF
STOR $(worksdis,1,60) TO work1
STOR $(worksdis,61,60) TO work2
IF work2 = ' '
STOR TRIM(work1) TO work
ELSE
STOR TRIM(work1)+' '+TRIM(work2) TO work
ENDI
STOR $(comments,1,60) TO com1
STOR $(comments,61,60) TO com2
STOR $(comments,121,40) TO com3
IF com3 = ' '
STOR com2 TO comm
ELSE
STOR TRIM(com2) + ' ' + TRIM(com3) TO comm
ENDI
IF comm = ' '
STOR TRIM(com1) TO com
ELSE
STOR TRIM(com1)+' '+TRIM(comm) TO com
ENDIF
?
IF author = ' '
?? ','
ELSE
?? CHR(34)+TRIM(author)+CHR(34)+','
ENDI
IF title = ' '
?? ','
ELSE
IF under = 'Y'
?? CHR(34)+CHR(19)+TRIM(title)+CHR(19)+CHR(34)+','
ELSE
?? CHR(34)+TRIM(title)+CHR(34)+','
ENDI
ENDI
IF title2 = ' '
?? ','
ELSE
IF under1 = 'Y'
?? CHR(34)+CHR(19)+TRIM(title2)+CHR(19)+CHR(34)+','
ELSE
?? CHR(34)+TRIM(title2)+CHR(34)+','
ENDI
ENDI
IF journal = ' '
?? ','
ELSE
?? CHR(34)+TRIM(journal)+CHR(34)+','
ENDI
IF edition = ' '
?? ','
ELSE
?? CHR(34)+TRIM(edition)+CHR(34)+','
ENDI
IF pageno = ' '
?? ','
ELSE
?? CHR(34)+TRIM(pageno)+CHR(34)+','
ENDI
IF edtrans = ' '
?? ','
ELSE
?? CHR(34)+TRIM(edtrans)+CHR(34)+','
ENDI
IF publdat = ' '
?? ','
ELSE
?? CHR(34)+TRIM(publdat)+CHR(34)+','
ENDI
IF librdat = ' '
?? ','
ELSE
?? CHR(34)+TRIM(librdat)+CHR(34)+','
ENDI
IF chron = ' '
?? ','
ELSE
?? CHR(34)+TRIM(chron)+CHR(34)+','
ENDI
IF type = ' '
?? ','
ELSE
?? CHR(34)+TRIM(type)+CHR(34)+','
ENDI
IF work = ' '
?? ','
ELSE
?? CHR(34)+TRIM(work)+CHR(34)+','
ENDI
IF com = ' '
?? ','
ELSE
?? CHR(34)+TRIM(com)+CHR(34)+','
ENDI
SET ALTERNATE OFF
CONT
SET CONSOLE ON
?? CHR(8) + CHR(8)+CHR(8)+CHR(8)+CHR(8)+CHR(8)+STR(COUNTER,5)
STOR COUNTER + 1 TO COUNTER
ENDD while not EOF
ENDI
ENDI
SET INDEX TO &dr.:&tindex