Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
? GetTree(Home())
Select ;
cast(filepath As Varchar(250)) As filepath, ;
cast(filename As Varchar(250)) As filename, ;
filesize, fattr, createtime, lastacc, lastwrite ;
From filelist ;
ORDER By 1,2
Function GetTree
Lparameters tcStartDir
Create Cursor filelist ;
(filepath m, filename m, filesize i, ;
fattr c(8), createtime T, lastacc T, lastwrite T)
Create Cursor folderlist (filepath m)
oFiler = Createobject('filer.fileutil')
With oFiler
.SearchPath = m.tcStartDir
.Subfolder = 1
.FileExpression = '*.*'
.Find(0)
For ix=1 To .Files.Count
With .Files(ix)
Insert Into filelist ;
(filepath, filename, filesize, fattr, createtime, lastacc, lastwrite) ;
values ;
(.Path, .Name, .Size, Attr2Char(.Attr), ;
Num2Time2(.Datetime), Num2Time2(.LastAccessTime), Num2Time2(.LastWriteTime) )
Endwith
Endfor
Return .Files.Count
Endwith
Endfunc
Function Num2Time2
Lparameters tnFloat
Return Dtot(Date(1899,12,30) + m.tnFloat)
Endfunc
Function Attr2Char
Lparameters tnAttr
Return ;
IIF(Bittest(tnAttr,0),'RO','RW')+;
IIF(Bittest(tnAttr,1),'H','_')+;
IIF(Bittest(tnAttr,2),'S','_')+;
IIF(Bittest(tnAttr,4),'D','_')+;
IIF(Bittest(tnAttr,5),'A','_')+;
IIF(Bittest(tnAttr,6),'E','_')+;
IIF(Bittest(tnAttr,7),'N','_')
Endfunc
oShell=Createobject("shell.application")
GetFileList( HOME(),'FileList')
Select Cast(filePath As c(250)) From fileList
Procedure GetFileList(tcSourceFolder, tcCursorName)
Local oFile
If !Used(m.tcCursorName)
Create Cursor (m.tcCursorName) (filePath m)
Endif
If Type('oShell.NameSpace(m.tcSourceFolder)') = 'O' ;
And !Isnull(oShell.NameSpace(m.tcSourceFolder))
For Each oFile In oShell.NameSpace(m.tcSourceFolder).items
If !oFile.IsLink And oFile.IsFolder
GetFileList(oFile.Path,m.tcCursorName)
Else
Insert Into (m.tcCursorName) Values (oFile.Path)
Endif
Endfor
Endif
Endproc