Cette fonction donne permet de définir différentes propriétés sur un fichier ou une source de donnée :
· activation et chemin du fichier d'alias (uniquement pour un fichier),
· sélection du membre (uniquement pour un fichier).
· options de curseur et de cache (fichier ou source de donnée),
Cette fonction permet également de continuer à travailler avec les fichiers d'alias, lors d'une migration d'un projet WinDev 5.5
Syntaxe
bResult = ASPropriete(NomFichier, Propriété, Valeur [, Connexion])
En anglais : ASProperty
Paramètres
bResult
Booléen. Vrai si la propriété a été affectée, Faux en cas d'erreur.
NomFichier
Chaîne.
Nom du fichier de l’analyse pour lequel on souhaite modifier une propriété ou chaîne vide pour l'ensemble des fichiers.
Propriété
Chaîne.
Une des valeurs du tableau ci-dessous :
Propriétés
|
Sous-Type |
Valeurs |
MEMBER |
chaîne |
Nom du membre du fichier à utiliser. Le fichier doit être ouvert après le ASPropriete. Le membre peut également être spécifié dans l'option MAIN des infos étendues du fichier : MAIN= |
ALIASPATH
|
chaîne |
Chemin où se trouve le fichier d'alias : nom_fichier._as |
ONLYALIAS
|
booléen |
Ignore les infos étendues pour n'utiliser que les informations du fichier d'alias. |
CACHESIZE |
entier |
Nombre d'enregistrement maximum dans le cache. |
FORWARDONLY |
booléen |
Curseur le plus rapide et le moins gourmand en ressource : le fichier est lu du début vers la fin. |
CACHEDINSERT |
entier |
Cache en écriture : un HAjoute ne va pas directement écrire l'enregistrement mais
alimenter un tampon avec le nombre d'enregistrements spécifié. |
Valeur
Selon la propriété et le type du tableau.
Connexion (optionnel)
Connexion - Nom de la connexion
Nouvelles ASPROPRIETE "connexion" : Pour pouvoir changer les valeurs en cours de route.
TIMEOUT
Le fichier d'alias était utilisé en WinDev 5.5 pour identifier les fichiers AS/400. C'est un fichier texte qui se trouve dans le répertoire où devrait se trouver son équivalent HyperFile.
[NOM_DU_FICHIER]
$FILE=BIBLIO/FICHIER ou FICHIER
CLE1=
CLE2=
...
$JNAL=TRUE // si le fichier est journalisé
$READONLY=TRUE // ouverture en lecture seule
$FILE correspond désormais au MAIN des infos étendues du fichier.
Les logiques associés aux clé sont dans les infos étendues des rubriques (LFSYSNAME).
$JNAL correspond à l'option JOURNALED des infos étendues du fichier.
$READONLY correspond au mode d'ouverture de la connexion (HOuvreConnexion).
Exemples
Utiliser les fichiers d'alias
Résultat est un booléen
// Indique dans quel répertoire trouver tous les fichiers d'alias
Résultat=ASPropriete("", "ALIASPATH", "C:\Program Files\Projet")
// ignorer les infos étendues, avant l'ouverture du fichier
Résultat=ASPropriete("", "ONLYALIAS", "VRAI")
Cache et curseur
'Doper' les performances de lecture "brute" de données provenant d'un HExecuteRequeteSQL.
// Il faut exécuter la requête avant d'utiliser ASPROPRIETE
HExécuteRequête(MaRequete)
//Cache de 1000 enregistrements
ASPropriete(MaRequete, "CACHESIZE", "1000")
ASPropriete(MaRequete, "FORWARDONLY", "1")
Le gain de performance peut théoriquement atteindre 50% sur la partie "lecture" du résultat.