Suivant la convention VFP, cette fonction retourne :
- le nombre de sous-dossiers dans un dossier
- un tableau contenant le nom de chaque sous-dossier trouvé dans le premier paramètre passé par référence
Ce code illustre l'utilisation de la substitution de nom : SET DEFAULT TO (m.lcDefault)
Source / Exemple :
FUNCTION aSubFolders && Tableau des sous-dossiers d'un dossier
LPARAMETERS ;
taSubFolders,; && @ Tableau à remplir
tcFolderAddr && Adresse du dossier où rechercher les sous-dossiers
LOCAL lnResult && Nombre de sous-dossiers trouvés
m.lnResult = 0
EXTERNAL ARRAY taSubFolders && pour le gestionnaire de projet
- Si les paramètres requis sont valides
LOCAL llParm1, llParm2
m.llParm1 = Type("alen(m.taSubFolders)")=='N'
ASSERT m.llParm1 MESSAGE Program() + ": Le premier paramètre doit être un tableau"
m.llParm2 = Vartype(m.tcFolderAddr)=='C' AND Directory(m.tcFolderAddr)
ASSERT m.llParm2 MESSAGE Program() + ": Adresse de dossier invalide : " + Transform(m.tcFolderAddr)
IF m.llParm1 AND m.llParm2
- Remplir le tableau des sous-dossiers
LOCAL lcDefault
m.lcDefault = FullPath(Curdir())
SET DEFAULT TO (m.tcFolderAddr)
m.lnResult = ADir(taSubFolders, Space(0), 'D') && space(0) makes aDir() return Folders
SET DEFAULT TO (m.lcDefault)
ENDIF
RETURN m.lnResult
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.