I'd log on as (MANAGER.SYS or MANAGER.VESOFT)
and run GOD.PUB.VESOFT for good measure, then
use it. Once it is compiled, anybody should
then be able to use it.
As successful compile will show a file called
ACCESSL8 in the LISTF group of the VESOFT account
with a filecode of 176.
Tracy M. Johnson
TRW Automotive Electronics
Sensors & Components
-----Original Message-----
From: George Willis [mailto:[log in to unmask]]
Sent: Tuesday, March 28, 2000 9:55 AM
To: Johnson, Tracy; [log in to unmask]
Subject: RE: MPEX Flex listf
Thanks Tracy for sharing this MPEX command, however do you have a remedy for
the following message I get when attempting to use it?
FS2:>MPEX
listf command.pub.sys,^accessl
Processing WHILE ISBOOLEAN (CALL LSTD'NEXT (@LOADINFO)) DO
^
Error: Privileged operator: CALL.
Error: Can't compile file
FS2:>
George Willis
Fayez Sarofim & Co.
Houston, Tx.
-----Original Message-----
From: Johnson, Tracy [mailto:[log in to unmask]]
Sent: Friday, March 24, 2000 10:47 AM
To: [log in to unmask]
Subject: Re: MPEX Flex listf
This reminds me that I had modified MPEX's LISTF,ACCESS so that it displays
on one line due to the high availability of 132 column screens. (It easier
to use the FILTER command that way, no more CONTEXT parameters.)
I called it ACCESSL (L for LONG) code below:
VAR NUMOPENERS: SHORTINT;
VAR OPENERPINS: ARRAY [1024] OF SHORTINT;
VAR OPENERFNUMS: ARRAY [1024] OF SHORTINT;
VAR I: INTEGER;
VAR RFILEUSER: TFILEUSER;
VAR ROPENFILE: TOPENFILE;
VAR LOCKSTATE: INTEGER;
VAR F: STRING[8];
VAR JOBTYPE: STRING[1];
VAR JOBNUM: INTEGER;
VAR MAXOPENPIN: INTEGER;
SUBROUTINE CLEARF;
VAR FF: STRING[8];
BEGIN
FF:=F;
F:='';
SCOPY(FF)
END;
SUBROUTINE GETFMTACCESSMODE; RFILEUSER.FMTACCESSMODE;
SUBROUTINE GETCURRENTRECORD; RFILEUSER.CURRENTRECORD(RFILE);
SUBROUTINE GETFMTJOBNUM;
BEGIN
IF JOBNUM=0 THEN 7*' '
ELSE STRWRITE('#',JOBTYPE:1,JOBNUM:5:'LEFT')
END;
SUBROUTINE GETFMTLOGON;
BEGIN
TRY
STRWRITE(VEJOBINFO(JOBTYPE,JOBNUM).FMTLOGON:'DOWNSHIFT') +
(IF JOBTYPE='S' THEN ' (ldev '+VEJOBINFO(JOBTYPE,JOBNUM).LDEVIN+')'
ELSE '')
RECOVER
SEG (STRWRITE('(original opener inaccesssible)'))
END;
SUBROUTINE DOLOADED;
VAR WROTELOADED: BOOLEAN;
VAR LOADINFO: TLOADINFO;
BEGIN
IFVERSION5 THEN
IF LOADED THEN
SEG (BEGIN
WROTELOADED:=TRUE;
LOADINFO.TYPE:=255;
WHILE ISBOOLEAN (CALL LSTD'NEXT (@LOADINFO)) DO
IF (LOADINFO.UFID)[0]=(ISDOUBLEPTR(UFID))[0] THEN
IF LOADINFO.ISPROGRAM AND LOADINFO.PROGALLOCATED THEN
WRITELN (CLEARF:10,
IF LOADINFO.PROGAUTOALLOCATED THEN "AUTOALLOCATED"
ELSE "ALLOCATED")
ELSE IF LOADINFO.ISPROCESS THEN
BEGIN
JOBTYPE:=PINJOBTYPE(LOADINFO.PROCESSPIN);
JOBNUM:=PINJOBNUMBER(LOADINFO.PROCESSPIN);
WRITELN (CLEARF:10, "LOADED":10, GETFMTJOBNUM,
LOADINFO.PROCESSPIN:4:'LEFT',
IF JOBNUM=0 OR JOBTYPE='' THEN ''
ELSE GETFMTLOGON);
END
ELSE IF LOADINFO.ISSL THEN
WRITELN (CLEARF:10, "SL LOADED");
IF F<>'' THEN
WRITELN (CLEARF:10, "LOADED":10,"SYSTEM");
END);
END;
MPEXHEADER1:="FILENAME ---TYPE--- JOBNUM PIN ---------PROGRAM----"+
"----- ACCESS RECORD -LOCK-"+
"----- SESSION NAME -----";
MPEXHEADER2:="";
MPEXHEADER3:="";
MAXOPENPIN:=1024;
FOR RFILE IN MPEXFILESETGENERAL (1, TRUE)
SELECT SEG (OPENED OR STORED OR RESTORED OR LOADED OR READING
OR STORESTAT<>0)
DO
BEGIN
F:=SCOPYFILE;
IFVERSION5 THEN
DOLOADED;
IF RESTORED OR RESTORING THEN
WRITELN (CLEARF:10, "BEING RESTORED")
ELSE IF STORED OR STORING THEN
WRITELN (CLEARF:10, "BEING STORED")
ELSE IF CBU THEN
WRITELN (CLEARF:10, "OPEN BY CONCURRENT-BACKUP");
NUMOPENERS:=0;
IF OPENED THEN
BEGIN
IFVERSION5 THEN
ROPENFILEREAD (RFILE, UFID, ROPENFILE);
TRY
CALL FOPENERS (@RFILE, (@RFILEUSER.GUFDPTR-@RFILEUSER)/2,
CALLDPARM(0), CALLDPARM(0),
@NUMOPENERS, @OPENERPINS, @OPENERFNUMS);
RECOVER;
IF NUMOPENERS=0 THEN
SEG (WRITELN (CLEARF:10, "OPENED":10,
"(accessor information unavailable)"));
(* Kludge: Would be better as a FOR loop, but then WRITELNs
within it wouldn't do the outer FOR loop's PAGEHEADs.
Too bad. EV 92/12/26. *)
I:=0;
WHILE I<MIN(NUMOPENERS,MAXOPENPIN) DO
BEGIN
RFILEUSERREAD (OPENERPINS[I], OPENERFNUMS[I], RFILEUSER);
IF OPENERPINS[I]=0 THEN
SEG (WRITELN (CLEARF:10,
"OPENED":10, "":7, "":4, "GLOBALLY":26,
GETFMTACCESSMODE:8, GETCURRENTRECORD:6))
ELSE
BEGIN
IFVERSIONXL THEN
LOCKSTATE:=-1
ELSE
LOCKSTATE:=SIGNEXTEND (CALL RIN'PIN'STATUS (ROPENFILE.RIN,
OPENERPINS[I]));
JOBTYPE:=PINJOBTYPE(OPENERPINS[I]);
JOBNUM:=PINJOBNUMBER(OPENERPINS[I]);
WRITELN (CLEARF:10, "OPENED":10, GETFMTJOBNUM,
OPENERPINS[I]:4:"LEFT",
" ",
PINPROGNAME(OPENERPINS[I]):26,
GETFMTACCESSMODE:8,
GETCURRENTRECORD:6, " ",
IF LOCKSTATE=-1 THEN " "
ELSE IF LOCKSTATE=0 THEN "LOCKER "
ELSE STRWRITE ("WAIT:", LOCKSTATE),
GETFMTLOGON);
END;
I:=I+1;
END;
END
ELSE IF READING AND VALIDCOLDLOADID THEN
WRITELN (CLEARF:10, "SYSTEM PROTECTED");
IF NUMOPENERS > MAXOPENPIN THEN
SEG( WRITELN ( CLEARF:10,
"(Output truncated: Can't recover more than ",
MAXOPENPIN," accessors)"));
END;
Tracy M. Johnson
TRW Automotive Electronics
Sensors & Components
|