Windev 9 SupportDeCours PDF
Windev 9 SupportDeCours PDF
TECHNIQUE
OUR DE FRANCE
2005
Vous mritez le meilleur
DVELOPPEZ 10 FOIS PLUS VITE
Tour de France Technique PC SOFT - Juin 2005 - page 14
Vos Notes
(C) PC SOFT - www.pcsoft.fr
ANCRAGES AVANCS
Gestion 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 largeur
Lorsque 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 hauteur
Maintenant, 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 confguration
Pour 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 confguration
Une 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 lexcutable
Cliquez 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 confgurations 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 diffrences
Pour 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 projet
Voici 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-langues
En 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-langues
Une 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 WDTrad
WDTRAD 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 programmation
Crez 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 franais
Lors 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
..\<Rpertoire dinstallation de WinDev 9>\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 FICHIER
H 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.
Confguration de la mise jour automatique
Le 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 dinstallation
WINDEV 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 HTTP
Nous 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 dinstallation
Pour 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 dinstallation
Pour 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 MSI
Par 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 raccourci
Sur 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 bouton
Pour 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 systme
Pour 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
Ferme
FIN
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 daide
Depuis 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-cls
La 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 fchier CHM
Une 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 fchier 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
Installation
Les 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 Internet
Il 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 cliente
1. 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 donnes
4. 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 donnes
Pour 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 dintgrits
Par 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 programmation
Cest 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 lanalyse
Il 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 rfrence
La 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 clientle
Linstallation 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
Fonctionnement
Les 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.
Confguration 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.
Confguration par programmation
La 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 oeuvre
La 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 tables
Pour 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 Francisco
1 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 GPRS
Une 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.
Astuces
Quelques 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.
Programmation
La 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 dveloppement
Les 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 htrogne
Cette 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.
Programmation
Au niveau du rplica matre :
1- Tout dabord, dire la base de donnes Matre quelle va tre
rplique de faon htrogne. Cest lordre hGreRplication(rpl
RplicationHtrogne)
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.
Assistant
Le 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 personnalise
Prenons 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 aprs avoir choisi les lments intgrer
dans cette bibliothque. Ici, le projet, lanalyse, la collection de
procdures et la fentre fnStatusSynchronisation.
Notre bibliothque est gnre, si lapplication est dj installe sur
le terminal mobile, il suffit de dfinir la synchronisation entre les
donnes sur le terminal et les donnes sur le PC.
Synchroniser des bases de
donnes Hyper File Classic et
Hyper File Mobile
SYNCHRONISATION MOBILE
Tour de France Technique PC SOFT - Juin 2005 - page 57
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cration dune synchronisation
Pour crer une nouvelle synchronisation, il suffit dutiliser loutil
WDSynchro puis de :
Saisir le nom de lapplication (Liste dachats dans lexemple).
Saisir les emplacements des analyses des deux applications sur le
PC et sur le terminal mobile.
Dfinir la liste des fichiers quActiveSync devra synchroniser.
Indiquer lemplacement des fichiers Hyper File Classic, donc sur
le PC.
Indiquer lemplacement des fichiers Hyper File Mobile.
Choisir la bibliothque que lon vient de gnrer.
Voila, la synchronisation est effective et vous pouvez tester que
ActiveSync synchronise bien lapplication.
Consultez la LST 59 pour plus de dtails.
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 58 (C) PC SOFT - www.pcsoft.fr
Le champ Fentre Interne permet dinclure une fentre
(et son code) dans une autre fentre. Regardons com-
ment grer une fentre interne sur un exemple concret.
Dans nos applications, on souhaite que dans toutes les fentres, il y
ait dans la partie basse, les heures locales des places boursires du
monde entier. Cet exemple utilise le projet WD Horloge Mondiale.
Ce projet est accessible depuis le kouglof.
Mise en oeuvre
Ouvrir la fentre fnIntHeureMondiale. Cette fentre interne
affiche lheure du fuseau horaire de votre choix.
Ouvrir la fentre de description. Cette fentre ne dispose pas de
cadre ni de couleur de fond : cest une fentre interne.
Crer une nouvelle fentre.
Nous allons ajouter dans cette fentre une horloge, voir mme trois,
pour afficher les heures de Paris, New-York et Sydney simultan-
ment.
Crer un champ fentre interne.
Dans la fentre de description du champ fentre interne : slec-
tionner la fentre interne fnIntHeureMondiale.
Clic droit sur le champ fentre interne - Aperu 100%.
Clic droit sur le champ fentre interne - Adapter la taille.
Copier-coller le champ fentre interne pour avoir 3 champs.
Renommer les 3 champs : Paris, New_York, Sydney.
Les fentres internes peuvent contenir des procdures locales
Nous allons utiliser ces procdures pour dfinir les villes dont on veut
visualiser lheure.
Tapez le code suivant dans le code dinitialisation de la fentre
Paris.ChangeVille(Paris)
New_York.ChangeVille(New-York)
Sydney.ChangeVille(Sydney)
Si vous changez la ville de lune des 3 horloges, vous constaterez que
les 3 champs fentre interne sont totalement indpendants.
Propagation des modifcations
Pour illustrer la propagation des modifications dans les fentres
internes, crer une nouvelle fentre contenant un champ fentre
interne, associer le champ la fentre interne utilise prcdem-
ment et saisir le code suivant :
// Code dinitialisation de la fentre
FentreInterne1.ChangeVille(Paris)
Go : modifier la fentre interne (libell en gras et rouge par exem-
ple), refaire GO.
Utilisation des fentres
internes
FENTRE INTERNE
Thme 6 : Architecture dapplication
Tour de France Technique PC SOFT - Juin 2005 - page 59
Vos Notes
(C) PC SOFT - http://www.pcsoft.fr
Intrt fondamental des fentres internes : la pos-
sibilit dinclure ces fentres dans un composant,
cela permet ensuite de les utiliser dans diverses
applications.
Cet exemple utilise le projet WD Horloge Mondiale utilis dans le
chapitre prcdent. Ce projet est accessible depuis le kouglof.
Gnration du composant
Slectionnez loption Gnrer un composant du menu Atelier
- Composant.
Slectionnez les lments intgrer : cochez tout sauf les 2 fen-
tres cres dans le chapitre prcdent.
Slectionnez les lments accessibles : fnIntHeureMondiale
Le composant est gnr.
Importation et utilisation du composant
Crez un nouveau projet sans analyse.
Slectionnez loption Importer un composant partir dun
fichier du menu Atelier Composant.
Crez une fentre vierge.
Crez un champ fentre interne avec la fentre interne du compo-
sant (Menu Insertion -spcial-champ fentre interne).
Tapez le code suivant dans le code dinitialisation de la fentre :
// Code dinitialisation de la fentre
FentreInterne1.ChangeVille(Paris)
Testez la fentre.
Pour plus de dtails sur ces oprations, reportez-vous
larticle Fentre Internes : intgrer WDOptimiseur direc-
tement dans une application WinDev de la LST numro
60.
Utilisation des composants et
des fentres internes
COMPOSANTS
Tour de France Technique PC SOFT - Juin 2005 - page 60
Vos Notes
(C) PC SOFT - http://www.pcsoft.fr
Vous voulez fournir vos clients la possibilit dintgrer
dans leur application une confirmation de prise de RDV
et cela le plus simplement possible? Que cette appli-
cation soit une application Windows, Mobile ou un site
internet ou Intranet.
Par lapplication Windows, la confirmation se fera par
lenvoi dun fax.
Par lapplication Mobile, la confirmation se fera grce
lenvoi dun SMS.
Par Internet, la confirmation sera un fichier PDF.
Exemple
Ouvrir le projet WD Confirmation RDV (voir le kouglof).
Ouvrir la procdure globale EnvoieConfirmation de la collection
pConfirmationRDV.
Pour dfinir les diffrents modes denvoi selon la plate-forme cible
de lapplication, nous utilisons des codes-cibles conditionnels.
Il suffit ensuite de dfinir les plate-formes cibles (ici WinDev, WinDev
mobile et WebDev) et de coder les diffrents modes de confirmation
(envoi pdf, fax ou mail) selon la cible.
Composant multi-cibles
Il reste rgler la diffrence dIHM entre ces trois plate-formes
cibles : sous Windows : une fentre Windows, sous Mobile : une fen-
tre adapte un support mobile, sous navigateur : une page Web.
Pour cela :
Crer un projet sous WinDev Mobile pour crer la fentre adapte
un Pocket PC ou un Smartphone.
Crer un projet WebDev pour crer la page adapte pour le web.
Dans cet exemple, il est possible dutiliser les projets WW_
ConfirmationRDV et Pocket ConfirmationRDV en partageant la
collection de procdures, les tats et lanalyse.
Il suffit ensuite de dfinir le projet WinDev comme tant un projet
multi-produits en rfrenant le projet WebDev et le projet WinDev
Mobile dans loption Description du projet du menu Projet.
Dans longlet Multi-produits :
Spcifier le chemin du projet WebDev
Spcifier le chemin du projet WinDev Mobile
Ceci nous permet alors de crer un composant contenant la fois
des pages web, des fentres pour application windows et des fen-
tres pour support mobile.
A noter que lors de la gnration du composant, une couleur indique
le type dlment selon son produit (WinDev, WebDev ou WinDev
Mobile).
Composant Multi-produits et
code cible conditionnel
MULTI-PRODUITS
Tour de France Technique PC SOFT - Juin 2005 - page 61
Vos Notes
(C) PC SOFT - http://www.pcsoft.fr
Gestion de la compatibilit
Si la modification du composant touche la syntaxe dappel des
fonctions du composant, par exemple le renommage dune fentre,
ajout/suppression dun paramtre dune procdure, la recompila-
tion des projets utilisant ce composant est ncessaire.
La modification de la syntaxe dappel dun composant est fortement
dconseille.
Mais si vous avez le faire, pensez changer le n de version mini-
male du composant autoris fonctionner.
Vous viter ainsi un message derreur de lapplication utilisatrice du
composant.
Mise jour chaud
Cest la possibilit davoir ct de lexcutable de lapplication,
un fichier de configuration (fichier .INI) contenant lemplacement du
composant sur le rseau.
Ce fichier de configuration doit obligatoirement porter le nom du
composant et contenir :
[Gnral]
Localisation=<Rpertoire du composant>
Lintrt cest quoi ?
En cas dvolution du composant, il suffit de mettre le composant
(fichier .wdk) jour une seule fois sur le rseau !
Et automatiquement, grce au .ini de localisation, toutes les appli-
cations utiliseront le nouveau composant.
Mise jour chaud,
importation, compatibilit...
COMPOSANT MTIER
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 62 (C) PC SOFT - www.pcsoft.fr
Thme 7 : Communication
Comment depuis une application WinDev analyser et
rcuprer des informations sur une page internet ?
Il faut rcuprer le code source de la page (code HTML)
et parser cette page afin de rcuprer les informa-
tions souhaites.
Cet exemple utilise le projet WD Pilotage et analyse HTML. Ce
projet est accessible depuis le kouglof.
Pour rcuprer une page, nous avons deux possibilits :
Utiliser lActiveX de Internet Explorer (pour cela une classe est
disponible sur le CD livr ainsi que dans lexemple WD Pilotage de IE
livr en standard avec WinDev).
Utiliser la fonction HTTPRequte pour rcuprer directement les
sources de la page internet.
Dans cet exemple, nous utiliserons lActiveX dInternet Explorer
ainsi que la classe CIExplore. Cette classe permet dafficher les
informations dune page, den rcuprer le contenu, de modifier le
contenu dun champ de la page, de valider une page (submit), etc
Remplir les champs dune page HTML
Le code correspondant dans lexemple est disponible dans la proc-
dure Remplissage.
Dans un premier temps, il faut rcuprer les noms des diffrents
champs du formulaire afin de les adresser depuis notre application.
1. Rcuprer le nombre dobjets dans la page :
CliExplore :nObjetsFormulaire()
2. Parcourir tous les objets pour rcuprer le nom et la valeur des
champs :
CliExplore :bSelectionneObjet(i)
CliExplore :m_sNom
3. Ajouter le nom et la valeur du champ dans la table.
Affecter une valeur un champ dune page HTML
1. Recherche le champ que lon souhaite modifier :
bRechercheChampParNom
2. Affecter sa valeur :
SetValeur
Rcupration automatique
dinformations sur un site
Internet
RCUPRATION HTML
Tour de France Technique PC SOFT - Juin 2005 - page 63
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Rcuprer le rsultat dune recherche
Une fois les champs remplis, il suffit de valider le formulaire de la
page :
CliExplore:bSubmit
Ensuite, attendre que la page soit compltement charge pour rcu-
prer la source de la page (code HTML) :
CliExplore:sSource()
Il faut alors rechercher la position dun dlimiteur fixe. Ce dlimi-
teur dpend entirement de la page HTML analyse. Vous devez bien
entendu le trouver avant de procder lanalyse du code source.
Parser une page HTML revient analyser une grosse chane de carac-
tres.
Vous utilisez les fonctions Position, ExtraitChaine, les oprateurs
crochets...
Pour utiliser directement cet exemple, il faut rendre la page
PageRecherche de lexemple WW_AnalyseHTML accessible
depuis un client HTTP.
Pour cela, il suffit douvrir le projet WW_AnalyseHTML avec
WebDev et de faire au moins un test de la page PageRecherche
afin de crer lalias correspondant.
Tour de France Technique PC SOFT - Juin 2005 - page 64
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cet exemple utilise la fentre fnMailing du projet WD Emailing
XML et prsente comment envoyer un mailing e-mail personnalis
avec WinDev Ce projet est accessible depuis le kouglof.
Dans cet exemple, les donnes sont utilises au format XML grce
aux ordres hLitxx. Cest laccs natif XML.
Ces donnes peuvent bien entendu tre au format Hyper File ou
autre : le principe reste le mme.
Notre but : Crer un mailing e-mail personnalis. On souhaite pou-
voir envoyer un mail au format HTML. Si le client na pas dadresse
e-mail, on lui envoie un fax (voir chapitre suivant).
Le-mail envoy est ralis sous forme dun tat. Voila, pour le prin-
cipe : dtaillons tout de suite le code du bouton Lancer.
Les tapes sont alors les suivantes :
1. Ouvrir une session SMTP Cette session SMTP va permettre den-
voyer un mail pour les clients qui possdent une adresse e-mail. Vous
remarquez le paramtre supplmentaire qui est le mot de passe. Si
vous prcisez ce mot de passe, la session SMTP sera ouverte de faon
Authentifie.
2. Parcourir le fichier de donnes (au format XML dans lexemple)
avec les ordres Hxx classiques.
3. Spcifier ensuite ladresse e-mail du client dans la structure
Email du W-Langage. Si celle-ci est valide, on spcifie que ltat
sera imprim au format HTML.
4. Gnrer ltat correspondant au mailing sous forme dune page
HTML (iDestination(iHTMLGnrique)).
5. Modifier si ncessaire le chemin des images dans le fichier HTML
gnre (utilisation dun identifiant).
sCID=cid:wdcid+nImage
Email.IdentifiantAttache[Email.NbAttache] = sCID
6. Associer le fichier HTML et les images associes en tant que pice
jointe le-mail.
7. Envoyer le-mail.
8. Fermer la connexion avec le serveur SMTP.
Vous le remarquez dans lexemple, les envois de mail sont effectus
par paquets de 20. Pourquoi ? Tout simplement parce que cela vite
de surcharger le serveur SMTP et permet en cas derreur de savoir
20 e-mails prs o le mailing en tait.
Vous pouvez alors :
Soit vous renvoyez ces e-mails (avec risque denvoyer en double
et aussi dtre trait en tant que spammeur).
Soit vous ne renvoyez pas ces e-mails, et dans le pire des cas, vous
perdez 20 mails.
Consultez la LST 54 pour plus de dtails.
Raliser un mailing e-mail
personnalis
MAILING E-MAIL
Tour de France Technique PC SOFT - Juin 2005 - page 65
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cet exemple utilise la fentre fnMailing du projet WD Emailing
XML et prsente comment envoyer un mailing personnalis par fax
avec WinDev Ce projet est accessible depuis le kouglof.
Reportez-vous au pralable au chapitre prcdent pour la prsenta-
tion de lexemple et du fonctionnement.
Les tapes de ralisation du mailing par fax sont les suivantes :
1. Connexion au serveur de fax grce la fonction FaxConnecte.
2. Parcours des fichiers de donnes (ici au format XML) avec les
ordres Hxx classiques.
3. Gnration de ltat correspondant au mailing sous forme dun
fax (iDestination(ifax)) en indiquant directement le numro de
tlphone du destinataire. Le fax est automatiquement envoy
4. Fermeture de la connexion avec le serveur de fax.
Consultez la LST 54 pour plus de dtails.
Raliser un mailing fax
personnalis
MAILING FAX
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 66 (C) PC SOFT - www.pcsoft.fr
Thme 8 : La scurit
Cet exemple utilise le projet WWExempleSSL. Ce projet est acces-
sible depuis le kouglof.
Quest-ce quun Certifcat de scurit SSL ?
Un certificat de scurit SSL (Secure Socket Layer) est un fichier
unique et numrique permettant dauthentifier et de crypter toute
information circulant sur Internet.
Comment obtenir un Certifcat de scurit SSL ?
En lachetant auprs de socits spcialises (appeles Autorit de
certification) telles que Verisign, GoTrust
Un certificat SSL cote entre 60 et 1150 par an (tarif indicatif,
la date dimpression. Merci de vrifier ces tarifs directement avec
les prestataires).
Le prix dpend du niveau de cryptage, de la garantie apporte et de
lutilisation de ce certificat.
Que se passe-t-il techniquement ?
Sans certificat, les trames qui circulent sur le rseau ne sont pas
cryptes.
Cest--dire que si un pirate scanne les trames, il peut voir en clair
les informations que vous recevez et celles que vous envoyez.
Grce au certificat SSL, ces trames sont dsormais cryptes et ne
peuvent donc plus tre interprtes par un pirate.
Le cryptage peut se faire sur une cl de 40 128 octets.
Pour une cl sur 128 octets, il y a donc 2 puissance 128 combinaisons
possibles.
Cest--dire 1 bonne combinaison sur 2 puissance 128.
Avec la puissance des ordinateurs actuels, il faudrait 10 fois la dure
de lunivers pour trouver la bonne combinaison.
Comment savoir si un site possde un Certifcat de
scurit SSL ?
Lorsque les pages dun site sont protges, lurl commence par
https, le S signifiant Scuris et un cadenas saffiche dans la barre
des tches du navigateur.
Comment installer un Certifcat de scurit SSL ?
Le certificat sinstalle au niveau dun serveur web (apache, IIS).
Par exemple, pour un serveur IIS :
Dans les proprits de lordinateur, choisir loption gestion de
lordinateur.
Puis Services Internet et Proprits.
Dans longlet scurit de rpertoires, cliquez sur certificat de
Traitement scuris avec
WebDev et SSL
WEBDEV ET SSL
Tour de France Technique PC SOFT - Juin 2005 - page 67
Vos Notes
(C) PC SOFT - www.pcsoft.fr
serveur.
Un assistant vous guide alors pour installer le certificat que vous
avez achet.
Comment grer ce certifcat SSL cest--dire com-
ment affcher une page scurise avec WebDev ?
Prenons par exemple le projet de site dannonces en ligne.
Regardons la page mon compte.
Cette page permet de saisir le pseudo et le mot de passe.
Cette page nest pas scurise car dans ladresse de lURL il y a HTTP
et non HTTPS.
De plus le petit cadenas napparat pas dans la barre de messages
du navigateur.
Cela signifie donc que le pseudo et le mot de passe vont tre trans-
mis au serveur en clair, non crypts et donc interceptables par un
pirate.
Le traitement en W-langage pour grer cette scurit SSL va tre
ajout:
Sur la page Pageaccueil, effectuer un clic droit sur le bouton
mon compte et demander ldition du code.
Ajouter un appel la fonction SSLActive (code navigateur) lors
de la demande daffichage de la page de saisie du pseudo et du mot
de passe.
SSLActive(Vrai)
Lorsque linternaute va cliquer sur le bouton mon compte, la page
va passer en mode scuris et donc les informations envoyes au
serveur seront cryptes.
Tour de France Technique PC SOFT - Juin 2005 - page 68
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Consultez la documentation du composant PayBox livr en standard
avec WinDev ou les articles de la LST 50.
Implmenter un paiement
par Carte bleue dans un site
WebDev
PAIEMENT SCURIS
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 69 (C) PC SOFT - www.pcsoft.fr
Thme 9 : Internet / Intranet
Nous allons ici prciser quelques points sur linstal-
lation du serveur dapplication WebDev avec IIS sur
Windows.
Installation
Pour linstallation sur Windows du serveur dapplication WebDev, il
suffit de suivre les diffrents plans de lassistant en indiquant prin-
cipalement :
Le rpertoire dinstallation du serveur dapplication,
Le serveur Web utilis,
Le mode de fonctionnement (excutable ou service).
Cration des comptes
Pour crer ou grer les comptes utilisateur, il est possible dutiliser
soit :
ladministrateur WebDev
ladministrateur distant accessible par une URL de la forme :
http://nom-de-la-machine/WD90AWP/WD90AWP.EXE/CONNECT/
WDAdministrateurDistant.
Depuis ladministrateur WebDev, les oprations sont les suivantes :
Cliquer sur le bouton Comptes WebDev
Slectionner loption Crer pour crer un utilisateur
Slectionner un rpertoire FTP pour les installations distance (un
compte FTP doit exister et correspondre ce rpertoire, voir plus
bas).
Installer un serveur
dapplication WebDev sur
Windows
INSTALLATION
Tour de France Technique PC SOFT - Juin 2005 - page 70
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Slectionner un rpertoire de base pour les sites (ce rpertoire
sera accessible depuis Internet ou votre Intranet)
Slectionner un rpertoire pour les fichiers de donnes
Confguration de IIS (droits et scurit)
Lancer inetmgr ou loption Services Internet (IIS) dans les
outils dadministration de Windows.
Crer un rpertoire virtuel sur le serveur FTP.
Dans lassistant, renseigner :
Le nom de lalias
Le chemin du rpertoire FTP
Les permissions daccs (Lecture et criture)
Crer un utilisateur local qui a le mme nom que lalias FTP.
Editer la base de registres et donner les droits dcriture et lec-
ture lutilisateur prcdemment cr sur HKEY_LOCAL_MACHINE\
SOFTWARE\PC SOFT\WEBDEV\9.0\Applications. Cette opration per-
met au serveur dapplication dajouter le site dploy dans la base
de registres.
Complment de confguration sur IIS
Si vous souhaitez que vos sites accdent des ressources partages
sur votre rseau (imprimante, fichiers, etc.) vous devez reconfigurer
IIS.
Pour cela :
Ouvrez IIS.
Editez les proprits du site web (Clic-droit..Proprits).
Slectionnez longlet Scurit de rpertoire.
Cliquez sur Modifier.
Slectionnez un compte de votre domaine qui a les droits ncessai-
res pour accder aux ressources dsires de votre rseau.
Tour de France Technique PC SOFT - Juin 2005 - page 71
Vos Notes
(C) PC SOFT - www.pcsoft.fr
WebDev gre les pages dynamiques avec ou sans ges-
tion automatique du contexte :
avec gestion automatique est le mode par dfaut.
sans contexte automatique appel mode AWP.
Cet exemple utilise le projet WW_UtilisationAWP. Ce projet est
accessible depuis le kouglof.
Les 2 modes (standard et AWP) peuvent tres utiliss conjointement
dans un mme site WebDev. Lintrt majeur du mode AWP est un
meilleur rfrencement des pages du site auprs des moteurs de
recherche : chaque page est adressable directement.
La cration dune page AWP est en tout point identique la cration
dune page dynamique normale.
La diffrence rside dans le mode de gnration de la page et dans
la programmation.
Il suffit de cocher loption gnration en mode AWP dans les
options de gnration HTML dans la fentre de description de la
page. La page est alors utilisable en mode AWP.
Par exemple, dans le projet WW_UtilisationAWP, dans la proc-
dure globale HotelDiscount, le code lienhotel+i,inchmap)..URL=
PageDtail.awp. permet le passage de paramtre dune page
lautre et ce directement via ladresse URL.
Par exemple dans le code du lien Htel discount, lURL contient
lidentifiant de lhtel choisi.
Testez le site (Go), cliquez sur le lien htel discount : sous le navi-
gateur, on retrouve dans ladresse URL, lidentifiant de lhtel, dans
lexemple le n1563.
Il est alors possible de :
Copier lURL complte depuis le navigateur.
Lancer un nouveau navigateur et faire un coller dans lURL.
Dans 2 jours, dans 3 semaines, dans 2 mois, ou depuis un autre navi-
gateur, il est possible de rafficher la mme page avec les mmes
informations.
Dans le code de la PageDtail, le code source de la page qui
affiche le dtail de lhtel rcupre lidentifiant de lhtel qui se
trouve dans lURL : niHotel=PageParemetre(iddehotel).
Lidentifiant de lhtel permettra entre autre de reconstruire la
page dynamiquement en intgrant les informations de lhtel.
Reportez-vous la LST 57 pour plus de dtails sur le mode AWP.
AWP ? Ca change quoi
concrtement ?
Quand lutiliser ?
MODE AWP
Tour de France Technique PC SOFT - Juin 2005 - page 72
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cet exemple utilise le projet WW_VoituresOccasions. Ce projet est
accessible depuis le kouglof.
Comment crer un site PHP utilisant une base MySQL ?
Pour crer un site PHP, il suffit de spcifier dans la description du
projet que cest un projet PHP.
Le projet WW_VoituresOccasions correspond un site en PHP.
La cration des pages se fait de faon classique.
La seule diffrence majeure concerne laspect programmation de
laccs la Base de donnes.
Le mode de programmation se fait par les ordres SQL.
La base de donnes la plus utilise en PHP est MySQL.
Par dfaut lanalyse associe un projet PHP est en MySQL.
Vous pouvez bien entendu utiliser une base Hyper File.
Manipulation de la base de donnes
Pour manipuler la base de donnes, il faut tablir la connexion
Dans cet exemple, la connexion est ralise dans la procdure glo-
bale gConnexion.
Lordre SQLConnecte permet de se connecter la base de donnes.
Dtaillons les paramtres :
La source de donnes (la machine serveur)
Le nom de lutilisateur
Son mot de passe
Le nom de la base de donnes
Une fois la connexion tablie, voyons comment accder au don-
nes.
La page Page_Recherche contient le code de remplissage de la
zone rpte : on excute une requte sous forme SQL.
Cette requte slectionne les produits dont le prix est compris entre
2 paramtres.
Le code qui remplit la zone rpte avec le rsultat de la requte
est dfini dans la procdure gremplitZR, et est de la forme :
TantQue SQLAvance() = 0
La fonction SQLAvance renvoie 0 tant quil y a des enregistrements
lire.
Il est galement possible de crer la slection via lditeur de requ-
tes et dexcuter cette requte par la fonction SQLexecWDR.
Pour dployer votre site vers votre hbergeur, vous pouvez utiliser
loutil WDDploie ou un simple Client FTP.
Crer un site PHP et le
dployer chez un hbergeur
SITE PHP
Tour de France Technique PC SOFT - Juin 2005 - page 73
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Voici quelques conseils pour bien russir une conversion dune appli-
cation WinDev en un site WebDev.
1 Partager les lments
Vous pouvez partager des lments entre un projet WinDev et un
projet WebDev :
Lanalyse
Les tats
Les requtes
Les collections de procdures, les classes.
2 Utiliser les collections de procdures
Utilisez au maximum les collections de procdures.
Cela vite de dupliquer du code si le traitement est identique en
WinDev et en WebDev.
Pour les traitements qui ont quelques diffrences, utilisez le Code
Cible Conditionnel.
3 Utiliser une Approche n-Tiers
Le dveloppement n-Tiers permet de rpartir les traitements.
Utilisez les procdures afin de dcouper votre code.
Dans lidal, la fentre ou page ne devrait contenir que :
du code de validation des champs (contrles de saisie),
des traitements relatifs linterface (rendre inactif un champ
selon un slecteur)
des appels de procdures contenant les traitements (accs aux
donnes, traitements, etc..)
4 Utiliser des Services Web (WebServices)
Vous pouvez galement fournir des Services Web afin de rendre
accessibles vos donnes lextrieur (ce quon appelle lEDI :
lchange de donnes informatises).
Cela permet notamment vos clients, fournisseurs, partenaires de
rcuprer des informations qui concernent leur commande en cours
par exemple.
Porter une application WinDev
vers WebDev
PORTAGE DAPPLICATION
Tour de France Technique PC SOFT - Juin 2005 - page 74
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Les sites raliss avec WebDev 9 peuvent tre dploys
sur une distribution Windows ou Linux. Nous avons vu
prcdemment comment installer et configurer un
moteur WebDev sur une plate-forme Windows, nous
allons ici voir les quelques spcificits du dploiement
sur Linux.
Pour cet exemple, nous allons utiliser une configuration classique :
distribution linux Mandrake avec un serveur ftp et un serveur Web
Apache.
Installation du serveur dapplication WebDev
Pour installer un serveur dapplication WebDev sur la configuration
Linux dfinie prcdemment, les tapes sont les suivantes :
Copier les fichiers dinstallation correspondant au serveur dappli-
cation de WebDev sur la machine linux.
Ouvrir un terminal en tant que root.
Rendre linstallation excutable et lancer la procdure dinstalla-
tion :
chmod +x WebDev_Install_Test
./WebDev_Install_Test
Accepter la licence.
Vrifier que les pr-conditions sont installs sur le systme.
Choisir le chemin dinstallation, ici on conserve le choix par
dfaut.
Prciser que le fichier de configuration est /etc/httpd/conf/
commonhttpd.conf et que la commande de rechargement de la
configuration est /etc/init.d/httpd reload.
Les fichiers spcifis ici dpendent de la distribution linux utilise.
Terminer lassistant.
Linstallation est maintenant termine, faire OK puis Terminer.
Installer un serveur
dapplication WebDev sur
Linux
INSTALLATION LINUX
Tour de France Technique PC SOFT - Juin 2005 - page 75
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cration du compte utilisateur systme
Voici un exemple de cration dun compte utilisateur systme :
demolinux.
Le serveur dapplication WebDev sera associ ce compte utilisateur
pour permettre de dfinir les droits daccs aux fichiers du systme.
Les oprations sont les suivantes :
Crer le compte :
adduser demolinux
Associer un mot de passe cet utilisateur :
passwd demolinux
Changer le groupe de lutilisateur demolinux :
usermod -g webdev9 demolinux
Changer dutilisateur courant pour se connecter en tant quutilisa-
teur demolinux :
su - demolinux
Crer les rpertoires utiliss par les sites WebDev :
Un rpertoire va contenir les donnes des sites (accessible
par la fonction fRepDonnes)
Un rpertoire va contenir les pages et les images du sites
(accessible par la fonction fRepWeb)
Un rpertoire accessible par ftp pour permettre la mise
jour des sites distance :
mkdir sites datas
Associer le groupe webdev 9 ces deux rpertoires :
chgrp webdev9 . sites datas
Donner les droits en criture au groupe webdev9 sur ces deux
rpertoires :
chmod g+wx . sites datas
Cest termin. Il est ensuite possible de paramtrer le serveur dap-
plication WebDev (sites, utilisateurs, nombre de connexion, etc...)
grce ladminstrateur distant.
Ouvrir un navigateur sur ladresse :
http://nom-de-la-machine/WD90AWP/WD90AWP/CONNECT/
WDAdministrateurDistant90
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 76 (C) PC SOFT - www.pcsoft.fr
Thme 10 : La Mobilit
Voici quelques conseils pour bien russir une conversion dune appli-
cation WinDev en une application WinDev Mobile.
1 Partager
Vous pouvez partager des lments entre un projet WinDev et un
projet WebDev :
Lanalyse
Les tats
Les requtes
Les collections de procdures, les classes
2 Utiliser les collections de procdures
Utilisez au maximum les collections de procdures.
Cela vite de dupliquer du code si le traitement est identique en
WinDev et en WebDev.
Pour les traitements qui ont quelques diffrences, utilisez le Code
Cible Conditionnel.
Porter une application WinDev
sur un Pocket PC
PORTAGE DAPPLICATION
Tour de France Technique PC SOFT - Juin 2005 - page 77
Vos Notes
(C) PC SOFT - http://www.pcsoft.fr
Distribution classique avec installation depuis un
PC (utilisation de ActiveSync)
Cet exemple utilise le projet Pocket Notes. Ce projet est accessi-
ble depuis le kouglof.
Premire installation
1. Ouvrir le projet pocket notes livr avec WinDev Mobile.
2. Crer une version client (menu Atelier..Crer la procdure dins-
tallation).
3. Valider lassistant de cration dexcutable.
4. Valider lassistant de cration dinstallation.
Linstallation est maintenant cre .
Test de linstallation
1. Sur la fentre de fin de cration dinstallation : faire Tester.
2. Pendant linstallation, rpondre Oui ou Suivant toutes les
questions/plans.
3. Lancer linstallation sur le pocket.
4. Faire un dessin dns lapplication sur le Pocket PC et lenregistrer
en utilisant la disquette en bas gauche, lappeler demo.
5. Quitter le logiciel avec la croix de la fentre systme (en haut
droite de lcran).
Seconde installation avec modifcation des donnes
1. Dans WinDev Mobile, ouvrir lanalyse
2. Ouvrir la description du fichier Note et changer la rubrique
Nom : dfinir en tant que non cl et passer en son type en
mmo texte.
3. Gnrer lanalyse (bouton drapeau dans lditeur). Lditeur per-
met de faire une modification automatique ce moment, nous ne le
faisons pas pour simuler le poste client.
4. Cration dune version client (menu Atelier..Crer la procdure
dinstallation).
5. Valider lassistant de cration dexcutable.
6. Valider lassistant de cration dinstallation.
Test de linstallation
1. Sur la fentre de fin de cration dinstallation : faire Tester.
2. Pendant linstallation, rpondre Oui ou Suivant toute les
questions/plans.
Cette fois-ci, une modification automatique des donnes est effec-
tue pendant linstallation.
3. Lancer linstallation sur le pocket.
Dploiement dune application
Mobile (Internet ou par mdia
de type CD-ROM)
DPLOIEMENT
Tour de France Technique PC SOFT - Juin 2005 - page 78
Vos Notes
(C) PC SOFT - http://www.pcsoft.fr
4. Dans lapplication sur le Pocket PC, ouvrir le dessin prcdem-
ment cr pour montrer que la modification automatique a bien
fonctionn : cliquer sur le dossier pour ouvrir, et prendre le dessin
nomm dmo.
Distribution dune application autonome sur
Internet (directement utilisable partir dun pocket
sans passer par un PC)
Afin de distribuer une application mobile sans passer par une instal-
lation ncessitant un poste Windows (distribution via une SDCard,
tlchargement via internet directement du pocket PC), on doit se
passer de la cration dune procdure dinstallation.
Exemple pour distribution via SDCard :
1. Gnrer un excutable.
2. Copier lensemble du rpertoire Exe sur la SDCard (sans le
framework).
3. Mettre la SDCard dans un pocket.
4. Le lancement de lexcutable va tlcharger et installer automa-
tiquement le framework et la base de registres de WinDev Mobile.
Exemple pour distribution par internet (si on veut que lutilisateur
nait tlcharger quun excutable, on ne peut pas associer de
donnes en dehors de lexcutable) :
1. Gnrer un excutable.
2. Publier sur un site internet le fichier .exe.
3. Tlcharger le fichier .exe partir du pocket.
4. Le lancement de lexcutable va tlcharger et installer automa-
tiquement le framework et la base de registres de WinDev Mobile.
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 79 (C) PC SOFT - www.pcsoft.fr
Thme 11 : Autres technologies
Le projet WD AutreTechnologies est un exemple WinDev qui utilise
un assemblage .Net. Ce projet est accessible depuis le kouglof.
Cet exemple WinDev liste les services installs sur le poste avec cet
assemblage .Net. Un service est un processus qui tourne en tche de
fond et qui effectue diffrents traitements.
Comment a-t-on utilis cet assemblage .Net dans
notre exemple ?
Pour utiliser un assemblage .NET dans le projet, la premire tape
est dimporter lassemblage dans le projet. Cette opration seffec-
tue grce loption Utiliser un assemblage dans ce projet du menu
Atelier.. .Net de WinDev.
Lassistant propose la liste des assemblages .NET installs sur le
poste. Il suffit de choisir lassemblage .NET utiliser.
Dans notre exemple, les assemblages ont dj t imports : cest
System.ServiceProcess que lon visualise dans le volet WinDev.
.NET est un langage orient objet : on retrouve donc les mthodes et
membres de lassemblage .NET dans le volet de WinDev.
Reportez-vous aux LST 57 et 60 pour plus de dtails sur lutilisation
dassemblages .NET spcifiques.
Utiliser un traitement .Net
depuis une application WinDev
.NET : UTILISATION
Tour de France Technique PC SOFT - Juin 2005 - page 80
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Si vous devez gnrer un assemblage .NET, vous pouvez le faire avec
WinDev en codant en W-Langage.
Cet exemple utilise le projet WD AutreTechnologies. Ce projet est
accessible depuis le kouglof.
Quest-ce qui caractrise un assemblage .NET ?
.NET est un langage orient objet, donc il a besoin de points den-
tres.
Ces points en WinDev, ce sont des collections de procdures ou des
classes.
Par exemple, il est possible douvrir une fentre WinDev depuis un
assemblage, il suffit de prvoir une fonction WinDev qui va effectuer
louverture de la fentre.
Cette fonction pourra tre soit dans une collection de procdures
soit dans une classe.
Lexemple WD AutreTechnologies contient une collection
de procdures pDivers. Dans cette collection, la procdure
OuvreFenAssemblage ouvre la fentre WinDev.
Gnration de lassemblage
La gnration dun assemblage .Net seffectue par loption Gnrer
une DLL dassemblage .NET du menu ATELIER .. .NET, lassistant
permet alors de :
choisir les lments qui doivent tre exports dans cet assem-
blage, ici la fentre, le projet et la collection de procdures.
choisir les classes et collections de procdures qui seront accessi-
bles depuis les autres langages.
Les lments cochs vont constituer les points dentres de lassem-
blage.
Cest termin, lassemblage .NET est gnr : cest le fichier
UtiliseDOTNET.DLL.
Publier un traitement .Net
ralis depuis un projet
WinDev
.NET : PUBLIER
Tour de France Technique PC SOFT - Juin 2005 - page 81
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Deux mthodes permettent de crer une application Java en
WinDev :
Utiliser le RAD Java.
Gnrer une application Java de toute pice.
Cet exemple utilise le projet WDEtalonJava. Ce projet est acces-
sible depuis le kouglof.
Pour quun projet soit dfini comme gnrant du code Java, il suffit
de cocher la case Java dans la fentre de description du projet.
Lexemple WDEtalonJava est une messagerie qui utilise un fichier
Hyper File, le fichier Message.
Accs la base de donnes
En Java, laccs aux donnes seffectue uniquement avec les ordres
SQL (SQLConnecte, SQLExec).
Pour rcuprer les messages sans accus de rception, les tapes
sont les suivantes :
1. Dabord il faut se connecter la base de donnes :
SQLConnecte(EtalonJava.wdd,,,...
,Hyper File)
Lordre, cest SQLconnecte avec comme paramtres :
Le nom de lanalyse.
Le type de la base de donnes: ici Hyper File.
Il est possible de manipuler toute autre base de donnes (Oracle,
MySQL ) du moment quil existe un pilote JDBC.
Pour une base Hyper File, sous windows et linux, laccs est natif.
Par contre pour les autres plates-formes (Mac, Solaris par exemple)
vous devez utiliser le serveur RMI livr avec WinDev.
Un serveur RMI cest quoi ?
Le RMI (Remote Method Invocation) est un mcanisme permettant
dutiliser des objets distribus en Java.
Son but est de permettre lappel, lexcution et le renvoi du rsultat
dune mthode excute dans une machine virtuelle Java diffrente
de celle de lobjet lappelant. Cette machine virtuelle peut tre sur
une machine diffrente pourvu quelle soit accessible par le rseau.
La machine sur laquelle sexcute la mthode distante est appele
serveur.
Crer une application Java
depuis un projet WinDev
JAVA
Tour de France Technique PC SOFT - Juin 2005 - page 82
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Dans notre exemple, la connexion est ralise sur la base de donnes
Hyper File Classic.
2. Crer la requte :
sRequte est une chaine = [
SELECT EXPEDITEUR, DATE, HEURE, SUJET, CORPS FROM
MESSAGES
WHERE AR=%1
AND DESTINATAIRES=%2
]
// Construction en fonction des paramtres
sRequte = ChaineConstruit(sRequte,.....)
Si vous ne parlez pas couramment SQL, vous pouvez simplement
gnrer la requte grce lditeur de requtes de WinDev et
ensuite rcuprer directement le code SQL de la requte.
Pour aller plus vite, dans lexemple WD EtalonJava, la requte de
remplissage de la table nest pas paramtrable
sNomRequete est une chane = RequeteAffichage
sRequte est une chane = [
SELECT EXPEDITEUR, DATE, HEURE, SUJET, CORPS FROM
MESSAGES
WHERE AR=0
AND DESTINATAIRES=Marc
]
3. Excuter la requte
Lexcution seffectue laide de la fonction SQLExec :
SQLExec(sRequete, sNomRrequete)
4. Remplir la table des messages grce la fonction SQLTable :
SQLTable(sNomRequete,TABLE_MESSAGE)
Lordre des rubriques dans la requte doit correspondre lordre des
colonnes dans la table.
5. Afficher le corps du message slectionn dans le champ de saisie
prvu en dessous.
Pour cela, dans le code Slection dune ligne de la table, affichez
le corps du message dans la zone de texte.
TXT_CORPS = TABLE_MESSAGE.Corps[TABLE_MESSAGE]
Gnration de lexcutable Java
Un excutable JAVA est une archive .JAR.
Pour gnrer un excutable .Jar, il suffit dutiliser loption Gnrer
larchive JAR du menu Atelier.
WinDev compile lapplication et gnre le point Jar.
Tour de France Technique PC SOFT - Juin 2005 - page 83
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Pour expliquer la cration dun Service Web, nous uti-
liserons un projet qui permet de vrifier la solvabilit
dun compte client.
Cet exemple utilise le projet WD Service Web. Ce projet est acces-
sible depuis le kouglof.
Gnration du Service Web
Ouvrir le projet WD Service Web, il contient une collection de pro-
cdures contenant les procdures du futur Service Web.
Parcourir la procdure VerifieCompte pour visualiser rapidement
le code.
Slectionner loption Gnrer un Service Web partir de ce pro-
jet du menu Atelier..Service Web XML.
Les diffrents plans de lassistant permettent de spcifier :
Le nom du fichier XML qui sera gnr.
Ladresse du serveur o le Service Web sera dploy.
Les lments intgrer dans le Service Web.
Le nom de la bibilothque (WDL) qui va tre gnre.
Une fois le service Web gnr, il faut le dployer (Partie non illus-
tre ici, reportez vous laide en ligne) sur la machine serveur et
diffuser le wsdl aux clients. Cette installation seffectue grce aux
outils WDSoapInst et WDSoapSetup disponibles dans le rper-
toire Programmes de WinDev.
Reportez-vous la LST 52 pour plus de dtails sur le dploiement
dun service Web.
Utilisation du Web Service
Pour intgrer le Service Web dans nimporte quel projet WinDev ou
WebDev, il suffit de :
Crer un projet.
Crer une fentre vierge.
Slectionner loption Importer du menu Atelier..Service Web
XML.
Dans cet exemple, saisissez le chemin du fichier XML prcdemment
gnr et install.
Nous avons la possibilit dimporter le service web dans une collec-
tion de procdures ou une classe. Ici, nous vous conseillons dutiliser
une collection de procdures.
Une fois le Service Web import, une collection de procdures est
cre. Elle contient les procdures permettant dutiliser le Service
Web.
Crer un Service Web daccs
aux donnes
SERVICE WEB
Tour de France Technique PC SOFT - Juin 2005 - page 84
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Il suffit alors dinitialiser les paramtres de la structure et dappeler
les procdures dcrites dans le Service Web.
Par exemple :
// Dfinition de la structure dappel
Compte est un WD_Service_Web.STVerifieCompte
Compte:m_sNumeroCompte = XXXX
Compte:m_sNomTitulaire = ALBERT Jean
Compte:m_nMontantTransaction=152
// Vrification du compte
VerifieCompte(Compte)
Reportez-vous aux LST 58 et 60 pour des exemples dutilisation des
Services Web de Google et de ViaMichelin.
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 85 (C) PC SOFT - www.pcsoft.fr
Thme 12 : Les tats
Un tat crois permet davoir un tableau 2 entres.
Par exemple avoir une synthse du nombre de ventes
par produit et par an.
Cet exemple utilise le projet WD Etats. Ce projet est accessible
depuis le kouglof.
Pour crer un tat crois, les tapes sont les suivantes :
Crer un nouvel tat de type Tableau crois.
Indiquer les rubriques qui rempliront les libells des colonnes.
Slectionner CommandeDateCommande : Les colonnes corres-
pondront aux annes des commandes.
Slectionner ProduitReference : les libells des produits seront
les lignes du tableau crois.
Slectionner somme LIGNECDEQuantit : le contenu des cellu-
les du tableau sera la somme des quantits vendues par produit.
Il est possible deffectuer des totaux sur les lignes : le total des pro-
duits vendus, toutes annes confondues.
Et sur les colonnes : le total des ventes sur une anne, tous produits
confondus.
Choisir le gabarit, ou charte graphique.
Donner un titre ltat.
Redimensionner les colonnes si ncessaire.
Tester ltat en excution : GO !
Lors du test les annes sont affiches en colonnes, les rfrences
de produits en lignes et dans les cellules la somme des quantits de
chaque produit vendue par anne est affiche.
A droite et en bas les cumuls automatiques.
Pour modifier ltat, par exemple pour avoir le chiffre daffaires en
euros par produit et par an, il suffit de modifier la requte intgre
ltat (Clic droit .. Description de ltat), et par exemple dajou-
ter ou de modifier le calcul sur une rubrique.
Raliser un tat crois
ETATS CROISS
Tour de France Technique PC SOFT - Juin 2005 - page 86
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Cet exemple utilise le projet WD Etats. Ce projet est accessible
depuis le kouglof.
Cration de ltat
Pour raliser une facture, avec lditeur dtats, les principales op-
rations sont les suivantes :
Cration dun nouvel tat de type Tableau.
Association de ltat au fichier LigneCDE avec la rubrique
NumCommande comme rubrique de parcours.
Validation de lutilisation dune borne minimale et dune borne
maximale.
Slection des diffrentes rubriques de ltat : la rfrence du
produit, sa dsignation, son prix unitaire, la quantit commande,
etc...
Dslection de IDLigneCommande, Numcommande,
Livr, Remise et taux TVA.
Slection de la somme sur le prix de vente.
Saisie du titre du document.
Ltat est ralis, il est possible dafficher une facture, par exemple
la facture n6226.
Ajout de nouvelles informations
Nous allons maintenant complter la facture et afficher le nom de la
socit du client. Pour cela :
Agrandir le haut de page
Ajouter les nouvelles rubriques sur la socit du client : nom,
adresse, code postal, ville, etc
Envoi par e-mail au format PDF
Nous allons voir maintenant comment crer un fichier PDF de la fac-
ture et lenvoyer par e-mail.
Cette opration est trs simple :
1. Rediriger limpression de ltat non pas sous forme daperu mais
sous forme dun fichier PDF.
iAperu(iPDFGnrique, c:\temp\fichier.pdf)
2. Crer un e-mail en renseignant la structure Email puis en ajoutant
le PDF prcdemment gnr en pice jointe le-mail.
Crer une facture et lenvoyer
par e-mail au format PDF
FACTURE ET PDF
Tour de France Technique PC SOFT - Juin 2005 - page 87
Vos Notes
(C) PC SOFT - www.pcsoft.fr
WDEtat Utilisateur est un module destin lutilisateur
final dapplications ralises avec WinDev.
Lutilisateur dune application dveloppe avec WinDev
va pouvoir crer ses propres tats imprims, ses requ-
tes ou modifier les tats conus par le dveloppeur :
modifier un logo, changer une position dun libell,
etc
Cration du projet
Pour fonctionner, WDETAT Utilisateur a seulement besoin de certains
lments de votre projet : cest ce quon appelle le projet allg.
Ce projet allg doit tre fourni lutilisateur
Ce projet allg est cr par le menu AtelierWdetat Utilisateur
Crer le projet pour WDEtat Utilisateur.
Ce projet allg permet en outre de dfinir la localisation des
fichiers de donnes, et de dterminer si le code du projet doit tre
visible ou non par lutilisateur final.
Lassistant propose ensuite de crer le nouveau programme dinstal-
lation de votre application en intgrant le projet allg et les tats
modifiables par lutilisateur.
Rendre un tat accessible
Pour les tats que vous souhaitez rendre accessibles en modification
lutilisateur, il faut modifier la description de ltat en cochant
loption Intgrer le code compil (Cliquer sur le menu Etat
Description puis onglet Dtail).
Cette option permet de rendre ltat imprim indpendant et auto-
nome, donc utilisable via WDEtat Utilisateur.
Elments de lanalyse accessibles
Au niveau de lanalyse de votre projet, il est tout fait possible de
dfinir pour chacune des rubriques si elle est visible ou non pour
WDETAT Utilisateur et donc pour lutilisateur (Onglet Avanc, case
cocher Visible sous WDEtat Utilisateur).
Ainsi il est possible de cacher une rubrique servant uniquement au
dveloppement, un flag par exemple et sans intrt pour une di-
tion ou alors une information confidentielle qui ne doit pas tre lue
directement (le montant des salaires...).
Noubliez pas de livrer vos clients les tats (fichiers .WDE), que
vous souhaitez quils puissent modifier.
Utilisation de WDEtat
Utilisateur
WDETAT UTILISATEUR
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 88 (C) PC SOFT - www.pcsoft.fr
Thme 13 : Optimisation de lapplication
Consultez laide en ligne sur lutilisation de lanalyseur de perfor-
mances.
Cet exemple utilise le projet Optimisation. Ce projet est accessi-
ble depuis le kouglof.
Il est possible de dfinir le dbut et la fin de lanalyse par program-
mation grce aux fonctions AnalyseurDbut et AnalyseurFin.
Rappel : pour optimiser une requte, utiliser loption du menu con-
textuel correspondante dans lditeur de requtes. Cette option
permet de rechercher les cls (simples ou composes) manquantes
de lanalyse pour obtenir des performances optimales en fonction
des conditions de la requte.
Utiliser lanalyseur de
performances et optimiser les
requtes
PERFORMANCES
Tour de France Technique PC SOFT - Juin 2005 - page 89
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Les tables de positionnement permettent doptimiser la
taille dune page et donc son temps de chargement.
Pour illustrer cet exemple, ouvrez la page Page__Optimiser du
projet WWTablePositionnement. Ce projet est accessible depuis
le kouglof.
Quest ce quune table de positionnement ?
Les tables de positionnement permettent de positionner les champs
dans une page HTML.
WebDev gnre votre place cette table en fonction de lemplace-
ment de vos champs.
Activer le mode visualisation de la table de
positionnement
Un mode spcifique permet dafficher les tables de positionnement
gnres. Ce mode est accessible par le menu Affichage ou par le
raccourci CTRL+U.
En mode Visualisation de la table de positionnement, chaque trait
horizontal et vertical reprsente une ligne ou colonne de la table de
positionnement. Autrement dit, plus il y a de traits, plus la table est
lourde et complexe.
Pour optimiser une page, lide consiste simplifier la table de
positionnement en supprimant un maximum de traits horizontaux et
verticaux.
Quelques trucs
Mettre un maximum de champs la mme taille (notamment les
titres).
Coller les champs de saisie entre eux.
Agrandir les libells dexplication afin quils soient colls au
champ juste en dessous.
La page Page_Optimise correspond au rsultat obtenu aprs
manipulations.
Les ancrages
Lors du redimensionnement du navigateur, la page ne sadapte pas
toujours.
Il est possible de modifier les proprits de la zone pour quelle
stende en hauteur et en largeur grce aux ancrages (pourcenta-
ges dfinis en mode Table de positionnement dans les bords de la
page). Cette fonctionnalit est accessible grce un clic droit.
Optimiser la taille de pages
Web
TAILLES DE PAGES
Vos Notes
Tour de France Technique PC SOFT - Juin 2005 - page 90 (C) PC SOFT - www.pcsoft.fr
Thme 14 : Suivi de projet
Les centres de contrles permettent de centraliser
toutes les informations ncessaires au suivi et la
gestion dun projet.
Le centre de suivi de projet est accessible depuis le Menu Outils
Outils associs au centre de contrleCentre de suivi de projet ou
par lexcutable CC90Suivi.exe.
Le centre de suivi de projet permet de :
Visualiser les diffrents intervenants (les intervenants sont parta-
gs avec le groupware de WinDev).
Visualiser les tches des intervenants.
Visualiser le planning prvisionnel des intervenants.
Visualiser lhistorique des tches des intervenants.
La liste des tches est accessible depuis le kouglof (contextuel par
rapport au projet et lintervenant courant).
Ds quil dbute une tche, un intervenant peut lindiquer dans son
planning.
Sil est bloqu sur une tche, il peut galement lindiquer et passer
sa tche suivante.
Lensemble des intervenants et surtout le chef de projet auront ainsi
une vision globale de ltat davancement du projet.
Utilisation du centre de suivi
de projets
SUIVI DE PLANNING
Tour de France Technique PC SOFT - Juin 2005 - page 91
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Pour grer au mieux le groupware dveloppeur, il est conseill de :
1. Mettre les sources du projet dans un rpertoire partag.
Pour utiliser le groupware dveloppeur, utilisez soit un chemin UNC
soit la mme lettre de lecteur pour accder au projet.
2. Utiliser un nom dutilisateur pour travailler (pas dutilisateur
anonyme).
3. Spcifier dans la description du projet que vous travaillez plu-
sieurs.
4. Utiliser un rpertoire de compilation local (dfini dans la fentre
de description du projet) pour optimiser les temps de compilation.
Partage dlments entre
dveloppeurs
le Groupware dveloppeur
PARTAGE DLMENTS
Tour de France Technique PC SOFT - Juin 2005 - page 92
Vos Notes
(C) PC SOFT - www.pcsoft.fr
Le centre de suivi de la qualit et des volutions est disponible
depuis le menu Outils .. Outils associs aux centres de contrle ou
depuis lexcutable CC90CSQE.exe.
Centre de contrle
Cette application permet de saisir, rechercher et consulter les fiches
dincidents ou de suggestions sur des applications.
Ces informations sont accessibles depuis le kouglof.
Consultez laide en ligne pour plus de dtails.
Le composant MesIncidents
Ce composant est li aux centres de contrle et dispose de 2 modes
de fonctionnement :
1er cas : lapplication ralise est une application interne : vous
tes votre propre client. Dans ce cas, les incidents et les suggestions
vont tre directement enregistrs dans la base de donnes des cen-
tres de contrles qualit.
2me cas : lapplication est utilise en externe, non relie au
rseau de votre socit. Les incidents et les suggestions vont vous
tes transmis par un e-mail formats.
Voici le code inclure dans votre projet pour grer ce composant
incident.
1.Initialiser le composant avec ladresse e-mail ou envoyer le mail
SpcifierEmailDestination([email protected])
Ensuite il y a 2 cas de figures :
Lutilisateur souhaite signaler soit :
un incident ou bug
une suggestion
Pour la gestion de lincident, il suffit de rajouter dans le code du
projet un Quand Exception
Quand exception
IncidentClientAjoute(Standard, lsSujetMessage)
FinProgramme
Fin
Un message e-mail sera construit automatiquement laide dun
assistant.
Pour grer lenvoi dune suggestion, ajouter dans lapplication un
bouton suggestion avec le code suivant :
Crer un bouton suggestion avec le code :
IncidentClientAjoute(Standard, lsSujetMessage)
Le-mail format par lassistant est envoy soit directement depuis
cet assistant, soit depuis la messagerie habituelle de lutilisateur.
Suivi des incidents et des
suggestions
SUIVI DES INCIDENTS
Tour de France Technique PC SOFT - Juin 2005 - page 93
Vos Notes
(C) PC SOFT - www.pcsoft.fr
WDTest permet denregistrer et dexcuter automatiquement des
scripts de test dapplication.
Cration dun test
Pour crer un test de non rgression, les tapes sont les suivantes :
Lancer loutil WDTest
Cliquer sur le bouton Nouveau pour crer un nouveau test
Donner un nom ce test
Avant de valider la cration du test, il est conseill de lancer lex-
cutable tester. Lors de la validation du test, WDTest propose den-
registrer le test maintenant : acceptez.
Lorsque lenregistrement du test est commenc, toutes les opra-
tions souris et clavier sont mmorises, il ne vous reste plus qu
tester le fonctionnement de lapplication.
Une fois le test complet, appuyez sur la touche Arrt Dfilement
et enregistrez le test.
Lancer un test
Pour lancer lexcution dun test, il suffit alors de :
Se placer dans la configuration du test (ici par exemple, relancer
lexcutable utilis pour le test).
Cocher le ou les tests raliser.
Cocher loption Mode scuris pour arrter le test ds la dtec-
tion dun dysfonctionnement.
Lancer lexcution des tests.
Note : Loutil WDTest nest plus sensible la position des champs
ou des fentres, ce qui permet de conserver un mme test mme si
linterface graphique de lapplication teste est modifie.
Il est important de noter quil est prfrable davoir plusieurs petits
tests quun seul principal.
Cela permet de cerner plus facilement et rapidement une rgres-
sion, ou de rajouter plus facilement un nouveau test.
Cration dun test de non
rgression
TESTS DE NON RGRESSION
Tour de France Technique PC SOFT - Juin 2005 - page 94 (C) PC SOFT - www.pcsoft.fr
ANNEXE A : LES COMMANDES W-LANGAGE
Attention : Le lexique ci-dessous nest quun extrait des possibilits du langage de WinDev. La lecture
des manuels fournis avec WinDev reste incontournable. Ne sont prsentes ici que les commandes
ncessaires la bonne comprhension de cette formation.
Commandes de gestion de fchiers
Commande / Syntaxe But
EcranVersFichier Renseigner le buffer fchier daprs les donnes saisies par
lutilisateur dans la fentre.
FichierVersEcran Initialiser une fentre daprs les dernires valeurs lues dans
le fchier.
HAjoute(NomFichier) Ajouter dans le fchier lenregistrement prpar en mmoire.
HCrationSiInexistant(NomFichier)
Ouvrir le fchier en le crant vide auparavant sil nexistait
pas sur disque.
HErreurDoublon() Tester le compte-rendu renvoy par le moteur de base de
donnes en cas de tentative de cration de doublon.
HErreurIntgrit() Tester le compte-rendu renvoy par le moteur de base de
donnes en cas de tentative dcriture denregistrement ne
respectant pas les contraintes dintgrit.
HFiltre(NomFichier,Cl,Valeur) Filtrer les enregistrements du fchier dont la cl indique
correspond la valeur choisie.
HLitDernier(NomFichier, Cl)
Se positionner sur le dernier enregistrement du fchier selon
la cl spcife et charger lenregistrement en mmoire.
HLitPrecedent(NomFichier, Cl) Se positionner sur lenregistrement prcdent du fchier selon
la cl spcife et charger lenregistrement en mmoire.
HLitPremier(NomFichier,Cl)
Se positionner sur le premier enregistrement du fchier selon
la cl spcife et charger lenregistrement en mmoire.
HLitRecherchepremier(NomFichier,...
Cl, Valeur)
Rechercher le premier enregistrement du fchier dont la
cl indique correspond la valeur choisie, puis charger
lenregistrement en mmoire.
HLitSuivant(NomFichier,Cl)
Se positionner sur lenregistrement suivant du fchier selon la
cl spcife et charger lenregistrement en mmoire.
HModife(NomFichier) Rcrire lenregistrement courant du fchier avec les valeurs
stockes en mmoire.
HRaz(NomFichier) Remettre zro (rinitialiser) lenregistrement du fchier.
HSupprime(NomFichier) Supprimer lenregistrement courant du fchier.
Tour de France Technique PC SOFT - Juin 2005 - page 95 (C) PC SOFT - www.pcsoft.fr
Compte-rendu du moteur de bases
de donnes
Valeur
HEnDehors(NomFichier) Renvoie Vrai si on tente de lire un enregistrement au del du
dbut ou de la fn du fchier.
HTrouve(NomFichier) Renvoie Vrai aprs une recherche si la recherche a abouti.
Autres commandes
Commande / Syntaxe But
DateSys() Rcuprer la date systme au format AAAAMMJJ.
Erreur(Message) Affcher un message derreur.
ExcuteTraitement( Champ,...
Traitement)
Excuter le traitement dun champ ou dune fentre.
HeureSys() Rcuprer lheure systme au format HHMMSSCC.
Info(Message) Affcher un message dinformation.
Confrmer(Question) Poser une question lutilisateur (la rponse est un boolen) .
RAZ() Remettre zro (rinitialiser) tous les champs de lcran.
RepriseSaisie(NomChamp) Interrompre le traitement en cours et positionner le curseur sur
le champ spcif.
TableAffche( NomTable, Position) Raffcher un champ table fchier ( lcran) daprs les
donnes du fchier sur disque.
ListeAjoute(NomListe, chaine) Ajouter une ligne dans un champ liste ou combo.
ListeSupprime(NomListe) Supprimer une ligne de liste ou combo.
Les commandes sont indiques avec la syntaxe utilise dans les exemples raliss.
Certaines fonctions acceptent dautres paramtres ; se rfrer laide en ligne pour plus de
dinformations.
Tour de France Technique PC SOFT - Juin 2005 - page 96 (C) PC SOFT - www.pcsoft.fr
ANNEXE B : LES TOUCHES DE RACCOURCI
La liste ci-dessous prsente les touches de fonction et les combinaisons de touches permettant daccder
directement une fonctionnalit de WinDev. Cette liste nest pas exhaustive.
Important : Sous WinDev, dans lditeur de fentres, comme dans lditeur de code, il est possibles
daccder simplement aux diffrentes actions possibles grce au menu contextuel. (Il sufft de faire un clic
droit la position de la souris).
Principales touches de raccourcis de lditeur de fentres
Touche But
F1 Aide en ligne.
F5 Visualiser lordre de saisie (ordre de tabulation).
F6 Visualiser le nom des champs.
CTRL Permet de slectionner plusieurs champs la souris.
CTRL+C, CTRL+V, CTRL+X Copier, Coller, Couper un champ, avec ses proprits et son
code associ.
CTRL+R Affche ou rend invisible les rgles dalignement.
SHIFT+F9 Tester lIHM dune fentre sans excuter les traitements.
Principales touches de raccourcis de lditeur de code
Touche But
F1 Aide en ligne.
F2 Accder au code dune procdure en tant positionn sur le
nom de la procdure auparavant (CTRL-F2 pour revenir).
F4 Crer une procdure locale (Shift-F4 pour crer une procdure
globale).
F8 Liste des procdures locale (CTRL-F8 pour la liste des
procdures globales).
F11 Liste des fchiers, requtes et rubriques.
CTRL+C, CTRL+V, CTRL+X Copier, Coller, Couper du code.
CTRL + / (pav numrique) Mettre en commentaire (CTRL + Shift + / pour enlever les
commentaires).
ALT + T Activer la pipette pour slectionner le nom dun champs dune
fentre.