(This function uses Gabriel Bakker's FileIO)
Code: Select all
dim form$(1)*255
!--------------------------------------------------------------------
def library fnrecordsinfile (layout$;___,keyform$,datafile,nextkey$*100,nextrec)
datafile = fnopen(layout$, Mat Datarec$, Mat Datarec, mat form$,1,1)
keyform$ = cform$("form C "&str$(kln(datafile))&",B 4")
restore #datafile,search>='':
for index=1 to lrec(datafile)
read #datafile,using keyform$,keyonly: nextkey$,nextrec eof reccountdone
next index
reccountdone:!
close #datafile:
fnrecordsinfile = index - 1
fnend
!--------------------------------------------------
def Fnopen(Filename$*255, Mat F$, Mat F, Mat Form$; Inputonly, Keynum, Dont_Sort_Subs, Path$*255, Mat Descr$, Mat Field_Widths,Supress_Prompt,Ignore_Errors,Suppress_Log,___,Index)
library 'fileio' : Fnopenfile
dim _Fileiosubs$(1)*800, _Loadedsubs$(1)*80
Fnopen=Fnopenfile(Filename$, Mat F$, Mat F, Mat Form$, Inputonly, Keynum, Dont_Sort_Subs, Path$, Mat Descr$, Mat Field_Widths, Mat _Fileiosubs$, Supress_Prompt,Ignore_Errors,Program$,Suppress_Log)
if Srch(_Loadedsubs$,Uprc$(Filename$))<=0 then : mat _Loadedsubs$(Udim(_Loadedsubs$)+1) : _Loadedsubs$(Udim(_Loadedsubs$))=Uprc$(Filename$) : for Index=1 to Udim(Mat _Fileiosubs$) : execute (_Fileiosubs$(Index)) : next Index
fnend
! --------------------------------------------------------------------