Windev 9 SupportDeCours.pdf

download Windev 9 SupportDeCours.pdf

If you can't read please download the document

Transcript of Windev 9 SupportDeCours.pdf

  • TTECHNIQUEOUR DE FRANCE 2005

    Vous mritez le meilleurDVELOPPEZ 10 FOIS PLUS VITE

    Fournisseur Officiel de la Prparation Olympique

    SUPPORT DE COURSCOMMENT LE FAIRE EN

  • Tour de France Technique PC SOFT - Juin 2005 - page 1(C) PC SOFT - www.pcsoft.fr

    Vos Notes

    Avertissement

    Le document que vous avez entre les mains na pas la finalit de remplacer les documentations techniques ou commerciales livres avec WinDev, WebDev, WinDev Mobile.

    Ce document nest pas un cours dauto-formation, mais uniquement un support papier la prsentation tech-nique que vous allez suivre.

    (C) PC SOFT 2005 Reproduction et diffusion interdite sans lautorisation crite de PC SOFT.

  • Tour de France Technique PC SOFT - Juin 2005 - page 2(C) PC SOFT - www.pcsoft.fr

    Vos Notes

    SOMMAIRE6 Prsentation de WinDev8 Prsentation de WinDev Mobile10 Prsentation de WebDev

    Les Concepts Internet

    14 Thme 1 : Gains dveloppeur14 Ancrages Avancs

    Gestion avance des ancrages et conflits dancrage

    15 Table Multi-slection Gestion de la multi-slection sur une table fichier

    16 Les configurations Grer les configurations multiples de projets

    18 Cls composes Exploitation de la nouvelle syntaxe de construction des cls com-poses

    19 Diffrences de code Comparer le code dun projet aprs modification

    20 Patchs de mise jour Mise en place et utilisation des patchs de mise jour

    21 Multi-Langues Comment crer une application en plusieurs langues ?

    24 Pattern RAD Comment crer un pattern pour gnrer son code

    26 Installation Rseau Mettre en place une installation rseau ou Internet de son application

    30 Installation Internet Installation avec tlchargement automatique du framework

    31 Installation MSI Comment gnrer une procdure dinstallation au format MSI ?

    32 Thme 2 : Gains utilisateur32 MCU : les macros

    Les utilisateurs grent leurs macros

    33 Les splitters Personnaliser lenvironnement de lutilisateur sans programmation

    34 Persistance des champs Mmoriser le contenu des variables ou des champs

    35 Boutons MinuterieValidation automatique des boutons aprs un dlai dfini

    36 Ajouter une aide Comment ajouter une aide au format CHM dans une application

    37 Documentation FAA La documentation utilisateur des FAA

  • Tour de France Technique PC SOFT - Juin 2005 - page 3(C) PC SOFT - www.pcsoft.fr

    Vos Notes38 Thme 3 : Base de donnes38 Installation

    Installer Hyper File Client/Serveur sur Windows

    40 Base de donnes Comment crer une base de donnes sur le serveur Hyper File Client/Serveur

    41 Transfert de donnes Transfrer une base de donnes Hyper File Classic vers Hyper File Client/Serveur

    42 Analyse et code Modifier lanalyse et le code pour prendre en compte Hyper File Client/Serveur

    43 Applications Installation dune application rseau exploitant Hyper File Client/Serveur

    45 Gestion des droits Configurer les droits sur une base de donnes Hyper File Client/Serveur

    46 Installation Linux Installer un serveur Hyper File Client/Serveur sur Linux

    47 Accs natifs Accs natifs et bases tierces depuis une application WinDev

    48 Optimisation Optimisation des tables fichiers sur une base de donnes SQL Server

    49 Thme 4 : Accs distant49 Sites distants

    Partager en temps rel une base de donnes entre sites distants via ADSL

    50 Accs GPRSAccder une base distante par GPRS depuis un Pocket PC ou un Smartphone

    51 Citrix / TSE Comment exploiter une application WinDev sur serveur Citrix ou TSE ?

    53 Thme 5 : Rplication53 Rplication Hyper File

    Rplication classique et rplication htrogne sur une base Hyper File

    54 Rplication htrogne Rplication entre une base de donnes Hyper File et une base de donnes SQL Server

    56 Synchronisation Mobile Synchroniser des bases de donnes Hyper File Classic et Hyper File Mobile

  • Tour de France Technique PC SOFT - Juin 2005 - page 4(C) PC SOFT - www.pcsoft.fr

    Vos Notes58 Thme 6 : Architecture dapplication58 Fentre interne

    Utilisation des fentres internes

    59 Composants Utilisation des composants et des fentres internes

    60 Multi-produits Composant Multi-produits et code cible conditionnel

    61 Composant mtier Mise jour chaud, importation, compatibilit...

    62 Thme 7 : Communication62 Rcupration HTML

    Rcupration automatique dinformations sur un site Internet

    64 Mailing E-mail Raliser un mailing e-mail personnalis

    65 Mailing Fax Raliser un mailing fax personnalis

    66 Thme 8 : La scurit66 WebDev et SSL

    Traitement scuris avec WebDev et SSL

    68 Paiement scuris Implmenter un paiement par Carte bleue dans un site WebDev

    69 Thme 9 : Internet / Intranet69 Installation

    Installer un serveur dapplication WebDev sur Windows

    71 Mode AWP AWP ? Ca change quoi concrtement ? Quand lutiliser ?

    72 Site PHP Crer un site PHP et le dployer chez un hbergeur

    73 Portage dapplication Porter une application WinDev vers WebDev

    74 Installation Linux Installer un serveur dapplication WebDev sur Linux

    76 Thme 10 : La Mobilit76 Portage dapplication

    Porter une application WinDev sur un Pocket PC

    77 Dploiement Dploiement dune application Mobile (Internet ou par mdia de type CD-ROM)

    79 Thme 11 : Autres technologies79 .NET : Utilisation

    Utiliser un traitement .Net depuis une application WinDev

    80 .NET : PublierPublier un traitement .Net ralis depuis un projet WinDev

  • Tour de France Technique PC SOFT - Juin 2005 - page 5(C) PC SOFT - www.pcsoft.fr

    Vos Notes81 Java

    Crer une application Java depuis un projet WinDev

    83 Service WebCrer un Service Web daccs aux donnes

    85 Thme 12 : Les tats85 Etats croiss

    Raliser un tat crois

    86 Facture et PDF Crer une facture et lenvoyer par e-mail au format PDF

    87 WDEtat Utilisateur Utilisation de WDEtat Utilisateur

    88 Thme 13 : Optimisation de lapplication88 Performances

    Utiliser lanalyseur de performances et optimiser les requtes

    89 Tailles de pages Optimiser la taille de pages Web

    90 Thme 14 : Suivi de projet90 Suivi de planning

    Utilisation du centre de suivi de projets

    91 Partage dlments Partage dlments entre dveloppeurs le Groupware dveloppeur

    92 Suivi des incidents Suivi des incidents et des suggestions

    93 Tests de non rgression Cration dun test de non rgression

    94 Annexe A : Les commandes W-Langage96 Annexe B : Les touches de raccourci

  • Tour de France Technique PC SOFT - Juin 2005 - page 6(C) PC SOFT - www.pcsoft.fr

    Vos Notes

    PRSENTATION DE WINDEV

    WinDev est un AGL (Atelier de Gnie Logiciel).

    Lditeur dIHM de WinDev

    WinDev permet de dvelopper simplement tout type dapplica-tions Windows dans les domaines de la gestion, de lindustrie, du mdical,etc

    Les applications dveloppes peuvent inclure laccs des bases de donnes.WinDev inclut un puissant moteur de base de donnes : Hyper File.Il est conseill dutiliser Hyper File pour vos applications afin dob-tenir les meilleures performances dans vos traitements de fichiers. Une version Hyper File Client/Serveur est aussi disponible.

    Lenvironnement de dveloppement intgr de WinDev se compose de diffrents diteurs :

    Un diteur de projet permettant de visualiser et dagir sur le gra-phe du projet. Un diteur danalyses permettant laccs tout type de base de donnes (Hyper File, Hyper File Client/Serveur, xBase, AS/400*, Oracle*, SQL Server*, Access**, ODBC, OLE DB ) Un diteur UML permettant une modlisation objet de vos donnes et traitements Un diteur dIHM avec correcteur dinterface en temps rel Un diteur de code volu (avec assistants, vrification du code saisi, coloration syntaxique, aide contextuelle ) incluant un puis-sant dbogueur.

  • Tour de France Technique PC SOFT - Juin 2005 - page 7(C) PC SOFT - www.pcsoft.fr

    Vos Notes Un diteur de requtes pour les slections dans les fichiers Un diteur dtats Un diteur daide permettant de gnrer des fichiers daide au format CHM Un diteur dinstallation Un diteur de dossier technique reprenant intgralement toutes les informations techniques de votre projet* accs natif optionnel, ** accs natif inclus

    Des outils facilitant le dveloppement sont galement fournis (WDMAP, WDOUTIL, WDVERSION... ) ainsi que de nombreux exemples et assistants rutilisables.

    Des centres de contrle permettent la gestion du cycle de vie de vos applications ainsi que leur administration.

    Une aide en ligne vous guide tout au long du dveloppement de votre application. Cette aide inclut galement une aide la correction derreur.

    Les diffrents diteurs seront utiliss, depuis la dfinition dune ana-lyse jusqu linstallation, en passant par toutes les phases du dve-loppement (cration des fentres, des tats, des traitements...), sans oublier les sauvegardes.

    Le moteur Hyper File sera utilis pour les fichiers de donnes exem-ples de lapplication.

    Lutilisation dautres moteurs de base de donnes est galement possible sur le mme principe.

  • Tour de France Technique PC SOFT - Juin 2005 - page 8(C) PC SOFT - www.pcsoft.fr

    Vos Notes

    PRSENTATION DE WINDEV MOBILE

    Lditeur dIHM de WinDev Mobile

    WinDev Mobile permet de dvelopper simplement tout type dappli-cations destines tre utilises sur un Pocket PC, un SmartPhone, et la plupart des terminaux mobiles (Symbol, Psion, ...)

    Les applications dveloppes peuvent inclure laccs des bases de donnes.WinDev Mobile inclut un puissant moteur de base de donnes : Hyper File Mobile.Il est conseill dutiliser Hyper File pour vos applications afin dob-tenir les meilleures performances dans vos traitements de fichiers. Une version Hyper File Client/Serveur est aussi disponible.WinDev Mobile permet galement daccder aux bases de donnes CEDB, bases de donnes standard des Pockets PC.

    Lenvironnement de dveloppement intgr de WinDev Mobile se compose de diffrents diteurs :

    Un diteur de projet permettant de visualiser et dagir sur le gra-phe du projet. Un diteur danalyses permettant laccs tout type de base de donnes (Hyper File, Hyper File Client/Serveur, Oracle Lite * ) Un diteur UML permettant une modlisation objet de vos donnes et traitements Un diteur dIHM avec correcteur dinterface en temps rel Un diteur de code volu (avec assistants, vrification du code saisi, coloration syntaxique, aide contextuelle ?) incluant un puis-sant dbogueur Un diteur de requtes pour les slections dans les fichiers Un diteur dtats Un diteur dinstallation

  • Tour de France Technique PC SOFT - Juin 2005 - page 9(C) PC SOFT - www.pcsoft.fr

    Vos Notes Un diteur de dossier technique reprenant intgralement toutes les informations techniques de votre projet* accs natif optionnel

    Des outils facilitant le dveloppement sont galement fournis (WDREGISTRE, WDCAPTURE, WDVERSION... ) ainsi que de nombreux exemples et assistants rutilisables.

    Des centres de contrle permettent la gestion du cycle de vie de vos applications ainsi que leur administration.

    Une aide en ligne vous guide tout au long du dveloppement de votre application. Cette aide inclut galement une aide la correction derreur.Le moteur Hyper File Mobile sera utilis pour les fichiers de donnes exemples de lapplication.

    Lutilisation dautres moteurs de base de donnes est galement possible sur le mme principe.

  • Tour de France Technique PC SOFT - Juin 2005 - page 10(C) PC SOFT - www.pcsoft.fr

    Vos Notes

    PRSENTATION DE WEBDEV

    Lditeur de pages de WebDev

    WebDev est un AGL (Atelier de Gnie Logiciel) orient dveloppe-ment de sites Intranet et Internet.

    WebDev permet de dvelopper tout type de sites dynamiques incluant laccs des bases de donnes. Il permet aussi de dvelop-per des sites semi-dynamiques et statiques.

    Il est compos de diffrents diteurs : Un diteur de projet permettant de visualiser et dagir sur le gra-phe du projet. Un diteur de pages. Un diteur danalyses permettant laccs tout type de base de donnes (Hyper File, Hyper File Client/Serveur, xBase, AS/400*, Oracle*, SQL Server*, Access**, OLE DB, etc.). Un diteur de code volu (avec assistants, vrification du code saisi, coloration syntaxique, aide contextuelle ) incluant un puis-sant dbogueur. Un diteur de styles incluant police, couleur, position, etc. Un diteur de requtes pour les slections dans les fichiers. Un diteur dtats. Un diteur de dossier technique reprenant intgralement toutes les informations techniques de votre projet. Un diteur dinstallation.* accs natif optionnel, ** accs natif inclus

    Lditeur dinstallation assure la mise en place des sites crs, ainsi que leur maintenance. Cet outil permet de raliser une installation sur le serveur via FTP ou par mdia physique (CD, Zip, etc.).

  • Tour de France Technique PC SOFT - Juin 2005 - page 11(C) PC SOFT - www.pcsoft.fr

    Vos NotesDes outils facilitant le dveloppement sont galement fournis (WDMAP, WDOUTIL, WDSQL, etc.) ainsi que de nombreux exemples et assistants rutilisables.

    Les principaux diteurs sont utiliss, depuis la dfinition dune analyse jusqu linstallation, en passant par toutes les phases du dveloppement (cration de pages, traitements, tats, etc.), sans oublier les sauvegardes.

    Les Concepts InternetLes diffrents services de lInternetInternet est un rseau mondial dordinateurs pouvant dialoguer entre eux. Ces ordinateurs peuvent tre de types diffrents (micros, minis, ) et fonctionner sur des systmes dexploitation diffrents (Windows, Linux, MacOS, Unix, ) Tous ces ordinateurs sont relis par le biais du protocole TCP/IP.

    WWW (World Wide Web) ou toile daraigne mondiale a t cr en 1990. Il peut vhiculer des pages pouvant contenir du texte, des images, du son, de la vido. Un regroupement de pages constitue un site.

    Le terme Internet regroupe plusieurs services dutilisation diff-rente : FTP (File Transfer Protocol) est un service permettant de transfrer des fichiers dun ordinateur vers un autre travers Internet. SMTP (Simple Mail Transfer Protocol) permet denvoyer des messa-ges ou mails un utilisateur dfini. Chaque utilisateur doit disposer dune adresse Email qui lui sert de bote aux lettres. HTTP (Hypertext Transfer Protocol). HTTP est un protocole de niveau application qui est utilis pour le transfert de pages sur Internet.

    Chacun de ces services ncessite un gestionnaire de services install sur un serveur : Le gestionnaire de services FTP gre lhbergement des fichiers, les droits dutilisation des fichiers et la rponse aux demandes en provenance des autres postes. Le gestionnaire de services SMTP prend en charge les demandes denvoi de messages et le routage vers les serveurs POP (rception des messages) concerns. Le gestionnaire Web (www) permet lhbergement des pages et rpond aux demandes de consultation de la part des postes client.

    Le Web en dtailLes pages Web sont visualises sur un poste par lintermdiaire dun navigateur Web (Internet Explorer, Netscape, Opera, etc.).

    Le navigateur interprte le contenu des fichiers au format HTML dcrivant les pages. On parle de pages HTML.WebDev gnre automatiquement le code HTML et JavascriptHTML (HyperText Markup Language) est un langage de description de pages. Toute la mise en page est dcrite par lintermdiaire de balises.

  • Tour de France Technique PC SOFT - Juin 2005 - page 12(C) PC SOFT - www.pcsoft.fr

    Vos NotesExemple de code HTML :

    Bonjour ! indique que Bonjour ! va apparatre en gras.Une page peut aussi tre compose de scripts en langage Javascript.

    Javascript est utilis pour raliser des traitements dynamiques au niveau du navigateur, par exemple contrler la saisie par lutilisateur dune valeur dans une page.Il est possible dafficher directement une page dans un navigateur en tapant son URL dans la zone adresse du navigateur.

    LURL (Uniform Resource Locator) correspond au chemin daccs de la page sur le serveur qui lhberge.

    Exemple dURL : http://www.monserveur.com/page3.htm

    Une URL peut aussi tre compose simplement du nom du domaine. Dans ce cas, cest la page du sommaire du serveur qui saffichera.

    Exemple : http://www.pcsoft.fr

    Si lURL ne correspond pas une adresse valide, une erreur de con-nexion est retourne dans lcran du navigateur.

    Si lURL est valide, la page demande saffiche dans le navigateur.Lutilisateur peut alors dclencher une action en cliquant sur un lien ou un bouton. La requte correspondante est alors envoye au ser-veur qui lanalyse.

    Le lien permet de lancer le chargement dune autre page ou bien de lancer une application Web.

    Site statique, semi-dynamique ou dynamique ? Le site statique est compos de pages conues lavance de manire dfinitive. Dans ce cas, le contenu des pages nvoluera pas dynamiquement en fonction dun choix de lutilisateur. Le site semi-dynamique est un site statique compos de pages conues lavance mais enrichies par une base de donnes. Dans ce cas, le contenu des pages nvoluera pas dynamiquement en fonc-tion dun choix de lutilisateur. Lun des meilleurs exemples est un catalogue de pices dtaches. Le site dynamique est constitu de pages enrichies de donnes provenant dune base de donnes. Il est ncessaire dexcuter des traitements daccs aux donnes sur le serveur permettant de cons-tituer la page.

    WebDev permet de dvelopper des sites dynamiques composs de pages, de traitements serveur (accs aux bases de donnes, calculs, etc.) et de traitements excuts par le navigateur (contrles, traite-ments rptitifs, etc.).WebDev permet aussi de dvelopper des sites statiques et semi-dynamiques.

    Fonctionnement dune application WebDevUne application WebDev hberge sur un serveur peut tre excute en appelant une URL particulire depuis un navigateur.Exemple :http://www.monserveur.com/wd90awp/wd90awp.exe/CONNECT/monappliLe lanceur de WebDev wd90awp.exe permet dexcuter lapplica-tion sur le serveur grce au serveur dapplication wd90session.exe.Le serveur dapplication construit dynamiquement la premire page

  • Tour de France Technique PC SOFT - Juin 2005 - page 13(C) PC SOFT - www.pcsoft.fr

    Vos Notesde lapplication et lenvoie au navigateur par lintermdiaire du serveur Web.Le schma ci-dessous illustre le fonctionnement dune application WebDev.

    Principe de programmation WebDevLe dbit entre le serveur Internet et le poste client est plus lent quavec un rseau local classique. Les changes de donnes entre le poste client et le serveur doivent donc tre rduits pour que lappli-cation puisse sexcuter sans ralentissement.WebDev permet de diffrencier les traitements excuts sur le ser-veur et les traitements excuts sur le poste client.

    1. Les traitements sur le serveurLes traitements excuts sur le serveur sont les traitements princi-paux de lapplication. Ils concernent la gestion de la base de don-nes (Hyper File et Hyper File Client/Serveur, xBase, AS/400, Oracle, SQL Server, Access, OLE DB, etc.), les traitements de calcul.Ces traitements sont crits en W-Langage.

    2. Les traitements sur le poste clientLes traitements excuts sur le poste client sont les traitements de contrle de saisie, de vrification qui ne ncessitent pas daccder au serveur. Ces traitements utilisent uniquement les informations contenues dans la page. Ces traitements peuvent tre crits en Javascript ou W-Langage. Dans ce dernier cas, WebDev se charge de convertir automatiquement le code W-Langage en Javascript pour quil puisse tre excut par le navigateur.

    3. Administrateur WebDevLadministrateur WebDev est un excutable install sur le serveur.Ladministrateur permet de configurer le nombre de connexions autorises en mme temps pour le serveur, par site, par utilisateur. Il permet aussi de fixer le temps maximum dexcution dune requte et le temps limite pour la dconnexion des utilisateurs inactifs.Ladministrateur peut tout moment afficher la liste des utilisateurs connects au site.

  • Tour de France Technique PC SOFT - Juin 2005 - page 14

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    ANCRAGES AVANCSGestion avance des ancrages et conflits dancrage

    WinDev, vous le savez sans doute dj propose la notion dancrage sur les fentres.Lancrage permet de dfinir le positionnement des champs lors dun changement de taille de la fentre.Cet exemple utilise le projet GainsDeveloppeur et la fentre Fentre Ancrage. Ce projet est accessible depuis le kouglof.

    Ancrage proportionnel en largeurLorsque lutilisateur va agrandir la fentre, les champs nom et prnom doivent sagrandirent sans se chevaucher.Il ny a aucune raison que le nom sagrandisse plus que le prnom ou inversement, il faut donc rpartir lagrandissement.Il suffit de slectionner les deux champs et de choisir un ancrage proportionnel vers la droite.

    Testez : Go ! Les 2 champs sagrandissent bien proportionnellement lors du redimensionnement de la fentre.

    Ancrage proportionnel en hauteurMaintenant, le champ adresse doit sagrandir en largeur et en hauteur.En largeur pas de problme, car les boutons sont ancrs droite. Ils vont suivre le bord de la fentre lors de son agrandissement et lais-ser ainsi de la place au champ adresse pour sagrandir.Pour la hauteur, il est possible de choisir un pourcentage dagrandis-sement 50% par exemple.WinDev dtecte un conflit dancrage : les champs apparaissent en rouge.Normal : il faut ancrer les champs en-dessous du champ adresse pour viter la superposition lors de lagrandissement.Il suffit de dcaler donc vers le bas de 50%, le champ adresse sagrandissant potentiellement de 50 % seulement.

    Testez : GO! En bas, cest dommage de perdre cette place. Pourquoi ne pas agrandir le champ observation ?

    Il suffit de dfinir pour le champ Observation, un ancrage largeur et hauteur avec une hauteur 50 %.

    Si vous voulez tester lIHM de la fentre sans excuter les trai-tements, cliquez sur licne de lil, ou slectionnez le menu AffichageAfficher la fentre ou Shift + F9.

    De la mme faon, les champs adresse et Observations augmen-teront de faon proportionnelle. Les champs Code Postal, ville, tlphone, ... devront se dplacer vers le bas du fait que le champ adresse peut augmenter de 50% : il faut modifier lancrage en hauteur 100%.

    Thme 1 : Gains dveloppeur

  • Tour de France Technique PC SOFT - Juin 2005 - page 15

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    La gestion de la multi-slection a t tendue aux tables fichier depuis WinDev 9.Cest trs simple grer.

    Cet exemple utilise la fentre fenmultislection du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Cette fentre contient une table fichier base sur les Clients

    Pour permettre lutilisateur dimprimer les fiches Clients partir dune slection quil aura faite, les tapes sont les suivantes : Indiquer que la table fichier autorise la multi-slection (cocher loption slection multiple dans la fentre de description du champ table). Il y a alors deux possibilits: Soit un traitement manuel de la multi-slection. Ce traite-ment se fait exactement comme pour la gestion des listes en parcou-rant les diffrents lments slectionns. Soit un traitement automatique de la multi-slection en modi-fiant la description de ltat qui imprime les fiches.Cest ce second cas qui est utilis dans ltat Etat_MultiSelection. Indiquer dans la description de ltat que ltat imprime, non plus, toutes les lignes de la table mais seulement les lignes slection-nes.

    Il suffit de tester le programme pour voir le fonctionnement : Go, faire une slection multiple et imprimer.Pour slectionner plusieurs fiches, les touches standard de slection sont utilises savoir le CTRL pour slectionner ou dslectionner une ligne supplmentaire ou le SHIFT pour une slection de lignes contigus. Lancement de limpression : seules les fiches des Clients slection-ns sont imprimes.

    Gestion de la multi-slection sur une table fichier

    TABLE MULTI-SLECTION

  • Tour de France Technique PC SOFT - Juin 2005 - page 16

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    La configuration de projet cest quoi ?Cest la possibilit de crer des applications distinctes, des excutables, des composants, des assemblages .NET, etc partir dun projet unique.

    Cet exemple utilise la fentre FenGestionParc du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.Les configurations de projet vont tre utilises pour raliser une ver-sion adapte dun projet (sans modifier le projet normal).

    Cration dune configurationPour crer une nouvelle configuration, il suffit dutiliser loption Nouveau du menu ProjetGestion des configurations. Les informations ncessaires sont les suivantes : Le nom de la nouvelle configuration, Montpellier. Le type de gnration : un excutable. Le nom de lexcutable.

    La nouvelle configuration apparat dans la liste des configurations.Cette liste est rappele dans le volet WinDev.

    Association une configurationUne fois la nouvelle configuration cre, il est possible de partager diffrents objets (fentres, tats, requtes, etc...) entre les 2 con-figurations (celle cre et celle correspondante au projet principal) ou avoir dautres objets spcifiques une configuration.Pour lexemple, nous allons dfinir une premire fentre spcifique chaque configuration.Pour la rendre spcifique, il suffit de changer le libell de la fentre et de le remplacer, par exemple, par MONTPELLIER.Enregistrez la fentre FenGestionParc par exemple sous le nom FenGestionParc_MONTPELLIER.wdw et dfinissez cette fentre comme 1re fentre du projet.

    Nous avons maintenant 2 fentres qui sont adaptes chacune des 2 configurations.Il nous reste retirer de la configuration MONTPELLIER, la fentre initiale principale (clic droit sur la fentre FenGestionParc et slectionnez exclure de la configuration courante).

    A tout moment, il est possible de travailler sur une configuration spcifique : les lments nappartenant pas cette configuration apparaissent griss sous lditeur de projet.

    Grer les configurations multiples de projets

    LES CONFIGURATIONS

  • Tour de France Technique PC SOFT - Juin 2005 - page 17

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Bien entendu, lors de la gnration de la configuration (un excuta-ble, une bibliothque, etc) seuls les lments appartenant cette configuration sont intgrs dans la cible.

    Cration de lexcutableCliquez sur le bouton crer lexcutable, dans la liste des l-ments de la bibliothque, seuls les lments de la configuration courante sont intgrs.

    Le raccourci Alt+F8 ou le menu Atelier Gnration mul-tiple vous permet de gnrer plusieurs configurations en mme temps.

  • Tour de France Technique PC SOFT - Juin 2005 - page 18

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Une nouvelle syntaxe est disponible en version 9 pour utiliser les cls composes.

    Cet exemple utilise le projet GainsDeveloppeur et la fentre ClesComposees. Ce projet est accessible depuis le kouglof.

    Sans cette nouvelle syntaxe, un code de recherche avec une cl compose est de la forme :

    sValRech est une chane sValRech = HConstruitValCl (Client, ... ClCodePostalSociet,... RechercheCodePostal, RechercheSociete)HLitRecherche(Client,ClCodePostalSociet,... sValRech)TableAffiche(Table_Client,taCourantPremier)

    Maintenant, il suffit dindiquer les valeurs de la cl entre crochets directement.Il ny a plus besoin dutiliser HConstruitValCl.

    HLitRecherche(Client,ClCodePostalSociet,... [RechercheCodePostal,RechercheSociete])TableAffiche(Table_Client,taCourantPremier)

    Cette nouvelle syntaxe simplifie lcriture du code, mais aussi sa comprhension et donc sa maintenance.

    Exploitation de la nouvelle syntaxe de construction des cls composes

    CLS COMPOSES

  • Tour de France Technique PC SOFT - Juin 2005 - page 19

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Trs souvent, vous avez besoin de connatre dans vos projets les diffrences entre votre sauvegarde de la semaine et votre version actuelle afin de comprendre par exemple un comportement diffrent.Une fentre fonctionnait trs bien et elle ne fonctionne plus maintenant.

    Cet exemple utilise le projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Recherche des diffrences sur la classe cPayboxDirect Allez sur le code de la classe cPayboxDirect. Choisissez le choix Comparer llment en cours dans le menu fichier. Slectionnez la classe cPayBoxDirect-old dans le rpertoire \Ancienne Classe, puis cliquez sur le bouton Terminer. Slectionnez la classe comparer avec la classe actuelle.

    Le comparateur de WinDev prsente les diffrentes mthodes qui ont t modifies. Vous pouvez par exemple voir que la mthode sMsgErreurAppel nexistait pas dans lancienne version.

    Visualisation des diffrencesPour visualiser les diffrences de la mthode Credite, double-cliquez sur la mthode Credite. A gauche, saffiche la version actuelle, droite lancienne version. En rose, cest le code modifi, En bleu, le code supprim dans la classe actuelle, En vert, le code ajout.

    Cest la mme chose pour tous les lments : les requtes, les fen-tres, les tats, ...

    Comparer le code dun projet aprs modification

    DIFFRENCES DE CODE

  • Tour de France Technique PC SOFT - Juin 2005 - page 20

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Un patch pourquoi et quand ?Le patch rpond un besoin prcis : modification limi-te, diffusion urgente.

    Cet exemple utilise la fentre Ancrage du projet WD Patch. Ce projet est accessible depuis le kouglof.

    Supposons, par exemple, que dans cette fentre le dveloppeur ait oubli dinclure le champ de saisie Email.La rubrique e-mail a bien t prvue au niveau de lanalyse mais oublie dans lIHM.

    Pour ajouter le champ, il suffit de faire un simple Drag and Drop depuis lanalyse (fichier Client) vers la fentre.Pensez remplir les informations RAD dans lanalyse. Cela sera trs utile dans vos dveloppements notamment dans le cas prsent.

    Pour propager cette volution sans passer par la cration dune pro-cdure dinstallation, il suffit de crer un patch. Cette fonctionnalit est accessible depuis loption Crer un patch de la bibliothque du menu Atelier..Bibliothque.

    Les tapes de la cration du patch sont les suivantes : Indiquer les lments intgrer dans le patch. Ici la fentre modi-fie : la fentre ancrage. Ajouter un libell explicatif du patch. Cliquer sur loption Gnrer une installation. Cliquer sur Terminer.

    Un rpertoire Patch est cr dans le rpertoire du projet. Ce rpertoire contient un fichier auto extractible dinstallation excuter sur le poste client : il suffit alors denvoyer ce fichier auto extractible votre client.

    Ce fichier patch (de la forme fichier.wdl.001) sera simplement ins-tall cot de lexcutable de lapplication en clientle.

    Lors du prochain lancement de lapplication par lutilisateur, le patch sera pris en compte et lapplication intgrera les modifica-tions dfinies dans le patch.

    Mise en place et utilisation des patchs de mise jour

    PATCHS DE MISE JOUR

  • Tour de France Technique PC SOFT - Juin 2005 - page 21

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    WinDev prend en compte jusqu 20 langues diffrentes par application et ceci toutes les tapes du dvelop-pement dune application.

    Cet exemple utilise la fentre FenMultilangue du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Paramtrage du projetVoici les diffrentes tapes pour rendre un projet multi-langues :1- Tout dabord dfinir dans la description du projet les langues (20 langues maxi par projet) qui seront utilises par le projet (fran-ais, anglais, allemand, espagnol, italien, portugais, russe, chinois, etc.).Dans cet exemple, nous ajoutons la gestion de langlais notre pro-jet qui sera donc franais et anglais.2- Ensuite, il sera ncessaire de convertir les chanes de caractres en ressources multi-langues.

    Conversion des chanes en ressources multi-languesEn effet, un message affich par un ordre Info est une ressource multi-langues, par exemple le message confirmez-vous la modifica-tion, etc sera traduire. Par contre un nom de fichier ne devra pas tre traduit !Pour raliser cette conversion, utilisez loption convertir les cha-nes simples en messages multi-langues du menu Code .. Message multi-langues.

    WinDev parcourt automatiquement tout le code source et pour chaque chane propose de la convertir ou non en ressource multi-langues.Remarquez le petit drapeau qui apparat juste derrire la chane pour spcifier quil sagit maintenant dune ressource multi-langues et donc quelle pourra tre traduite.

    Arrtons-nous sur cette chane :

    Le client +TXT_NOM+ a bien t +sOperation

    Nous avons ici le cas typique derreur due la construction syntaxi-que lie au multi-langues : la chane est construite dynamiquement par programmation en intgrant une variable.Mais la construction syntaxique en franais est diffrente de lan-glais.

    Le client + variable + a bien t +variable ne se traduit pas par

    Comment crer une application en plusieurs langues ?

    MULTI-LANGUES

  • Tour de France Technique PC SOFT - Juin 2005 - page 22

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    The customer +variable+ a bien t +variable, mais plutt par The customer + variable + has been + variable +successfully.Dans ce cas comment faire ?Tout simplement, utiliser lordre du W-langage ChaneConstruit avec le paramtre optionnel pour-cent %.La chane pourra ainsi tre traduite en toute scurit.

    Traduction des ressources multi-languesUne ressource multi-langues peut tre un message mais galement le titre dune fentre, le Libell dun champ, le message daide dun champ, la bulle daide dun champ, le contenu dun champ (liste, combo, interrupteur et slecteur) etc.

    Vous pouvez traduire les ressources une une sous lditeur, soit directement la main, soit laide dun outil de traduction de type Systran (bouton traduire).Cette solution est difficilement envisageable sur un projet cons-quent

    Lautre solution est dutiliser WDMSG. WDMSG est un module optionnel qui va industrialiser cette phase de traduction.

    Tout dabord, WDMSG va automatiquement extraire du projet toutes les ressources multi-langues et gnrer un fichier texte en utilisant loption extraction des messages du menu outilsWDMSG.

    Vous pouvez alors soit directement traduire dans ce fichier texte, soit utiliser WDTRAD.

    Utilisation de WDTradWDTRAD va permettre de mettre en forme ce fichier texte pour en faciliter la traduction, mais surtout, WDTrad va vous seconder dans la traduction.Le grand plus de WDTRAD est de grer un dictionnaire de traduction que vous allez pouvoir enrichir au fur et mesure.Par dfaut le dictionnaire est aliment par plus de 10.000 traduc-tions (les plus courantes).

    Pour utiliser ce dictionnaire et faire une premire passe de traduc-tion automatique sur notre fichier texte, il suffit dutiliser le bouton AutoTrad.WDTRAD va donc pour chaque ressource, regarder si une correspon-dance exacte et une traduction sont disponibles dans le dictionnaire. Si oui, la traduction est automatiquement affiche.

    Ensuite pour les ressources non trouves dans le dictionnaire, il suf-fira de les saisir dans la colonne de droite, et alimenter ainsi auto-matiquement le dictionnaire.Vous pouvez trs bien avoir plusieurs dictionnaires dans diffrentes langues.

    Il ne reste maintenant plus qu rimporter dans le projet le fichier texte traduit vers la langue anglaise grce loption Rintgration des messages du menu OutilsWDMSG

  • Tour de France Technique PC SOFT - Juin 2005 - page 23

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Changement de langue par programmationCrez deux boutons : un avec franais un avec english puis ditez le code du bouton.

    Pour passer lapplication dans la langue anglaise, le code utiliser est simplement la fonction Nation du W-Langage avec le n de la langue. Pour langlais cest 3.Et ensuite, la fonction Utilise permet de rafficher la fentre :

    Nation(3)Utilise(Nom de la fentre)

    Et pour repasser en franais, il suffit dutiliser la fonction Nation avec le code 5.

    Nation(5)Utilise(Nom de la fentre)

    Go du projet !Lapplication est en franaisLors dun clic sur le bouton english, lapplication passe en anglais.Cliquez sur le bouton english puis franais pour tester.

  • Tour de France Technique PC SOFT - Juin 2005 - page 24

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Nous allons maintenant voir comment on peut crer un pattern pour gnrer son code soi.WinDev propose des modles RAD que lon peut modi-fier.Dans cet exemple, nous allons ajouter un bouton dans un modle fiche qui permettra de bloquer lenregis-trement en cours du fichier.

    Cet exemple le projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Voici comment procder pour modifier un pattern existant. Ouvrir le projet GainsDeveloppeur. Slectionner loption de menu Atelier..Modle RAD personnalis (Pattern)..Ouvrir un modle RAD... Dans le slecteur de fichiers qui souvre, slectionner le chemin ..\\Programmes\Donnees\Modeles\RAD\WD. Choisir le modle fiche.MDL : celui-ci saffiche. Enregistrer sous pour mettre dans le rpertoire Personnel du produit.Le mode Mode dition des zones permet de dfinir laspect visuel de la fentre (IHM).

    Une fois dans ce mode ddition de zone, il est possible dagrandir la zone contenant les boutons pour ajouter un nouveau bouton. Slectionnez la zone de boutons Bouton_Fiche_Parcours pour lagrandir vers le bas. Crez un nouveau bouton. Menu Affichage, option mode gabarit (pour dcocher loption mode gabarit). Modifiez le nom du bouton (BTN_BLOQUE) et son libell (Bloque). Tapez le code suivant dans le bouton :

    %ifdef PROC%ifdef FICHIERH B l o q u e N u m E n r ( { R A D _ F I C H I E R _A},hNumEnrEnCours, hBlocageLectureEcri-ture)%endif %endif

    Reportez-vous la documentation pour la signification des mots-cls du RAD (%ifdef PROC, etc...)

    Comment crer un pattern pour gnrer son code

    PATTERN RAD

  • Tour de France Technique PC SOFT - Juin 2005 - page 25

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Le code est ralis, il suffit denregistrer le modle RAD modifi pour pouvoir le tester. Crez une nouvelle fentre grce loption Fichier Nouvelle fentre Onglet RAD. Slectionnez le modle qui vient dtre cr : fiche avec par-cours (il est possible de changer ce nom dans la fentre de descrip-tion du pattern). Le modle personnalis dispose dun icone spcifi-que pour le distinguer des modles classiques. Validez. Slectionnez le mode de programmation Programmation Procdurale. Choisissez le fichier Client. Laissez toutes les options par dfaut et terminez lassistant.

    Le bouton ajout est disponible dans la fentre ainsi que le code gnr.

  • Vos Notes

    (C) PC SOFT - www.pcsoft.fr Tour de France Technique PC SOFT - Juin 2005 - page 26

    Mettre en place une installation rseau ou Internet de son application

    INSTALLATION RSEAU

    Une fois le dveloppement termin, il reste installer lapplication sur les diffrents postes qui vont lutiliser.Ensuite, lorsque lapplication va voluer, il faudra mettre jour les postes pour quils bnficient de la dernire version.Ces 2 phases sont gres par lditeur dinstallation rseau de WINDEV 9.Nous allons voir comment crer une installation avec mise jour automatique.Cet exemple le projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Droulement de la cration de la procdure dinstallation Ouvrir le projet GainsDeveloppeur. Lancer la procdure dinstallation par licone CD. Accepter la cration de lexcutable. Plan 1 : Choix du modle dinstallation : cocher le choix 2 dins-tallation par mise jour rseau. Plan 2 : Choisir la langue.

    Nous allons commencer par crer une installation classique.Rappel : vous pouvez crer des installations grant jusqu 20 lan-gues.Le moteur dinstallation (WDSetup) est livr en standard en franais et en anglais avec son code source pour une ventuelle traduction.

    Dans cette phase, il suffit de dcrire linstallation en rpondant tout simplement aux questions poses par lassistant. Plan 3 : Choix du dcor de linstallation. Le dcor de lassistant est bien entendu compltement paramtrable pour le mettre aux couleurs de votre application ou de votre entreprise.Il vous suffit dindiquer ici les diffrents lments graphiques qui seront utiliss pour linstallation. Plan 4 : Choix des fichiers installs. Ce plan permet de dfinir les fichiers qui sont concerns par linstallation.Bien entendu WINDEV slectionne automatiquement tous les fichiers ncessaires au fonctionnement de lapplication.Ce que nous allons prciser ce sont les fichiers que lon souhaite ajouter. Par exemple nous allons ajouter les fichiers contenant un jeu de donnes par dfaut.A noter que les fichiers qui apparaissent en vert sont les nouveaux fichiers depuis la dernire gnration dinstallation. Plan 5 : Choisir un rpertoire dinstallation par dfaut Plan 6 : Modules additionnels : cocher la licence et le dsinstal-

  • Tour de France Technique PC SOFT - Juin 2005 - page 27

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    lateur. Ce plan permet dindiquer linstallateur sil doit excuter automatiquement la modification des fichiers de donnes (si les fichiers installs chez le Client ne sont plus en phase avec lanalyse du projet).De mme, il est possible de paramtrer laffichage ou non dun fichier de licence et linstallation ou non de loutil de dsinstallation dapplication standard de WinDev. Plan 6 : Licence : Slectionner le fichier Licence.rtf du rper-toire du projet laide du bouton Parcourir. Plan 7 : Contrle des versions. Jusqu maintenant nous avons vu les paramtres qui concernent linstallation.Ce plan est spcifique la mise jour de lapplication.Cest ici quil faut indiquer ce qui doit tre fait en cas de prsence dun ancienne version de lapplication en utilisant la notion de ver-sion minimale.

    Deux cas peuvent alors se prsenter : soit cette nouvelle version peut coexister avec danciennes ver-sions de lapplication et la mise jour des postes utilisateurs sera optionnelle. Dans ce cas, le numro de version minimale ne doit pas tre modifi. soit les utilisateurs doivent se mettre obligatoirement jour de cette dernire version. Le numro de version minimale doit tre modifi en indiquant le numro de version de cette dernire ver-sion.

    Configuration de la mise jour automatiqueLe bouton avanc permet dindiquer comment est gr le systme de mise jour (un rpertoire partag dans lequel est stock une version talon de lapplication). dans le cas dune utilisation locale ce sera un rpertoire partag du rseau dans le cas dun dploiement sur des postes distants via un accs HTTP ce sera une URL.

    Premier onglet : Dfinit la frquence de contrle de version par lapplication installe sur le poste utilisateur.Lapplication vrifiera quelle est bien en dernire version par rap-port la dernire installation rseau.Sinon elle vrifiera si la mise jour est optionnelle ou obligatoire.Il est galement possible de prciser les messages afficher en cas dintervention sur lapplication (mise jour en cours, arrt annonc, arrt forc et reprise dinstallation en cas dchec). Deuxime onglet : permet de forcer le lancement automatique de la mise jour au lancement de lexcutable dans un dlai dfini. Troisime onglet : permet dajouter des informations dans un his-torique qui sera propos lutilisateur. Ceci est optionnel mais il est conseill de le remplir rgulirement Quatrime onglet : Une application rseau peut galement tre rfrence dans le Centres de Contrle. Cest ici quil faudrait le prciser, mais ce nest pas lobjet ici, les Centres de contrles seront vu ultrieurement. Fermeture de lassistant : Tous les paramtres spcifis sont bien entendu conservs et pourront tre modifis ultrieurement grce linterface du contrle distance de lapplication. Ce centre de contrle des applications rseau, le programme WDAdminExe sera

  • Tour de France Technique PC SOFT - Juin 2005 - page 28

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    install dans le rpertoire de lapplication de rfrence. Cliquez sur Suivant :Cest ici que lon choisit dinstaller lapplication de rfrence sur un rseau local ou de la diffuser sur Internet.On choisit ici de placer lapplication de rfrence dans un rpertoire partag (fonctionnement en rseau local). Cochez le choix 1 et cliquez sur le bouton Suivant:Par dfaut, le centre de contrle de lapplication permet de grer automatiquement la liste des utilisateurs connects. Laissez OUI et cliquez sur le bouton Suivant:Au niveau de linstallation, indiquez quel endroit, sur quel support la crer, par dfaut dans un sous-rpertoire du projet. Cliquez sur Suivant puis Terminer.

    A ce stade, la prparation de linstallation est termine, laissez WINDEV gnrer linstallation.

    Test de la procdure dinstallationWINDEV permet de lancer la procdure dinstallation qui vient dtre cre.Cela permet de dployer la nouvelle version de lapplication directe-ment pour les utilisateurs qui sont connects sur le mme rseau.Pour tester la procdure dinstallation, il suffit de : Cliquer sur OUI, WDSetup se lance.La proposition de sauvegarde de projet se lance : chaque fois que lon cre un excutable ou une installation dune application, ldi-teur vous propose de raliser une sauvegarde du projet correspon-dant cette version. Choisir la langue dinstallation. Choisir une interface en Franais. Paramtrer le rpertoire rseau.

    Pour dployer lapplication de rfrence, il reste choisir un rper-toire partag du rseau : Choisir un rpertoire dune machine du rseau grce au bouton parcourir puis cliquer sur suivant. Cliquer sur Suivant sans cocher.

    Linstallateur affiche un rsum des paramtres de linstallation. Cliquer sur Suivant : Ce plan informe de limpact de cette ins-tallation pour les utilisateurs de lapplication. Ici il sagit dune premire installation, donc rien ne soppose au lancement de lins-tallation. Cliquer sur Suivant puis Terminer.

    Voil, linstallation de rfrence est prte.Les nouveaux utilisateurs de lapplication installeront lapplication sur leur poste en utilisant le programme install.exe.Par la suite, ils nauront plus rien faire.En cas de mise jour, cest lapplication elle-mme qui sauto-vri-fiera et proposera ou imposera linstallation de la mise jour.

  • Tour de France Technique PC SOFT - Juin 2005 - page 29

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Installation HTTPNous venons de voir le dploiement pour des utilisateurs qui sont sur un mme site.Comment cela se passe si les utilisateurs sont sur des sites dis-tants ?Et bien cest la mme chose !La cration dune installation avec mise jour http se droule de la mme faon. La diffrence rside dans la faon de la dployer.

    Pour dployer une application chez un hbergeur, il suffit dindiquer lURL de connexion au site Internet, les paramtres de connexion FTP pour pouvoir y poser mon installation de rfrence.

    A lissue de linstallation, il est possible de tester lURL. Cest cette URL quil suffit de communiquer aux utilisateurs.

    Pour linstallation, cette page de tlchargement saffiche, il suffit de cliquer sur le lien Install.exe pour tlcharger puis installer lap-plication.

    Le mcanisme de mise jour est le mme que prcdemment. Le lancement de lapplication dtecte les mises jour et les lance.

    Voil nous savons maintenant crer et mettre jour trs simplement nos applications mme sur des sites distants.

  • Tour de France Technique PC SOFT - Juin 2005 - page 30

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    INSTALLATION INTERNET Installation avec tlchargement automatique du framework

    Dans certains cas, il peut tre intressant de crer une procdure dinstallation trs lgre, par exemple pour en acclrer le tlchargement par Internet ou pour en minimiser la taille ( cause du choix du support physi-que).Une des solutions est lutilisation dune installation avec tlchargement automatique du framework.

    Cet exemple utilise la fentre Ancrage du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Cration de la procdure dinstallationPour dmarrer lassistant de cration de procdure dinstallation, cliquez sur loption Crer la procdure dinstallation du menu Atelier.La procdure dinstallation permet de crer lexcutable : Demandez la cration de lexcutable. Indiquez que lexcutable utilise le framework commun. Cliquez sur Terminer.

    La procdure de cration dinstallation se poursuit automatique-ment. Pour une application diffuse sur Internet, il faut que linstal-lateur soit le plus compact possible. Pour raliser ce type dinstallation avec WinDev il suffit de : Choisir Crer une installation autonome. Choisir ensuite Installation compacte. Limiter au maximum lajout de modules additionnels. Choisir comme support un excutable auto extractible.

    Linstallation ainsi dfinie sera la plus compacte possible.

    Si lutilisateur installe lapplication sur une machine qui nest pas encore quipe du framework, le framework sera tlcharg auto-matiquement depuis le site PC SOFT.

  • Tour de France Technique PC SOFT - Juin 2005 - page 31

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    WinDev permet de crer des installations au format MSI de faon aussi simple quune installation classique.

    Cet exemple le projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Cration de la procdure dinstallationPour crer une installation au format MSI, il suffit de : Ouvrir le projet GainsDeveloppeur. Lancer la procdure dinstallation par licne CD. Valider la demande de cration dexcutable. Plan 1 : Passer le plan Choix du modle dinstallation en gardant le premier choix. Plan 2 : Slectionner Installation par un package MSI (3me choix). Plan 3 : Valider la liste fichiers ncessaires lapplication (la liste des fichiers est dtecte automatiquement par linstallation).Les fichiers en vert sont nouveaux depuis la dernire gnration dinstallation. Plan 4 : Choisir un rpertoire dinstallation par dfaut. Plan 5 : Modules additionnels : Cocher la licence. Plan 6 : Licence : Slectionner le fichier Licence.rtf du rper-toire du projet laide du bouton Parcourir. Cliquer sur Terminer A la fin de la gnration, cliquer sur Explorer pour visualiser le fichier .MSI.

    Droulement de linstallation Lancer le fichier .MSI. Valider lassistant et choisir Installation complte. Terminer linstallation : lapplication est installe.

    Principales limitations du format MSIPar rapport linstalleur WinDev, une installation MSI dispose de certaines limitations. Ainsi, une installation au format MSI : ne permet pas de mettre en oeuvre le mcanisme de mises jour automatiques. ne permet pas la modification automatique des fichiers Hyper File. ne contient pas les options : ajout doutils redistribuables, instal-lation du driver ODBC et du MDAC, paramtrage des rpertoires des fichiers de donnes

    Comment gnrer une procdure dinstallation au format MSI ?

    INSTALLATION MSI

  • Vos Notes

    Tour de France Technique PC SOFT - Juin 2005 - page 32(C) PC SOFT - www.pcsoft.fr

    Le MCU (Macro Code Utilisateur) permet lutilisateur final de crer ses propres traitements complmentaires dans lapplication.Et ceci indpendamment du dveloppeur.

    Cet exemple utilise le projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Ajout dun raccourciSur la fentre FenMultiselection, le dveloppeur na pas plac de raccourcis clavier sur les boutons et notamment sur le bouton Imprimer.Regardons comment lutilisateur final peut ajouter un raccourci CTRL + P sur ce bouton. Lancez un test de la fentre FenMultiselection. Cliquez sur le bouton du MCU. Ajoutez un MCU de type Une action sur une combinaison de tou-ches.. Choisissez de dtecter la touche. Dtectez la touche CTRL+P.

    Etudions maintenant le code pour appeler le bouton Imprimer.La fonction permettant de simuler un code de clic est ExcuteTraitement avec en paramtre le nom du bouton.Dans la liste des champs, on voit que le bouton sappelle Imprimer.

    ExecuteTraitement(Imprimer,trtclic)

    Voil cest termin, lutilisateur final a ajout son propre raccourci clavier lapplication.

    Pour tester, il suffit dappuyer sur CTRL+P.La combinaison de touches CTRL+P appelle le traitement dim-pression.

    Vous pouvez limiter lutilisation du MCU certaines fentres.Cette limitation est accessible depuis la fentre de description de la fentre, dans longlet dtail (coche interdire lutilisation du MCU).

    Lors de la cration de lexcutable, vous pouvez galement restrein-dre lutilisation du MCU par un mot de passe, voir mme le dsacti-ver totalement.

    Par dfaut, les ordres de modification de fichiers ne sont pas accessi-bles : vous pouvez cependant les autoriser si vous le souhaitez.

    Les utilisateurs grent leurs macros

    MCU : LES MACROS

    Thme 2 : Gains utilisateur

  • Tour de France Technique PC SOFT - Juin 2005 - page 33

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Autre fonctionnalit qui permet damliorer la vie des utilisateurs : les splitters.

    Cet exemple utilise la fentre Fiche_CLIENT du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Prenons par exemple le cas de la fentre Fiche_CLIENT. Cette fentre prsente une liste des appels tlphoniques en attente de traitement. Un technicien, ce qui lintresse cest de visualiser la liste des appels techniques. Par contre, un commercial, lui, veut visualiser la liste des appels commerciaux.

    Pour ne pas faire deux fentres, une solution peut tre dajouter un champ splitter.Lors de louverture de la fentre Fiche_CLIENT, lAAD propose de crer automatiquement ce splitter.

    Ici, le champ splitter va tre cr dans lditeur : Choisir le champ splitter dans la barre doutils. Positionner le champ splitter entre les deux tables pour que lutilisateur puisse agrandir lune ou lautre. Au passage, ajouter un deuxime splitter sous le champ obser-vations.

    Il suffit ensuite de dfinir les ancrages : dans cette fentre, les 3 champs sont agrandis en hauteur et en largeur.

    Cest termin, vous pouvez tester le redimensionnement de la fen-tre en excution.

    Personnaliser lenvironnement de lutilisateur sans programmation

    LES SPLITTERS

  • Tour de France Technique PC SOFT - Juin 2005 - page 34

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    La persistance des champs permet de mmoriser auto-matiquement les valeurs saisies par lutilisateur et de les lui reproposer par dfaut lors de sa prochaine saisie.

    Cet exemple utilise la fentre Fentre_persistance du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Pour quun champ soit persistant, il suffit de cocher la case mmo-riser la valeur dans longlet Dtail de la fentre de description du champ.

    Les valeurs mmorises sont alors stockes soit : dans la base de registres. dans un fichier XML. dans un fichier de configuration (.ini).

    Les fonctions du W-Langage InitParamtre, SauveParam-tre et ChargeParamtre permettent de grer la persistan-ce par programmation.

    Trs pratique pour grer la persistance de variables globa-les.

    Retrouvez plus dinformations sur le sujet dans la LST 60.

    Attention : la persistance dun champ excute automatiquement le traitement de modification du champ. Attention vos traitements assez longs.

    Mmoriser le contenu des variables ou des champs

    PERSISTANCE DES CHAMPS

  • Tour de France Technique PC SOFT - Juin 2005 - page 35

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    WinDev permet de demander la validation automati-que dun bouton dune fentre ou dune fentre systme (Info, OuiNon...) aprs un dlai dtermin.

    Cet exemple utilise la fentre Fenetre_maj du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Cette fentre lance un calcul de statistiques dune demi-heure.Le traitement simul est long, donc un message prvient lutilisateur quil va bloquer sa machine : on lui demande confirmation.

    Mise en place sur un boutonPour ajouter une minuterie au bouton OK afin quil se valide tout seul au bout de 5 secondes, il suffit de : Ouvrir la fentre de description du bouton OK. Slectionner longlet Dtail. Indiquer le temps en secondes qui scoulera avant lexcution du traitement du bouton. Par exemple 5 secondes.

    Lors du test de la fentre, on remarque le dcompte automatique dans le bouton OK. Sans aucune action de lutilisateur au bout de 5 secondes, le bouton OK sera automatiquement excut.

    Mise en place sur une fentre systmePour appliquer la minuterie sur les fentres de type OuiNon, Info, Erreur, Confirmer, il suffit de lindiquer par programmation.

    Dans le code de clic du bouton, ajoutez un appel la fonction DelaiAvantFermeture en indiquant en paramtre le dlai de valida-tion en centimes de secondes

    DlaiAvantFermeture(500)SI OuiNon(Oui,Confirmez-vous la sortie ?) ALORS FermeFIN

    Validation automatique des boutons aprs un dlai dfini

    BOUTONS MINUTERIE

  • Tour de France Technique PC SOFT - Juin 2005 - page 36

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    CHM est le nouveau format daide qui remplace le for-mat HLP.Un fichier daide CHM, cest tout simplement un ensem-ble de pages HTML regroupes et compiles pour ne produire quun seul fichier. Cet exemple utilise la fentre Fenetre_maj du projet GainsDeveloppeur. Ce projet est accessible depuis le kouglof.

    Cration dun systme daideDepuis le menu Fichier..Nouveau slectionnez la cration dun systme daide.Lassistant permet ensuite de choisir les lments du projet (fen-tres et tats) pour lesquels laide doit tre gnre. WinDev va alors prparer un squelette de pages daide pour chaque lment slectionn.

    Gestion des mots-clsLa gnration de laide trouve des mots-cls associer chaque page grce loption Index Automatiques du menu Menu Systme daide.Les mots-cls sont affichs dans longlet Index de laide et sont associs la page.

    Compilation du fichier CHMUne fois laide crite et mise en forme, il faut la compiler :1. Dabord, il faut dfinir le compilateur utiliser depuis loption Option de compilation du menu Systme daide. On choisit dutiliser le compilateur HTML.2. Saisir le nom du fichier compil : Aide.chm.3. Gnrer le fichier daide (menu Systme daide..Compiler).

    Association du fichier CHM lapplication WinDev Ouvrir la fentre Fiche_client. Crer un bouton dappel de laide. Utiliser la fonction W-Langage WHelp.

    Il y a alors deux possibilits Vous voulez lancer le CHM directement donc vous passez simple-ment en paramtre le chemin du fichier CHM. Vous voulez lancer et positionner le CHM directement la bonne page. Dans ce cas, il faut ajouter lidentifiant de la page daide que vous souhaitez ouvrir. Cet identifiant, vous le trouvez dans les pro-prits de la page daide.

    Whelp(Aide.chm, NumroIndex)

    Comment ajouter une aide au format CHM dans une application

    AJOUTER UNE AIDE

  • Tour de France Technique PC SOFT - Juin 2005 - page 37

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Les FAA sont les fonctionnalits automatiques de lap-plication.Les utilisateurs bnficient automatiquement de ces fonctionnalits sans quil soit ncessaire de coder quoi que ce soit.Une documentation standard sur ces fonctionnalits est fournie avec WinDev pour les livrer avec vos applica-tions.

    Cette documentation peut tre livre directement aux utilisateurs finaux.

    Livrez simplement le fichier PDF Documentation_Utilisateur_WD9.pdf disponible dans le rpertoire Aide de WinDev.Ce fichier daide est galement disponible en tlchargement sur le site de PC SOFT : www.pcsoft.fr

    La documentation utilisateur des FAA

    DOCUMENTATION FAA

  • Vos Notes

    Tour de France Technique PC SOFT - Juin 2005 - page 38(C) PC SOFT - http://www.pcsoft.fr

    InstallationLes principales tapes de linstallation dun moteur de base de don-nes Hyper File Client/Serveur sont les suivantes : Lancer linstallation Slectionner loption Installer un nouveau serveur Indiquer le rpertoire allant contenir les lments du serveur HYPER FILE, savoir: le serveur en lui-mme les diffrentes bases de donnes Par exemple, saisir C:\Serveur HF Indiquer le nom de la machine serveur (par exemple ServeurHF). Indiquer le port qui va tre utilis par le serveur pour le transfert des donnes, cest--dire pour communiquer avec les applications clientes. Indiquer sil faut aussi installer le Centre de contrle Hyper File.

    Voila linstallation est termine Et un serveur Hyper File est disponible sur une machine serveur Windows.

    Complments dinformations

    Quest ce quun port ?Un port est un point dentre un service (service web, service DNS, service mail, serveur Hyper File,...) sur un quipement (PC, serveur,...) connect un rseau.Sur un rseau (TCP-IP) chaque quipement possde au moins une adresse IP. Chaque adresse supporte pas moins de 65000 ports offrant chacun un service. Lensemble des services est rfrenc et donne lieu une affectation prcise des ports. Un site web est ainsi visible sur le port 80, lenvoi de mail se fait sur le port 25 et sa rception sur le port 110, un serveur Hyper File est accessible par dfaut via le port 4900 et MantaManager sur le port 5002.

    Autrement dit : sur un serveur, il y a des applications qui tournent. Pour dialoguer avec ces applications, il faut un tuyau identifi par un numro : le numro de port.Exemple : un serveur web utilise le port 80, Telnet port 23, Serveur Hyper File : 4900 (par dfaut).

    Installer Hyper File Client/Serveur sur Windows

    INSTALLATION

    Thme 3 : Base de donnes

  • Tour de France Technique PC SOFT - Juin 2005 - page 39

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Ports utiliss : Le serveur Hyper File utilise par dfaut le port 4900. Ce port peut tre configur via le fichier HFConf.ini [INIT] AccessPort = 4920

    mantamanager utilise un port fixe 5002. Ce service nest pas nces-saire pour accder un serveur Hyper File (il permet de lister les serveurs dune machine et de dmarrer un serveur sur la machine).Il nest donc pas obligatoire douvrir ce port sur Internet.

    Utilisation via InternetIl faut prciser dans la connexion de lapplication cliente le nom du serveur (par son nom ou son adresse IP) : si votre serveur peut tre identifi par un nom (exemple : zeus.org), vous pouvez utiliser celui-ci dans la connexion. Ce nom doit tre enregistr dans un service DNS (qui peut tre dynamique comme dyndns, no-ip par exemple) si le serveur possde une IP fixe, vous pouvez utiliser directement celle-ci (de la forme 87.180.12.1).

    Pour pouvoir accder au serveur depuis Internet, il faut ouvrir un port dans le firewall protgeant le serveur.On pourra au choix :1) Placer le serveur dans la DMZ, lensemble des ports du serveur sera alors visible depuis Internet. Si le serveur est protg par son propre FireWall logiciel (par exemple celui du Service Pack 2 de Windows XP, IpTable sous Linux), il faut alors ouvrir le port du ser-veur Hyper File (qui est par dfaut 4900).2) Effectuer un forward de port sur son routeur-firewall.Il faut rajouter une rgle dans le routeur qui spcifie que les con-nexions arrivant sur un port X depuis Internet seront transfres sur la machine hbergeant le serveur Hyper File sur le port 4900 (ou celui prcis dans le fichier HFConf.ini).Il faudra utiliser pour le client le port X visible depuis Internet.

    Si le poste client utilise un firewall, de la mme manire, il faut que celui-ci permette aux applications de se connecter via le port utilis vers lextrieur.

    Comment prciser le port dans lapplication cliente1. Via lanalyse (onglet avanc dans la description de la connexion)2. Par programmation en faisant suivre le nom ou lIP du serveur par : (deux point) puis le numro du port (ex zeus.org:4920 ou 192.172.1.99:4920 ). Exemple : HOuvreConnexion(MaConnexion,user,mdp,monsite:4920,...)

    Pourquoi certains ports sont ferms par dfaut ?En limitant le nombre de ports ouverts sur la machine, on amliore la scurit : faille logiciel de lOS, service mal configur, service non protg...

  • Tour de France Technique PC SOFT - Juin 2005 - page 40

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Nous avons install le moteur Hyper File Client/Serveur, nous allons maintenant dtailler comment crer une base de donnes.

    Une base de donnes au sens Client/Serveur,cest quoi ?Une base de donnes regroupe lensemble des fichiers Hyper File Client/Serveur.

    Comment crer une base de donnes ?Nous allons ici crer une base de donnes laide du centre de con-trle Hyper File. Les tapes sont alors les suivantes :1. Ajouter la nouvelle machine serveur dans le centre de contrle. On recherche un Serveur Hyper File grce au nom de la machine sur laquelle nous venons dinstaller le moteur de la base de donnes Hyper File Client/Serveur.2. Drouler le serveur dans le treeview.3. Sidentifier auprs du serveur. A linstallation, un administrateur a t cr par dfaut, cest lutilisateur ADMIN.Cet utilisateur na pas encore de mot de passe et possde tous les droits sur le serveur et sur les bases de donnes4. Se positionner sur Base de donnes.5. Cliquer sur Crer une base de donnes.6. Donner un nom la base de donnes, par exemple base HFCS.

    La base de donnes est cre.

    Comment crer une base de donnes sur le serveur Hyper File Client/Serveur

    BASE DE DONNES

  • Tour de France Technique PC SOFT - Juin 2005 - page 41

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Transfert des donnesPour transfrer les donnes dune base de donnes Hyper File Classic vers la base Hyper File Client/Serveur, nous allons utiliser le centre de contrle Hyper File.

    Il suffit de cliquer le bouton Importer une Base de donnes Hyper File Classic et de se laisser guider par lassistant : Choisir le rpertoire o se trouvent les fichiers Hyper File Classic transfrer. Slectionner la base de donnes dans laquelle seront imports nos fichiers Hyper File Classic. Slectionner les fichiers Hyper File Classic importer dans la base Client/Serveur. Valider lopration par un clic sur le bouton Importer

    Cest termin, les donnes sont accessibles !

    A noter que cette opration est galement ralisable par programma-tion grce la fonction HCopieFichier (ce qui vous permet dauto-matiser des traitements sans passer par le centre de contrle).

    Rgles dintgritsPar dfaut, lors dun transfert dune base de donnes Hyper File Classic vers une base de donnes Hyper File Client/Serveur, les rgles dintgrit ne sont pas transfres sur la base Hyper File Client/Serveur.

    Pour crer les rgles dintgrit de la base, il faut : soit utiliser la fonction HCration sur chaque fichier de lanalyse AVANT le transfert des donnes (ATTENTION : cette fonction crase les fichiers existants). soit utiliser la fonction HAjouteLiaison pour dfinir les liaisons existantes entre les diffrents fichiers avant ou aprs le transfert des donnes.

    Transfrer une base de donnes Hyper File Classic vers Hyper File Client/Serveur

    TRANSFERT DE DONNES

  • Tour de France Technique PC SOFT - Juin 2005 - page 42

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Maintenant que notre base est cre et importe, nous devons modi-fier nos programmes pour quils utilisent la base Hyper File Client/Serveur en lieu et place des fichiers Hyper File Classic.

    Cet exemple utilise le projet WDclientserveur. Ce projet est accessible depuis le kouglof.

    Par programmationCest trs simple cest 2 lignes de code ajouter ! dcrire la connexion utiliser la connexion

    Pour dcrire la connexion, il suffit dutiliser la fonction HDcritConnexion, en indiquant en paramtre : le nom de la connexion lutilisateur qui va se connecter le mot de passe le serveur Hyper File le nom de la base de donne le type de connexion : il sagit dune connexion Hyper File Client /Serveur.La connexion est dcrite !

    Deuxime ligne de code jouter, hChangeConnexion pour dfinir la connexion utiliser.Le premier paramtre correspond * pour appliquer la modifica-tion tous les fichiers de lanalyse :

    HChangeConnexion(*, Nom de la connexion)

    Dans lanalyseIl est possible de dfinir les connexions directement depuis lditeur danalyses. Il suffit ensuite dassocier les fichiers souhaits une connexion de type Hyper File Client/Serveur.

    Modifier lanalyse et le code pour prendre en compte Hyper File Client/Serveur

    ANALYSE ET CODE

  • Tour de France Technique PC SOFT - Juin 2005 - page 43

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Lobjectif ici est de dployer une application WinDev exploitant une base de donnes Hyper File Client/Serveur.Dans ce cas, linstallation avec mise jour rseau est particulirement bien adapte.

    Cration de linstallation de rfrenceLa cration de la procdure dinstallation seffectue comme pour une application classique grce loption Crer la procdure dins-tallation du menu Atelier.

    Il suffit alors de choisir de gnrer une installation avec mise jour automatique en rseau.Lditeur dinstallation dtecte automatiquement que lapplication utilise une base de donnes Hyper File Client/Serveur.

    Il faut distinguer deux cas de fonctionnement : 1re possibilit : lapplication a t dveloppe en utilisant la base relle.Donc le serveur Hyper File Client/Serveur est dj install : inutile de proposer linstallation dun serveur Hyper File Client/Serveur au client.De plus, les paramtres de connexion dfinis dans lanalyse sont vali-des, le client na pas besoin de paramtrer quoi que ce soit. 2nde possibilit : lapplication a t dveloppe en utilisant une base test.

    Dans ce dernier cas, il faut proposer au client pendant la phase dinstallation : dinstaller un serveur Hyper File Client/Serveur (pour Windows ou Linux). et de dfinir les paramtres de connexion au serveur Hyper File Client/Serveur quil aura install.

    Vous pouvez ensuite choisir les fichiers de donnes dployer sur le serveur du client (par exemple des fichiers de base comme Catgorie, Pays )Les autres plans sont alors les plans classiques dune installation.

    Installation dune application rseau exploitant Hyper File Client/Serveur

    APPLICATIONS

  • Tour de France Technique PC SOFT - Juin 2005 - page 44

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Installation en clientleLinstallation est une installation avec mise jour automatique en rseau, elle se fera donc en 2 tapes.1. Premire tape, linstallation de rfrence : Elle permet dinstaller le serveur Hyper File Elle doit tre faite par un utilisateur averti (ladministrateur) qui va alors dfinir : le rpertoire dinstallation de cette installation de rf-rence. la connexion Hyper File Client/Serveur, en spcifiant ladresse de la machine serveur, le port de connexion, etc

    La base de donnes Hyper File est alors accessible sur la machine serveur et linstallation utilisateur est disponible.

    2. Seconde tape : installation de lapplication par chacun des utili-sateurs sur leur machine partir de linstallation de rfrence.

  • Tour de France Technique PC SOFT - Juin 2005 - page 45

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    FonctionnementLes droits peuvent sappliquer plusieurs niveaux. Il y a : les droits au niveau du serveur (droit de crer une base de don-nes sur un serveur par exemple). Les droits au niveau de la base de donnes (droit de se connecter, etc...). Les droits au niveau dun fichier (le droit de lire un fichier, de le modifier).

    Les droits sont hrits, cest--dire que si un utilisateur na pas le droit de modification dun fichier (Droit dfini au niveau de la base de donnes), il ne sera pas autoris modifier un enregistrement.

    Par contre, si on spcifie dans les droits dun fichier particulier que notre utilisateur a les droits de modification de CE fichier alors cest ce droit qui va sappliquer pour ce fichier.

    La gestion des droits peut tre faite de deux faons : travers le centre de contrle Hyper File. par programmation.

    Configuration par le Centre de contrle Hyper File.Dans le centre de contrle Hyper File (CC90HF.exe), la gestion des droits seffectue via longlet de gestion des droits au niveau du ser-veur, de la base de donnes ou des fichiers.

    Configuration par programmationLa modification des droits seffectue grce des fonctions du W-Langage comme HModifieDroitBaseDeDonnes pour modifier les droits sur une base de donnes. Il suffit de prciser le nom de la connexion, lutilisateur ou le groupe pour lequel on veut modifier un droit, le droit que lon souhaite modifier, la valeur (autoris ou interdit), le nom de la base de don-nes.

    Configurer les droits sur une base de donnes Hyper File Client/Serveur

    GESTION DES DROITS

  • Tour de France Technique PC SOFT - Juin 2005 - page 46

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Linstallation dun serveur Hyper File Client/Serveur sur Linux sef-fectue laide dun installateur.Consultez laide en ligne pour plus de dtails.

    Installer un serveur Hyper File Client/Serveur sur Linux

    INSTALLATION LINUX

  • Tour de France Technique PC SOFT - Juin 2005 - page 47

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Il est bien entendu possible de travailler sur dautres bases de don-nes, pour respecter un existant par exemple.Pour manipuler une base de donnes externe, il est possible dutili-ser soit : des pilotes ODBC ou OLE DB. des accs natifs spcifiques (pour Oracle, SQL Server, AS/400, Informix, DB2, Progress et Sybase).

    Lavantage dutiliser les accs natifs : le code source de lapplication est strictement le mme quelle que soit la base de donnes acc-de.

    Il est ainsi possible de manipuler une base Hyper File, oracle, Sql Server, As/400, etc avec les mmes ordres W-Langage.

    Mise en oeuvreLa solution la plus rapide consiste dfinir la connexion laccs natif dans lditeur danalyses :1- Dans le menu Analyseconnexion, dfinissez une nouvelle con-nexion.2. Choisissez dutiliser une base externe.3. Choisissez le type daccs natif (par exemple SQL Server).4. Renseignez les paramtres de connexion : nom de la machine ser-veur, base de donnes, nom dutilisateur, mot de passe.4. Donnez un nom la connexion, par exemple connexionSQL Server.5. Gnrez lanalyse.

    Voil la connexion a t dfinie.Cette connexion peut aussi tre dcrite par programmation grce la fonction hDcritConnexion.

    Cration des tablesPour utiliser cette nouvelle connexion, il suffit douvrir (ou de changer) la connexion grce aux fonctions HOuvreConnexion ou HChangeConnexion du W-Langage.

    Note : HCreationSiInexistant permet de crer simplement les struc-tures des fichiers dans la base de donnes externe sils nexistent pas encore.

    Accs natifs et bases tierces depuis une application WinDev

    ACCS NATIFS

  • Tour de France Technique PC SOFT - Juin 2005 - page 48

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Les accs natifs des versions 9 ont t optimiss et permettent notamment une utilisation plus efficace des tables fichier.

    Cet exemple utilise le projet WD AccsNatifs et ncessite de dis-poser de laccs natif SQL Server.

    Optimisation des tables fichiers sur une base de donnes SQL Server

    OPTIMISATION

  • Vos Notes

    Tour de France Technique PC SOFT - Juin 2005 - page 49(C) PC SOFT - http://www.pcsoft.fr

    Thme 4 : Accs distant

    Comment accder une base de donnes de San Francisco via une liaison Internet ?

    Oprations effectuer sur le serveur de San Francisco1 Installer le moteur Hyper File Client/Serveur sous windows ou sous Linux.2 Configurer le firewall pour ne pas bloquer les connexions au ser-veur Hyper File Client/Serveur (les ports utiliss sont rappels dans le chapitre concernant linstallation dun serveur Hyper File).3 Ouvrir la machine au monde, cest--dire rendre le serveur accessible par internet via une adresse IP ou un nom de domaine (www.monserveur.com).

    Dans le code de lapplication, il suffit alors dutiliser les fonctions hDcritConnexion et HChangeConnexion en donnant les informa-tions de connexion la base de San Francisco.

    Quelques caractristiques concernant la liaison Cot Serveur, cest--dire ct San Francisco, prvoir une liaison avec un bande passante de 2 Mb/s minimum. Cot Client, une connexion ADSL 512 Ko est largement suffi-sante.

    Prvoyez de la mmoire pour la gestion des utilisateurs (environ 150 Ko par utilisateur), ainsi que pour le cache interne (commun tous les utilisateurs) : environ 10 Mo.

    Reportez-vous la LST 59 pour plus de dtails.

    Partager en temps rel une base de donnes entre sites distants via ADSL

    SITES DISTANTS

  • Tour de France Technique PC SOFT - Juin 2005 - page 50

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Comment accder la base de donnes de San Francisco depuis mon mobile ou mon Pocket PC ?Cet exemple utilise le projet Pocket HF GPRS. Ce projet est acces-sible depuis le kouglof.

    Connexion GPRSUne liaison GPRS est un tuyau de communication qui permet dchanger des donnes au travers du rseau de tlphonie mobile, en gros via votre carte SIM.La diffrence par rapport la tlphonie classique cest que vous serez factur la quantit de donnes envoyes/recues et non au temps pass. Si vous avez un Smartphone ou un Pocketphone, vous avez direc-tement accs au rseau GPRS, si votre abonnement le permet bien entendu. Si vous utilisez un Pocket PC dpourvu de carte SIM, vous pourrez utiliser votre mobile pour vous connecter si le Pocket PC et le GSM intgrent la gestion du bluetooth.

    AstucesQuelques trucs et astuces pour utiliser une connexion GPRS.Lutilisation dune connexion GPRS ncessite peu prs les mmes contraintes que lutilisation du RPC :1 viter au maximum les aller/retour inutiles cest--dire que les donnes devront tre rcupres toutes en mme temps.2 limiter au maximum le nombre dinformations rcuprer.Pour cela et comme pour le RPC, il est conseill dutiliser au maxi-mum des requtes, des vues. Il faut que celles-ci soient les plus restrictives possibles et quelles renvoient le moins de donnes possible sur le pocket.

    ProgrammationLa fonction NetOuvreAccsDistant permet douvrir la connexion GPRS en indiquant en paramtre le nom de la connexion. La configuration de la connexion GPRS se fait directement sur le pocket PC indpendamment de WinDev Mobile.Une fois la connexion GPRS ouverte, la connexion au serveur Hyper File seffectue en utilisant hOuvreConnexion vu prcdemment.

    Les deux fonctions suivantes sont des optimisations faites pour luti-lisation du GPRS : La fonction HGreCache permet de dsactiver le mcanisme de cache de Hyper File et de ne rapatrier chaque lecture quun seul enregistrement sur le Pocket PC. La fonction HGreMmo permet de dsactiver la gestion des mmos toujours dans le but de minimiser la taille des informations transfres.

    Accder une base distante par GPRS depuis un Pocket PC ou un Smartphone

    ACCS GPRS

  • Tour de France Technique PC SOFT - Juin 2005 - page 51

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Une autre possibilit pour accder distance des donnes ou des traitements est lutilisation dune archi-tecture TSE ou CITRIX.

    Avec ce type darchitecture lapplication et les donnes se trouvent un seul endroit, le sige social.Les utilisateurs se connectent lapplication en utilisant ce que lon appelle un terminal.Un terminal est un Client lger qui fonctionnera sur PC, Mac ou via un navigateur internet.

    Au niveau de cette architecture tout sexcute sur le serveur. Seule la partie IHM se trouve sur le terminal. Les clics souris et les frappes au clavier sont transfrs par le ter-minal au serveur. Le serveur fait les traitements correspondants. En retour le serveur renvoie les crans au terminal. Chaque terminal bnficiera dune machine virtuelle (une session) sur le serveur dans laquelle sexcute lapplication.Il est donc fondamental davoir un serveur performant.

    Comment mettre en place un TSE :1. Premire tape : choisir un serveur adapt en terme de perfor-mances.2. Deuxime tape : installer la couche serveur de TSE sur le ser-veur.3. Troisime tape : installer les diffrentes applications qui seront utilises via TSE.4. Quatrime tape : configurer le tuyau de communication entre le serveur et les terminaux.Pour faire ceci de faon scurise, il faut tablir un VPN ou Virtual Private Network entre le serveur et le terminal.Un VPN est un canal de connexion scuris entre une ou plusieurs machines. 5. Cinquime tape quil vaut mieux valuer avant de commencer.Acheter le nombre de licences Client TSE qui correspond aux nom-bres de terminaux qui se connecteront.Installer la couche Client TSE sur ces postes Client.

    Voil pour la configuration.Chaque terminal pourra alors utiliser les applications du serveur.

    Comment exploiter une application WinDev sur serveur Citrix ou TSE ?

    CITRIX / TSE

  • Tour de France Technique PC SOFT - Juin 2005 - page 52

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Particularits de dveloppementLes applications et notamment celles dveloppes avec WinDev fonctionnent en TSE sans modifications spcifiques.Il faut quand mme prendre quelques prcautions.

    En effet lapplication ne va pas sexcuter sur la machine de lutili-sateur mais sur une machine qui tourne sur le serveur.Ces diffrentes machines virtuelles partagent de nombreux lments systme.Il faut donc faire attention de ne pas utiliser ces lments parta-gs : Si lapplication doit fonctionner sous TSE il ne faut pas utiliser les cls de registres correspondant la machine comme par exemple la cl HKEY LOCAL MACHINE.Il faut prfrer lutilisation de la cl HKEY CURRENT USER.Cest dailleurs ce que fait WinDev par dfaut lors de la mmorisa-tion automatique.(SauveParamtre, case cocher Mmoriser la valeur) De mme, si vous utilisez des fichiers locaux, ou temporaires, fai-tes bien attention de les crer un endroit ou vous aurez les droits en criture. Faite aussi attention au nom de ces fichiers locaux.Ils seront stocks sur le serveur.Si vous utilisez le mme rpertoire et le mme nom comme C:\Temp\Monfichier pour stocker ces informations chaque utilisateur risque dcraser les paramtres dun autre utilisateur connect.

    Vous navez pas ce genre de soucis avec un dploiement classique car le programme sexcute sur la machine de lutilisateur.Chaque utilisateur a donc son propre C:\temp.

    Pour stocker ce genre dinformations, utilisez le rpertoire Application Data. Pour rcuprer le chemin de ce rpertoire, vous utiliserez la fonction W-Langage SysRep(srAppData).

    Consultez la LST 51 pour plus de dtails.

  • Vos Notes

    Tour de France Technique PC SOFT - Juin 2005 - page 53(C) PC SOFT - www.pcsoft.fr

    La rplication est lopration permettant de synchroni-ser des bases de donnes distantes.

    Par exemple, prenons le cas dun commercial, qui part en dplace-ment chez un client dans le Cantal. Il sait quil ne pourra pas avoir accs sa base car il ny a pas lADSL.

    Dans ce cas, il rplique tout ou partie de la base de donnes du sige de sa socit sur son ordinateur portable afin de pouvoir travailler. La base de donnes du commercial sur son portable et la base de donnes du sige voluent alors compltement indpendamment. Le commercial fait ses modifications. Une fois le commercial revenu, il synchronise SA base de donnes avec celle du sige et vite ainsi la ressaisie dinformations.

    Deux types de rplication sont disponibles avec WinDev : La rplication avec journaux qui implique une utilisation de loutil WDReplic. Ce type de rplication existe depuis WinDev 7 et ne fonc-tionne quavec des bases de donnes Hyper File. Et La rplication sans journaux, dite htrogne.Le terme htrogne signifie que cette rplication peut seffectuer sur des bases de donnes diffrentes (Hyper File SQL Server par exemple).

    Rplication classique et rplication htrogne sur une base Hyper File

    RPLICATION HYPER FILE

    Thme 5 : Rplication

  • Tour de France Technique PC SOFT - Juin 2005 - page 54

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Cet exemple utilise les projets RplicationMatre et RplicationAbonn. Ce projet est accessible depuis le kouglof.

    Rplication htrogneCette rplication htrogne est extrmement simple mettre en uvre. La base de donnes de rfrence, appele Rplica Matre se trouve par exemple au sige de la socit San Francisco. La base de donnes secondaire, ou base distante, appele Rplica abonne se trouve dans la ou les agences travers le pays ou le monde. Lors de chaque modification dun enregistrement (ajout, suppres-sion, modification, etc..) dune part ou de lautre, lenregistrement est automatiquement horodat dans la base. Ensuite, lors de la demande de rplication, WinDev va simplement extraire de la base tous les enregistrements horodats depuis la der-nire rplication.

    Ce fichier dextraction est alors envoy aux abonns pour mettre jour leur base de donnes.Le terme htrogne signifie que vous pouvez utiliser des bases de donnes diffrentes (Hyper File et Oracle, Hyper File et SQL Server)

    Attention : Les bases de donnes doivent obligatoirement avoir une structure compatible. Bien entendu la rplication htrogne sup-porte des bases Hyper File dun cot et de lautre.

    ProgrammationAu niveau du rplica matre : 1- Tout dabord, dire la base de donnes Matre quelle va tre rplique de faon htrogne. Cest lordre hGreRplication(rplRplicationHtrogne)Ensuite, initialiser le rplica Matre, pour spcifier que cette base de donnes sera la base matre. Cest lordre HCreRplicaMaitre.Le paramtre de cette fonction spcifie le rpertoire o les fichiers de la rplication vont tre crs. Ce sont ces fichiers qui spcifient que la base est rplique (ces fichiers ne doivent pas tre suppri-ms).

    2- Inscrire les abonns auprs du matre et dfinir les rgles de rpli-cation. Sur quels fichiers la rplication va-t-elle intervenir ? Cest lordre hCreRplicaAbonn. Spcifier le rpertoire o se trou-vent les fichiers de rplication du matre (pour quil puisse inscrire labonn). Donner un identifiant, dans lexemple ce sera le portable

    Rplication entre une base de donnes Hyper File et une base de donnes SQL Server

    RPLICATION HTROGNE

  • Tour de France Technique PC SOFT - Juin 2005 - page 55

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    du commercial.

    Cette opration doit tre rpte pour chacun des commerciaux.Le dernier paramtre de la fonction hCreRplicaAbonn dfinit le ou les fichiers que lon va rpliquer ainsi que la ou les rubriques qui vont dterminer si lenregistrement est synchroniser ou non.

    3- Crer la premire mise jour. (Cest ce quon appelle un rplica transportable, cest--dire une exportation de la base de donnes matre).Cet export est ralis grce la fonction hCreRplicaTransporta-ble. Il suffit de lui passer le rpertoire du rplica matre ainsi que lidentifiant de labonn. Cet identifiant va permettre de retrouver le ou les fichiers rpliquer.

    AssistantLe projet WD Rplication Htrogne livr sur le CD-ROM dac-compagnement (et accessible depuis le kouglof) est un assistant permettant de mettre en place une rplication htrogne entre deux bases de donnes.

    Consultez la LST 61 et laide en ligne pour plus de dtails.

  • Tour de France Technique PC SOFT - Juin 2005 - page 56

    Vos Notes

    (C) PC SOFT - www.pcsoft.fr

    Cet exemple utilise les projets PC Gestion des listes dachats et Pocket Gestion des listes dachats. Ces projets sont accessibles depuis le kouglof.

    Les deux applications utilisent une base de donnes Hyper File, lune en version Classic et lautre en version Mobile.Le but est de synchroniser les 2 bases de donnes lors de la con-nexion du Terminal Mobile.

    Pour cela, deux possibilits : 1 Paramtrer la synchronisation lors de la cration de linstalla-tion.2 Utiliser loutil WDSynchro livr avec WinDev Mobile (menu Outils..WDSynchro) si vous naviez pas prvu de synchronisation lors du dploiement des applications mobiles. WDSynchro permet alors dajouter cette synchronisation ActiveSync.

    Vous pouvez choisir deffectuer une synchronisation personnalise ou classique.

    Synchronisation personnalisePrenons le cas dune application diffuse sur toute la France. Toutes les donnes sont au sige Paris. Je suis Commercial Lyon. Je veux rcuprer les fiches client sur mon Pocket. Mais les fiches des clients de Strasbourg ne mintressent pas. Je ne veux que les clients de Lyon.

    Pour raliser cette opration, les tapes sont les suivantes :1. Il est ncessaire dutiliser une bibliothque WinDev (.WDL) conte-nant une collection de procdures nomme WDSynchro ainsi que les lments dont vous avez besoin pour la personnalisation.

    La collection de procdures WDSynchro contient diffrentes procdu-res permettant de grer la synchronisation par programmation. Vous pouvez utiliser la collection de procdures WDSynchro.wdg livre avec WinDev Mobile (rpertoire : WinDev\Personnel\Wdsynchro\). Cette collection peut tre intgre dans un projet WinDev et peut tre adapte ou modifie dans un projet.La fentre fnStatusSynchronisation est ouverte au dmarrage de la synchronisation.2. Gnrer la bibliothque ap