In a message dated 2/4/02 2:01:20 PM Eastern Standard Time,
[log in to unmask] writes:
<<
I thought FSET was supposed to reset the file number. If so, why does this
happen? Code snippet follows.
BEFORE FSET
AFTER FSET(13), FNUM13: 13 FSET13: 21 IERR: 1019
AFTER FSET(14), FNUM14: 14 FSET14: 22 IERR: 1020
AT CLOSE OF 13, IERR: 0
AT CLOSE OF 14, IERR: 0
AFTER READ #2 AT 130, TYPE=E FILENUM= 16 JOB=81495302
AFTER FILE, IERR: 0 IPARM: 0
AT 260, FNUM(13): 1022 FNUM(14): 1023 KEYS: 1 8 0 9 8 0 17 3 0
TEMPORARY FILES FOR MGR.PROD,PUB
ACCOUNT= PROD GROUP= PUB
FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE----
SIZE TYP EOF LIMIT R/B SECTORS #X MX
TEMP13 30B FA 5 500 1 64 1 32 (TEMP)
AFTER LISTF, IERR: 0 IPARM: 0
**** INTERNAL TRAP
Data PAGE Fault
[VSM] Invalid Pointer Error
ABORT: FAC201F.EXE.PROD
File error: #71
File system error opening an old file. (error #1302)
TOO MANY FILES OPEN (FSERR 71) [BATCHDBG.STDIN.SYS]
$2 ($11a) nmdebug >
c
Program terminated in an error state. (CIERR 976)
PRINT *,"BEFORE FSET"
CALL FSET(FNUM13,FSET13,IERR)
PRINT *,"AFTER FSET(13), FNUM13:",FNUM13," FSET13:",FSET13,
+ " IERR:",IERR
CALL FSET(FNUM14,FSET14,IERR)
PRINT *,"AFTER FSET(14), FNUM14:",FNUM14," FSET14:",FSET14,
+ " IERR:",IERR
>>
FSET is resetting the file number. It is resetting it to what you are
telling it
to set it to. You are telling it to reset it to itself. I don't know why
you are
doing that. Perhaps you really want to reset it to the same unit number each
time through the loop. If that is what you want to do, try
CALL FSET(FNUM13,13,IERR)
Cecile Chi
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|