Recherche sur le blog

mercredi 7 septembre 2011

[WinDev] Découverte de fonctions, vol. 1

Aujourd'hui, nous allons répertorier un ensemble de fonctions, qu'elles soient utiles (lecture dans le registre, listing des champs d'une table) ou qu'elles soient secondaires, c'est-à-dire présentes pour créer de petits modules d'informations (par exemple, afficher les DLL chargées lorsqu'on affiche la fenêtre "à propos" de l'application). C'est la toute première compilation, mais elle regroupe donc des méthodes choisies au hasard... J'ai pu découvrir celles-ci au cours de mes divers développements.

Calculer un nombre au hasard (rand)
  • Utilité : faible à haute.
  • Intérêt : l'utilité peut varier selon l'utilisation.
  • Fonction : Hasard(min,max).
  • Comment ? Cette fonction, une fois appelée, renvoie une valeur située entre le minimum et le maximum donnés en paramètres à la fonction (le nombre renvoyé peut valoir l'un d'eux).
 
Récupérer la liste de DLL chargées par l'application
  • Utilité : faible.
  • Intérêt : pure information pour les utilisateurs avancés.
  • Fonction : ListeDLL().
  • Comment ? Cette fonction, une fois appelée, renvoie une liste de DLL's sous forme de chaîne de caractère. Elles sont toutes au format "répertoire complet\nom.ext" et sont séparées par un caractère de type "retour chariot" (RC). Il suffit donc de décomposer la chaîne avec la fonction "ExtraitChaine" ou avec une boucle.
 
Lister les rubriques d'une table/d'une source de données
  • Utilité : moyen.
  • Intérêt : afficher les caractéristiques des champs dans un interpréteur SQL.
  • Fonction : HListeRubrique().
  • Comment ? La fonction doit être utilisée sur un fichier : soit celui-ci se trouve dans l'analyse, soit celui-ci est créé en tant  que variable locale dans le code. Elles renvoie les rubriques avec les détails séparés par des tabulations, elles-mêmes étant séparées par des "retours chariot" (RC). On peut aussi paramétrer la fonction comme suit, lors de l'appel :
    • Nom du fichier.
    • Chemin complet vers l'analyse ".wdd" (facultatif).
    • Mot de passe de l'analyse (facultatif).
    • Options (facultatives) : par défaut, on ne récupère pas les détails précis de chacune des rubriques. Cependant, la constante "hLstDétailPlus" permet de récupérer tous les détails des rubriques (type + taille). 
 
Jouer un son dans l'application
  • Utilité : moyen.
  • Intérêt : si un opérateur scanne avec un gun, on peut émettre un son spécifique.
  • Fonction : Son().
  • Comment ? Deux paramètres peuvent être passés à la fonction, le second étant facultatif : d'abord le chemin vers le son (répertoire\fichier.ext), ensuite une constante permettant d'indiquer si le code doit continuer à s'exécuter ou si le son est bloquant, voire s'il doit être lu en boucle.
     
    Afficher une question de type "Oui/Non"
    • Utilité : haute.
    • Intérêt : afficher un choix à l'utilisateur lui demandant par exemple s'il veut sauvegarder un fichier ouvert ou les changements dans la configuration.
    • Fonction : OuiNon().
    • Comment ? Le paramètre de base de cette fonction est le texte à afficher à l'utilisateur. Avant ce paramètre, oui peut également rajouter une constante indiquant quel est le bouton qui sera sélectionné par défaut. La fonction renvoie vrai ou faux. On peut également utiliser la fonction "Dialogue".
      
     Connaître l'état d'une fenêtre du projet
    • Utilité : haute.
    • Intérêt : dans un traitement, savoir si la fenêtre a été ouverte avant d'interagir avec les champs qui se trouvent à l'intérieur de celles-ci. En effet, dans certains cas certains traitements pourraient s'effectuer avant que la fenêtre soit totalement ouverte.
    • Fonction : FenEtat().
    • Comment ? On peut tester l'état d'une fenêtre en passant en paramètre à cette fonction le nom de celle-ci. Si la fenêtre n'existe pas (non-ouverte), son état sera "Inexistant". Si celle-ci est ouverte, son état sera "Actif". Ces deux mots-clés sont utilisables en tant que constantes pour réaliser le test.
     
    Charger un fichier texte
    • Utilité : haute.
    • Intérêt : ne pas devoir écrire le code pour un chargement de fichier ligne par ligne (cependant, ne permet pas de contrôler les lignes lues ou certains caractères à un moment donné).
    • Fonction : fChargeTexte().
    • Comment ? La fonction prend en paramètre le chemin complet vers le fichier, et renvoie le texte lu, sans se soucier du format de caractères. Une chaîne vide sera renvoyée en cas d'erreur ou de fichier vide. Remarque : on peut aussi sauver du texte avec : fSauveTexte().
     
    Transformer une chaîne en un code "hash"
    • Utilité : haute.
    • Intérêt : calculer des codes "hash" pour des mots de passe par exemple.
    • Fonction : HashChaine et NumériqueVersChaine.
    • Comment ? Voici un exemple pour une chaîne que l'on veut transformer en SHA-1.

      Toutes ces fonctions sont détaillées dans la documentation de PC SOFT.

      Bon amusement !

      Aucun commentaire: