pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Exemples évolués

Chaque exemple montre une utilisation pratique de la fonction du WLangage.

Quand plusieurs syntaxes sont possibles, chacune est illustrée indépendamment.

Revenir à la page des exemples évolués


L'exemple suivant permet de manipuler les données du fichier Commande2000 , fichier des commandes de l'année 2000, archivé dans le répertoire D:\Gestcom\Archive2000. Ce fichier correspond à la description du fichier COMMANDE présent dans l'analyse.



// Création d'un alias du fichier COMMANDE
Commande2000
est une source de données
SI HAlias ( Commande , Commande2000 )= Vrai
ALORS
    // COMMANDE2000 peut maintenant être utilisé dans les traitements
    // Il se comporte de façon identique au fichier COMMANDE
décrit dans l'analyse.
    // Modification du répertoire
    HChangeRep ( Commande2000 , "D:\Gestcom\Archive2000" )
    // Modification du nom
    HChangeNom("Commande2000","Commande")
   
HOuvre ( Commande2000 )
    ...
    // Traitements sur le fichier commande2000
    ...
FIN
// Annulation de l'alias
HAlias ( Commande )


Cet exemple permet de copier les enregistrements du fichier ClientTemp.FIC vers le fichier Client.FIC.



// Déclaration de l'alias
ClientTemp
est une source de données
// Création de l'alias
SI HAlias ( Client , ClientTemp )= Vrai ALORS
   // Si le fichier ClientTemp.FIC est dans un autre répertoire,
   // il faut ajouter :
   //HChangeRep(ClientTemp,"C:\MonRep\RepAlias")
  
//Création physique (ou ouverture) du fichier ClientTemp.FIC
   HCreationSiInexistant ( ClientTemp
)
  //Pour filtrer les enregistrements copiés, vous pouvez ajouter une commande HFiltre ici
   .....
  //parcours des enregistrements du fichier ClientTemp.FIC
  HLitPremier ( ClientTemp , "NomClient"
)
  TANTQUE PAS HEnDehors ( ClientTemp
)
       //Copie en mémoire l'enregistrement du fichier ClientTemp.FIC
       //  vers le fichier Client.FIC
       SI HCopieEnreg ( CLIENT , ClientTemp
) ALORS
          //Ajout dans la fichier Client.FIC
          //(l'identifiant automatique du fichier est systématiquement
          // recalculé s'il existe)
          HAjoute ( Client
)
          // Ajout OK ? (Vérifier intégrité et doublon) 
          SI HErreurDoublon () OU HErreurIntegrité
() ALORS
              SI PAS OuiNon ( "Erreur de doublon ou d'intégrité pendant "
+ ... 
                      " l'ajout de " +
CLIENT.NomCLient +
                       " dans le fichier Client.FIC" +RC+ "Continuer ?"
) ALORS
                   //Arrêt du traitement de copie des enregistrements
                   // sortie de la boucle TantQue
                  SORTIR
              FIN
          FIN
        SINON
            //Erreur sur la commande HCopieEnreg
            //Affichage d'un message d'erreur
             Erreur ( "Copie d'enregistrement impossible"
)
            //interruption du traitement, sortie de la boucle TantQue
            SORTIR
        FIN
        HLitSuivant ( ClientTemp , "NomClient" )
   FIN
SINON
   //Erreur sur la commande HAlias
   //Affichage d'un message sur l'erreur
  Erreur ( "Détail du Problème " + HErreurInfo
())
FIN