Exemple 1 : Scan d'un document
Sélectionnez
// Enregistre le document présent dans le scanneur
// dans le fichier "MaPhoto.JPEG"
// Le document sera enregistré en noir et blanc
// Le code lui-même
TwainVersJPEG ("C:\Temp\MaPhoto.JPEG", 0, Faux , TwainNoirBlanc )
// Le code en gérant les éventuelles erreurs par programmation
SI TwainVersJPEG ("C:\Temp\MaPhoto.JPEG", 0, Faux , TwainNoirBlanc ) ALORS
Info("Le document a été enregistré")
SINON
Erreur("Le document n'a pas été scanné")
FINExemple 2 : Lecture d'une clé de registre
Sélectionnez
// Lit la valeur "Langage" dans la clé "HKEY_LOCAL_MACHINE\SOFTWARE\Appli"
// Le booléen ResExécute permet de savoir si la valeur a été lue
Lecture = RegistreLit ("HKEY_LOCAL_MACHINE\SOFTWARE\Appli", "Langage", Exécute)
SI Exécute = Vrai ALORS
Info("La valeur a été lue et vaut : "+Lecture)
FINExemple 3 : Sélection d'une couleur
Sélectionnez
Valeur est un entier = RVB(10, 17, 69)
Résultat est un booléen
Info("Couleur de départ : " + Valeur)
Résultat = SelectCouleur (Valeur, scInit )
Info("Couleur d'arrivée : " + Valeur)Exemple 4 : Calcul du nombre de jours entre 2 dates
Sélectionnez
// Affiche le nombre de jours écoulés depuis le 01/01/1998
X = NumériqueVersChaîne( DateDifférence ("19980101", DateSys())) + " jours écoulés"Exemple 5 : Extraction d'une partie de chemin de fichier
Sélectionnez
// Récupération du nom du fichier
NomFichier = fExtraitChemin ("\MesRépertoires\Fichier.extension", fFichier )
// fExtraitChemin renvoie "Fichier"Exemple 6 : Phonétique d'une chaîne
Sélectionnez
// Comparaison phonétique de deux chaînes de caractères
Phonétique ("TRAIT") = Phonétique ("très")Exemple 7 : Envoi d'un email
Sélectionnez
// Initialisation de la structure e-mail
Email.Destinataire = "support@pcsoft.fr"
Email.Expéditeur = "Tartampion@boite.net.fr"
Email.Message = "Test Auto eMail"
Email.nbDestinataire = 1
// Envoie le mail et gère les éventuelles erreurs
SI EmailEnvoieMessage (NomUser) = Faux ALORS
Erreur("L'envoi de mail a échoué", ErreurInfo())
SINON
Info("L'envoi de mail a réussi ")
FINExemple 8 : Ajout d'une icône dans le systray
Sélectionnez
// Ajout de l'icône "C:\icones\icone.ICO" dans la barre des tâches
ResAjoutIcone = SysIconeAjoute ("C:\icones\icone.ICO", "", "Ventes 2008")Exemple 9 : Sauvegarde d'une hard copie
Sélectionnez
// Sauve en mémoire l'image présente dans "ImageDessin"
Toto = dSauveImageJPEG (ImageDessin, enMémoire )Exemple 10 : Exemple de déclaration de variables
Sélectionnez
// Déclaration de variables
NomClient est une chaîne
Compteur est un entier
Prix est un réel
i,j,k sont des entiersExemple 11 : Interaction Code / Interface
Sélectionnez
// Exécute le traitement de l'option de menu FichierSauve
ExécuteTraitement (FichierSauve, trtOptionMenu )Exemple 12 : Gestion des Thread par programme (il existe une méthode automatique)
Sélectionnez
// Exécution d'un thread avec passage de paramètres
sDate est une chaîne = DateSys()
// Exécution du thread
ThreadExécute ("THREADNAME", threadNormal ,"pExecReq",sDate)
Procédure locale pExecReq
// Détail de la procedure " pExecReq " qui
// attend une date en paramètre d'une requête
PROCEDURE pExecReq(sDate)
SI HExécuteRequête(Sup_Date, hRequêteDéfaut ,sDate) = Faux ALORS
Erreur(HErreurInfo())
SINON
HLitPremier(Sup_Date)
FINExemple 13 : Aperçu avant impression
Sélectionnez
// Et en prime , suppression des boutons d'envoi d'Email de l'aperçu avant impression
// Car par défaut dans un aperçu il y a envoi d'email, copie dans Word, Excel et plus !!!
iParamètreAperçu ( iBoutonTous + iBoutonEmail - iBoutonEmailPdf )
iAperçu()
iImprimeEtat(MonEtat)Exemple 14 : Impression en HTML
Sélectionnez
// Impression au format HTML
iDestination ( iHTML , "c:\Mes documents\MonEtat.HTM")
// "c:\Mes documents\MonEtat.HTM" correspond au nom et
// au chemin du fichier HTM qui sera créé avec l'état "MonEtatRécap"
iImprimeEtat(MonEtatRécap)Exemple 15: Génération d'un fichier PDF
Sélectionnez
iDestination ( iPDF , NomFichier)
iImprimeEtat(Etat_Facture)
// Variante sophistiquée (tout est possible en WLangage !)
// Impression au format PDF
NomFichier est une chaîne = ComplèteRep(fRepEnCours()) + "f" + Facture + Client + ".PDF"
iDestination ( iPDF , NomFichier)
iImprimeEtat(Etat_Facture, Client, Facture)Exemple 16 : Protection d'un fichier PDF
Sélectionnez
// Protection du PDF contre l'impression
// et contre la sélection et le copier/coller
iParamètrePDF ( iProtectionImpression + iProtectionSelection )
// création du PDF
iAperçu( iPDF , ":\Temp\MonPDF.PDF")Exemple 17 : Sélection d'une imprimante PCL (mobile)
Sélectionnez
// Imprimante PCL à utiliser
iDestination ( iPCL , "\\MonRéseau\MonImprimante")Exemple 18 : Impression au format PCL (mobile)
Sélectionnez
// Impression au format PCL
iDestination ( iPCL , "\Mes documents\MonFichier.PCL")Exemple 19 : Composer un numéro de téléphone
Sélectionnez
SI telCompose ( ChampSaisieNuméroTéléphone , "EtatLigne" ) ALORS
Info ( "Cliquez sur OK pour raccrocher quand vous aurez terminé " )
telRaccroche ()
FIN
Procédure locale EtatLigne
PROCEDURE EtatLigne ( ValeurEtat )
SELON ValeurEtat
CAS telLigneOccupée : Message ( "La ligne est occupée" )
CAS telLigneDecrochée : Message ( "OK, connecté" )
CAS telLigneNumérote : Message ( "Numérotation en cours" )
CAS telLigneTonalité : Message ( "Tonalité" )
CAS telLigneRaccrochée : Message ( "Le correspondant a raccroché" )
CAS telLigneAttendRéponse : Message ( "Recherche du correspondant" )
CAS telLigneSonnerie : Message ( "Sonnerie chez le correspondant" )
FINExemple 20 : Calculs financiers
Sélectionnez
// Taux d'intérêt pour un emprunt de 25 000 euros. Six versements
// de 5000 euros sont nécessaires au remboursement de l'emprunt.
ResTauxIntérêt = FinTauxIntérêt (6, -5000, 25000)Exemple 21 : Lecture d'un fichier texte ligne par ligne
Sélectionnez
BOUCLE
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne ( NumFic )
SI UneLigne = EOT ALORS SORTIR
TraiteLigne ( UneLigne )
FINExemple 22 : Sortie selon une condition TANTQUE
Sélectionnez
// Sortie selon une condition TANTQUE
BOUCLE
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne ( NumFic )
TraiteLigne ( UneLigne )
A FAIRE TANTQUE UneLigne <> EOT
FINExemple 23 : Sortie selon une itération
Sélectionnez
// Sortie selon une itération
BOUCLE ( 10 )
// Lecture d'une ligne du fichier texte
UneLigne = fLitLigne ( NumFic )
TraiteLigne ( UneLigne )
FINExemple 24 : Export vers Excel
Sélectionnez
sFic est une chaîne
// On demande le nom du fichier
sFic = fSélecteur("", "", "Choisissez le fichier d'exportation", "Fichiers Excel (*.xls) *.xls", ...
"xls", fselCrée + fselExiste )
// Si le nom n'a pas été fourni, on abandonne l'export
SI sFic = "" ALORS RETOUR
// Sinon, on exporte le contenu de la table TABLE1
TableVersExcel ("TABLE1", sFic, taSansTitre )Exemple 25 : Export vers XML
Sélectionnez
sFic est une chaîne
// On demande le nom du fichier
sFic = fSélecteur("", "", "Choisissez le fichier d'exportation", "Fichiers XML (*.XML) *.xml", ...
"xml", fselCrée + fselExiste )
// Si le nom n'a pas été fourni, on abandonne l'export
SI sFic = "" ALORS RETOUR
// Sinon, on exporte le contenu de la table TABLE1
TableVersXML ("TABLE1", sFic, taSansTitre )Exemple 26 : Extraction d'une partie de chemin de fichier
Sélectionnez
sFic est une chaîne
// On demande le nom du fichier
sFic = fSélecteur("", "", "Choisissez le fichier d'exportation", "Fichiers Word (*.rtf) *.rtf", ...
"rtf", fselCrée + fselExiste )
// Si le nom n'a pas été fourni, on abandonne l'export
SI sFic = "" ALORS RETOUR
// Sinon, on exporte le contenu de la table TABLE1
TableVersWord ("TABLE1", sFic, taSansTitre )Exemple 27 : Envoi d'un SMS
Sélectionnez
// Initialisation de la structure SMS
SMS.Numéro = "0610203040"
SMS.Message = "J'envoie des SMS avec WinDev Mobile !"
SMSEnvoie()Exemple 28 : Envoi d'un fax
Sélectionnez
// Envoi d'un fax
IdConnect est un entier
IdConnect = FaxConnecte()
...
IdFax est un booléen
IdFax = FaxEnvoie (IdConnect,"MonFax","Message.txt","0102030405")
...
FaxDéconnecte(IdConnect)Exemple 29 : Acquisition sur le port série (ce code est généré par un assistant, vous n'aurez même pas à le taper !)
Sélectionnez
Lignecorrecte = sOuvre ( 1 , 2000 , 2000 ) // Ouverture de COM1
SI Lignecorrecte = Vrai ALORS
// Paramétrage Com1 : Taux 9600, Parité paire,
// 8 bits de données, 1 bit de stop
sFixeParamètre ( 1 , 9600 , 1 , 8 , 0) // Paramétrage de COM1
// Suite traitement...
sFerme ( 1 ) // Fermeture de COM1
SINON
Erreur ( "Erreur d'ouverture de COM1" )
FINExemple 30 : ouverture SMTP
Sélectionnez
PROCEDURE bConnexionSMTP()
sNomUser est une chaîne=gsNomUserSMTP
sNomSMTP est une chaîne=gsNomServeurSMTP
sPasswordSMTP est une chaîne=gsPasswordSMTP
// Changement du timeout
EmailChangeTimeOut(3)
SI PAS sPasswordSMTP ~= "" ALORS
SI EmailOuvreSessionSMTP(sNomUser,sPasswordSMTP,sNomSMTP) = Faux ALORS
ErreurEmail="Impossible de se connecter au serveur SMTP."+RC+ErreurInfo()
RENVOYER Faux
FIN
SINON
SI EmailOuvreSessionSMTP(sNomUser,sNomSMTP) = Faux ALORS
ErreurEmail="Impossible de se connecter au serveur SMTP."+RC+ErreurInfo()
RENVOYER Faux
FIN
FIN
RENVOYER Vrai

