Академический Документы
Профессиональный Документы
Культура Документы
Visitez rgulirement le site www.pcsoft.fr, espace tlchargement, pour vrifier si des mises jour sont proposes.
Conseil : Pour recevoir directement des mises jour intermdiaires et des conseils dutilisation, abonnez-vous la LST (revue trimestrielle + DVD), en franais.
Cette documentation nest pas contractuelle. Des modifications ont pu intervenir dans le logiciel depuis la parution de ce manuel. Veuillez consulter laide en ligne.
Tous les noms de produits ou autres marques cits dans cet ouvrage sont des marques dposes par leurs propritaires respectifs. PC SOFT 2011 : Aucune reproduction intgrale ou partielle du prsent ouvrage sur quelque support que ce soit ne peut tre effectue sans lautorisation expresse de PC SOFT.
Introduction
1 2 3
WebDev performant. Certains concepts sont suivis dune partie "Pratique" dtaillant certaines fonctionnalits de lditeur.
Testez les diffrents exemples livrs avec WebDev dans les domaines qui vous
intressent (e-commerce, annuaire, planning, ...)
Le livre "WLangage" prsente la programmation en WLangage. Pour chaque thme de programmation, vous trouverez une description de la fonctionnalit associe et la liste des fonctions du WLangage correspondantes. Laide en ligne, accessible par Internet ladresse http://doc.pcsoft.fr ou installe avec WebDev permet de trouver rapidement la syntaxe dune fonction du WLangage, dobtenir une aide sur linterface, ... Remarque : En cas de divergence entre le manuel et laide en ligne, suivez les instructions de laide en ligne. Nous vous souhaitons une agrable prise en main de WEBDEV.
Introduction
Organisation du manuel
Ce manuel prsente les principaux concepts ncessaires la cration dun site WebDev performant. Certains concepts sont suivis dune partie "Pratique" dtaillant certaines fonctionnalits de lditeur. Deux types de pages sont donc prsentes dans ce manuel :
Page concept
Introduction
Sommaire
Partie 1 - Internet : Concepts de base
Quest-ce quun site web ? .................................................................................................11 Site statique, semi-dynamique ou dynamique ? ...............................................................12 Les diffrents types de sites dynamiques..........................................................................13 Machines et logiciels ncessaires......................................................................................14 Les diffrents types de pages.............................................................................................15 Pages dynamiques et pages AWP.......................................................................................19 Technologie AJAX.................................................................................................................. 21 Si vous connaissez dj WinDev........................................................................................ 24
Composant externe............................................................................................................101 Modes de gnration.........................................................................................................109 Les Centres de Contrle....................................................................................................113 Gestion des exigences.......................................................................................................114 Centre de Suivi de Projets.................................................................................................115 Gestion des rgles mtier.................................................................................................116
Partie 9 : Annexes
Fonctions du WLangage spcifiques WebDev 17.........................................................245 Composants livrs avec WebDev..................................................................................... 250 Exemples livrs avec WebDev...........................................................................................251
Introduction
Introduction
10
Site statique
Le contenu des pages du site est fixe, dtermin une fois pour toutes. Un site statique ne peut pas interagir avec des donnes.
Site semi-dynamique
Le contenu des pages du site est construit partir de donnes prsentes dans des fichiers de donnes. Cependant, le contenu des pages est fixe.
Site dynamique
Les donnes affiches dans les pages varient. En gnral, les pages permettent de: - raliser des traitements et/ou des calculs par programmation. - afficher des donnes stockes dans une base de donnes. - afficher des images et du texte interactif. Site dynamique WebDev: le Serveur dApplication WebDev ou le langage PHP sont ncessaires.
Remarque: Un site dynamique peut contenir une partie statique (prsentation de lentreprise, ...). WebDev permet de crer: des pages statiques, des pages semi-dynamiques, des pages dynamiques.
12
Le serveur
1 machine serveur: PC 1 systme dexploitation serveur (Windows ou Linux):
Windows 2000 ou suprieur.
La machine de dveloppement
1 machine: PC 1 systme dexploitation:
Windows 2000 ou suprieur.
logiciel
serveur
Web:
1 Moteur PHP
(version 4.3.2 minimum)
1 logiciel WebDev "Dveloppement" le site lui-mme les donnes * (site dynamique uniquement) le site en cours de dveloppement les donnes (optionnel) * au moins un navigateur:
*
Les donnes peuvent se trouver sur une autre machine relie en rseau.
14
Dveloppement
Dploiement
Poste Serveur
Page HTML
Consultation
Poste de linternaute
16
Dploiement
Poste Serveur Pages HTML
Consultation
Poste de linternaute
Pages statiques (correspondant aux pages semi-dynamiques) en excution sous le navigateur. La page affiche correspond aux informations demandes par linternaute.
Dveloppement
Dploiement
Poste Serveur
Page HTML Moteur WebDev Base de donnes
Consultation
Poste de linternaute
Page dynamique en excution sous le navigateur. Les donnes affiches dans les pages varient en fonction des manipulations de linternaute.
18
Pages AWP
Une page AWP est un fichier binaire contenant le code HTML de la page, et le code serveur (saisi sous lditeur de code par le dveloppeur). Ce fichier doit avoir lextension ".awp" pour pouvoir tre interprt par le serveur. Ainsi, lorsquun navigateur (le client) dsire accder une page dynamique AWP ralise avec WebDev: 1. Le serveur reconnat quil sagit dun fichier AWP. 2. Le serveur appelle le moteur WebDev pour lire le fichier AWP. 3. Le moteur WebDev excute le code serveur et construit la page HTML ( partir des donnes de la base de donnes par exemple). 4. Lorsque le moteur a fini de construire la page HTML, le moteur se ferme. 5. Le serveur transmet le rsultat (la page HTML) au client (le navigateur).
Remarque: il est possible dutiliser un contexte avec les pages AWP en dfinissant les variables persistantes grce la fonction DclareContexteAWP.
20
Technologie AJAX
La technologie AJAX est disponible nativement dans WebDev. Que signifie AJAX et quel est son intrt? AJAX (pour Asynchronous Javascript and XML) permet de rafrachir uniquement les donnes modifies dans une page HTML sans rafficher la totalit de la page. Par exemple, si certains lments prsents dans une page affiche (le contenu du panier, les caractristiques dun produit, une liste de villes, une carte gographique, ...) doivent tre modifis, seuls ces lments seront rafrachis. Le serveur naura pas envoyer la page entire sur le poste de linternaute. Cette technologie a de multiples avantages: le serveur est moins sollicit. Il peut alors supporter un plus grand nombre de connexions simultanes. les informations qui circulent sont de taille rduite. la dure de transmission est plus courte. laffichage pour linternaute est immdiat et sans effet visuel. AJAX peut tre utilis deux niveaux diffrents dans un site WebDev: AJAX automatique et immdiat: un simple clic suffit pour accder aux avantages AJAX. Le code reste le mme. AJAX programm: utilisation des fonctions de gestion AJAX pour les traitements complexes. Remarque: Seuls les navigateurs suffisamment rcents supportent la technologie AJAX: Internet Explorer 5.5 et suprieur, FireFox 1.0 et suprieur, Netscape 7 et suprieur, Opera 8 et suprieur, Safari 1.2 et suprieur, ... La fonction AJAXDisponible permet de savoir si le navigateur en cours supporte la technologie AJAX. Si un traitement utilisant la technologie AJAX est excut sur un navigateur ne supportant pas cette technologie, le traitement sexcute "comme si" il nutilisait pas la technologie AJAX (rafrachissement de la page entire par exemple).
Navigateur Envoi de la requte Action Mise jour automatique des lments modifis Envoi des lments modifis uniquement
Serveur Web
Excution de la requte
Par exemple, une page dun site permet de connatre diffrentes caractristiques dun pays (capitale, devise, drapeau, situation, ...). En fonction du pays slectionn par linternaute, les informations correspondantes sont affiches. Action de linternaute. Dans notre exemple, slection du pays dans la combo "Slectionner le pays souhait". Envoi de la requte au serveur. Excution de la requte: recherche des caractristiques du pays choisi. Envoi du rsultat de la requte: - sans AJAX: toute la page est envoye. - avec AJAX: seules les caractristiques du pays sont envoyes. Affichage des caractristiques du pays: - sans AJAX: toute la page est raffiche. - avec AJAX: seuls les champs contenant les caractristiques du pays sont rafrachis.
22
AJAX programm
Le schma suivant prsente lutilisation de "AJAX programm" dans un site WebDev:
Navigateur Demande dexcution de la procdure Action Mise jour automatique des lments modifis
Serveur Web
Excution de la procdure serveur Envoi du rsultat uniquement Analyse du rsultat Gnration du rsultat: Document XML, chane de caractres
Excution dun traitement navigateur (fonction AJAXExcute ou AJAXExcuteAsynchrone). Demande dexcution dune procdure serveur. Excution de la procdure serveur. Gnration du rsultat. Le rsultat de la procdure sera exprim sous forme dune chane de caractres ou dun document XML. Envoi du rsultat de la procdure (Mot-cl RENVOYER). Analyse du rsultat de la procdure. Affichage des informations modifies. Seuls les champs ncessaires sont rafrachis.
- Certains types de champs inutiles sur Internet ont disparu: ascenseur, potentiomtre, ActiveX, Objet OLE, spin, ...
24
26
Projet et Analyse
Le dveloppement dun site web en utilisant WebDev repose sur deux lments principaux: le Projet et lAnalyse. Un Projet WebDev est un ensemble dlments: pages, tats, champs, classes, composants, ... dont lassemblage permet de raliser un site web. Une Analyse WebDev regroupe la description des fichiers de donnes du site. Un site est construit partir dun projet. Un projet est gnralement associ une analyse. Une analyse peut tre associe un ou plusieurs projets.
27
Le projet en pratique
1 Prsentation
La premire tape de la description dun site consiste crer un projet. Lors de la cration dun projet, plusieurs questions vous sont poses afin que votre projet corresponde toutes vos attentes. Toutes les caractristiques du projet spcifies lors de la cration du projet pourront tre modifies par la suite.
2 Cration du projet
Pour crer un projet: 1.Slectionnez loption "Fichier.. Nouveau .. Projet". Lassistant de cration du projet souvre. 2.Spcifiez les diffrentes options du projet: le nom et lemplacement. Ces options ne seront pas modifiables. Le projet correspond un fichier ".WWP". Tous les objets associs au projet seront crs dans le rpertoire spcifi. le type de gnration du projet cest--dire quel sera le type de site gnr par le projet: site statique, site dynamique WebDev, site semi-dynamique, site dynamique PHP, ... le mode de cration du projet : il est possible de crer un projet vierge ou un projet bas sur le RAD Applicatif. si le projet va tre manipul par plusieurs dveloppeurs. Il est possible dutiliser le groupware dveloppeur ou le gestionnaire de sources (GDS) pour partager le projet. la charte de programmation. Cette charte permet de prfixer automatiquement les variables, les noms de champs, de pages, ... la charte graphique. les langues gres. Ces langues seront proposes par dfaut ds quune option dun champ, dune page, dun tat, ... pourra tre traduite. 3.Indiquez si le projet est associ ou non une base de donnes. Si oui, la base de donnes peut exister ou tre cre. 4.Validez lassistant. Le projet cr devient le projet en cours. Remarques: Si vous avez demand la cration dune analyse, lassistant correspondant se lance automatiquement. Lensemble des informations fournies peut tre modifi dans la description du projet (option "Projet.. Description du projet").
28
3.2Graphe du projet
Lditeur de projet permet de visualiser de manire graphique les diffrents lments du projet (pages, tats, requtes, ...) et leurs enchanements. Pour afficher le graphe du projet, il suffit de slectionner loption "Projet .. Graphe du projet".
Cette option permet de: ajouter votre projet des lments appartenant des projets accessibles depuis votre poste. Les fichiers correspondants ne seront pas dplacs dans le rpertoire de votre projet. supprimer des lments de votre projet. Les fichiers correspondants ne sont pas supprims physiquement. Pour rechercher rapidement un lment de votre projet, utilisez la combinaison de touches "CTRL + E" depuis nimporte quel diteur.
4 Manipulations du projet
Voici les principales manipulations pouvant tre ralises sur un projet: Archiver un projet Restaurer un projet Dupliquer un projet Copier ou supprimer un projet Renommer un projet Pour plus de dtails sur ces fonctionnalits, consultez laide en ligne.
5 Dossier du projet
WebDev permet dimprimer diffrents dossiers dtaillant lensemble des lments (page, tat, fichier de donnes, rubrique, ...) du projet. Ces dossiers peuvent tre imprims grce : loption "Projet.. Imprimer le dossier du projet". Le dossier peut contenir lensemble des caractristiques du projet. loption "Fichier.. Imprimer le dossier". Le dossier est alors constitu uniquement des caractristiques de llment (page, tat, requte,...) en cours. les descriptions techniques de tous les lments du projet. Dossier Complet :Contient toutes les informations du projet. Ce dossier correspond la fusion de tous les types de dossiers. Type ddition du dossier Le dossier peut au choix tre: imprim, export vers un document RTF, vers un fichier XML, export vers un fichier HTML (un navigateur internet doit tre install sur le poste en cours), export vers un fichier texte.
5.1Type de dossier
Plusieurs types de dossier sont proposs: Dossier Analyse / Fichier / Requtes:Contient les informations sur lanalyse, les fichiers de donnes et les requtes du projet. Dossier IHM (Interface Homme Machine) :Contient uniquement la reprsentation des pages et des tats, ainsi que leur enchanement. Dossier Code :Contient lensemble des traitements de tous les lments du projet. Dossier Technique:Contient les traitements et
5.2Zones dimpression
Si des reprsentations graphiques (graphe du projet, MLD, diagrammes UML ...) doivent tre imprimes, il est ncessaire de configurer les zones dimpression avant dimprimer le dossier. Pour spcifier les zones dimpression de la reprsentation graphique en cours: 1.Slectionnez loption "Affichage.. Zones dimpression". Des bordures reprsentant les zones Partie 2 : Dveloppement dun site 29
imprimables dans le dossier apparaissent sous lditeur en cours. 2.Rduisez laffichage de la reprsentation graphique (option "Affichage.. Zoom" ou [Ctrl] +Roulette de la souris) pour visualiser lensemble du graphe. 3.A laide de la souris: dplacez ces bordures lendroit dsir en maintenant le bouton de la souris enfonc (la couleur du curseur de la souris est noire). choisissez le nombre de pages sur lesquelles la reprsentation graphique doit tre imprime (le
curseur de la souris se transforme en doubleflche Nord-Ouest / Sud-Est). Si le format dimpression est modifi (passage de A4 A3 par exemple dans les proprits de limprimante), il est possible dadapter le format des pages du dossier. Pour cela: 1.Dfinissez des zones dimpression. 2.Affichez les options de mise en page du dossier (option "Fichier .. Mise en page du dossier"). 3.Slectionnez loption "Adapter la taille des zones dimpression des documents ouverts". 4.Lancez limpression du dossier.
30
31
Dtail des diffrentes phases: Phase de conception: Il est possible de concevoir un site partir dun simple cahier des charges, dune modlisation UML des traitements ou mme partir de fichiers de donnes prexistants. Phase de dveloppement: La cration du projet et de lanalyse est ralise laide dassistants trs complets. Le dveloppement peut tre effectu en mode RAD (Rapid Development Application) avec gnration automatique du code et des IHM ou tre le rsultat dune cration manuelle des diffrents lments du projet.
32
Phase de tests et gnration: WebDev offre toute une panoplie doutils de tests automatiques pour garantir la fiabilit des applications et assurer la non-rgression entre les phases de dveloppement. Phase de dploiement: Le dploiement dun site dynamique WebDev est ralis sur un serveur dapplication WebDev. Lorsque le site est dploy, il est possible de raliser les derniers tests avant douvrir le site aux utilisateurs.
33
Code navigateur
Code serveur
Enregistrement de la page.
34 Partie 2 : Dveloppement dun site
Lgende:
.HTM gnrique
Ce fichier contient la description complte de la page (champ, code navigateur, code serveur). Certains paramtres de cette page sont gnriques et seront remplis dynamiquement lors de laffichage de la page.
35
Ldition respecte la position relative des champs contenus dans chaque zone ainsi que leur ancrage.
Il est possible dassocier une information smantique HTML 5 chaque zone : cela amliore la pertinence du rfrencement par certains moteurs de recherche.
36
Page interne
Le champ Page interne permet dinclure une page (et son code) dans une autre page. A lexcution, la page interne sera dynamiquement fusionne la page hte.
Remarques: Il nest pas possible de modifier par programmation la page interne utilise dans le champ "Page interne". La zone daccueil est rectangulaire et aucune surcharge nest possible. Pour raliser des surcharges, il est conseill dutiliser des modles de champs.
Partie 2 : Dveloppement dun site 37
Modles de pages
WebDev permet de crer des modles de pages. Un modle est destin contenir des lments communs un ensemble de pages du site. Les modifications effectues dans un modle de pages sont automatiquement reportes sur toutes les pages utilisant ce modle. Un modle de pages permet, par exemple, de respecter la charte graphique dfinie pour un site.
Dfinition dun modle de pages. Le modle est encadr dun trait jaune sous lditeur.
Utilisation du modle dans plusieurs pages. Les lments appartenant au modle sont identifis par un carr jaune.
Pour crer une page utilisant un modle, slectionnez le modle utiliser lors de la cration de la page. Remarque: La programmation associe aux lments du modle peut tre directement ralise dans le modle. Les caractristiques des lments peuvent tre dsolidarises du modle. Par exemple, dsolidariser la position dun champ du modle pour positionner le champ ailleurs tout en conservant les autres volutions sur le champ (code, style, ...). On parle alors dhritage. Dans ce cas, les lments sont identifis par un carr bleu.
38 Partie 2 : Dveloppement dun site
gnre. Le code est la charge du dveloppeur. Frameset: Permet de crer diffrents types de Framesets. Chaque Frame devra tre associe aux pages de votre projet sous lditeur. 3.Selon le type de page choisi, saisissez les informations demandes dans les diffrents crans de lassistant (ces crans varient selon le type de page slectionn). 4.Validez la cration de la page.
Pour crer le site dynamique par le R.A.D.: 1.Slectionnez loption "Atelier .. RAD Application complte". Attention: Pour utiliser cette option, le projet doit tre associ une analyse gnre au moins une fois. 2.Slectionnez le pattern RAD utiliser. 3.Slectionnez les fichiers de donnes utiliss pour la gnration. 4.Slectionnez les fichiers de donnes principaux qui seront les points dentre dans lapplication (principalement, ces fichiers de donnes seront utiliss pour mettre en place les options de menu). 5.Associez si ncessaire une image chaque fichier de donnes. Cette image sera utilise pour reprsenter les fichiers de donnes. 6.Validez la cration de votre application par le RAD.
40
4 Page interne
Les pages internes permettent de partager dynamiquement une mme partie dinterface au sein dun ou de plusieurs sites. Linterface utiliser plusieurs fois est cre dans une page de type "Page Interne". Cette interface est utilise dans les diffrentes pages de votre site grce au champ de type "Page interne". Remarque: La page fusionner peut tre issue dun composant. Pour plus de dtails, consultez laide en ligne.
5 Modles de pages
WebDev permet de crer des modles de pages. Ces modles contiennent tous les lments graphiques et le code communs lensemble des pages de votre site. Les modifications effectues dans un modle de pages sont automatiquement reportes sur toutes les pages utilisant ce modle. Un modle de pages permet de respecter la charte graphique dfinie pour un site. Lutilisation de modles de pages dans vos sites permet de: simplifier la cration des pages du site. simplifier la mise en page des pages du site. simplifier la mise jour de la charte graphique du site. Un modle de pages se cre aussi simplement quune page. Pour crer une page en utilisant un modle, il suffit de choisir loption "base sur un modle". Par dfaut, toute modification effectue dans le modle est reporte dans les pages lutilisant. Il est cependant possible dans une page spcifique de grer des cas particuliers en surchargent les lments du modle. Pour plus de dtails, consultez laide en ligne.
6.2Mise en place
Pour actualiser une page, il suffit dutiliser la fonction du WLangage PageActualise. Lors de lactualisation dune page, les oprations effectues automatiquement sont les suivantes: 1.Vrification de lexistence du contexte de la page sur le serveur. 2.R-affichage de la page en fonction de son contexte prsent sur le serveur. Lutilisation de la fonction PageAffiche est dconseille pour actualiser une page, car le temps de chargement de la page est beaucoup plus long.
41
7.2Fonctionnement
Gestion automatique Par dfaut, WebDev gre automatiquement les contextes de pages dynamiques: Un contexte de page est ouvert lors de laffichage de la page dynamique sur le navigateur. Le contexte dune page est mis jour en fonction des informations saisies par linternaute sous le navigateur. Cette mise jour se fait lors de la validation de la page ( laide dun bouton de type "Envoi au serveur" ou de la fonction PageValide). Les contextes de page existants sont ferms lors de lutilisation des fonctions PageUtilise ou FramesetUtilise. Les contextes de pages correspondants aux pages afficher sont alors ouverts.
Remarque: Par dfaut, lors de louverture dune page en programmation, la destination choisie est: soit la destination dfinie dans la description de lobjet lanant louverture de la page (bouton, lien, ). soit la destination dfinie pour la page en cours.
9.2Traitements optionnels
Plusieurs traitements optionnels peuvent tre grs. Pour grer un traitement optionnel, il suffit de le slectionner dans la barre dicnes de la fentre de code.
Il est ainsi possible de grer par exemple: le survol du champ par la souris, le bouton gauche enfonc, relch, avec doubleclic, le bouton droit enfonc, relch, avec double-clic, la roulette de la souris, etc.
43
44
Utilisez un champ...
Afficher un prix, une quantit, une adresse, une date, une heure, ... Slectionner une valeur parmi une liste (Pays, Ville,)
Slectionner plusieurs valeurs parmi une liste (les destinataires dun message, des fichiers tlcharger, ...)
Interrupteur, Liste
Image clicable
45
Image
Afficher une page selon la zone clique sur une image Afficher le contenu dun fichier de donnes en table (Liste des clients, dtail dune commande, ...)
Image clicable Table fichier ou table mmoire, Zone rpte fichier ou zone rpte mmoire
Afficher une image rafrachie rgulirement Web Camra Rpter des champs dans une page (Catalogue Produits avec la photo, ...)
Zone rpte
Champ Arbre
Champ Flash
Aligner des champs (tableau HTML) Cellule, Tableau HTML Programmer une action dans une page (afficher une page, valider une saisie, ...)
Champ Calendrier
Afficher une vido Champ Vido Afficher une page dun autre site dans une de vos pages Afficher un histogramme, une courbe, un graphe de type camembert
IFrame
Champ Graphe
47
Afficher une page de votre site lintrieur dune de vos pages Afficher un menu automatique (qui se construit au fur et mesure du parcours du site) Permettre linternaute de donner ou de visualiser une note.
Champ Notation
Champ Vignette
Afficher des fichiers Flex Champ Flex Intgrer des champs de type SilverLight
Champ SilverLight
Champ Tiroir
Champ Upload
Afficher une liste dobjets sous forme de liste horizontale dfilante. Crer un effet visuel dans une page en prsentant une image partiellement recouverte par une autre.
48
1 Crer un champ
Les champs disponibles sous lditeur de pages de WebDev sont les suivants: Arbre, Libell HTML, Cellule, Libell, Tableau HTML, Bouton, Ligne, Lien, Onglet, Image, Champ Web Camra, Image clicable, Champ daffichage Champ Applet Java, format, Champ Flash, Champ de saisie, Champ IFrame, Interrupteur, Champ page interne, Slecteur, Chemin de navigation, Liste, Plan du site Combo, Superchamp, Table, Graphe, Zone rpte, Calendrier, Rglette, Planning, Captcha, Code-barres Notation, Modle de champs.
49
50
Dynamique : le champ pourra tre modifi en programmation: toutes les proprits associes au champ pourront tre utilises. Remarque: si un champ est dfini comme tant dynamique, le code HTML de la page contiendra du code spcifique pour grer la programmation du champ en WLangage. Le fichier HTML correspondant la page sera donc plus important que si le champ est dfini en statique.
3.2Manipulations disponibles
Lditeur de pages permet de: Slectionner un ou plusieurs champs (par exemple laide du lasso). Regrouper des champs slectionns. Dplacer un champ. Modifier le libell dun champ. Afficher une bulle daide avance lors du survol dun champ. Cette bulle daide contient: le nom du champ, sa position, sa taille, son tat initial (si le champ est invisible).
4.1Les rgles
Sous lditeur de pages, il est possible de faire apparatre des rgles dalignement. Dans ces rgles, des guides magntiques sont affichs: tout champ approch dun guide est automatiquement "attir" par celui-ci. Ce magntisme permet dutiliser les guides pour faciliter le positionnement, lalignement ou le redimensionnement des champs de la page.
51
Afficher les rgles Les rgles sont affiches par loption "Affichage.. Rgles". Deux types de guides peuvent alors tre utiliss: les guides, permettant daligner et de disposer les champs lintrieur des pages. les guides de bordure, permettant de dterminer une bordure de taille identique de chaque ct de la page. Remarque : Loption "Guide visible" du menu contextuel des rgles permet de visualiser la page avec ou sans ses guides. Visibles ou non, les guides sont toujours actifs: un champ dplac vers un repre est automatiquement accol celui-ci. Manipuler les repres Les repres sont facilement manipulables laide de la souris dans lditeur. Lorsque la souris survole un repre, le curseur se transforme en une double flche.
4.2Grille magntique
La grille magntique permet de placer des repres (verticaux et horizontaux) dans la page. Les champs crs viennent se placer contre ces repres, comme si les champs et les repres taient magntiss. La grille magntique permet ainsi daligner les champs selon les repres.
52
La gestion de lancrage dun champ est constitue de plusieurs paramtres: lancrage du champ: ce paramtre permet de dfinir la modification appliquer au champ en fonction du changement de la taille de la page. Le champ peut se dplacer vers la gauche ou vers le bas, sagrandir en largeur et/ou en hauteur. la gestion de la largeur et/ou de la hauteur: ce paramtre permet de grer le comportement du champ lors de son tirement. La largeur ou la hauteur peut tre adapte au contenu du champ ou au navigateur. le taux dancrage: ce paramtre permet de grer le pourcentage de dplacement ou dtirement du champ. Ces paramtres peuvent tre configurs sous lditeur de pages.
Largeur et Hauteur: Le champ stire vers la droite et vers le bas lorsque le navigateur sagrandit. Pour faire varier la vitesse dtirement du champ par rapport au navigateur, utilisez le taux dancrage en hauteur et le taux dancrage en largeur. Slectionnez le mode de gestion de la hauteur et de la largeur. Hauteur et Droite: Le champ stire vers le bas et se dplace vers la droite lorsque le navigateur sagrandit. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage droite. Pour faire varier la vitesse dtirement du champ par rapport au navigateur, utilisez le taux dancrage en hauteur. Hauteur et centr horizontalement: Le champ stire vers le bas et reste centr horizontalement lorsque le navigateur sagrandit. Bas: Le champ se dplace vers le bas lorsque le navigateur est agrandi vers le bas. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage en bas. Largeur et Bas: Le champ stire vers la droite et se dplace vers le bas lorsque le navigateur sagrandit. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage en bas. Pour faire varier la vitesse dtirement du champ par rapport au navigateur, utilisez le taux dancrage en largeur. Droite et Bas: Le champ se dplace vers la droite et vers le bas lorsque le navigateur sagrandit. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage en bas et le taux dancrage droite.
Centr horizontal en bas: Le champ reste centr en largeur dans le navigateur quelle que soit la largeur du navigateur. Cependant, le champ est ancr en bas, et se dplace vers le bas lorsque le navigateur sagrandit. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage en bas. Centr en hauteur: Le champ reste centr en hauteur dans le navigateur quelle que soit la hauteur du navigateur. Largeur et centr verticalement: Le champ stire vers la droite et reste centr verticalement lorsque le navigateur sagrandit. Centr vertical droite: Le champ reste centr en hauteur dans le navigateur quelle que soit la hauteur du navigateur. Cependant, le champ est ancr droite, et se dplace vers la droite lorsque le navigateur est largi. Pour que le champ se dplace plus ou moins vite, utilisez le taux dancrage droite. Centr: Le champ reste centr en hauteur et en largeur dans le navigateur quelle que soit la taille du navigateur. 5.Dfinissez si ncessaire les diffrents taux dancrage. 6.Validez. Si loption "Affichage .. Options .. Voir les ancrages" est active, les signes dancrage apparaissent automatiquement dans le champ (flches rouges). 7.Validez. Les signes dancrage apparaissent automatiquement dans le champ (flches rouges). Remarque: Pour grer lancrage des champs, il est galement possible dutiliser les tables de positionnement. Pour plus de dtails, consultez laide en ligne.
54
Pour chaque champ de la zone rpte, plusieurs caractristiques peuvent tre modifies lors de la rptition: libell, couleur du texte, ... Les rptitions peuvent tre ralises: sur une colonne, sur plusieurs colonnes. Dans ce cas, on parle de "Zone rpte horizontale". Lors de la cration dune zone rpte, il est possible de lier la zone rpte directement un fichier de donnes ou une requte. Les attributs de la zone rpte sont automatiquement dfinis. Aucune programmation nest ncessaire.
Partie 2 : Dveloppement dun site 55
Pour grer ces deux sortes dactions, lditeur de code de WebDev diffrencie deux types de code: Code Serveur (code Jaune ou Rose sous lditeur de code): Ce code est crit en WLangage (code jaune) ou en PHP (code rose, disponible uniquement dans les pages PHP). Ce code est excut sur le serveur. Ce code est disponible uniquement dans les pages dynamiques. Code Navigateur (code Vert ou Bleu): Ce code est crit en WLangage (code vert) ou en Javascript (code bleu). A lenregistrement de la page, ce code est automatiquement traduit en Javascript, et intgr aux pages HTML WebDev. Ce code est excut en local (sur le poste de linternaute) et ne ncessite pas daction du serveur.
56
Code serveur dans une page PHP: code WLangage ou code PHP?
Les codes excuts sur le poste serveur sont reprsents sous lditeur de code par un bandeau Jaune ou Rose.
bandeau Jaune = WLangage: le sigle WL prcde lintitul du code. bandeau Rose = PHP: le sigle PHP prcde lintitul du code. Pour passer dun code jaune (WLangage) un code rose (PHP), il suffit de cliquer sur le sigle WL prcdant lintitul du code (ou inversement en cliquant sur PHP). Lors de lenregistrement de la page PHP, le code WLangage est automatiquement converti en code PHP. Nous vous conseillons de dvelopper en WLangage.
57
bandeau vert =WLangage: le sigle WL prcde lintitul du code. bandeau bleu = Javascript: le sigle JS prcde lintitul du code. Pour passer dun code vert (WLangage) un code bleu (Javascript), il suffit de cliquer sur le sigle WL prcdant lintitul du code (ou inversement en cliquant sur JS). A lenregistrement de la page, le code WLangage est automatiquement converti en Javascript. Nous vous conseillons de dvelopper en WLangage.
Evnements supplmentaires
La barre dicnes situe au bas de la fentre de code permet de grer des vnements supplmentaires ceux proposs par dfaut:
Ces vnements sont ajouts aux codes affichs par lditeur de code par simple clic sur licne du code correspondant. Exemples dvnements supplmentaires: double-clic, touche enfonce, touche presse, touche relche, bouton enfonc, souris dplace, ... Rappel : Le code navigateur est disponible dans les pages dynamiques, semi-dynamiques et statiques.
58
Le code WLangage est plus facile crire, comprendre, maintenir. La fiabilit est amliore. Les volutions sont plus simples. Dans tous vos traitements, utilisez le WLangage.
59
Le tableau ci-aprs prsente les diffrents codes excuts selon le type de bouton/ lien choisi, et laction associe. Laspect du bouton / lien et sa destination ninfluent pas sur lordre des codes excuts.
60
Opration
Envoi au serveur (submit)
Remarques
Mise jour automatique du contexte de page sur le serveur (pages dynamiques uniquement).
Mise jour automatique du contexte de page sur le serveur (pages dynamiques uniquement). Affichage automatique de la page.
Action associe: Aucune Codes excuts: 1.Code de clic navigateur du champ. 2.Affichage de la page initiale (page avec tous les champs initialiss vide ou 0 et excution du code dinitialisation de chacun des champs puis de la page). Action associe: Aucune Codes excuts: Code navigateur du champ uniquement. Action associe: Excuter le code de clic du bouton / lien Codes excuts: 1.Code de clic navigateur du champ. 2.Code serveur du champ. Action associe: Afficher la page Codes excuts: 1.Code de clic navigateur du champ. 2.Code serveur du champ. 3.Affichage de la page. Affichage automatique de la page
Aucune
61
Lors de la validation de la page, le fichier "upload" est copi sur le disque dur du serveur.
Serveur Web
Sur le navigateur de linternaute
Note: Laspect du bouton "Parcourir" est dfini par le navigateur et ne peut gnralement pas tre personnalis. Remarque: WebDev propose galement un champ Upload volu ncessitant un lecteur Flash sur le poste de linternaute. Ce champ permet de grer une jauge de progression, la multi-slection des fichiers, ...
62 Partie 2 : Dveloppement dun site
Modles de champs
WebDev permet de crer des modles de champs. Un modle de champs est un ensemble de champs, rutilisables dans plusieurs pages. Les modifications effectues dans un modle de champs sont automatiquement reportes sur toutes les pages utilisant ce modle. Un modle de champs permet de: regrouper un ensemble de champs dans un but prcis. rendre les champs indpendants de la page les accueillant.
Dfinition dun modle de champs: le modle est encadr dun trait jaune sous lditeur.
Utilisation du modle dans une page. Les lments appartenant au modle sont entours en bleu et identifis par un carr jaune. Un modle de champs peut tre cr: directement (menu "Fichier .. Nouveau .. Page .. Modle de champs") partir de champs prsents dans la page (menu "Champ .. Refactoring .. Crer un modle de champs avec la slection"). Pour utiliser un modle de champs dans une page, crez un champ de type "Modle de champs". Remarque: La programmation associe aux lments du modle peut tre directement ralise dans le modle. Les caractristiques des lments peuvent tre dsolidarises du modle. Par exemple, dsolidariser la position dun champ du modle pour positionner le champ ailleurs tout en conservant les autres volutions sur le champ (code, style, ...). On parle alors dhritage de champ. Dans ce cas, les lments sont identifis par un carr bleu.
63
Les tats
Un tat permet dobtenir une vue personnalise dinformations: donnes saisies dans la base de donnes, donnes prsentes dans un fichier texte, donnes provenant dun champ Table, ... Un tat est cr selon le principe suivant: les donnes imprimer sont issues dune source de donnes (fichier de donnes dcrit dans une analyse, vue HyperFileSQL, requte, zone mmoire ou fichier texte). ltat regroupe, trie et met en forme les donnes. Ltat cr peut ensuite tre: imprim sur limprimante du serveur (cas dun site Intranet). affich dans le navigateur de linternaute (format HTML, PDF, ...). envoy par mail linternaute (format PDF).
64
Modles dtats
Dans une socit, bien souvent, les impressions utilisent un look et une mise en page unifis: date en haut droite dans un format spcifique, bas de page avec heure dimpression et nom du fichier, logo en haut gauche, ... Les modles dtats permettent duniformiser simplement la mise en page de vos tats.
Utilisation du modle dans diffrents tats. Les lments appartenant au modle sont identifis par un carr jaune. Les lments du modle surchargs sont identifis par un carr bleu.
Un modle dtats peut tre cr: directement (option "Fichier .. Nouveau.. Etat .. Modle dEtats"). partir de ltat en cours (option "Fichier .. Enregistrer comme un modle"). Pour crer un tat utilisant un modle, slectionnez le modle utiliser lors de la cration de ltat. Remarque: La programmation associe aux lments du modle peut tre directement ralise dans le modle. Les caractristiques des lments peuvent tre dsolidarises du modle. Par exemple, dsolidariser la position dun champ du modle pour positionner le champ ailleurs tout en conservant les autres volutions sur le champ (code, style, ...). On parle alors dhritage. Dans ce cas, les lments sont identifis par un carr bleu.
Partie 2 : Dveloppement dun site 65
Impression en HTML
Impression en PDF
66
67
O afficher la page?
Laffichage dune page se fait dans une "destination" spcifique: page en cours, nouveau navigateur, ... La destination peut tre dfinie: soit sous lditeur de pages: aucune programmation nest ncessaire. soit sous lditeur de code, dans un traitement du bouton (ou du lien). Plusieurs fonctions du WLangage permettent douvrir une nouvelle page (ou frameset). Les principales fonctions sont: PageAffiche (pour les pages) et FramesetAffiche (pour les framesets). Slection de la destination sous lditeur de pages (cas le plus courant) Dans un bouton, pour dfinir la destination de la page afficher: Affichez la description du bouton ou du lien (clic droit sur le champ, option "Description"). Dans la liste des destinations, slectionnez une destination prdfinie ou une frame (dans le cas dun frameset). Remarque: Les destinations prdfinies sont prsentes dans les pages suivantes de ce manuel. Slection de la destination sous lditeur de code Lorsque la destination dpend dun choix de linternaute, cette destination doit tre slectionne par programmation. Par exemple, si linternaute nindique pas son mot de passe, une page derreur apparat dans un nouveau navigateur; sinon, la page suivante saffiche dans le navigateur en cours. La fonction WLangage ChangeDestination permet de modifier par programmation la destination dune action. Cette fonction doit tre utilise dans un code navigateur.
68
Page initiale
Page initiale
69
Page initiale
70
Poste de linternaute
Poste Serveur
Contexte de page
Chaque page dynamique (affiche sur le poste de chaque internaute) est associe un contexte de page. Si la page permet dafficher des donnes diffrentes (fiche produit avec boutons de parcours par exemple), chaque nouvel enregistrement affich, le contexte est modifi, et la page est uniquement actualise.
71
72
Dans ce cas, lcriture des donnes dans les fichiers de donnes doit seffectuer UNIQUEMENT dans le code du bouton de validation de la commande: tous les lments de la commande doivent tre mmoriss jusqu la validation finale. Ncrivez pas dans les fichiers de donnes en cours de traitement. Remarque: Il est galement possible dutiliser une transaction, mais nous vous recommandons de mmoriser les informations de la commande.
73
Remarque: Longlet "CSS personnalis" permet de saisir directement du code CSS. Ce code sera ensuite ajout dans la feuille de styles.
74 Partie 2 : Dveloppement dun site
site adapt: Les pages sont affiches normalement dans le navigateur. Si la rsolution de linternaute est suprieure la rsolution optimale du site, une marge blanche est ajoute droite des pages.
Remarque: Le type de mise en page (centr ou adapt) configur dans un modle de pages sera automatiquement utilis par les pages associes ce modle.
Partie 2 : Dveloppement dun site 75
la possibilit de saisir une description et des mots-cls sur chaque page de votre site. lintgration dune page daccueil. Cette page daccueil permet de saisir la description de votre site et les mots-cls dcrivant votre site. Il est possible dintgrer une page daccueil votre site: soit lors de la cration du projet (dans lassistant de cration du projet). soit lors du dveloppement du projet (option "Fichier .. Nouveau .. Page", option "Page" puis option "Accueil"). Plusieurs modles de pages daccueil sont proposs. Remarque: le rfrencement est une technique dont les rgles sont dictes par les moteurs de recherche (Google, Bing, etc.), ne sont pas toujours explicites et voluent trs vite. Nhsitez pas consulter des ouvrages ou des sites spcialiss sur ce sujet.
76
77
Quelques conseils: Les trois premiers mots-cls sont les plus importants. Utilisez des mots-cls usuels et discriminants. Les mots-cls ne doivent pas tre rpts.
Utilisez des variantes (singulier/pluriel, masculin/fminin, nom/verbe ...). Remarque: Ces mots-cls peuvent tre modifis dynamiquement grce la proprit ..MotsCls. 5.Validez la fentre de rfrencement, puis la fentre de description de la page.
78
79
80
82
83
2.2Editeur danalyses
Lditeur danalyses permet de dcrire les caractristiques et la structure des fichiers de donnes. Lditeur danalyses supporte la mthode Merise (MCD et MLD). Lditeur danalyses permet principalement deux types de descriptions dune base de donnes: description directe de lanalyse lie au projet (appele aussi Modle Logique des Donnes (MLD) 84 Partie 3 : Environnement de dveloppement
2.3Editeur UML
Le langage UML est un langage graphique permettant de: reprsenter le systme dinformation tudi sous forme dobjets. gnrer la structure objet du site (squelette de lapplication sous forme de classes objet) correspondant au systme dinformation tudi. Lditeur dUML permet principalement: de dcrire directement un ou plusieurs diagrammes UML. de construire un modle UML par rtro-analyse de votre projet. Pour plus de dtails sur la cration dun modle UML, consultez le chapitre "Le modle UML", page 120. Voici quelques caractristiques de lditeur dUML: Cration et description de diagrammes UML. Mise en forme automatique des liaisons. Gnration automatique dune classe ou dun ensemble de classes partir dun diagramme de classes. Zoom sur lditeur dUML. Insertion de commentaires dans un modle UML. Interaction des diffrents volets avec les diffrents lments du modle UML.
requte. Possibilit de tester immdiatement les requtes. Zoom sur lditeur de requtes.
2.5Editeurs de pages
Lditeur de pages permet de dcrire les caractristiques de linterface utilisateur de votre projet. De nombreux modles, ambiances et types de pages sont proposs. Ils permettent damliorer lergonomie de vos pages et de rendre vos sites conviviaux. Voici quelques caractristiques de lditeur de pages: Editeur WYSIWYG ("What You See Is What You Get"). Vous visualisez directement votre page telle quelle apparatra lutilisateur. Cration et description des pages et de leurs champs. "Drag and Drop" permettant de copier, de coller ou de dplacer des champs dune page une autre. Modles de pages et styles de champ pr-dfinis. Prsence de plusieurs catalogues dicnes permettant dassocier des images aux champs. Correcteur dinterface en temps rel permettant de simplifier le positionnement des champs. Saisie des libells des champs directement dans la zone de travail de lditeur. Gestion de laide contextuelle dans les pages. Zoom sur lditeur de pages. Interaction des diffrents volets avec les diffrents lments de lditeur.
2.4Editeur de requtes
Lditeur de requtes permet de crer automatiquement des requtes sur les fichiers de donnes. La programmation est ainsi simplifie : pages, tables, combos, tats,... pourront sappuyer sur les requtes. Un assistant permet de crer une requte: il suffit de choisir les rubriques intgrer et de saisir les conditions de slection laide de lassistant. La requte est automatiquement gnre (en code SQL optimis) et peut tre teste immdiatement. Vous trouverez toutes les informations concernant les requtes dans le "Guide de lditeur dtats et de requtes". Voici quelques caractristiques de lditeur de requtes: Editeur WYSIWYG ("What You See Is What You Get"). Vous visualisez directement la requte et son rsultat. Cration simplifie dune requte laide dun assistant. Gnration automatique du code SQL de chaque
2.6Editeur dtats
Lditeur dtats permet de crer trs simplement des tats imprimer. Vous trouverez toutes les informations concernant la cration dtats imprims dans le "Guide de lditeur dtats et de requtes". Voici quelques caractristiques de lditeur dtats: Editeur WYSIWYG ("What You See Is What You Get"). Vous visualisez directement les tats tels quils seront limpression. Cration simplifie dun tat sans une seule ligne de code. "Drag and Drop" permettant de copier, de coller ou de dplacer des champs dun tat un autre. Gabarits dtats et styles de champs pr-dfinis. Correcteur dinterface en temps rel permettant de simplifier le positionnement des champs. Partie 3 : Environnement de dveloppement 85
Utilisation dun formulaire en fond dun tat. Cration dtiquettes multi-colonnes. Edition dun tat au format HTML (pour le publier sur Internet par exemple), ou au format RTF (pour lditer avec un traitement de texte par exemple). Zoom sur lditeur dtats.
2.7Editeur de code
Lditeur de code permet de saisir tous les traitements en WLangage (le langage de programmation intgr WebDev). Il permet par exemple de saisir le code source: des champs, des pages, des tats des procdures locales et globales, des classes et des mthodes,...
Voici quelques caractristiques de lditeur de code: Mise en forme automatique des informations saisies. Compltion automatique. Glossaire sur les fonctions. Dtection immdiate des erreurs de frappe et aide la correction. Compilation incrmentale. Visualisation des diffrents traitements dune fentre, dun champ ou dun tat du projet. Insertion de traitements spcifiques lutilisation de la souris ou du clavier. Gestion de lhistorique des modifications du code avec possibilit de revenir en arrire. Ouverture de plusieurs fentres de code (pour effectuer des comparaisons de code par exemple). Zoom sur lditeur de code. Interaction des diffrents volets avec les diffrents lments de lditeur. Pour plus de dtails sur lditeur de code, nous vous recommandons de lire le manuel "WLangage".
86
Le tableau de bord en mode Chef de Projet permet dobtenir des informations graphiques sur ltat davancement du projet et la qualit du projet. Ce mode est recommand lors de lutilisation du Centre de Suivi de Projets avec une gestion des exigences.
87
88
Configuration de projet
Les configurations de projet permettent de crer partir dun mme projet plusieurs "cibles" diffrentes. Vous pouvez ainsi crer partir dun mme projet par exemple: des sites qui ne contiennent pas les mmes lments, qui ont des noms diffrents, diffrents composants, un Webservice. A tout moment, vous pouvez travailler sur une configuration spcifique: les lments nappartenant pas cette configuration apparaissent griss sous lditeur de projet.
Il est possible de gnrer en une seule opration toutes les configurations dun projet (ou uniquement certaines) grce la gnration multiple.
89
Gnration multiple
Les configurations de projets permettent de dfinir simplement les diffrentes "Cibles" de votre projet. Vous pouvez ainsi dfinir pour un mme projet plusieurs sites, plusieurs bibliothques ou plusieurs composants. Pour gnrer le rsultat de chaque configuration, vous pouvez bien entendu slectionner une une chaque configuration, et gnrer llment correspondant. Un autre moyen plus rapide existe: la gnration multiple. Vous slectionnez en une seule opration les configurations gnrer et le rsultat est immdiat.
Pour lancer une gnration multiple, utilisez le menu "Atelier .. Gnration multiple".
90
Il est possible de partager les lments prsents dans le GDS: via un rseau. via Internet. en mode dconnect. Dans ce cas, les lments sur lesquels un travail spcifique devra tre effectu seront extraits du GDS par exemple lors de la connexion du portable au systme gnral.
91
Si un lment (page, tat, ...) du projet est extrait, ce mme lment ne pourra pas tre extrait une seconde fois. Aprs modification des lments extraits, il est ncessaire de rintgrer ces lments pour que le projet de base prenne en compte ces modifications. En effet, la base de sources conserve un historique de tous les lments du projet depuis leur cration. A chaque rintgration dun lment, le numro de version du projet de base est incrment de 1.
92 Partie 3 : Environnement de dveloppement
3 Le Gestionnaire de Sources
3.1Prsentation
WebDev innove dans la gestion du travail en groupe avec le gestionnaire de sources (appel galement GDS). Totalement intgr lenvironnement, le gestionnaire de sources (GDS) permet: un dveloppement performant en quipe, lhistorique des modifications et des versions, lautomatisation de la sauvegarde des sources des membres de lquipe dveloppement. Dimensionn pour des quipes de 1 100 dveloppeurs, le GDS favorise et normalise sans contrainte les changes entre dveloppeurs (mme en dveloppant seul, le GDS est utile car il contient lhistorique de vos applications). Le GDS utilise une base de sources: procdures, classes, pages, tats, composants, analyses, ... Cette base peut tre installe votre choix sur un serveur (en mode HyperFileSQL Classic ou HyperFileSQL Client/Serveur) ou sur un poste du rseau dans un rpertoire partag. Le GDS permet un fonctionnement connect en local et distance, via Internet ou une liaison HTTP ou HTTPS. Il est ainsi possible de travailler sur un projet depuis une agence ou depuis un site client sans crainte de perte des modifications effectues. Le GDS permet galement un fonctionnement dconnect (train, avion, ...).
3.2Principe dutilisation
Installation
Tous les lments du projet sont enregistrs dans la base de sources (sur le serveur). Cette opration est effectue la cration du projet ou lors de limportation dun projet existant dans le gestionnaire de sources. Chaque dveloppeur utilisant le gestionnaire de sources rcupre une copie du projet en local. Utilisation Pour travailler sur un lment du projet (page, tat,), le dveloppeur doit extraire llment de la base de sources, le modifier, puis le r-intgrer. Si llment est dj extrait, le dveloppeur peut demander la personne ayant extrait de r-intgrer llment (par lintermdiaire de la messagerie intgre). Pour profiter des modifications effectues, les autres dveloppeurs doivent synchroniser leur projet local avec le projet de rfrence (prsent dans la base de sources). Partie 3 : Environnement de dveloppement 93
Conseils Les sources de vos applications sont primordiales. Ces sources doivent tre traites avec lattention quelles mritent ! Voici donc une srie de conseils qui sappliquent au serveur qui hbergera vos sources: Utilisez un serveur ddi avec un disque de taille confortable (au moins 200 Go) Utilisez plutt le Gestionnaire de Sources (GDS) en mode Client/Serveur. Les disques durs peuvent avoir des problmes physiques: utilisez si possible un systme RAID I sur votre serveur (plusieurs disques stockant les mmes informations en double) Protgez lalimentation de votre serveur par un onduleur. Faites des sauvegardes rgulires de la base de sources (1 sauvegarde par semaine au minimum) Placez le serveur dans une zone "scurise", en utilisant un firewall.
4.3Sauvegardes
Il est conseill de faire rgulirement des sauvegardes de la base de sources du GDS. Ces sauvegardes peuvent tre effectues grce ladministrateur du GDS.
94
5.2Partage de ressources
Vous avez import dans le gestionnaire de sources un premier projet. Ce projet contient des lments partags avec dautres projets (classes, pages, procdures, feuilles de styles, ...). Le partage est une notion importante du GDS. Diffrentes mthodes sont disponibles pour effectuer le partage. Pour plus de dtails, consultez laide en ligne.
6.2Extraire un lment
Les diffrents modes dextraction Le GDS propose deux modes dextraction des lments du projet: le mode classique: si vous affichez un lment du GDS non extrait, un panneau indique que cet lment doit tre extrait pour tre modifi. Vous pouvez extraire immdiatement llment (bouton dextraction prsent dans le panneau). le mode automatique: si vous tentez de modifier un lment du GDS non extrait, le GDS propose automatiquement dextraire cet lment. Aprs la validation de lextraction, llment peut tre modifi. Remarque: ce mode est dconseill lors dune utilisation du GDS avec une connexion Internet lente. Pour changer le mode dextraction, slectionnez loption "Outils .. Options .. Options gnrales de WebDev", puis slectionnez longlet "Gnral". Loption "Extraction des lments la premire modification" permet de passer tous les projets ouverts depuis le logiciel en cours en mode automatique. Ouvrir un lment du projet pour modifier ses caractristiques Pour modifier les caractristiques dun lment dun projet gr par le GDS: 1.Extrayez llment du Gestionnaire de sources. 2.Slectionnez le mode dextraction de llment. Le mode dextraction peut tre: exclusif : personne ne pourra extraire cet lment jusqu sa rintgration. Llment pourra uniquement tre extrait pour test. pour test: llment pourra tre modifi mais les modifications ne pourront pas tre rintgres. multiple: llment pourra galement tre extrait par dautres utilisateurs. Dans ce cas, lors de la rintgration, il sera possible de visualiser les diffrences entre les diffrentes versions de llment. 3.Validez. Llment est ouvert. La barre de titre indique que llment est extrait.
Lors de la rintgration dun lment, un cran saffiche permettant deffectuer les actions suivantes avant de rintgrer llment: connatre les modifications effectues comparer llment de la base de sources avec llment local (extrait) accder lhistorique de llment dans la base de sources. Il est possible de r-intgrer les modifications effectues dans llment, tout en conservant llment extrait (option "Garder le fichier extrait").
6.3Rintgrer un lment
Les lments extraits du Gestionnaire de sources apparaissent entours dun trait rouge sous lditeur de projet. Pour rintgrer un lment, il suffit de slectionner loption "Rintgrer" dans le menu contextuel de llment (dans le graphe du projet ou dans le volet "Explorateur de projet"). 96 Partie 3 : Environnement de dveloppement
Les modifications faites par un invit seront perdues lors de la mise jour du projet depuis la base de donnes. Mode automatique Avec le mode automatique, le fichier projet est extrait uniquement si laction ralise le ncessite
(quel que soit lutilisateur). Lorsque laction sur le projet a t effectue, le fichier projet est automatiquement rintgr. Le mode automatique permet de ne plus avoir la gestion "Matre/Invit" sur le projet.
8 Administrateur du GDS
Ladministrateur de GDS permet de manipuler directement les diffrents projets inclus dans le gestionnaire de sources. Il permet par exemple de : grer les bases de sources (cration, connexion une base de sources) grer les branches grer les fichiers et les rpertoires prsents dans un projet de la base de sources (Ajouter, supprimer, renommer, des fichiers et des rpertoires) grer les diffrents fichiers de la base de sources (extraction, rintgration, partage, ). lancer certains outils (options, maintenances, ). restaurer une version dun projet. voir les historiques et les diffrences de versions de sources. annuler les extractions (en mode administrateur) purger une base, la sauvegarder, la restaurer ajouter des fichiers de tout type dans la base (.doc, .xls, .pdf, ...)
97
Composant interne
Un composant interne est un regroupement dlments dun projet. Ce regroupement permet de: Organiser un projet: vous pouvez crer des composants internes pour regrouper les lments dun projet, par exemple par fonctionnalit. Partager des lments entre diffrents projets par lintermdiaire du GDS (Gestionnaire de Sources).
Les lments dun composant interne peuvent tre privs ou publics: Les lments privs pourront tre manipuls uniquement par les autres lments du composant. Les lments publics pourront tre manipuls par les lments du projet utilisant le composant interne.
98
fiques. Autonomie totale: Le composant interne accde ses propres fichiers de donnes. Le composant interne utilise des contextes dexcution distincts de ceux du projet. Ce mode correspond au mode par dfaut si le composant utilise une analyse. Dans ce cas, il est ncessaire dindiquer lanalyse utilise par le composant interne. Il est galement possible de crer directement une nouvelle analyse. Cette analyse sera associe au composant interne. 6.Validez la cration du composant interne. A tout moment, il sera possible de: Modifier les caractristiques du composant interne grce la fentre de description du composant interne. Manipuler le composant interne et ses lments. Astuce: Un composant interne na pas de code de dclaration des globales. Il suffit dutiliser une collection de procdures pour effectuer linitialisation du composant interne.
100
Composant externe
Un composant externe est un ensemble dlments WebDev: pages, tats, analyse, ... Cet ensemble dlments effectue une fonctionnalit prcise. Par exemple, un composant externe peut correspondre une des fonctionnalits suivantes: Envoi de Fax, Envoi de-mails, ... Un composant externe WebDev peut tre redistribu dautres dveloppeurs WebDev (gratuitement ou non). Ces dveloppeurs pourront ainsi intgrer simplement la fonctionnalit propose par le composant externe dans leur site sans pour autant avoir accs au code source correspondant (sil na pas t lui aussi distribu). Le composant externe sera ensuite intgr au site et distribu avec lui.
101
Cette aide est gnre partir des commentaires de code. Remarque : Par dfaut, si un composant utilise une analyse, des fichiers, ... les fonctions HyperFi-
leSQL manipuleront ces lments dans un contexte indpendant. Ces paramtres peuvent tre modifis dans les options avances du composant. Pour plus de dtails, consultez laide en ligne.
sant externe.. Crer la procdure dinstallation dun composant". soit depuis la liste des composants gnrs partir du projet (option "Atelier .. Composant Externe .. Liste des composants gnrs partir de ce projet", bouton "Installation"). 2.Dans les diffrents plans de lassistant, spcifiez: le support dinstallation du composant. les langues proposes dans la procdure dinstallation. le rpertoire dinstallation par dfaut du composant. les modules optionnels installer. Il est possible de modifier la liste des fichiers distribuer avec le composant. Le fichier WDO sera automatiquement cr partir de cette liste. ... Par dfaut, les fichiers ncessaires linstallation dun composant sont crs dans le sous-rpertoire INSTALL COMPO du projet. Rappel: Lors de la cration de linstallation dune application, les fichiers ncessaires sont crs dans le rpertoire INSTALL du projet.
104
aucun problme de version ou de compatibilit ne sera rencontr. La recompilation est ncessaire dans les cas suivants: De nouvelles fonctions ont t ajoutes dans le composant et doivent tre prises en compte. Les paramtres de certaines procdures ont t modifis. Incompatibilit de la nouvelle version avec les anciennes versions du composant. ... 2.Distribution directe du fichier .WDK Fournissez directement une mise jour du composant (fichier .WDK) en clientle sans recompilation du projet. Cette possibilit sapplique en gnral lorsque: La nouvelle version sert corriger un ou des dysfonctionnements dune version antrieure. De nouvelles fonctions ont t ajoutes dans le composant mais ne sont pas ncessaires au bon fonctionnement du site.
105
les commentaires placs en tte des traitements suivants: Code dinitialisation des pages Code dinitialisation des tats Code dinitialisation des classes Code dinitialisation des collections de procdures. A quel moment la documentation est-elle gnre? La documentation du composant est gnre lors de la premire gnration du composant (option "Atelier .. Composant Externe .. Gnrer un composant"). Lors de cette gnration de la documentation: les commentaires existants dans le code sont uti 106 Partie 3 : Environnement de dveloppement
107
Diffusion dun composant avec WDO Pour diffuser un composant utilisant un fichier WDO: Si vous nutilisez pas de procdures dinstallation pour le composant, il est ncessaire de fournir: le fichier WDK le fichier WDI le fichier WDO tous les fichiers ncessaires rfrencs dans le fichier WDO.
Si vous utilisez une procdure dinstallation pour le composant, le fichier WDO sera automatiquement cr lors de la cration de la procdure dinstallation du composant. Il suffit pour cela dans lassistant de: 1. Demander la modification des fichiers installer (option "Modifier la liste des fichiers installer" dans les "modules additionnels"). 2. Slectionner les fichiers supplmentaires installer. Le fichier WDO sera automatiquement cr et install avec le composant.
108
Modes de gnration
Au del des sites web, WebDev vous permet galement de gnrer de nombreux autres types de projets.
Sites
Les sites sont le mode de gnration le plus frquemment utilis. WebDev permet de gnrer: des sites statiques, semi-dynamiques, dynamiques des sites PHP
Bibliothques
Une bibliothque est un fichier unique rassemblant plusieurs lments dun projet WebDev: des pages, des tats, etc. Il est possible de gnrer des bibliothques autonomes pouvant tre utilises par dautres sites.
Composants externes
Les composants externes sont des briques applicatives permettant de partager une ou plusieurs fonctionnalits spcifiques entre diffrentes applications. Un composant gnr avec WinDev peut galement tre utilis dans un projet WebDev ou WinDev Mobile.
Webservices
A partir dun projet WebDev, il est possible de gnrer un Webservice (galement appel service Web XML). Un Webservice expose un ensemble de fonctions (gnralement une ou plusieurs collections de procdures). Il les rend accessibles travers le web (ou un rseau priv) en utilisant les protocoles standard de communication HTTP et SOAP. Remarque: Un Webservice doit tre dploy sur un Serveur dApplication WebDev pour tre utilisable.
109
110
2.2RAD PHP
Comme sur tout projet associ une analyse, vous pouvez utiliser le RAD pour gnrer les pages de votre site. Le RAD prend en compte toutes les spcificits de la gnration PHP (champs, traitements, fonctions utilisables dans un site PHP gnr depuis WebDev).
111
visualiser les champs, traitements, fonctions WLangage non disponibles en gnration PHP. Ces erreurs apparaissent en violet dans le volet "Erreurs de compilation". Pour plus de dtails sur les lments WebDev non disponibles dans un site PHP, consultez laide en ligne.
112
Lors de linstallation de WebDev, le programme dinstallation propose: soit de crer la base des Centres de Contrle. Cette base sera automatiquement cre au format HyperFileSQL Classic dans le rpertoire spcifi. soit de partager une base de donnes des Centres de Contrle existante.
Partie 3 : Environnement de dveloppement 113
114
115
Pendant le dveloppement, les rgles mtier dfinies pour le projet sont affiches directement dans le volet "Rgles mtier" de lenvironnement de dveloppement. Ce volet prsente le nombre dlments du projet auxquels les rgles mtier sappliquent et le pourcentage de rgle actuellement ralis.
116
118
RAD RID
Le RAD (Rapid Application Development) et le RID (Rapid graphical Interface Design) permettent de crer des pages partir: de lanalyse lie au projet, des patterns RAD standard ou personnaliss, des gabarits. En gnration RAD, les pages gnres contiennent tout le code ncessaire leur fonctionnement. Ces pages peuvent tre testes immdiatement, avec les donnes prsentes sur le poste de dveloppement. En gnration RID, les pages gnres contiennent uniquement les champs lis aux rubriques de lanalyse. Tout le code ncessaire au fonctionnement de ces pages reste la charge du dveloppeur. Vous pouvez directement saisir votre code personnalis.
Le modle UML
WebDev permet de crer ces neuf types de modle UML: Diagramme de classes: dcrit de manire gnrale la structure dun systme. Diagramme de cas dutilisation: reprsente les fonctionnalits du systme du point de vue de lutilisateur. Diagramme dobjet: reprsente un ensemble dobjets et leurs relations un moment donn. Diagramme de composants: dcrit larchitecture physique et statique dune application informatique. Diagramme dactivit: reprsente le comportement dune mthode ou le droulement dun cas dutilisation. Diagramme de squences: reprsente lordre chronologique des messages envoys et reus par un ensemble dobjets. Diagramme de collaboration: prsente lorganisation structurelle des objets qui envoient et reoivent des messages. Diagramme dtats-transitions: prsente un automate tats finis. Diagramme de dploiement: montre la rpartition des matriels (les nuds) utiliss dans un systme et lassociation des programmes excutables ces matriels.
120
Un diagramme de classes est compos des lments suivants: Classe : reprsente les structures de lapplication. Chaque classe est divise en trois compartiments: le nom de la classe indique ce que la classe est et non ce quelle fait. les attributs de la classe donnent les caractristiques de la classe. les oprations de la classe reprsentent les actions possibles sur la classe. Par exemple, la classe Stock contient lattribut ListeProduits. Cette classe regroupe aussi les oprations AjouteProduit et RetireProduit. Ces oprations sont applicables aux instances de la classe. Remarque: Le langage UML dfinit trois niveaux de visibilit pour les attributs et les oprations: - Public: llment est visible par toutes les autres classes. - Protg: llment est visible par la classe elle-mme et par les sous-classes. - Priv: llment est visible uniquement par la classe. Relation : dcrit le comportement des classes entre elles. Trois types de relations existent: Association : Relation structurelle entre classes. Par exemple, la classe Commande est lie aux classes Produit et Client. Un Client peut passer plusieurs Commandes. Une commande est constitue de plusieurs produits. Une commande doit obligatoirement contenir au moins un produit. Dpendance: Relation dutilisation qui tablit que les instances dune classe sont relies aux instances dun autre lment. Par exemple, la classe Commande utilise la classe Stock: avant dajouter un produit dans une commande, il est ncessaire de vrifier que ce produit est en stock. Gnralisation: Relation entre une classe gnrale (parent) et une classe spcifique (enfant) qui en drive. Par exemple, les classes Bateau voile et Bateau moteur sont drives de la classe Bateau.
Paquetages : permettant de diviser et dorganiser la reprsentation du diagramme (de la mme manire que les rpertoires organisent les fichiers). Chaque paquetage peut contenir des classes et des relations. Grce la gnration dun diagramme de classes, il est possible de crer la structure des classes WebDev utilises dans votre application.
122
Un diagramme de cas dutilisation est compos des lments suivants: Acteur : reprsente le rle des utilisateurs de lapplication. Par exemple, une personne qui travaille dans une banque sera le Gestionnaire de prts. Si cette personne un compte dans cette banque, elle jouera aussi le rle de Client. Cas dutilisation: dcrit une squence dactions excutes par lapplication. Par exemple, Passer une commande, Saisir une facture, Crer une nouvelle fiche client,... Un cas dutilisation dcrit ce que fait une application mais ne prcise pas comment lapplication le fait. Relation : dcrit le comportement des acteurs par rapport aux cas dutilisation. Trois types de relations existent: Association : Relation structurelle entre deux lments relis. Dpendance: Relation qui tablit quun lment en utilise un autre. Par exemple, le Client dune banque peut retirer de largent dans un distributeur automatique. Dans ce cas, laction Retrait dargent dpend du Client. Pour pouvoir retirer de largent, le Client doit pralablement saisir son code confidentiel. Dans ce cas, laction Retrait dargent dpend de la Saisie du mot de passe.
Paquetage : divise et organise la reprsentation du diagramme (de la mme manire que les rpertoires organisent les fichiers). Chaque paquetage peut contenir des acteurs et des cas dutilisation.
2.3Diagramme dobjets
Un diagramme dobjets reprsente un ensemble dobjets et leurs relations un moment donn. Un diagramme dobjets est utilis pour montrer un contexte (avant ou aprs une interaction entre objets par exemple). Par exemple, le diagramme suivant prsente une partie de la structure gnrale des motos:
Gnralisation : relation permettant dorganiser les lments selon une hirarchie. Par exemple: lacteur Client peut tre de deux types: Client individuel ou Client dentreprise. la vrification de lidentit dun utilisateur peut tre effectue de deux faons: saisie du mot de passe ou vrification de lempreinte digitale.
Un diagramme dobjets est compos des lments suivants: objet : reprsente une instance dune classe. Remarque : Si un diagramme de classes est ouvert, il est possible de crer un objet partir dune classe prsente dans ce diagramme (drag and drop partir du volet "Analyse UML"). objet composite: reprsente de manire visuelle un objet form dautres objets. Par exemple: une fentre qui contient des ascenseurs, des bouPartie 4 : Concepts avancs 123
2.5Diagramme dactivit
Un diagramme dactivit reprsente le comportement dune mthode ou le droulement dun cas dutilisation. Par exemple, le diagramme suivant prsente le droulement dun barrage:
2.4Diagramme de composants
Un diagramme de composants dcrit larchitecture physique et statique dune application informatique. Par exemple: fichiers sources, librairies, excutables,... Par exemple, le diagramme suivant prsente le fonctionnement dun programme permettant de se loguer en mode texte sous Unix.
Un diagramme de composants est compos des lments suivants: module : reprsente les diffrents lments physiques constituant une application informatique. Par exemple: un fichier, une librairie,... Un module peut tre reprsent: soit par une spcification qui montre linterface du module. Cette spcification peut tre gnrique dans le cas de classes paramtrables. soit par son corps qui prsente limplmentation du module. tche : reprsente un composant ayant son propre flot (thread) de contrle. programmes principaux de lapplication informatique. sous-programmes : regroupent les procdures et les fonctions qui nappartiennent pas des classes.
Un diagramme dactivit est compos des lments suivants: activit: reprsente une tape particulire dans lexcution dun mcanisme. Par exemple: "Etablir un devis", "Ouvrir la fentre", "Vrifier les connaissances",... barre de synchronisation: permet de synchroniser les diffrentes activits: soit en indiquant les activits effectuer avant une certaine activit. Par exemple: "Appuyer sur lembrayage" et "Enclencher une vitesse" avant de "Relcher lembrayage". soit en indiquant les activits effectuer en parallle. objet: permet de rattacher des activits lobjet qui ralise ces activits. Par exemple, les activits "Commander" et "Payer" sont rattaches lobjet "Client"; les activits "Enseigner", "Contrler les connaissances" sont rattaches lobjet "Enseignant". mission de signal: reprsente lenvoi dun signal vers un objet. attente de signal: reprsente lattente dun signal en provenance dun objet. transition: reprsente le passage dune activit termine une autre. Par exemple: "Trop deau", "Assez dargent",...
124
2.6Diagramme de squence
Un diagramme de squence reprsente lordre chronologique des messages envoys et reus par un ensemble dobjets. Par exemple, le diagramme suivant reprsente le dbut dune communication tlphonique:
2.7Diagramme de collaboration
Un diagramme de collaboration prsente lorganisation structurelle des objets qui envoient et reoivent des messages. Par exemple, le diagramme suivant montre lutilisation dun ascenseur par une personne:
Un diagramme de squence est compos des lments suivants: objet : reprsente les diffrents objets utiliss. Chaque objet est reprsent par un carr surmontant une ligne en pointill. Cette ligne reprsente la dure de vie de lobjet. Par exemple: "Appelant", "Appel",... priode dactivation dun objet: Sur la ligne de vie dun objet, il est possible dinsrer des priodes dactivation de lobjet. Ces priodes reprsentent les moments o lobjet est actif. message : reprsente, grce des flches horizontales, les messages changs entre les diffrents objets. Ces flches sont orientes de lmetteur du message vers le destinataire. Lordre denvoi des messages est donn par la position des flches sur laxe vertical. Par exemple: "Dcroche", "Sonnerie",...
Un diagramme de collaboration est compos des lments suivants: objet: reprsente les diffrents objets utiliss. acteur: reprsente un lment externe du systme. Par exemple une personne. message : reprsente les messages changs entre les diffrents objets.
2.8Diagramme dtats-transitions
Un diagramme dtats-transitions prsente un automate tats finis. Il permet ainsi de dcrire les changements dtats dun objet ou dun composant. Un tat se caractrise par sa dure et sa stabilit. Une transition reprsente le passage instantan dun tat vers un autre. Une transition est dclenche: soit par un vnement. soit automatiquement lorsquaucun vnement dclencheur est spcifi.
Par exemple, le diagramme suivant prsente les diffrentes tapes dune machine laver les voitures:
2.9Diagramme de dploiement
Un diagramme de dploiement montre la rpartition physique des matriels (les nuds) utiliss dans un systme et lassociation des programmes excutables ces matriels. Par exemple, le diagramme suivant prsente les diffrents matriels utiliss dans une entreprise:
Un diagramme dtats-transitions est compos des lments suivants: tat: reprsente la valeur des attributs dun objet un instant donn. tat initial: reprsente ltat au dmarrage du systme. tat final: reprsente ltat dans lequel se trouve le systme la fin du fonctionnement. super-tat: permet de structurer le diagramme en indiquant plusieurs niveaux de distinction entre les tats. historique: reprsente le dernier tat actif dun super-tat. souche: permet de symboliser les tats contenus dans un super-tat. Il est ainsi possible de relier ces tats dautres tats nappartenant pas au super-tat. transition: reprsente le passage dun tat un autre.
Un diagramme de dploiement est compos des lments suivants: classe de nuds: reprsente une classe de ressource matrielle. Par exemple: un serveur, un PC, une imprimante,... instance dun nud: reprsente une ressource matrielle. Par exemple: le serveur numro 3, limprimante numro 7,... connexion: dcrit le support de communication entre deux nuds. Par exemple: liaison RNIS ou TCP/IP.
126
Groupware utilisateur
Le Groupware Utilisateur permet dinclure simplement une gestion des utilisateurs et de leurs droits dans un site WebDev. Deux types dutilisateurs sont pris en compte: utilisateur simple, utilisant directement le site. superviseur, pouvant configurer les utilisateurs et leurs droits.
veau mot de passe. Les caractres saisis apparaissent sous forme dtoiles. Remarque : Ce mot de passe est utilis par exemple lors de la r-indexation ou de louverture des fichiers de donnes avec loutil WDMAP. Pour plus de dtails sur ces fichiers de donnes et leur configuration (rpertoire dinstallation, ...), consultez le paragraphe "Les fichiers de donnes", page 132.
3.2Tester le site
Lors du test dun site grant le groupware utilisateur, la premire page apparaissant est automatiquement la page de login (quelle que soit la premire page dfinie dans votre site). Par dfaut, un seul utilisateur existe: le superviseur. Pour se connecter en tant que superviseur, il suffit de saisir les informations suivantes dans la page de login: Nom: SUPERVISEUR Mot de passe: SUPERVISEUR Vous pouvez alors soit tester votre site, soit configurer le fonctionnement du groupware. Remarques: Pour que la premire page de votre site ne soit pas la page de login, cochez loption "Lancement manuel" dans les options du Groupware Utilisateur. Il suffira dutiliser la fonction du WLangage gpwOuvre pour afficher la page de login. Les pages de gestion du groupware utilisateur sont excutes avant le code dinitialisation du projet.
La premire page de votre site dfinie dans le projet sera lance aprs la page de login (lorsque lutilisateur nest pas le superviseur). Pour ne pas lancer le groupware utilisateur lors des tests du site, il suffit de dcocher loption "Atelier .. Paramtrer le Groupware Utilisateur". Si vous rebranchez le groupware utilisateur par la suite, les fichiers de donnes utiliss prcdemment pour le groupware utilisateur ne seront pas effacs.
130
le login de lutilisateur. Ce login correspond lidentifiant de lutilisateur lors de sa connexion lapplication. le mot de passe de lutilisateur. Ce mot de passe nest pas obligatoire, et peut tre saisi par lutilisateur lui-mme lors de sa premire connexion (cochez loption correspondante). Il est possible de dfinir lutilisateur comme tant un superviseur du site. Il est bien entendu possible de modifier ou de supprimer un utilisateur. La suppression dun utilisateur permet soit de supprimer entirement lutilisateur, soit de supprimer uniquement ses droits. Les utilisateurs peuvent tre rassembls en groupes. Lors de la cration dun groupe, il est possible de copier les droits prcdemment dfinis pour un autre groupe ou utilisateur. Il est possible de crer ou de supprimer un groupe. Lors de la suppression dun groupe, il est possible soit de supprimer le groupe et ses utilisateurs, soit de supprimer uniquement le groupe. Dans ce cas, les utilisateurs ne sont plus associs un groupe. Remarques: Il est conseill de changer le mot de passe du superviseur ds la premire utilisation. Le groupe "Dfaut" est le groupe propos par dfaut dans le groupware utilisateur. Ce groupe a par dfaut tous les droits sur lapplication. Il nest pas possible de supprimer le groupe <Au-
cun> et le groupe DEFAUT. Si vous utilisez un annuaire LDAP, vous avez la possibilit dimporter les utilisateurs prsents dans lannuaire pour grer les droits de ces utilisateurs.
de crer la procdure dinstallation. Il suffit alors dajouter les fichiers de donnes du groupware lors de la cration de linstallation du site. soit de livrer un dossier de programmation permettant de donner les noms des champs, des groupes de champs et des options grer selon le niveau dutilisation du site.
Mot de passe: Par dfaut, les fichiers de donnes du groupware utilisateur ont un mot de passe spcifique. Ce mot de passe est: "PCSGPW2001". Pour changer ce mot de passe: 1.Affichez la fentre de configuration du groupware utilisateur (option "Atelier .. Paramtrer le groupware utilisateur"). 2.Dans longlet "Fichiers", saisissez le nouveau mot de passe. Les caractres saisis apparaissent sous forme dtoiles. Remarque : Ce mot de passe est utilis par exemple lors de la r-indexation ou de louverture des fichiers de donnes avec loutil WDMAP. Fichiers de donnes utilisateur Ces fichiers sont les suivants: GPWUtilisateur Fichier des utilisateurs. Contient toutes les caractristiques des utilisateurs (login, nom, prnom, mot de passe, ...). GPWUtilisateurCon- Fichier des groupes dutilisafiguration teurs GPWLogConnexion Fichier contenant lhistorique des connexions. Ce fichier est prsent uniquement si lhistorique des connexions a t demand. Les rubriques de ces fichiers de donnes sont dtailles dans laide en ligne. O sont crs ces fichiers de donnes? Par dfaut, ces fichiers de donnes (mode HyperFileSQL Classic) sont crs dans un sous-rpertoire de votre projet (rpertoire EXE\GPW_<Nom du projet>). Lors de lintgration du groupware utilisateur, vous pouvez spcifier un rpertoire diffrent pour raliser les tests de votre site. Lors de la prparation de la procdure dinstallation, il est possible de paramtrer lemplacement de ces fichiers de donnes. Il est ainsi possible de slectionner un rpertoire commun plusieurs sites grant le groupware utilisateur. Si loption "Lancement manuel" a t slectionne, la fonction gpwOuvre permet de lancer la page de login du groupware utilisateur, mais aussi de personnaliser le rpertoire des fichiers de donnes du groupware utilisateur. Ce rpertoire, sil est prcis, sera pris en compte.
Remarque: si aucun paramtrage spcifique nest effectu, les fichiers de donnes Utilisateur (mode HyperFileSQL Classic) seront crs dans un sous rpertoire du rpertoire dinstallation de la bibliothque nomm \GPW_<Nom du projet>. Fichiers de donnes des droits Ces fichiers sont les suivants: GPWConfiguration Fichier contenant les descriptions des configurations disponibles. Chaque configuration est associe un groupe dutilisateurs. GPWConfiguratio- Etat de chaque lment du nElment site pour chaque configuration. Par exemple permet de stocker si pour lutilisateur "Secrtaire", loption "Menu statistiques" doit tre gris ou non. GPWElment Fichier contenant les diffrents lments du site configurer (champs des pages, options de menu, ...).
Les rubriques de ces fichiers de donnes sont dtailles dans laide en ligne. O sont crs ces fichiers de donnes? Par dfaut, ces fichiers de donnes (mode HyperFileSQL Classic) sont crs dans un sous-rpertoire de votre projet (rpertoire EXE\GPW_<Nom du projet>). Lors de la prparation de la procdure dinstallation, il est possible de paramtrer lemplacement de ces fichiers de donnes. Il est ainsi possible de slectionner un rpertoire spcifique pour les fichiers des droits du site. Si loption "Lancement manuel" a t slectionne, la fonction gpwOuvre permet de lancer la fentre ou la page de login du groupware utilisateur, mais aussi de personnaliser le rpertoire des fichiers de donnes du groupware utilisateur. Ce rpertoire, sil est prcis, sera pris en compte. Remarque: si aucun paramtrage spcifique nest effectu, les fichiers de donnes des droits seront crs dans un sous rpertoire du rpertoire dinstallation nomm \GPW_<Nom du projet>.
Lemplacement de ces fichiers de donnes peut tre configur: lors de linsertion du groupware utilisateur pour les tests. lors de la cration de la procdure dinstallation du site. par programmation. Pour plus de dtails, consultez "Les fichiers de donnes", page 132.
supprims (GPWConfigurationElment, GPWConfiguration et GPWElment), tous les utilisateurs auront tous les droits sur tout le site. Pour plus de dtails sur les diffrents types de fichiers de donnes grs par le groupware utilisateur, consultez "Les fichiers de donnes", page 132.
Sites multilingues
WebDev permet de crer trs rapidement des sites multilingues partir dun mme projet.
136
tions seront automatiquement prises en compte pour toutes les langues communes lanalyse et au projet. pour les informations imprimes dans le dossier de lanalyse (notes du fichier de donnes ou de la rubrique). pour les informations gres par "Etats et Requtes".
teur, il est ncessaire de choisir le mode "Personnalis" lors de lintgration du groupware utilisateur dans votre site (option "Atelier .. Paramtrer le groupware utilisateur"). Les diffrentes pages du groupware utilisateur seront intgres dans votre projet. Il ne restera plus qu traduire ces pages. Remarque: Si ncessaire, dcochez loption "Lancement automatique": vous pourrez ainsi afficher une page de slection de langue avant de lancer la page de login.
Le drapeau indique que des traductions existent pour cette chane de caractres. Pour afficher la fentre de traduction, il suffit de cliquer sur ce drapeau. Le chiffre (2 dans notre exemple) indique le nombre de traductions saisies pour cette chane de caractres. Remarque: Pour transformer tous les messages de votre code en messages multilingues, slectionnez loption "Code .. Messages multilingues .. Convertir les chanes simples en messages multilingues".
Dautres informations sont utiles: ladministrateur physique de la socit, numro RCS de la socit... les informations de dclaration la CNIL pour les sites collectant des informations personnelles sur leurs utilisateurs. la date de ralisation du site ou de dernire mise jour. le thme du site, son contenu et sa finalit.
140 Partie 4 : Concepts avancs
Vos pages sont trs longues? Permettez linternaute de retourner directement en haut de page.
Lorsque vos pages sont trs longues (plus de 2 crans), utilisez des boutons ou des liens pour retourner rapidement en haut de la page (et viter lutilisation de lascenseur).
Dbut de la page
Vrifiez que vos boutons utilisent tous le mme "look", et vrifiez lalignement de vos boutons. Lditeur de page dispose dun systme de magntisme et dalignement automatique pour faciliter cette tche.
Les framesets, mme sils semblent tre une approche efficace au premier abord souffrent de problmes particuliers: ils sont composs en fait de plusieurs pages. Leur rfrencement auprs des moteurs de recherche est plus difficile. La navigation (notamment lemploi de la touche "Back" du navigateur) est difficile comprendre pour les utilisateurs. Il est aujourdhui recommand dviter de dvelopper des sites en utilisant des framesets.
Partie 4 : Concepts avancs 141
Vous affichez des listes de plus de 20 lments? Utilisez plusieurs pages pour lister les lments. Le champ rglette vous permettra de passer dune page lautre sans avoir de code crire et linterface globale de votre site sera moins charge. Le site sera de ce fait plus agrable et plus rapide consulter.
Pour conserver les proportions de vos images, il est conseill de choisir: soit des images 100% (pour les images statiques ou dynamiques ou si limage est de taille identique celle du champ). soit des images homothtiques centres (pour les images gnres ou les images de taille varie provenant dune base de donnes): la taille de limage sadaptera homothtiquement la zone dfinie pour limage. Les proportions seront respectes.
Image 100 % si la dimension du champ correspond celle de limage, sinon image Homothtique
142
8 Vous utilisez des images? Testez leur bon affichage dans vos pages.
En cas de problme daffichage, vrifiez principalement que: limage existe, limage est enregistre dans un format reconnu par le navigateur (GIF ou JPG par exemple), limage est prsente dans le sous-rpertoire du projet <NomProjet>_WEB.
Linternaute doit saisir une quantit? Utilisez une combo pour simplifier la saisie des quantits.
Sous lditeur
Sous le navigateur
Remarque: La superposition ne fonctionne pas sur les navigateurs trs anciens (antrieurs Internet Explorer version 4 ou Netscape 4.7).
144
Diffrents types dimages peuvent tre utiliss avec WebDev. Chaque type correspond une utilisation spcifique de limage.
Voici un rcapitulatif des caractristiques de ces images et de leur mode dutilisation. Conseil: Privilgiez toujours un affichage homothtique pour les images provenant dune base de donnes.
Type de limage
Statique
Caractristiques
Limage associe une image statique doit tre slectionne sous lditeur WebDev. Cette image pourra tre change en programmation uniquement dans un code navigateur. Les formats dimage reconnus par WebDev sont autoriss. Lors de lenregistrement de la page, limage est automatiquement convertie au format GIF, JPEG ou PNG, et enregistre dans le rpertoire <NomProjet>_WEB (sauf si limage est dj au format GIF ou JPEG). Lors du dploiement du site WebDev: le fichier associ limage doit tre prsent sur le serveur. si limage est change dans un code navigateur, la nouvelle image doit tre accessible et dans un format reconnu par le navigateur. Une image dynamique peut tre change par programmation dans un code serveur ou dans un code navigateur. Limage associe au champ par programmation doit tre: prsente dans le rpertoire <NomProjet>_WEB. dans un format reconnu par le navigateur (GIF, JPEG ou autre) Attention: lutilisation de mmos binaires nest pas possible.
Image non modifie pendant lutilisation du site (logo de la socit,...) Image modifie uniquement dans un code navigateur (image slectionne par un champ Upload).
Dynamique
Image modifie pendant lutilisation du site (image du produit dans une fiche, photo dans un annuaire, ...) Cest le type dimage le plus souvent utilis.
Gnre
Image dessine pendant lutilisation du site: - graphes (fonctions grXXX) - dessins (fonctions dXXX) Il est possible dutiliser une image de fond.
Une image gnre est construite au cours de lutilisation du site dynamique WebDev. Il est dconseill dutiliser ce type dimage pour afficher des fichiers de type "image" existants: les performances de votre site risquent dtre rduites. Quand le navigateur demande laffichage de limage (lors de laffichage ou de la ractualisation de la page par exemple), une image temporaire du dessin en cours est ralise sur le serveur et enregistre au format JPG. Cette image est affiche sur le navigateur.
Ces images sont enregistres dans des mmos binaires (mmo) ou dans des champs texte (chemin). Il est conseill dutiliser une image Homothtique centre: toutes les images affiches seront redimensionnes proportionnellement afin dtre affiches dans le champ image.
146
Ambiance
Lambiance dun site peut tre slectionne dans la fentre des proprits du projet (option "Projet .. Description du projet"). Les ambiances sont configures dans longlet "Ambiance, Styles". De nombreuses ambiances sont livres en standard avec WebDev.
Une ambiance est compose de: une feuille de styles contenant des styles WebDev. un rpertoire dimages. une palette de couleurs par dfaut. un ensemble dtats utilis comme base pour construire les nouveaux tats du projet. Les ambiances peuvent tre interchanges volont pour modifier laspect graphique dun site. Lorsque vous changez lambiance, WebDev adapte automatiquement laspect visuel de tous les champs du site.
Partie 4 : Concepts avancs 147
Lambiance dune page peut tre dfinie trois niveaux diffrents (par ordre dcroissant de priorit): Dans le projet. Dans le modle de pages dont la page hrite des proprits. Dans la page elle-mme. Il faut dfinir lambiance gnrale au niveau du projet. Si un ensemble de pages doit utiliser une ambiance particulire (par exemple les pages de "Promotion" dun site de vente), il est possible de remplacer lambiance du projet en la redfinissant au niveau dun modle de pages. Si une page particulire doit avoir une ambiance diffrente, celleci peut tre choisie au niveau de la page elle-mme.
148
Rinitialiser les champs de la page Exemple: Lien permettant de vider les champs de la page en cours. Pour effectuer ce type de traitement, utilisez un lien de type "R-initialiser les champs de la page".
Partie 4 : Concepts avancs 149
Pour empcher le retour sur une page par le bouton "Prcdent" du navigateur: 1. Affichez la page sous lditeur de pages de WebDev. 2. Slectionnez loption "Affichage .. Description de la slection". La fentre de description de la page saffiche. 3. Affichez longlet "Dtail". 4. Cochez loption "Empcher le retour sur cette page par le bouton "Prcdent" du navigateur". 5. Validez.
150
Le contexte contient la liste des lments affichs dans cette table: lecteurs de DVD ROM de la marque CREATIVE.
Les priphriques de la marque "NEC" sont affichs. Le contexte de la page sur le serveur est mis jour: le contexte contient la liste des lments affichs dans cette table (lecteurs de DVD-ROM de la marque NEC). Etape 3: Clic sur le bouton "Back" du navigateur.
La page dynamique affiche sur le navigateur correspond la page affiche ltape1. Cependant le serveur nest pas inform par le navigateur que linternaute a utilis la touche Back. Le contexte de page sur le serveur est toujours celui correspondant aux enregistrements "NEC". Si linternaute slectionne dans la table un lment (DVD ROM de la marque "CREATIVE"), llment slectionn sera llment correspondant dans le contexte: un lment NEC. Il y a dsynchronisation entre la page dynamique visualise et le contexte de page prsent sur le serveur. Le moteur WebDev dtecte cette dsynchronisation.
1.2Exemple de dsynchronisation
Voici un exemple de site: Une page du navigateur contient une table fichier reli au fichier ITEM et un lien "Suivant". Le fichier ITEM ne contient quune rubrique, chaque enregistrement est constitu dune lettre de lalphabet. La page permet dafficher 6 lignes de la table, le lien "Suivant" permet dafficher les 6 suivantes. A louverture de la page, la table affiche les 6 premiers enregistrements du fichier (de A F). Voici un enchanement dactions faites par lutilisateur: 1.Clic sur le lien "Suivant" Rsultat: le serveur se positionne sur les 6 enregistrements suivants de ITEM et renvoie au navigateur leurs contenus. Le navigateur affiche la page suivante de la table avec les 6 nouveaux contenus (G L). 2.Clic sur "Prcdent" du navigateur Rsultat: le navigateur affiche la page prcdant la premire action. La table affiche contient les lettres A F. Le serveur na pas t sollicit, il est donc toujours positionn sur les enregistrements G L. 3.Clic sur "Suivant" Rsultat: le serveur se positionne sur les 6 enregistrements suivants de ITEM (donc de M R). Le navigateur se synchronise avec le serveur et affiche les mmes lments: linternaute a limpression que certaines informations ne sont pas affiches. Ce dysfonctionnement peut avoir des consquences inattendues lors dune modification dun enregistrement de fichier (modification de lenregistrement qui nest pas celui visualis par linternaute par exemple). Rappel: chaque action sur le navigateur doit entraner une action du serveur: le serveur envoie alors une rponse au navigateur. Or le clic sur le bouton "Prcdent" du navigateur tant une action navigateur indpendante de votre site WebDev, la deuxime condition peut ne pas tre ralise.
154
2.2Mise en place
Pour dsactiver le bouton "Prcdent" du navigateur pour une page prcise: 1.Affichez longlet "Dtail" de la fentre de description de la page (option "Description" du menu contextuel de la page). 2.Cochez loption "Empcher le retour sur cette page depuis le bouton "Prcdent" du navigateur". 3.Validez. Pour dsactiver le bouton "Prcdent" du navigateur pour un frameset: 1.Affichez longlet "Dtail" de la fentre de description du frameset (option "Description" du menu contextuel de la frame). 2.Cochez loption "Empcher le retour sur ce frameset depuis le bouton "Prcdent" du navigateur". 3.Validez. Pour dsactiver le bouton "Prcdent" du navigateur pour toutes les pages du projet: 1.Affichez la description du projet (option "Projet .. Description du projet"). 2.Cliquez sur longlet "Options". 3.Cochez loption "Empcher le retour sur la page depuis le bouton "Prcdent" du navigateur". 4.Validez. Cette option sera automatiquement prise en compte pour toutes les nouvelles pages du site.
2.1Fonctionnement
La dsactivation de la fonction "Page prcdente" du navigateur entrane linsertion du code Javascript suivant dans la page HTML gnre:
<SCRIPT LANGUAGE="JavaScript"> history.forward() </SCRIPT>
Lors de lexcution de la page sous un navigateur, il sera impossible de revenir sur cette page par la touche "Prcdent" du navigateur. Remarques: Lutilisation du bouton "Prcdent" du navigateur peut entraner un clignotement de la page. Ce mcanisme peut tre mis en chec si un clic sur le bouton [STOP] du navigateur intervient avant lexcution de linstruction forward() par le navigateur.
3 Gestion de la synchronisation
3.1Prsentation
Grce au mcanisme de synchronisation des pages, lors de chaque action effectue dans une page une vrification de synchronisation est automatiquement ralise. Cette vrification consiste vrifier si la page affiche sur le navigateur correspond bien au contexte de page prsent sur le serveur. Deux modes de gestion de la synchronisation sont disponibles: 1.Gestion de la synchronisation par dfaut. 2.Gestion de la synchronisation par programmation, dans le code de synchronisation de la page.
2.Validez. Cette page sera automatiquement incluse dans lhistorique des pages du navigateur: il sera possible de revenir sur cette page par la touche "Prcdent" du navigateur. Pour mettre en place la gestion de la synchronisation dans toutes les pages du projet: 1.Dans la description du projet (option "Projet .. Description du projet", onglet "Options"), cochez loption "Utiliser le mcanisme de synchronisation des pages". 2.Validez. Les pages du projet seront automatiquement incluses dans lhistorique des pages du navigateur: il sera possible de revenir sur ces pages par la touche "Prcdent" du navigateur.
Remarques: Ce mode de gestion ne ncessite aucun code WLangage particulier. Pour les champs de la page ne ncessitant pas une gestion de la synchronisation (bouton "Fermer" par exemple) il est possible de dbrancher le mcanisme de synchronisation: il suffit de cocher loption "Dsactiver le mcanisme de synchronisation des pages pour ce champ" dans longlet "Avance" de la description du champ. Le message davertissement peut tre personnalis (voir le paragraphe suivant).
156
1re connexion
Le site WebDev enregistre des informations donnes par linternaute sur son poste.
Le nouvel internaute doit ici saisir son nom et son mot de passe
Connexions suivantes
Le site WebDev lit des donnes prcdemment enregistres sur le poste de linternaute.
Le site WebDev affiche par dfaut les informations lues dans le cookie
Pour crer des cookies dans un site WebDev, utilisez la fonction du WLangage CookieEcrit. Pour lire les cookies dans un site WebDev, utilisez la fonction du WLangage CookieLit.
158
1. Le client valide sa commande. 2. Le site WebDev demande un dbit au prestataire. 3. Le prestataire demande la saisie du numro de carte. 4. Le client saisit son numro de carte. 5. Aprs vrification, le prestataire envoie un numro daccord. 6. La commande est accepte.
160 Partie 4 : Concepts avancs
Utilisez cette mthode lorsque linternaute doit envoyer un email une adresse dfinie: auteur du site, support technique, service commercial, ... La fonction navigateur EmailOuvreMessagerie permet douvrir le logiciel de messagerie de linternaute. Certains paramtres peuvent tre remplis par dfaut: adresse email du destinataire, ...
Cette mthode permet dutiliser directement la messagerie de linternaute: aucun traitement spcifique nest effectuer dans le site WebDev.
Partie 4 : Concepts avancs 161
Dans ce cas, cest le serveur qui gre lenvoi des emails. Lenvoi des emails peut tre ralis: directement dans le site dynamique WebDev (par exemple pour un transfert de donnes par email, ou pour un email de validation de commande); par le spooler demail (livr avec WebDev).
Utilisez cette mthode pour une gestion personnalise des emails: un contrle sur le contenu des emails envoys par les internautes (cas dun site de type "liste de diffusion"), la vrification de la validit de ladresse du destinataire, le cryptage des informations envoyes par emails, la validation dun traitement, ...
162
164
Lanalyse dun projet WinDev correspond au MLD (Modle Logique des Donnes). Toute la structure et lorganisation des donnes sont dcrites: les donnes sont regroupes par fichier. Chaque fichier contient plusieurs donnes appeles rubrique. Dans lanalyse, il est possible de lier la description dun fichier de donnes un type de fichier (HyperFileSQL, Oracle, ...).
165
Lanalyse en pratique
1 Prsentation
Lorsquun projet utilise des fichiers de donnes, ce projet doit tre associ une analyse. Une analyse permet de dcrire les structures de donnes (fichiers, rubriques,...) utilises dans votre projet. Pour dcrire une analyse, deux mthodes sont possibles: 1re mthode : Cration directe de lanalyse (cest-dire un Modle Logique des Donnes (MLD)). Cette opration est dtaille dans le paragraphe "Cration dun MLD (Modle Logique des Donnes)", page 166. 2me mthode : Cration du Modle Conceptuel des Donnes (MCD), puis cration automatique de lanalyse partir du MCD. Ces oprations sont dtailles dans les paragraphes "Cration dun MCD (Modle Conceptuel des Donnes)", page 172 et "Gnration du MCD en MLD", page 173. Ce chapitre prsente chacune de ces mthodes.
166
si le fichier de donnes possde une rubrique de type "Identifiant automatique". La valeur de cette rubrique est unique pour chaque enregistrement et est automatiquement calcule par WebDev. le type de la base de donnes pour laquelle le fichier de donnes va tre cr. Selon le type choisi, ce fichier de donnes sera manipul par le moteur HyperFileSQL, par un pilote OLE DB ou par un des accs natifs de WebDev (SQL Server, Oracle,...). si la taille du fichier peut dpasser 2 Go. Cette option est utilisable uniquement si le systme des fichiers du poste serveur et des postes sur lequel les fichiers de donnes sont installs pour WebDev est au format NTFS (Windows 2000, NT ou XP). Attention: Si cette option est coche, il ne sera pas possible douvrir ce fichier de donnes sous Windows 95, 98 ou Me. si le fichier de donnes doit grer la rplication. Cette option permet de grer les mises jour automatiques de bases de donnes identiques et distantes. Pour plus de dtails sur la rplication, consultez laide en ligne. 4.Le fichier de donnes cr devient le fichier de donnes en cours. La fentre de description des rubriques du fichier de donnes souvre automatiquement. Vous pouvez dcrire les rubriques du fichier de donnes. Pour importer une description pr-dfinie dun fichier de donnes: 1.Slectionnez loption "Insertion .. Fichier de donnes". 2.Cochez loption "Slectionner une description parmi des fichiers de donnes pr-dfinis". 3.Choisissez le fichier de donnes pr-dfini. Ce fichier de donnes sera import dans lanalyse en cours. Ce fichier de donnes pourra tre modifi par la suite. 4.Slectionnez les rubriques conserver. Ces rubriques pourront tre modifies par la suite. 5.Spcifiez si les liaisons doivent tre automatiquement recherches. Si cette option est coche, les rubriques de mme nom seront relies. 6.Le fichier de donnes import est automatiquement insr dans lanalyse en cours.
Remarque: Pour modifier un fichier de donnes ou les rubriques dun fichier de donnes, slectionnez le fichier de donnes et activez loption "Structure de fichiers .. Description des fichiers de donnes" ou "Structure de fichiers .. Rubriques". Pour importer la description existante dun fichier de donnes, deux solutions sont possibles: Solution 1: depuis lditeur danalyses 1.Slectionnez loption "Insertion .. Fichier de donnes". 2.Cochez loption "Utiliser des fichiers de donnes dune base existante", puis slectionnez le type de la base de donnes. 3.Prcisez le format des donnes utilis par votre projet. Il est possible de conserver le format actuel ou de migrer les fichiers de donnes au format HyperFileSQL. 4.Si ncessaire, slectionnez lanalyse WebDev dans laquelle la description doit tre importe (analyse existante ou nouvelle analyse). 5.Spcifiez la base de donnes source contenant les descriptions importer et le type de cette base de donnes source. Selon le type choisi, renseignez les informations demandes. 6.Slectionnez les tables ou fichiers dont la description doit tre importe et validez. 7.Le fichier de donnes import est automatiquement insr dans lanalyse en cours. Solution 2: Depuis lexplorateur de Windows "Droppez" directement la description du fichier de donnes de lexplorateur Windows vers lditeur danalyses. Par exemple:
Ici: une base de donnes Oracle, sur le serveur. Il suffit de faire glisser le nom de la base ...
167
Remarque: il est galement possible de crer une rubrique partir des mta-types proposs par WebDev. Pour cela, il suffit de cliquer sur le bouton "+M" droite du tableau. La liste des mta-types disponibles apparat.
168
3.2Les cardinalits
Les cardinalits permettent de dnombrer les liens entre les fichiers de donnes. La cardinalit est dfinie en fonction des rponses aux deux questions suivantes: 1.Pour chaque enregistrement du fichier de donnes, combien denregistrements de lautre fichier de donnes au minimum cet enregistrement est-il reli? La rponse fournit la premire partie de la cardinalit (cardinalit minimale): si la rponse est "aucun", la cardinalit est du type 0,X. si la rponse est "un seul", la cardinalit est du type 1,X. 2.Pour chaque enregistrement du fichier de donnes, combien denregistrements de lautre fichier de donnes au maximum cet enregistrement est-il reli? La rponse fournit la deuxime partie de la cardinalit (cardinalit maximale): si la rponse est "un seul", la cardinalit est du type X,1. si la rponse est "plusieurs", la cardinalit est du type X,N. La rponse ces deux questions dfinit la cardinalit qui peut tre de type: 0,1 ; 0,N ; 1,1 ; 1,N La description des cardinalits est fondamentale: elle est la base du respect de lintgrit rfrentielle de la base de donnes. Pour plus de clart, ces deux questions peuvent tre dcomposes en quatre questions. Par exemple, pour dcrire une liaison entre le fichier Fournisseur et le fichier Produit:
Oui/Non? chaque "produit" peut avoir plusieurs "fournisseurs": Oui/Non? Exemple de cardinalits: Cet exemple prsente deux cardinalits diffrentes:
Cardinalit 0,1: Une personne peut tre inscrite un seul club de sport. Cette personne nest pas oblige dtre inscrite un club de sport. Cardinalit 0,N: Un club peut avoir aucune ou plusieurs personnes inscrites.
Cardinalit 0,1: Une personne peut tre inscrite un seul club de sport. Cette personne nest pas oblige dtre inscrite un club de sport. Cardinalit 0,10: Un club peut avoir de 0 10 personnes inscrites.
3.4Lintgrit rfrentielle
Lintgrit rfrentielle dune base de donnes correspond au respect des contraintes impliques par les liaisons entre les fichiers de donnes. Lintgrit rfrentielle consiste vrifier par exemple que: si un enregistrement est supprim dans le propritaire, les enregistrements correspondants dans les membres sont galement supprims, Partie 5 : Bases de donnes 169
chaque "fournisseur" a au moins un "produit": Oui/Non? chaque "fournisseur" peut avoir plusieurs "produits": Oui/Non? chaque "produit" a au moins un "fournisseur":
si un enregistrement est ajout dans un membre, il existe un enregistrement correspondant dans le propritaire, si un enregistrement est modifi dans un propritaire, la cl unique nest pas modifie, ... La vrification de lintgrit rfrentielle dpend de la nature de la liaison entre les fichiers de donnes. Pour plus de dtails sur le contrle de lintgrit rfrentielle, consultez laide en ligne.
Une liaison facultative est ralise en copiant lidentifiant de chacun des fichiers de donnes dans lautre fichier de donnes. Liaison de complment Dans le cas dune liaison de complment: Chaque enregistrement dun fichier de donnes (Produit) na aucun enregistrement ou un seul enregistrement associ dans un autre fichier de donnes (Dtail). Chaque enregistrement de lautre fichier de donnes (Dtail) a ncessairement un enregistrement associ dans le premier fichier de donnes (Produit).
Pour grer une liaison parallle, lidentifiant du fichier Produit est copi dans le fichier Information. Cet identifiant est galement cl unique dans le fichier Information. Le fichier propritaire est alors Produit, et Information est le fichier membre. Remarque: Ce type de liaison est rare car les deux fichiers peuvent tre regroups en un seul. Le paralllisme des enregistrements dans le fichier est respect si les oprations suivantes sont excutes simultanment sur les deux fichiers: cration dun enregistrement suppression dun enregistrement rindexation avec compactage Liaison facultative Dans le cas dune liaison facultative: Chaque enregistrement dun fichier de donnes (Catgorie) na aucun enregistrement ou un seul enregistrement associ dans un autre fichier de donnes (Groupe). Chaque enregistrement de lautre fichier de donnes (Groupe) na aucun enregistrement ou un seul enregistrement associ dans le premier fi 170 Partie 5 : Bases de donnes
Les liaisons de complment sont assez frquentes. Elles sont notamment utilises lorsquun enregistrement peut avoir des complments dinformations optionnels. Pour grer une liaison de complment, la cl du fichier Produit est copie dans le fichier Dtail. Pour assurer la cardinalit maximale de 1, elle reste cl unique. Lunicit de cette cl interdit linsertion de plus dun enregistrement dans le fichier Dtail pour un enregistrement du fichier Produit. Le fichier propritaire est Produit, le fichier membre est Dtail. Liaison partage Dans le cas dune liaison partage, un mme enregistrement dans un fichier de donnes (Fournisseur) peut tre partag par plusieurs enregistrements dans un autre fichier de donnes (Produit). Pour grer une liaison partage, la cl du fichier Fournisseur est copie dans le fichier Produit. Elle devient cl multiple pour acclrer la vrification de lintgrit. Le fichier propritaire est Fournisseur, le fichier membre est Produit. Selon la cardinalit, il est possible de distinguer quatre types de liaisons partages: Liaison partage de cardinalit 0,n - 0,1 Liaison partage de cardinalit 0,n - 1,1 Liaison partage de cardinalit 1,n - 0,1 Liaison partage de cardinalit 1, n - 1,1
Avec ce type de liaison: un propritaire peut ne pas avoir de membre (un fournisseur na pas obligatoirement de produit). un membre peut ne pas avoir de propritaire (un produit na pas obligatoirement de fournisseur). Liaison partage de cardinalit 0,N - 1,1
Liaison partage de cardinalit 1,N - 1,1 Avec ce type de liaison: chaque propritaire a au moins un membre (chaque fournisseur a au moins un produit). chaque membre a un seul propritaire (chaque produit a un seul fournisseur).
Avec ce type de liaison: un propritaire peut ne pas avoir de membre (un fournisseur peut navoir aucun produit). chaque membre a un seul propritaire (chaque produit a un seul fournisseur). Remarque: Ce type de liaison est frquent. WebDev permet de crer automatiquement les pages permettant de grer les fichiers de donnes lis par une liaison de type 0,N-1,1. Liaison partage de cardinalit 1,N - 0,1 Avec ce type de liaison: chaque propritaire a au moins un membre (un fournisseur a au moins un produit). un membre peut ne pas avoir de propritaire (un produit peut navoir aucun fournisseur).
Liaison complexe Dans le cas dune liaison "complexe", il est ncessaire de grer un fichier de liaison, appel fichier de relation. Le fichier de relation sera automatiquement cr. Il contiendra une cl unique compose des deux cls des fichiers relis. Le fichier de relation peut galement contenir des informations spcifiques la liaison. Une liaison complexe se dcompose alors en deux liaisons de type partag. Exemple de liaison complexe Une commande (fichier Commande) peut contenir un ou plusieurs produits. Un produit (fichier Produit) peut tre utilis dans plusieurs commandes. Dans ce cas, il faut avoir un fichier de liaison (fichier LigneCommande). Le fichier LigneCommande contient: une cl unique compose des cls de Produit et de Commande. le nombre de produits commands. Les liaisons entre les fichiers de donnes sont les suivantes:
WebDev permet de raliser les manipulations suivantes sur une rubrique dun fichier de donnes prsent dans lditeur danalyses: Dupliquer / Copier une rubrique.
Supprimer une rubrique. Renommer une rubrique. Pour plus de dtails, consultez laide en ligne.
5.1Crer un MCD
Pour crer un MCD: 1.Slectionnez loption "Fichier .. Nouveau .. MCD". Lassistant de cration du MCD se lance. 2.Spcifiez: le nom et le rpertoire du MCD. Le MCD correspond un fichier ".MCD". Par dfaut, ce fichier sera cr dans le rpertoire de lanalyse du projet (rpertoire <Nom du projet>.ANA). Ce rpertoire doit tre accessible en lecture et en criture. le libell du MCD dcrivant succinctement le sujet du MCD. si le MCD doit tre directement associ lanalyse en cours. Cette analyse peut tre une analyse existante ou une analyse crer. 3.Le MCD cr devient le MCD en cours. WebDev propose automatiquement de crer la premire entit. 4.Crez lensemble des lments (entits, associations, proprits et relations) de votre MCD.
2.Slectionnez soit les deux entits relier, soit lentit et lassociation relier. 3.Dfinissez les cardinalits de la relation.
dante est cre. si la proprit existe dj, avec la mme description, aucune action nest ralise. si la proprit existe dj, avec une description diffrente, il y a un conflit. Lditeur danalyses propose: soit dignorer la nouvelle description de la proprit et de ne faire aucune modification. soit de mettre jour la rubrique existante avec la nouvelle description de la proprit. soit de crer une nouvelle description synonyme avec la nouvelle description de la proprit. 3.Lexistence des relations et associations. Lorsque lassociation ncessite la cration dun ou de plusieurs fichiers de relation, les fichiers de donnes et les rubriques du MLD sont mis jour de la manire dcrite ci-dessus. Lorsquune relation a t modifie, la liaison du MLD est recre ou mise
jour: si les proprits identifiantes dune des entits ont t modifies, les cardinalits des liaisons existantes sont mises jour et les nouvelles liaisons sont cres. si aucune proprit identifiante dune des entits na t modifie, les cardinalits sont simplement mises jour. Remarques: La suppression dentits, de relations ou dassociations nest pas prise en compte lors de la gnration du MCD en MLD. La suppression de proprits dune entit peut tre prise en compte en dcochant "Conserver les modifications du MLD" des options de la gnration du MCD en MLD. Dans ce cas, les fichiers du MLD contiennent uniquement les rubriques de lentit correspondante du MCD aprs la conversion.
Les options disponibles dans le gestionnaire de versions sont: Restauration dune analyse. Annulation de la dernire gnration. Remettre 1 le numro de version.
Attention: Les fichiers de donnes correspondant une analyse de numro de version suprieur la version restaure ne pourront plus tre ouverts. Il faut alors galement restaurer des fichiers correspondant la version de lanalyse restaure ou supprimer les fichiers existants pour quils soient recrs.
175
176
177
HyperFileSQL Classic
Une application WebDev HyperFileSQL peut fonctionner en mode Classic (appel HyperFileSQL Classic) ou en mode Client/Serveur. Les caractristiques du mode Classic sont les suivantes: Un site utilisant HyperFileSQL Classic est excut sur diffrents navigateurs. Pour chaque site excut, une session est lance sur le serveur. Les fichiers de donnes sont prsents dans un rpertoire accessible par les sessions des sites WebDev (sur le serveur Web ou sur un autre poste). Chaque session accde physiquement aux fichiers de donnes. Les traitements (requte, lecture / ajout dans un fichier de donnes, ...) sont raliss par chaque session.
178
HyperFileSQL Client/Serveur
HyperFileSQL Client/Serveur est un puissant systme de gestion de bases de donnes relationnelles (SGBD/R) en mode Client/Serveur. Les caractristiques du mode Client/Serveur sont les suivantes: Un site HyperFileSQL Client/Serveur est excut sur diffrents postes utilisateur. Pour chaque site lanc, une session est prsente sur le serveur Web. Les fichiers de donnes sont prsents sur un poste serveur (Serveur HyperFileSQL). Seul le poste serveur accde physiquement aux fichiers de donnes. Lensemble des traitements (requte, lecture/ajout dans un fichier de donnes, ...) est ralis sur le serveur.
179
180
Remarque: Ce schma prsente uniquement les principaux fichiers crs. Dautres fichiers spcifiques peuvent tre crs si le fichier de donnes utilise la journalisation, les transactions ou encore la rplication.
181
182
183
Les requtes
Une requte sert interroger une base de donnes pour visualiser, insrer, modifier ou supprimer des donnes. La structure de la requte dfinit les donnes manipules. Une requte peut interroger un ou plusieurs fichiers de donnes. Lditeur de requtes permet de crer trs simplement des requtes, sans avoir programmer.
Remarque: En programmation, une requte peut tre manipule de la mme faon quun fichier de donnes. En particulier, elle peut tre associe un champ daffichage (une table par exemple) qui prsentera les donnes retournes par la requte.
184
Dans ce cas, la requte est intgre la page. Elle est prsente dans le fichier WWH correspondant la page. Si le fichier WWH est copi (dans un autre projet par exemple), les requtes intgres utilises par cette page seront galement copies.
185
Il est possible de limiter les enregistrements affichs dans le champ en utilisant un filtre (fonction HFiltre utilise dans le code dinitialisation du champ). Plusieurs fonctions du WLangage permettent de manipuler les tables fichier. Ces fonctions commencent toutes par "Table". Pour ajouter un enregistrement dans la table, ajoutez lenregistrement dans le fichier de donnes HyperFileSQL correspondant (fonction HAjoute), puis r-affichez la table avec la fonction TableAffiche. Pour supprimer un enregistrement dans la table, supprimez lenregistrement dans le fichier de donnes HyperFileSQL correspondant (fonction HSupprime), puis r-affichez la table avec la fonction TableAffiche.
186
Table Mmoire
Une table mmoire permet dafficher directement des donnes charges en mmoire. Les donnes sont ajoutes dans la table par programmation (par exemple avec la fonction TableAjouteLigne).
Remarque: Les diffrents modes de remplissage (mmoire, fichier, fichier charg en mmoire) sont disponibles pour les listes, les combos, les tables, les zones rptes, ...
187
Partager les donnes Les donnes dun site WebDev peuvent tre directement partages avec les donnes de lapplication Back Office permettant de traiter les oprations effectues sur le site, en toute scurit. Il suffit dutiliser une base de donnes HyperFileSQL Client/Serveur. Le principe est le suivant:
Avantage: Les donnes du site sont accessibles en temps rel. Inconvnient: Ncessit de grer la scurit de manire optimise: utilisation dune connexion scurise pour accder aux donnes, ouverture dun port spcifique pour accder aux donnes (port 4900 par dfaut), configuration du firewall, ... Cette solution est conseille pour un site install sur un serveur ddi.
188 Partie 5 : Bases de donnes
Rcuprer les donnes dun site 2.1 Grce une page AWP dinterrogation WebDev permet de crer des pages AWP. Les pages AWP sont des pages indpendantes, pouvant excuter des traitements partir de paramtres passs en ligne de commande la page. Les pages AWP peuvent tre utilises simplement pour rcuprer les donnes saisies sur le site.
Les pages AWP prsentes sur le serveur Web sont interroges rgulirement par des requtes HTTP excutes par lapplication Back Office. Les donnes sont renvoyes sous forme de chanes et traites par lapplication WinDev. Avantages: Solution simple mettre en place. Equivalent un service Web personnalis. Ne ncessite aucun excutable supplmentaire sur le serveur. Aucune session supplmentaire nest excute sur le serveur. Inconvnient: Rcupration monodirectionnelle des donnes: pas de mise jour des donnes vers le serveur. Cette solution peut tre utilise avec un serveur mutualis.
189
2.2 Grce un Webservice WebDev permet de crer des Webservices. Le Webservice est install sur le serveur Web et le serveur dapplication WebDev permet de lutiliser. Le Webservice peut tre utilis simplement pour rcuprer les donnes saisies sur le site.
Le Webservice prsent sur le serveur Web est interrog rgulirement par des requtes HTTP excutes par lapplication Back Office. Les donnes sont renvoyes sous forme XML, sous forme de chanes (ou autres) et traites par lapplication WinDev. Avantages: Solution simple mettre en place. Ne ncessite aucun excutable supplmentaire sur le serveur. Aucune session supplmentaire nest excute sur le serveur. Inconvnient: Rcupration monodirectionnelle des donnes: pas de mise jour des donnes vers le serveur. Cette solution peut tre utilise avec un serveur mutualis. 2.3 Par FTP: WebDev permet deffectuer rgulirement une sauvegarde des fichiers de donnes du site WebDev. Cette sauvegarde peut tre ensuite transfre par FTP au sige de la socit. Il suffit alors de: rcuprer la sauvegarde compresse des fichiers de donnes dcompresser les fichiers ( laide dune application WinDev) traiter les donnes prsentes dans les fichiers. Avantages: Solution simple mettre en place. Ne ncessite aucun excutable supplmentaire chez lhbergeur. Inconvnient: Tous les fichiers de donnes de lapplication sont rcuprs. Cette solution peut tre utilise avec un serveur mutualis.
190 Partie 5 : Bases de donnes
1. Linternaute effectue une commande sur le site. 2. Le site WebDev indique linternaute que la commande a bien t enregistre. Linternaute est inform quil recevra un email de confirmation. 3. Le site WebDev envoie un email au sige de la socit. Cet email contient la commande effectue par linternaute. 4. Un email est envoy linternaute par la socit pour lui indiquer que sa commande a bien t prise en compte. Avantages: Solution simple mettre en place. Ne ncessite aucun excutable supplmentaire sur le serveur. Inconvnient: Rcupration monodirectionnelle des donnes: pas de mise jour des donnes vers le serveur. Cette solution peut tre utilise avec un serveur mutualis.
191
Effectuer une rplication La rplication permet de maintenir jour des bases de donnes distantes de mme structure. Il est ainsi possible de faire une rplication entre la base de donnes dun site WebDev et la base de donnes de lapplication WinDev au sige de la socit. Par exemple, une base de donnes de saisie de commandes et de gestion de stocks est utilise la fois sur un site WebDev (prise de commandes en ligne) et au sige de la socit (prise de commandes tlphonique ou par courrier). La rplication permet de: transmettre les commandes saisies en ligne au sige de la socit (rplication monodirectionnelle) transmettre les commandes saisies en ligne au sige de la socit, et de transmettre la mise jour des stocks au site Internet (rplication bi-directionnelle) Attention: Il est ncessaire de prendre en compte les contraintes de la rplication ds la cration du projet. En effet, plusieurs rgles doivent tre respectes lors de la description de lanalyse et des rubriques des fichiers de donnes. La rplication peut tre ralise par email ou laide de la rplication universelle assiste. Pour plus de dtails sur la rplication, consultez laide en ligne.
192
Rplication universelle
La rplication universelle permet de maintenir jour des bases de donnes de format identique ou diffrent (HyperFileSQL Classic, Oracle, SQL Server, ...). Il est par exemple possible de raliser une synchronisation entre une base de donnes HyperFileSQL Classic et une base de donnes Oracle. La rplication universelle utilise un modle centralis: toutes les bases de donnes se synchronisent avec une base de donnes matre. La base de donnes matre rpercute ensuite les modifications vers les autres bases de donnes.
Il est possible dadapter la synchronisation des cas particuliers. Par exemple, il est possible de rcuprer uniquement les enregistrements concernant un produit spcifi ou les enregistrements raliss une certaine date, de grer les conflits, ... Ces adaptations doivent tre effectues par programmation grce la fonction HRplProcdureFiltre.
193
Architecture 3-tiers
Le but du 3-Tiers est de sparer les 3 "couches" habituelles dune application: IHM, traitements et donnes. Une application sera donc compose de 3 couches indpendantes: une couche prsentation, une couche application, une couche daccs aux donnes. Cette sparation a pour but de rendre indpendante chacune des couches afin de faciliter la maintenance et les volutions futures de lapplication. Elle assure une scurit plus importante car laccs la base de donnes nest autoris que par la couche de traitements. Elle a galement lavantage doptimiser le travail en quipe et le dveloppement multi-cibles.
194
196
197
Mode de test
Editeur
Type de test
Le lancement du test depuis lditeur permet par exemple de tester: les fonctionnalits du site, le code utilis dans les diffrents traitements. Un puissant dbogueur permet de suivre pas pas lexcution des diffrents traitements. lutilisation du site avec diffrents navigateurs (installs sur le poste de dveloppement). Ce type de test permet lutilisation du dbogueur. Le lancement du test depuis ladministrateur permet par exemple de tester: les fonctionnalits du site, les fonctions spcifiques au Web (cookies,...), lutilisation du site dans des conditions relles.
Lancement du test
Option "Projet .. Mode test .. Tracer le projet" ou "Projet .. Mode test .. Dboguer le projet depuis la page daccueil" depuis lditeur. Remarque: Les droits de linternaute (droits daccs, dcriture et de lecture) correspondent aux droits du dveloppeur.
Lancez ladministrateur WebDev (menu "Dmarrer") puis cliquez sur le bouton "Page de test" (onglet "Avanc"). Ce test permet dutiliser le site WebDev dans des conditions identiques celles dun internaute. Les droits de linternaute (accs, criture et lecture) correspondent aux droits de lutilisateur par dfaut dfini dans le serveur Web utilis.
198
WDTestSite permet de raliser des tests de monte en charge. WDTestSite permet de lancer plusieurs connexions simultanes un site WebDev. Chaque connexion effectue une succession dactions dans le site WebDev (scnario prdfini) Ce test doit tre effectu sur un site WebDev install sur un poste de dploiement, prt tre mis en service.
1.Crez un scnario de test (avec WDTestSite). 2. Installez WDTestSite et le scnario sur diffrents postes pour simuler un grand nombre daccs. 3. Spcifiez le nombre de connexions effectuer. 4. Lancez le scnario de test sur chaque poste. Remarque: Chaque poste effectue un nombre de connexions dfini. Chaque connexion effectue le scnario slectionn. 1.Affichez la procdure ou la classe sous lditeur de code. 2. Slectionnez loption "Tests automatiques .. Enregistrer un nouveau test".
Tests tiques
automa-
Les tests automatiques permettent de tester les procdures et les classes dun site diffrents niveaux de dveloppement. Les scnarios de test sont automatiquement gnrs en WLangage partir du test de la procdure ou de la classe. Les scnarios peuvent tre modifis sous lditeur de code.
199
Le dbogueur
Pour mettre au point votre code, un dbogueur est livr en standard avec WebDev. Le dbogueur permet une excution pas pas de vos sites dynamiques, en visualisant le code WLangage excut, le contenu des variables, ...
Pour lancer le dbogueur, utilisez: soit un point darrt directement plac dans lditeur de code: lorsque la ligne prcde dun point darrt sera excute, le dbogueur sera automatiquement lanc. Pour poser un point darrt, il suffit de cliquer devant la ligne de code: une puce rouge apparat.
soit le mot-cl serveur STOP du WLangage directement dans votre code WLangage: le dbogueur sera automatiquement lanc ds que cette ligne de code sera excute. soit loption "Projet .. Mode Test .. Tracer le projet": le dbogueur est lanc en mme temps que le test du site dynamique.
200 Partie 6 : Tester un site web
201
Pour tester un site statique + dynamique depuis lditeur: pour tester la partie statique du site: effectuez les manipulations correspondant au test dun site statique. pour tester la partie dynamique du site: effectuez les manipulations correspondant au test dun site dynamique. Remarque: Pour tester un site avec un navigateur spcifique, slectionnez loption "Projet .. Navigateur de test" et slectionnez le navigateur voulu. Le navigateur par dfaut est dfini dans les options de WebDev (option "Outils .. Options .. Options gnrales de WebDev" onglet "Web"). Site dynamique: Lancement Les modules suivants sont automatiquement lancs lors dun test dun site dynamique WebDev: Le serveur Web install sur le poste et configur pour WebDev lors de linstallation de WebDev. Si le serveur Web nest pas lanc, le test ne peut pas se faire. Ladministrateur WebDev (WD170ADMIN.EXE). Ladministrateur permet de grer les connexions au serveur Web et de paramtrer les sites WebDev. Remarque: un test de projet peut tre lanc depuis la page de test de ladministrateur (Onglet "Avanc" de WD170ADMIN, bouton "Page de test"). Le moteur WebDev (WD170AWP.EXE). Le moteur WebDev permet de grer les requtes effectues par les internautes depuis leur navigateur et de leur renvoyer la page HTML dynamique correspondante. Remarque: Le moteur WebDev est lanc uniquement si le projet contient des pages dynamiques. Le navigateur Internet. Le navigateur Internet permet dafficher les pages HTML du site WebDev.
203
5 Tracer un projet
5.1Principes du dbogage
Le dbogage dune application consiste : vrifier le bon fonctionnement dun traitement, comprendre le fonctionnement dun programme existant, vrifier la valeur des variables, vrifier le bon fonctionnement de cas particuliers dans une application ou un site. Le dbogueur permet de raliser ces oprations. Remarque: WebDev met galement votre disposition divers outils de trace (fentre de trace, bote dinformation,...). Pour plus de dtails, consultez le paragraphe "Dboguer sans le dbogueur", page 205.
5.2Prsentation du dbogueur
Le dbogueur permet de tracer les programmes en WLangage afin de faciliter la mise au point de programmes. Le code source excut est visualis lcran. Les diffrents traitements excuts sont hirarchiss dans le volet "Dbogueur". La valeur des variables peut tre visualise: individuellement dans la bulle daide de survol de chaque variable. dans le volet "Dbogueur".
5.3Fonctionnalits du dbogueur
Le dbogueur permet de: connatre la pile des appels visualiser le contenu des variables ou des expressions
204
excuter pas pas avec possibilit de sauter des blocs. utiliser des points darrt conditionnels modifier le code tout en continuant lexcution, ...
Par exemple:
PROCEDURE MaTrace(ChaneATracer) SI EnModeTest() ALORS Trace(ChaneATracer) FIN
Dans ce code, selon le rsultat de la fonction EnModeTest, la fentre de trace apparat uniquement lors dun test de lapplication. Une telle procdure permet de laisser lappel aux fentres de trace dans le code de lapplication, sans risque dapparition en clientle. Lappel cette procdure de trace est identique lutilisation de la fonction Trace:
MaTrace("Client : "+... Client.NumClient)
Crer un fichier de trace Lors de traitements longs (traitements Batchs,...), pour contrler le bon droulement du programme, il est ncessaire de conserver une trace physique des traitements effectus (un fichier texte par exemple). La procdure suivante permet de grer par exemple laffichage de la trace: soit lcran (paramtre /DEBUG en ligne de commande). soit dans un fichier texte (mode par dfaut).
PROCEDURE MaTrace(ChaneATracer) CheminFichier est un entier CheminFichier = ... fRepDonnesUtilisateur()+... ProjetInfo(piNomProjet)+".txt" NumFichier est un entier ModeDebug est un boolen = Faux SI Position(LigneCommande(),... "/DEBUG") > 0 ALORS ModeDebug = Vrai FIN SI ModeDebug ALORS Trace(ChaneATracer) SINON NumFichier = fOuvre(... CheminFichier, ... foCrationSiInexistant+... foEcriture + foAjout) SI NumFichier <> -1 ALORS DateHeureTrace est un DateHeure DateHeureTrace = DateHeureSys() DateTrace est une Date DateTrace = Madate..PartieDate HeureTrace est une Heure HeureTrace = Madate..PartieHeure fEcritLigne(NumFichier, ... DateVersChane(DateTrace)+... " - "+HeureVersChane(HeureTrace))
205
Remarques: Le fichier de trace est cr par dfaut dans le rpertoire des donnes de lutilisateur. Ce fichier a
pour nom le nom du projet. Ce fichier contient les informations tracer durant lexcution du programme. Les informations sont compltes par la date et lheure de chaque "Trace". Il est ainsi possible de dterminer un ventuel dysfonctionnement durant le traitement. Exemple de contenu du fichier de trace:
01/12/2001 - 10:53:25:20 Nom de client : Martin
6 Test de performances
6.1Prsentation
Lanalyseur de performances est un outil permettant de vrifier et doptimiser le temps dexcution de votre site. Son principe est simple: Vous testez votre site. Pendant ce test, lanalyseur de performances rpertorie toutes les actions effectues et les traitements correspondants excuts. A la fin du test, lanalyseur de performances vous prsente: les 10 manipulations qui ont pris le plus de temps. toutes les actions effectues dans le site test, tries par dure (de laction la plus longue laction la moins longue). Il est alors possible de slectionner un traitement afin danalyser les causes de son temps de traitement pour loptimiser.
Parent
Remarque: Le libell "Excution complte" reprsente le temps complet de lexcution du test du site ralis avec lanalyseur de performances. Le libell "Total Page XXX" reprsente le temps complet de lexcution de la page XXX (de son ouverture sa fermeture).
206
le pourcentage de temps pass dans le traitement de la fonction ou de la procdure. Plus ce pourcentage est important, plus le code peut contenir des traitements pouvant tre optimiss. Remarque: Si le traitement correspond une fonction WLangage, il est relativement difficile de loptimiser.
7 Tests de non-rgression
7.1Prsentation
Soucieux de la qualit des applications, plusieurs outils de tests sont votre disposition: Le mode test (Go de projet ou Go de page) qui permet de tester immdiatement une modification dans votre site. Lutilitaire WDTestSite qui permet de raliser diffrents tests sur un site WebDev. Pour automatiser ces tests, et augmenter la qualit de vos applications, vous pouvez galement faire des tests unitaires automatiques. Grce ces tests, il est encore plus simple de contrler toutes les fonctionnalits proposes par vos applications.
7.3Lutilitaire WDTestSite
WDTestSite est un utilitaire permettant de raliser diffrents tests sur un site WebDev. Les diffrents tests possibles avec WDTestSite sont les suivants: Test de monte en charge: Le test de monte en charge consiste simuler la connexion de plusieurs internautes un site WebDev. Chacun internaute excute une suite doprations (scnario) simultanment. Test de non-rgression: Le test de non-rgression consiste vrifier le fonctionnement dun site WebDev entre deux mises jour. Le test de non-rgression consiste vrifier quun scnario ralis avec une prcdente version du site fonctionne correctement avec la mise jour du site. Test dun site en mode multi-utilisateurs: Le test dun site en mode multi-utilisateurs permet de vrifier que les accs concurrentiels aux fichiers de donnes sont correctement grs. Ce test consiste simuler la connexion simultane de plusieurs internautes un site WebDev. Chacun internaute excute une suite doprations (scnario) simultanment. Comparaison de diffrents serveurs: WDTestSite permet de comparer la vitesse de diffrents serveurs. Il suffit de lancer un scnario sur diffrents serveurs et de comparer le temps dexcution de ce scnario. Optimisation de traitements raliss en WLangage: WDTestSite permet de comparer le temps dexcution dun scnario avant et aprs une optimisation du code WLangage. Pour plus de dtails, consultez laide en ligne (motcl: "WDTestSite").
7.2Tests automatiques
Chaque test est compos dun scnario directement ditable dans linterface du produit. Ce scnario est crit en WLangage et peut tre modifi nimporte quel moment. Ces tests peuvent tre lancs par exemple avant chaque dploiement pour vrifier le bon fonctionnement dun site aprs diverses modifications. Les lments suivants peuvent tre tests: les collections de procdures les classes Chaque test est associ un code WLangage: le scnario du test. Ce scnario est visible sous lditeur de code. Le code des tests peut tre modifi. Les tests et le code associ ne sont pas livrs en clientle. Le nombre de tests dun site na donc aucune incidence sur la taille du site livr en clientle. Pour plus de dtails, consultez laide en ligne (motcl: "Test automatique").
207
208
210
211
2 Cration de linstallation
Pour dployer votre site statique: 1.Slectionnez loption "Atelier.. Crer la procdure dinstallation". Loutil WDDploie se lance. 2.Crez le profil correspondant votre site. Ce profil contient les informations suivantes: Emplacement des fichiers locaux (sous-rpertoire "<NomProjet>_WEB" de votre site). Adresse du site WebDev. Emplacement des fichiers du site dploy (rseau ou serveur FTP). Caractristiques du serveur FTP utilis pour la mise jour du site. Ces caractristiques vous sont fournies par lhbergeur du site, ... 3.Cliquez sur le bouton "Prparer". WDDploie prpare la liste des fichiers installer. En cas de mise jour, WDDploie compare les fichiers prsents sur le poste de dveloppement et les fichiers dj installs. 4.Cliquez sur le bouton "Synchroniser". Les fichiers de votre site sont copis lemplacement spcifi dans le profil. Pour plus de dtails sur lutilisation de WDDploie, consultez laide en ligne.
212
Remarque: un serveur dapplication WebDev peut tre intgr linstallation fournie par mdia physique. dploiement distance directement depuis le poste de dveloppement (par transfert de fichiers par Internet, FTP)
213
dploiement distance depuis un poste dadministration (par transfert de fichiers par Internet, FTP)
Linstallation distance (par FTP) directement depuis un poste de dadministration est conseille si les caractristiques du serveur ne sont pas connues par le dveloppeur lors de la cration du programme dinstallation. Le programme dinstallation est appel dans ce cas un "Package". Si un site est destin plusieurs clients, il est ainsi possible de crer un seul package et de le fournir tous les clients voulus. Les paramtres du serveur (Adresse, compte FTP, ...) ne seront renseigns que lors de lexcution du package sur le poste dadministration.
les diffrents paramtres de connexions au site Remarques: Il est possible de raliser une installation diffre, la date et lheure choisies. Linstallation et la mise jour par FTP sont scurises par mot de passe et cryptage des donnes transmises.
216
soit avec ladministrateur distance. soit avec ladministrateur WebDev prsent sur le poste de dploiement (option "Site WebDev bloqu", dans longlet "Sites").
217
1 Mise en bibliothque
Avant de procder une installation, il faut mettre en bibliothque tous les objets de votre site dynamique. Une bibliothque est un fichier qui regroupe tous les objets crs lors du dveloppement (description de la base de donnes, description des pages, codes sources compils, ). Les pages HTML et les images ne sont pas incluses dans la bibliothque. La mise en bibliothque est automatique lors de la cration de la procdure dinstallation. Une fois la bibliothque cre, lassistant de cration de linstallation se lance. Vous pouvez choisir de raliser: soit une installation par FTP (installation distance) Avant de raliser une installation distance, lhbergeur doit avoir: 1. Cr et configur votre compte FTP sur le serveur. 2. Cr et configur votre compte WebDev sur le serveur Lhbergeur doit vous fournir vos logins et mots de passe pour ces diffrents comptes. soit un dploiement dans le Cloud PC SOFT: PC SOFT propose une plate-forme dhbergement sur le modle du Cloud Computing : vous dployez sans vous soucier des contraintes matrielles et vous tes facturs selon lusage rel de vos applications. 218 Partie 7 : Dployer un site web Pour raliser ce type dinstallation, il est ncessaire de possder un compte Cloud PC SOFT. Si ncessaire, lassistant propose de crer ce compte. soit une installation par FTP via le service dhbergement de test de PC SOFT: PC SOFT propose dhberger vos sites de test. Linstallation seffectue simplement, directement depuis lenvironnement. Ainsi, une fois votre site termin, il est possible de le tester "en rel" directement. Pour raliser ce type dinstallation, il est ncessaire de possder un compte dveloppeur PC SOFT. Si ncessaire, lassistant propose de crer ce compte. soit un package de dploiement: Un package de dploiement est un excutable contenant tous les lments ncessaires au dploiement dun site WebDev. Ce package pourra ensuite tre excut depuis un poste quelconque pour installer le site Web sur le poste serveur par FTP. Pour crer ce type dinstallation, il nest pas ncessaire de connatre les caractristiques du compte FTP et du compte WebDev prsent sur le serveur Web. soit une installation par mdia physique: Lassistant vous permet de crer un programme
dinstallation de votre site. Ce programme sera ensuite fourni lhbergeur, et permettra dinstaller votre site WebDev sur le serveur Web. Pour installer votre site WebDev, lhbergeur doit: 1.Installer le serveur dapplication WebDev sur le serveur Web (si cela na pas dj t fait). 2.Installer votre site WebDev en lanant le programme excutable Installe fourni avec votre
installation. Remarque: Il est galement possible de crer une installation par mdia physique autonome, contenant linstallation dun serveur dapplication WebDev limit 10 connexions. Cette solution est idale pour les maquettes prsentes sur un portable.
2.2Cration de linstallation
Il faut dfinir dans lassistant: 1.Les informations concernant le poste distant. Ces informations doivent tre fournies par lhbergeur: Adresse du serveur (un nom de machine accessible par le rseau, une adresse IP, ou une adresse internet) Caractristiques du compte WebDev (le nom dutilisateur et le mot de passe). Caractristiques du compte FTP (le nom dutilisateur et le mot de passe). Pour identifier simplement les caractristiques du serveur pour une prochaine mise jour, donnez un nom ce serveur. Ce nom apparatra (suivi de ladresse du serveur) dans la fentre de choix du type dinstallation. 2.Les fichiers installer. Par dfaut, lassistant slectionne la bibliothque, les fichiers de donnes, les images et les pages HTML.
219
5.Si une mise jour de lanalyse a t ralise, slectionnez la modification automatique des fichiers de donnes lors de linstallation. Remarque: si cette option est choisie, la mise jour sera propose lors de linstallation. Cas particulier: Si les fichiers de donnes prsents sur le serveur sont au format Hyper File 5.5, il est ncessaire de les migrer au format HyperFileSQL Classic. Cette migration doit tre effectue uniquement lors de la premire mise jour du site.
6.Spcifiez si votre site utilise lAccs Natif AS/400. Rappel: si votre site utilise lAccs Natif AS/400, il est ncessaire dinstaller les DLL AS/400 sur le serveur Web. Si vous utilisez une licence pour un nombre de postes limit, il est ncessaire de grer dans le site WebDev le nombre de connexions en cours (fichier INI ou base de registres, ...).
Rcapitulatif des lments installs et de leur localisation: Serveur de sites Rpertoire des sites WebDev de lutilisateur N Rpertoire dfini par lhbergeur. Dans ce rpertoire, un sous-rpertoire sera cr pour chaque site de lutilisateur N. Dans ce sous-rpertoire de sites sont installs les pages HTML, la bibliothque (".WDL"), le rpertoire des images. Exemple: Le rpertoire des sites de lutilisateur N est "C:\UtilN\Sites WebDev". Lutilisateur N installe son site "Bateau". Ce site sera install dans le rpertoire "C:\UtilN\Sites WebDev\Bateau". Serveur de donnes Rpertoire des donnes de lutilisateur N Rpertoire dfini par lhbergeur. Dans ce rpertoire, un sous-rpertoire sera cr pour les fichiers de donnes de chaque site de lutilisateur N. Dans ce sous-rpertoire de donnes sont installs les fichiers ".FIC", les fichiers ".NDX", les fichiers ".MMO". Exemple: Le rpertoire des donnes de lutilisateur N est "D:\UtilN\Donnes WebDev". Lutilisateur N installe son site "Bateau". Par dfaut, les fichiers de donnes seront installs dans le rpertoire "D:\UtilN\Donnes WebDev\Bateau".
3.2Cration de linstallation
Il faut dfinir dans lassistant: 1.Les fichiers installer. Par dfaut, lassistant slectionne la bibliothque, les fichiers de donnes, les images et les pages HTML. 2.Si une mise jour de lanalyse a t ralise, slectionnez la modification automatique des fichiers de donnes lors de linstallation. Remarque: si cette option est choisie, la mise
jour sera propose lors de linstallation. Cas particulier: Si les fichiers de donnes prsents sur le serveur sont au format Hyper File 5.5, il est ncessaire de les migrer au format HyperFileSQL Classic. Cette migration doit tre effectue uniquement lors de la premire mise jour du site. 3.Paramtrage du site. Ces options permettent de configurer les options de connexions au site ds son installation. Ces paramtres pourront tre modifis si ncessaire: soit par ladministrateur de dploiement prsent sur le serveur. soit par ladministrateur distance, utilisable par le gestionnaire du site. 4.Spcifiez si votre site utilise lAccs Natif AS/400. Rappel: si votre site utilise lAccs Natif AS/400, il est ncessaire dinstaller les DLL AS/400 sur le serveur Web. Si vous utilisez une licence pour un nombre de postes limit, il est ncessaire de grer dans le site WebDev le nombre de connexions en cours (fichier INI ou base de registres, ...). 5.Le profil par dfaut du serveur Web utiliser. Ces paramtres pourront tre saisis ou modifis par la personne qui installera le package de dploiement. 6.Paramtrage de linstallation : Choisissez le
type dinstallation distance effectuer: Mise jour diffre: Les fichiers du site sont compacts et transfrs immdiatement sur le serveur WEB (laccs au serveur Web doit tre possible depuis le poste dinstallation du package). Le site WebDev sera install sur le serveur la date et lheure indique. Il est ainsi possible de faire la mise jour du site dans la nuit (entre minuit et 3h du matin par exemple), lorsque le nombre dinternautes est moins important. Attention: la date et lheure spcifies sont celles du serveur. Assurez-vous de leur validit. Activer le site immdiatement aprs installation: Le site sera disponible directement aprs son installation: il sera possible de sy connecter soit en utilisant ladresse adquate, soit par une page statique contenant un lien sur le site. Si cette option nest pas coche, il sera possible dactiver le site grce ladministrateur distance.
4.1Cration de linstallation
Il faut dfinir dans lassistant: 1.Un titre et un intitul de version pour votre installation. Un titre peut tre donn dans chacune des langues susceptibles dtre choisies au moment de linstallation. 2.Un rpertoire par dfaut. 3.Un dcor pour la fentre dinstallation. Vous pouvez personnaliser le dcor laide du bouton "Per
excutable (DLL, fichiers de paramtres, autres fichiers excutables). Remarque: il est possible de slectionner un fichier de licence et un fichier "Lisez-moi" pour chaque langue de linstallation. 6.Si une mise jour de lanalyse a t ralise, slectionnez la modification automatique des fichiers de donnes lors de linstallation. Remarque: si cette option est choisie, la mise jour sera propose lors de linstallation. 7.Si des programmes non raliss avec WebDev doivent accder aux fichiers HyperFileSQL de votre site, choisissez linstallation dun pilote ODBC. Remarque: si cette option est choisie, linstallation du pilote sera propose lors de linstallation. 8.Spcifiez si votre site utilise lAccs Natif AS/400. Rappel: si votre site utilise lAccs Natif AS/400, il est ncessaire dinstaller les DLL AS/400 sur le serveur Web. Si vous utilisez une licence pour un nombre de postes limit, il est ncessaire de grer dans le site WebDev le nombre de connexions en cours (fichier INI ou base de registres, ...). 9.Imprimez le dossier de dploiement: Le dossier de dploiement prcise la licence WebDev ainsi que tous les modules installs lors du dploiement. Il prcise galement les cls de la base de registres gnres pour le site WebDev. Lors de linstallation du site sur le serveur, ces cls pourront tre mises jour directement dans la base de registres ou enregistres dans un fichier pour un examen ultrieur. Le dossier de dploiement doit tre fourni la personne charge dinstaller votre site WebDev (hbergeur ou responsable rseau Intranet). 10.Modifiez ventuellement le rpertoire de gnration de linstallation. Par dfaut linstallation est gnre dans le sousrpertoire "INST" de votre projet. 11.Gnrez linstallation: Une fentre dinformation signale la prsence ventuelle de noms longs de fichiers. En effet, en cas dinstallation sur un lecteur rseau, vrifiez que: le lecteur rseau supporte correctement les noms longs, le lecteur rseau ne modifie pas les majuscules/ minuscules dans les noms de fichiers. 12.Lorsque la cration de linstallation est termine, WebDev propose de: tester directement linstallation cre. 222 Partie 7 : Dployer un site web
ouvrir lexplorateur Windows sur le rpertoire de gnration de linstallation. 13.Ralisez une sauvegarde de votre site. Il est recommand de conserver une sauvegarde des sources de votre site correspondant une version installe.
Apache Version 1.3.x et 2.x: serveur Web gratuit fourni par lApache Group. Trois cas peuvent se prsenter: Cas 1: votre serveur Web napparat pas dans cette liste : slectionnez "Autre serveur". Pour plus de dtails sur la configuration de votre serveur, consultez laide en ligne. Cas 2: votre serveur Web apparat dans la liste mais en gris: votre serveur Web na pas t dtect. Vous pouvez toutefois le slectionner en cochant "Afficher tous les serveurs". Vous devez alors demander la gnration dun fichier de configuration afin de pouvoir excuter la configuration ultrieurement (si vous avez prvu dinstaller votre serveur plus tard par exemple). Cas 3: votre serveur Web peut tre slectionn directement: slectionnez votre serveur. Vous pouvez demander la gnration dun fichier de configuration afin de pouvoir excuter la configuration ultrieurement. Vous pourrez modifier le fichier de configuration avant de lexcuter. Selon le serveur choisi, le fichier de configuration a une extension ".reg", ".conf" ou autre. 5.Slectionnez le rpertoire dinstallation: <webroot> dsigne le rpertoire racine du serveur Web de la machine. En fonction du serveur Web choisi, le rpertoire racine est dtect et affich. Si le rpertoire racine du serveur Web nest pas affich, vous pouvez le saisir dans la zone grise ou le rechercher laide du bouton "". Attention: si la zone est renseigne, vitez de la modifier. 6.Mise jour des fichiers de donnes (tape optionnelle, uniquement dans le cas dune mise jour du site). Pour mettre jour les fichiers de donnes associs au site WebDev, choisissez lexcution de la modification automatique des fichiers de donns. En cas de doute sur la ncessit doprer cette mise jour, contactez le fournisseur du site. Attention: Les fichiers de donnes du site ne doivent pas tre en cours dutilisation. Utilisez ladministrateur WebDev pour vrifier quaucune connexion nest en cours et arrtez les sites (cochez "Site bloqu" dans longlet "Sites"). 7.Choisissez linstallation dun pilote ODBC pour HyperFileSQL si des programmes non raliss avec WebDev doivent accder aux fichiers HyperFileSQL du site qui va tre install (tape optionnelle). 8.Le rsum de linstallation est affich: Pour lancer linstallation, passez au plan suivant.
Pour modifier certains paramtres des fentres prcdentes, cliquez sur "Prcdent". 9.Linstallation est termine: Cliquez sur ladresse propose pour tester votre site en local. Cette option nest utilisable que si le serveur Web a t configur automatiquement. Cliquez sur "Copier" pour rcuprer ladresse propose. Pour plus de dtails, consultez le paragraphe "Mise en service du site dynamique", page 224. Cliquez sur "Terminer" pour terminer linstallation. 10.Configuration du serveur Web: Si la configuration du serveur Web na pas t faite automatiquement, deux cas peuvent se prsenter: Cas 1: votre serveur a t dtect et un fichier de configuration a t gnr: vous pouvez visualiser, ventuellement modifier puis excuter ce fichier. Cas 2: votre serveur na pas t dtect: pour plus de dtails, consultez laide en ligne. 11.A laide de ladministrateur WebDev, dbloquez les sites ventuellement bloqus et configurez les paramtres de votre site dynamique. Ces paramtres correspondent: au nombre total de connexions autorises sur le site, au nombre de connexions autorises pour un internaute, la dure dinactivit autorise. Testez le site WebDev depuis ladministrateur partir de loption [page de test] (onglet "Avanc"). Remarques: Ladministrateur WebDev (WD170ADMIN.EXE) doit tre lanc et tourner en permanence en tche de fond. Il est possible de linstaller en tant que service sous WindowsNT. Pour plus de dtails sur ladministrateur WebDev, consultez le chapitre "Ladministrateur WebDev en pratique", page 228. Important: La ressource ncessaire par internaute connect Pour chaque internaute connect, il est ncessaire de prvoir une consommation: denviron 400 Ko de mmoire centrale par connexion, en plus de la mmoire ncessaire au serveur. denviron 1 Mo despace disque (mmoire virtuelle) par connexion, en plus de lespace ncesPartie 7 : Dployer un site web 223
saire au site. Par exemple, pour 20 connexions parallles, il est ncessaire de prvoir environ:
Mmoire vive: 67,8 Mo (7,8 Mo de mmoire centrale pour ce site, 60 pour le serveur NT). Mmoire virtuelle : 84 Mo (20 Mo pour les connexions, 64 Mo pour le serveur NT).
Exemple de balise META placer dans la partie <HEAD> dune page HTML:
<meta http-equiv="refresh content="0 ;URL=http://195.51.231.57/ WD170AWP/ WD170AWP.EXE.EXE/ CONNECT/ jaidebeauxyeux>
Pour lancer le site en utilisant directement son adresse (jaidebeauxyeux.com par exemple), il suffit de: 1.Crer une page daccueil de type "index.html". 2.Dans len-tte de cette page, utiliser les commandes html (META REFRESH) pour raliser une
Cas particulier: Si une page daccueil a t dfinie dans votre site dynamique, ladresse de lancement de cette page daccueil est la suivante:
http://<AdresseServeur>/ <NomSite>_WEB/
224
226
En dploiement, ladministrateur WebDev permet de: grer les comptes WebDev (onglet "Administration") grer la configuration des diffrents sites dynamiques installs sur le serveur: nombre de connexions autorises, ... (onglet "Sites") personnaliser les messages derreurs des diffrents sites dynamiques installs sur le serveur (onglet "Administration") ...
Partie 8 : Hbergement de sites WebDev 227
Longlet "Connexions" permet galement de: Tester directement les sites installs sur le poste (uniquement en version de dveloppement): Slectionnez le site dans la combo puis cliquez sur "Tester". Ce mode de test permet de tester sur le poste de dveloppement des options spcifiques la gestion des cookies par exemple. Arrter une connexion en cours: Slectionnez une des connexions et cliquez sur "Dconnecter". Stopper toutes les connexions en cours et fermer ladministrateur: cliquez sur "Dconnecter Tous".
2.3Webservices installs
Longlet "Webservices" fournit des informations concernant les webservices WebDev dynamiques installs sur le poste. Longlet "Webservices" liste les diffrents webservices WebDev dynamiques installs sur le poste et grs par ladministrateur WebDev. Pour chaque webservice, les informations suivantes sont affiches dans un tableau: le nom du webservice, le rpertoire complet dinstallation du webservice sur le poste, le nom du fichier "projet" correspondant. Longlet "Webservices" permet aussi de: Supprimer le webservice slectionn dans le tableau. Il sagit uniquement de supprimer le webservice de ladministrateur: le webservice WebDev sera toujours prsent sur le disque. Rafrachir laffichage des webservices prsents dans le tableau. Ce rafrachissement permet de vrifier la prsence dun webservice dans ladministrateur aprs son installation. Ajouter un webservice dans le tableau. Paramtrer individuellement les webservices prsents sur le poste. Par dfaut, la configuration prise en compte est celle de longlet "Configuration". Il est galement possible de crer une configuration spcifique pour le site slectionn. Cette configuration concerne le nombre maximal de connexions autoris et le blocage ventuel du webservice pour une mise jour. Pour plus de dtails sur ces paramtres, consultez longlet "Configuration". Pour valider immdiatement le nouveau paramtrage, appuyez sur le bouton "Appliquer".
2.2Sites installs
Longlet "Sites" fournit des informations concernant les sites WebDev dynamiques installs sur le poste. Longlet "Sites" liste les diffrents sites WebDev dynamiques installs sur le poste et grs par ladministrateur WebDev. Pour chaque site, les informations suivantes sont affiches dans un tableau: le nom du site, le rpertoire complet dinstallation du site sur le poste, le nom du fichier "projet" correspondant. Longlet "Sites" permet aussi de: Supprimer le site slectionn dans le tableau. Il sagit uniquement de supprimer le site de ladministrateur: le site WebDev sera toujours prsent sur le disque. Rafrachir laffichage des sites prsents dans le tableau. Ce rafrachissement permet de vrifier la prsence dun site dans ladministrateur aprs son installation. Ajouter un site dans le tableau. Paramtrer individuellement les sites prsents sur le poste. Par dfaut, la configuration prise en compte est celle de longlet "Configuration". Il est galement possible de crer une configuration spcifique pour le site slectionn. Cette configuration concerne le nombre de connexions autoris, la dure dinactivit autorise et le blocage ventuel du site pour une mise jour. Pour plus de dtails sur ces paramtres, consultez longlet "Configuration". Pour valider immdiatement le nouveau paramtrage, appuyez sur le bouton "Appliquer".
2.4Configuration gnrale
La configuration gnrale correspond aux diffrentes options de connexion par dfaut pour les sites WebDev prsents sur le serveur et grs par ladministrateur. Longlet "Configuration" permet de: Paramtrer les connexions. Paramtrer les sessions et les requtes. Grer le fichier journal pour obtenir les statistiques de frquentation. Grer le dbogage distance. Partie 8 : Hbergement de sites WebDev 229
Le paramtrage des connexions est ralis par les options suivantes: Nombre maximum de connexions sur le serveur: Nombre maximum de connexions simultanes autorises pour lensemble des sites grs par ladministrateur (une connexion = un internaute). Nombre maximum de connexions sur un site: Nombre maximum de connexions simultanes autorises pour chaque site gr par ladministrateur. Ce nombre peut tre modifi pour chaque site dans longlet "Sites". Nombre maximum de connexions dun utilisateur sur un site: Nombre maximum de connexions simultanes autorises pour un mme internaute sur chaque site gr par ladministrateur. Si ce paramtre est gal zro, linternaute essayant de se connecter simultanment un mme site, sera automatiquement dconnect puis reconnect. Si ce paramtre est suprieur zro, un message derreur apparatra automatiquement au bout des x connexions simultanes. Ce nombre peut tre modifi pour chaque site (onglet "Sites"). Le paramtrage des sessions et des requtes est ralis par les options suivantes: Dconnecter les utilisateurs inactifs depuis: Il sagit du temps maximum de connexion autoris sans action de la part de linternaute. Si ce temps est dpass, linternaute est automatiquement dconnect, et un message derreur est affich. Ce nombre peut tre modifi pour chaque site dans longlet "Sites". Dure des contextes AWP: Dure de validit des contextes AWP. Ds que la dure indique est coule et si aucune nouvelle requte na t effectue, le fichier des contextes est supprim. Dure maximale dune requte: Temps maximum dattente autoris entre le dclenchement dune action par linternaute (par un bouton ou un lien) et laffichage de la rponse. Si ce temps est dpass, une page derreur est affiche, mais linternaute nest pas dconnect. Ladministrateur WebDev permet de gnrer un fichier journal spcifique permettant de suivre les statistiques de frquentation. Gnrer un fichier journal pour les statistiques de frquentation (.log): Cette option permet de gnrer un fichier journal 230 Partie 8 : Hbergement de sites WebDev
(extension ".LOG") pour visualiser les statistiques de frquentation des sites WebDev laide de WDStatistiques. Pour plus de dtails sur WDStatistiques, consultez laide de WDStatistiques. La localisation du ficher journal peut tre spcifie dans le champ "Rpertoire". Cette option peut tre modifie pour chaque site dans longlet "Sites". Enregistrer dans le fichier global et dans le fichier de chaque application: Cette option permet denregistrer les statistiques la fois dans le fichier journal de lapplication et dans le fichier journal du serveur. En effet, si le fichier journal est dfini la fois au niveau du serveur et au niveau des applications (onglet "Sites"), des informations peuvent tre "perdues". Grer le dbogage distance Ladministrateur WebDev permet dautoriser ou non le dbogage distance des sites WebDev dynamiques. Si le dbogage distance est autoris, les paramtres suivants doivent tre spcifis: Port principal (27 271 par dfaut). Plage des ports des sessions (entre 27 282 et 27289 par dfaut). Le bouton "Par dfaut" permet de rtablir les valeurs par dfaut.
2.5Administration
Longlet "Administration" permet de: Configurer le serveur pour les installations et les mises jour de site. Paramtrer les messages derreur affichs dans le navigateur. Grer les comptes WebDev. Installation / mise jour Ces options sont accessibles en version dploiement. Elles permettent lhbergeur de permettre et de paramtrer les installations et mises jour de sites distance. Loption "Bloquer le serveur (pour une mise jour)" permet de simplifier la mise jour dun site, en interdisant toute connexion dun nouvel utilisateur. A chaque essai dune nouvelle connexion un des sites prsent sur le serveur, linternaute reoit un message linformant de lindisponibilit momentane du site, et lui demandant de ressayer plus tard. Les utilisateurs dj connects peuvent continuer dutiliser le site WebDev en cours.
Messages derreur Le bouton "Erreurs" affiche les diffrentes erreurs pouvant tre affiches dans le navigateur de linternaute. Il est possible de personnaliser le message derreur ou encore la page HTML o lerreur est affiche.
2.6Options avances
Longlet "Avanc" permet de: Choisir un des serveurs WEB installs sur le poste en cours pour excuter les sites WebDev. Effectuer un diagnostic de configuration du poste en cours. Spcifier le nom ou ladresse IP du poste en cours. Afficher sous le navigateur une page permettant de lancer tous les sites WebDev installs sur le poste en cours. Grer les emails en mode asynchrone. Grer les sockets serveur. Grer les impressions. Serveur utilis Le bouton "Serveur" permet de choisir un des serveurs WEB installs sur le poste en cours pour excuter les sites WebDev. Attention: Ce serveur sera utilis pour tous les sites dynamiques WebDev installs sur ce poste. Si le serveur utilis nest pas prsent dans cette liste, choisissez "Autre". Il faudra alors configurer manuellement le serveur Web utilis. Pour plus de dtails sur la configuration de serveurs spcifiques, consultez laide en ligne. Diagnostic Le bouton "Diagnostic" permet deffectuer une vrification de la configuration du poste en cours. Ce diagnostic permet de vrifier: si le protocole TCP/IP est install si un serveur WEB (serveur HTTP) est lanc si le gestionnaire de protocole AWP est correctement configur si les excutables WebDev ncessaires sont prsents. Si une de ces conditions nest pas remplie, les sites WebDev dynamiques ne pourront pas fonctionner. Pour plus de dtails sur la configuration du poste de dveloppement ou du serveur de dploiement, consultez laide en ligne.
Nom ou adresse IP du poste en cours Ladministrateur WebDev permet de spcifier un nom ou une adresse IP pour dsigner un poste spcifique. Il est galement possible de spcifier le numro de port. Par exemple: localhost:8080. Ce poste sera utilis: lors de lutilisation du bouton "Diagnostic". lors de lutilisation du bouton "Page de test". lors du test dun site, dune page, dun tat, ... depuis lditeur WebDev (icne "GO"). Test Le bouton "Page de test" permet dafficher sous le navigateur une page permettant de lancer chacun des sites WebDev dynamiques et des webservices WebDev dynamiques installs sur ce poste. Pour plus de dtails sur les tests dun site WebDev, consultez le chapitre "Test dun site en pratique", page 202. Spooler de mails Si cette option est coche, vos sites pourront envoyer des emails sans bloquer lexcution des diffrents traitements. Il est galement ncessaire dactiver le mode asynchrone louverture de la session demails ( laide de la fonction EmailOuvreSessionSMTP). Si le mode asynchrone est activ, tous les emails envoyer seront transmis un "Spooler". Les emails sont ainsi mis en file dattente avant dtre envoys. Remarque: si ladministrateur WebDev est ferm, le spooler demails est vid: les emails en attente ne sont pas envoys et sont enlevs du spooler. Si vous cochez loption "Dsactiver le spooler de mail" alors que des emails sont en attente, ces emails ne seront pas perdus: ladministrateur continue de les envoyer, mais aucun nouveau mail ne sera accept par le spooler. Sockets Si loption "Autoriser les sockets serveur" est coche, vos sites pourront manipuler les sockets du serveur ( laide des fonctions Socketxxx du WLangage).
Imprimante utilise par dfaut (site intranet uniquement) Le bouton "Configurer les impressions" permet de slectionner limprimante utilise par dfaut lors dune impression directe sur une imprimante locale ou rseau du serveur Web.
Remarque: Si une imprimante rseau est slectionne, il est ncessaire de dfinir les droits dimpression de cette imprimante. Recherche des pages primes Cette option permet dactiver et de paramtrer la recherche des pages primes sur les sites WebDev grs par le serveur dapplication WebDev.
232
Configuration du serveur
Pour un site dynamique WebDev:
Caractristiques: Lhbergeur fournit un poste serveur diffrents clients. Lhbergeur: -configure le serveur FTP. -dtermine le nombre maximum de connexions sur lensemble des sites dynamiques dun mme client ( laide du gestionnaire de comptes WebDev). Linstallation et les mises jour dun site dynamique ou statique peuvent tre ralises par FTP.
234
serveur ddi: le serveur est rserv au client. Lhbergeur fournit uniquement laccs Internet (adresse IP, cble, ...). La machine est soit loue par lhbergeur, soit fournie par le client.
Caractristiques: Lhbergeur fournit uniquement laccs Internet (adresse IP, cble, ...). Le client doit: -fournir ventuellement le poste serveur (location possible) -configurer le poste (systme, ...) -installer le serveur Web -installer et configurer les sites WebDev (par FTP ou par CD-ROM)
Serveur
Mutualis
Avantages / inconvnients
Principaux avantages: - Cot moindre - Administration du serveur ralise par lhbergeur Principaux inconvnients: - Ressources mmoire partages entre les sites prsents sur le serveur. - En cas de blocage dun site, tous les sites sur le serveur sont bloqus. - Utilisation dexcutables autonomes rarement possible. - Accs non scuris aux donnes: Des personnes non autorises peuvent avoir accs aux donnes: lhbergeur, et potentiellement, dautres clients, si le serveur nest pas correctement configur. Conseil: cryptez les fichiers de donnes pour viter toute utilisation non autorise.
Ddi
Principaux avantages: - Ressources du poste serveur disponibles pour le(s) site(s) install(s) sur ce poste. - Gestion du rapatriement des donnes totalement personnalisable: - rplication par e-mails, - utilitaire WDREPLIC, - copie des fichiers par FTP. Principaux inconvnients: - Cot important - Administration du poste serveur entirement ralise par le client, la plupart du temps.
Un serveur ddi est conseill pour: - les sites trs visits, - les sites ncessitant une place disque et mmoire importante, - les sites grant des donnes sensibles, - les sites dynamiques.
236
238
1. Ouverture dune page statique. La page statique est prsente sur le serveur UNIX. 2. Lancement du site dynamique WebDev (prsent sur le serveur Windows) par un lien prsent dans la page HTML statique. 3. Fonctionnement normal du site WebDev. Remarque: la mme configuration peut tre adopte avec un serveur Linux.
Solution 1: Installation du site dynamique WebDev uniquement sur le serveur de donnes. Cette solution consiste installer: sur chaque serveur Web, le serveur dapplication WebDev, sur le serveur de donnes, les sites dynamiques WebDev et les fichiers de donnes. Solution 2: Installation du site dynamique WebDev sur tous les serveurs Web. Cette solution consiste installer: sur chaque serveur Web, le serveur dapplication WebDev, et les sites dynamiques WebDev. sur le serveur de donnes, les fichiers de donnes des sites dynamiques WebDev.
240
242
Partie 9 Annexes
244
Partie 9 : Annexes
AJAXAnnuleAppelAsynchrone AJAXAppelAsynchroneEnCours AJAXDisponible AJAXExcute AJAXExcuteAsynchrone AjouteFavori AnnuleContexteAWP ASPAffiche ASPExcute CaptchaAffiche CaptchaVrifie CelluleAfficheDialogue CelluleFermeDialogue CertificatClientInfo ChaneAffiche ChangeAction ChangeDestination CheminNavigationAjouteLien CheminNavigationInsreLien CheminNavigationModifieLien CheminNavigationSupprimeLien CheminNavigationSupprimeTout ConfigureContexteAWP ConnexionOccurrence ContexteExiste ContexteFerme ContexteOuvre CookieEcrit
Annule lexcution automatique de la procdure navigateur appele par la fonction AJAXExcuteAsynchrone. Permet de savoir si une procdure serveur appele par la fonction AJAXExcuteAsynchrone est en cours dexcution. Permet de savoir si la technologie AJAX est utilisable dans le navigateur en cours. Excute une procdure serveur sans rafrachir la page. Excute une procdure serveur sans rafrachir la page. Ajoute une adresse Internet dans la liste des favoris de linternaute. Supprime du contexte AWP une variable ajoute par la fonction DclareContexteAWP. Appelle un script ASP externe et renvoie la page rsultat dans la fentre en cours du navigateur. Appelle un script externe .asp et renvoie le rsultat dans une chane. Affiche un nouveau captcha dans un champ captcha. Vrifie si la valeur saisie par lutilisateur correspond la chane affiche dans un champ captcha. Affiche une cellule dans la page avec un effet de GFI (Grisage des Fentres Inaccessibles). Masque une cellule affiche via la fonction CelluleAfficheDialogue. Renvoie des informations sur le certificat utilis par le poste client. Renvoie une chane spcifique (ou un buffer) sur le navigateur du client en rponse la requte reue. Permet de spcifier laction effectue en cas de dsynchronisation entre la page HTML affiche dans le navigateur et le contexte de page sur le serveur. Change la frame de destination de la page. Ajoute un lien dans un chemin de navigation. Insre un lien dans un chemin de navigation. Modifie un lien dans un chemin de navigation. Supprime un lien dans un chemin de navigation. Supprime tous les liens dans un chemin de navigation. Dfinit le fonctionnement des contextes AWP. Renvoie le nombre dinstances du site WebDev en cours dexcution sur le serveur. Permet de savoir si un contexte de page existe sur le serveur. Ferme un contexte de page. Ouvre un nouveau contexte de page sans renvoyer les informations vers le navigateur. Ecrit un cookie sur le poste de linternaute lors du prochain affichage dune page WebDev dans le navigateur. Partie 9 : Annexes 245
CookieLit CouleurPalette DclareContexteAWP EmailEtat EmailOuvreMessagerie FichierAffiche FichierVersPage FramesetActualise FramesetAffiche FramesetUtilise fRepWeb GadgetAfficheFlyout GadgetChargeParamtre GadgetFermeFlyout GadgetSauveParamtre gpwOuvreConfiguration GPSDernirePosition GPSEtat GPSRcuprePosition GPSSuitDplacement grTailleImage IdentifiantContexteAWP ImageArrteDfilement ImageDernier ImageLanceDfilement ImageOccurrence ImagePositionDfilement ImagePosX ImagePosY ImagePrcdent ImagePremier ImageSuivant ImageZone iRepImageHTML
Rcupre la valeur dun cookie enregistr sur le poste de linternaute. Lit une couleur de la palette courante. Dclare une liste de variables dont la valeur sera persistante entre les affichages successifs des pages AWP. Renvoie ltat dun email envoy par une session SMTP ouverte en mode asynchrone. Ouvre le logiciel de messagerie par dfaut de linternaute. Renvoie un fichier spcifique sur le navigateur. Initialise automatiquement les champs dune page avec les valeurs des rubriques associes dans lenregistrement en cours (charg en mmoire) du fichier HyperFileSQL. Actualise un frameset affich dans le navigateur de linternaute partir du contexte prsent sur le serveur. Affiche un frameset WebDev dans le navigateur de linternaute. Affiche un frameset WebDev dans le navigateur de linternaute et ferme tous les contextes de pages et de frameset en cours. Renvoie le nom physique complet du rpertoire contenant les images, les fichiers Javascript et Java du site WebDev. Affiche dans une zone popup une page du gadget Vista. Charge une valeur persistante dans un gadget Vista. Ferme la zone popup dun gadget Vista. Sauve une valeur persistante dans un gadget Vista. Ouvre la page de configuration du groupware utilisateur. Rcupre les informations sur la dernire position connue de lappareil. Rcupre ltat dactivation du fournisseur de golocalisation ou demande tre notifi lors du changement dtat. Rcupre les informations sur la position actuelle du priphrique. Demande tre notifi priodiquement de la position courante du priphrique. Dfinit la taille de limage contenant le graphe. Renvoie lidentifiant du contexte AWP. Arrte le dfilement automatique des images. Affiche la dernire image. Lance le dfilement automatique des images. Permet de connatre le nombre total dimages. Retourne limage affiche. Renvoie la position horizontale du curseur de souris par rapport au champ image considr. Renvoie la position verticale du curseur de souris par rapport au champ image considr. Affiche limage prcdente. Affiche la premire image. Affiche limage suivante. Renvoie le numro de la zone de limage clique par linternaute (image clicable uniquement). Permet de slectionner le rpertoire des images gnres lors dune limpression au format HTML.
246
Partie 9 : Annexes
JaugeActive JaugeDsactive JaugeExcute JSEvnement JSFinEvnement JSInfoEvnement JSInterruptionEvnement JSMthode JSONExcute JSONExcuteExterne
JSProprit MenuAjouteOptionURL NavigateurAdresseIP NavigateurEstConnect NavigateurFerme NavigateurLanceAppli NavigateurNom NavigateurOuvre PageActiveGFI PageActualise PageAdresse PageAffiche PageAfficheDialogue PageCourante PageExiste PageFermeDialogue PageInitialisation PageParamtre
Active le rafrachissement dune jauge Ajax. Stoppe le rafrachissement priodique dune jauge Ajax. Lance un traitement navigateur relativement long et fait avancer une jauge Ajax selon lavancement de ce traitement. Associe une procdure navigateur un vnement sur un objet en code navigateur. Supprime lassociation dune fonction WLangage navigateur un vnement. Permet de manipuler les proprits JavaScript de lvnement navigateur qui a dclench lexcution du code. Interrompt le traitement de lvnement en cours. Permet dexcuter une mthode Javascript sur un lment de la page en cours. Appelle une URL serveur du mme domaine qui retourne des donnes au format JSON (JavaScript Object Notation). Appelle une URL serveur externe qui retourne des donnes au format JSON (JavaScript Object Notation). Les donnes sont traites dans une procdure spcifique. Permet de manipuler des fonctionnalits spcifiques sur des objets de la page en cours. Ajoute une nouvelle option de menu la fin dun menu. Cette option de menu permet dafficher la page correspondant lURL indique. Renvoie ladresse IP du poste de lInternaute connect au site WebDev. Indique si le navigateur est connect au rseau. Ferme la fentre en cours du navigateur et stoppe lexcution du code en cours. Lance le navigateur web natif de lapplication Renvoie le nom du navigateur de linternaute. Ouvre une nouvelle fentre du navigateur. Active ou dsactive leffet appliqu par WebDev sur les pages inactives lors de laffichage dune page modale. Actualise une page affiche dans le navigateur de linternaute partir du contexte prsent sur le serveur. Permet dobtenir ladresse Internet dune page WebDev. Affiche une page dans le navigateur de linternaute. Affiche une page de manire modale. Permet de crer un dialogue avec lutilisateur. Renvoie le nom de la page contenant le code WLangage en cours dexcution. Vrifie si la page spcifie est actuellement affiche dans le navigateur de linternaute. Ferme la page courante. Cette page a t ouverte avec la fonction PageAfficheDialogue. Remet zro (ou non) les champs de la page en cours et lance les traitements dinitialisation des champs. Renvoie la valeur dun paramtre pass la page en cours.
Partie 9 : Annexes
247
PagePosition PagePrcdente PageTauxGFI PageUtilise PageValide PageVersASP PageVersEmail PageVersFichier PageVersJSP PageVersPHP PageVersSource
Fait dfiler une page pour positionner un champ dans la partie visible de la page (le plus haut) dans le navigateur. Renvoie le nom de la page prcdente. Permet de dfinir le taux de grisage des pages inactives. Affiche une page WebDev dans le navigateur de linternaute et ferme tous les contextes de pages en cours. Valide la page spcifie et lance lexcution dun bouton. Envoie les donnes dune page actuellement affiche sous le navigateur vers un serveur ASP. Envoie les donnes dune page actuellement affiche sous le navigateur par un email. Initialise automatiquement la valeur mmoire des rubriques dun fichier avec la valeur des champs de la page. Envoie les donnes dune page actuellement affiche sous le navigateur vers un serveur JSP. Envoie les donnes dune page actuellement affiche sous le navigateur vers un serveur PHP. Initialise automatiquement la valeur mmoire des rubriques dun fichier de donnes avec la valeur des champs de la page et / ou la valeur des variables WLangage avec la valeur des champs de la page. Appelle un script PHP externe et renvoie la page rsultat dans la fentre en cours du navigateur. Appelle un script externe .php et renvoie le rsultat dans une chane. Une requte http est effectue. Affiche une page popup. Ferme une page popup. Initialise automatiquement la valeur mmoire des rubriques dun fichier de donnes avec la valeur des champs de la page et / ou la valeur des variables WLangage avec la valeur des champs de la page. Renvoie le chemin du rpertoire contenant les images, les fichiers Javascript, les fichiers applet Java, les autres fichiers accessibles depuis le navigateur,... Construit un flux RSS et renvoie le contenu du flux RSS au client. Le rsultat est affich sur le navigateur de linternaute. Authentifie un utilisateur dun site SaaS auprs du webservice SaaS gestionnaire du site. Renvoie les caractristiques de la connexion la base de donnes du client. . Dconnecte lutilisateur dun site SaaS auprs du webservice SaaS gestionnaire du site. Enregistre une information spcifique pour un site SaaS dans la configuration dun compte client. Dtermine si la connexion au webservice SaaS est toujours en cours. Lit une information spcifique au client pour le site SaaS en cours. Vrifie les droits daccs de lutilisateur un service du site SaaS. Appelle un script externe (par exemple .php, .asp, .mhtml ou .mht) et renvoie la page rsultat dans la fentre en cours du navigateur.
RpertoireWeb rssAffiche SaaSConnecte SaaSConnexionClient SaaSDconnecte SaaSEcritParamtreSite SaaSEstConnect SaaSLitParamtreSite SaaSVrifieService ScriptAffiche
248
Partie 9 : Annexes
ScriptExcute SiteAdresse SourceVersPage SiteDynamiqueAffiche SSLActive StockageLocalAjoute StockageLocalDisponible StockageLocalNomValeur StockageLocalOccurrence StockageLocalRcupre StockageLocalSupprime StockageLocalSupprimeTout SupprimeContexteAWP SysVersion UploadCopieFichier UploadFichierEnCours UploadLance UploadNomFichier UploadSupprime
Appelle un script externe (par exemple .php ou .asp) et renvoie le rsultat dans une chane. Une requte http est effectue: il est possible dutiliser soit une mthode POST, soit une mthode GET. Renvoie ladresse Internet de connexion un site dynamique WebDev situ sur le mme serveur. Initialise automatiquement les champs dune page avec: - les valeurs des rubriques associes dans lenregistrement en cours, - les valeurs des variables WLangage associes. Affiche un site dynamique (cr avec WebDev) dans le navigateur de linternaute partir dune page WebDev dynamique ou statique. Permet dactiver ou de dsactiver le mode scuris SSL. Ajoute une valeur au stockage local. Indique si le stockage local est disponible. Donne le nom dune valeur du stockage local. Donne le nombre de valeurs du stockage local. Rcupre une valeur du stockage local. Supprime une valeur du stockage local. Supprime toutes les valeurs du stockage local. Supprime du contexte AWP une variable ajoute par DclareContexteAWP Renvoie des renseignements sur la version de PHP utilise sur le poste serveur en cours. Enregistre sur le serveur un fichier "upload" par linternaute. Indique le fichier en cours dupload via le champ upload. Cette fonction est utile notamment pour les champs Upload multi-fichiers. Lance lenvoi des fichiers slectionns dans un champ upload. A la fin de lenvoi, la liste des fichiers envoyer est vide sur le navigateur. Renvoie le nom dun fichier "upload" par linternaute.
Supprime un fichier de la liste des fichiers uploader: le fichier ne sera pas upload sur le serveur. UploadSupprimeTout Vide la liste des fichiers uploader: aucun fichier ne sera upload sur le serveur. UploadTaille Renvoie la taille totale (en octets) des fichiers dj envoys par lupload en cours via un champ Upload. UploadTailleEnvoye Renvoie la taille totale (en octets) des fichiers dj envoys par lupload en cours via un champ Upload. UploadTailleEnvoyeFichierEnCours Renvoie la taille (en octets) dj envoye du fichier en cours dupload via un champ Upload. UploadTailleFichier UploadTailleFichierEnCours Renvoie la taille totale (en octets) dun fichier prsent dans un champ Upload. Renvoie la taille (en octets) dj envoye du fichier en cours dupload via un champ Upload.
Partie 9 : Annexes
249
Panier PayBox
Deux sous-rpertoires sont spcifiques chacun de ces exemples: - le sous-rpertoire "<NomDuComposant>-Exemple" contient un exemple de projet utilisant le composant. - le sous-rpertoire "<NomDuComposant>-Source" contient le projet du composant. Des composants supplmentaires seront livrs avec la Lettre du Support Technique (LST) ou disponibles sur notre site (www.pcsoft.fr).
250
Partie 9 : Annexes
Exemples complets
Nom de lexemple Catalogue_Internet Description
Propose un site catalogue en AWP et un site dadministration: - Gestion dun panier - Gestion des promotions - Gestion des nouveauts - Recherche de produit Gestion de supermarch en ligne. Les produits peuvent tre achets et stocks dans un panier virtuel jusquau paiement. Portail intranet gratuit : messagerie, forum, blogs, Gestion de petites annonces. Permet des recherches multicritres, ajout, modification et suppression dannonces, ainsi quune gestion dutilisateurs. Achat de voyages en ligne. Gestion de dysfonctionnements. Permet de crer, modifier ou supprimer des suggestions ou des dysfonctionnements. Gestion de dysfonctionnements en PHP. Permet de crer, modifier ou supprimer des suggestions ou des dysfonctionnements. Gestion Electronique de Documents (GED). Utilise le composant Moteur de recherche pour effectuer des recherches par mot-cl.
WebDoc
Partie 9 : Annexes
251
Site de location de DVD en ligne. Site de vente et de location de biens immobiliers. Utilise un fichier de donnes de plus d1 million denregistrements. Simule une gestion de parc informatique. Cet exemple est un site de gestion de blogs, bas sur une gnration AWP, ce qui permet entre autre de pouvoir rfrencer le site dans tous les moteurs de recherche. De plus, chaque blog peut tre export en RSS. Cet exemple est un site PHP de gestion de blogs. Cet exemple prsente comment utiliser le grapheur et associer des actions au clic sur des parties du graphe. Cet exemple est un CMS (Content Management System) ou site de gestion de contenu, typiquement un site daffichage darticles. Cet exemple est dvelopp pour Microsoft Internet Explorer 5.5 (ou version ultrieure). Il utilise les fonctionnalits ddition HTML dInternet Explorer. Cet exemple permet de simuler des emprunts. Les tableaux damortissement peuvent tre dits dans un fichier au format PDF. Cet exemple propose les fonctionnalits principales dun forum utilisateur (cration de forums, de sujets (ou topics) et de messages, modration par un administrateur, ...). Cet exemple propose les fonctionnalits principales dun forum utilisateur (cration de forums, de sujets (ou topics) et de messages, modration par un administrateur, ...). Cet exemple propose les fonctionnalits principales dun forum utilisateur (cration de forums, de sujets (ou topics) et de messages, modration par un administrateur, ...). Cet exemple est une galerie dimages et de photographies simplifie. Cet exemple est un site PHP. Il sagit dune galerie dimages et de photographies simplifies.
WW_Editeur_HTML
WW_Emprunt
WW_Forum_AWP
WW_Forum_Classic
WW_Forum_PHP
WW_Images WW_Images_php
252
Partie 9 : Annexes
WW_Planning
Cet exemple permet dafficher de faon dynamique les tches des diffrents collaborateurs. Il est possible dajouter, de modifier ou de supprimer des tches dans le planning, simplement en cliquant sur les lments du planning. Toutes les manipulations sont effectues en AJAX. Cet exemple de site marchand simplifi est un site Php ralis avec WebDev. Cet exemple permet de dessiner des graphes. Prsente le mixage entre un site dynamique WebDev classique et un site AWP WebDev. Cet exemple explique comment utiliser le grapheur pour tracer des graphes boursiers. Site de discussion en ligne et en direct. Tous les traitements (envoi de messages, etc.) sont grs en AJAX. Il ny a donc aucun effet de rafrachissement dans les pages. Cet exemple explique comment manipuler les images en code navigateur: zoomer, se dplacer, grer le clic sur une carte (ici une carte Michelin).
WW_Zoom
Exemples didactiques
Nom de lexemple WW_Agenda WW_Animated WW_Assistant Description
Cet exemple utilise le champ Planning en mode Agenda. Prsente quelques fonctionnalits danimations et deffets proposs en standard dans WebDev et le WLangage. Cet exemple met disposition une classe et un modle de page rutilisables, qui permettent de crer et de grer un assistant Web. Permet lInternaute de lancer un traitement serveur, tout en ayant son interface modifie afin dtre notifi de la fin du traitement serveur Cet exemple montre comment crer des "cellules furtives" dans vos sites WebDev Exemple dutilisation de tous les types de champs disponibles avec WebDev lors dune gnration PHP.
WW_Attente_Serveur
WW_CellulesFurtives WW_Champs_PHP
Partie 9 : Annexes
253
WW_ChangementCSS
Cet exemple explique comment modifier la feuille de styles dune page WebDev par programmation. Ce principe peut tre utile par exemple pour changer linterface dun site en fonction des prfrences de linternaute. Permet dexcentrer les parts dun graphe de type secteur par un simple clic utilisateur. Fonctions de dessin en code navigateur, pour les navigateurs supportant HTML5. Cet exemple montre comment raliser un effet de fondu entre 2 images. Cet exemple fournit sous forme de superchamps des bandeaux Flash personnalisables. Cet exemple prsente les interactions possibles en code navigateur entre une application Flex et un site WebDev. Cet exemple montre comment lire et afficher un flux RSS dans une page WebDev grce au type RSS. Cet exemple montre comment modifier deux frames diffrentes, sans rafficher tout le frameset. Montre comment intgrer dans une page WebDev dynamique des effets spciaux crs avec du javascript et du CSS. Cet exemple montre comment raliser un mini-site WebDev pour iPhone. Cet exemple a pour but de prsenter lutilisation des map area en programmation ou par action prdfinie. Illustre linteraction entre une page WebDev et le service Google Maps API, afin dafficher une carte gographique, politique ou routire dun endroit donn sur la plante. Cet exemple montre comment utiliser le CSS pour encadrer et mettre en vidence des mots dans un libell HTML (ou un champ HTML). Cet exemple montre comment afficher un nuage de tags dans une application WebDev dynamique. Prsente comment proposer dans vos sites WebDev PHP un paiement scuris avec la solution PayPal. Permet de grer des commandes, modifier les quantits commandes, valider et enregistrer des commandes au format XML.
WW_Clic_sur_Graphe WW_Dessin_HTML5 WW_DiapoFondu WW_FlashParametrable WW_Flex WW_Flux_RSS WW_Frames WW_IntegrationCSS WW_iPhone WW_MapArea WW_MapStatique
WW_MiseEnEvidence
254
Partie 9 : Annexes
Cet exemple montre comment grer une rglette dans une page AWP. Illustre les possibilits de dialogue entre un site dynamique WebDev et des champs Silverlight.
WW_Upload
WW_WEB2
WW_WIKI
Partie 9 : Annexes
255
WWFlash
Ce site permet dintgrer un menu droulant Flash qui interagit avec WebDev. Ce site permet donc dutiliser des animations Flash dans un site WebDev. Ce site montre aussi linteraction avec une animation Flash. Cet exemple permet de montrer comment changer dynamiquement lapparence dun formulaire contenu dans une page Web. Cet exemple prsente un menu ralis avec WebDev. Cet exemple montre comment passer et rcuprer des paramtres un site. Cet exemple est un site pouvant tre visualis sur un Pocket PC. Le site dtecte la rsolution du client et affiche les pages en consquence. Ce site permet dintercepter lappui sur la touche [TABULATION] pour insrer une tabulation dans un champ de saisie. Ce programme permet de dtecter la touche frappe au clavier (vnement OnKeyDown) sous Internet Explorer. Cette fonctionnalit est mise en place dans un jeu de mots-croiss. Cet exemple prsente les cas les plus frquents dutilisation de zones rptes.
WWForm
WWTabulation
WWTouche
WWZone
Des exemples supplmentaires sont livrs avec la Lettre du Support Technique (LST) ou sont disponibles sur notre site (www.pcsoft.fr).
256
Partie 9 : Annexes