You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Concepts</strong>
WinDev Mobile 11 - <strong>Concepts</strong><br />
Version 11 - (1) 1106<br />
Visitez régulièrement le site www.pcsoft.fr, espace actualités pour vérifier si des mises à jour sont proposées.<br />
Adresse e-mail du Support Technique Gratuit : supportgratuit@pcsoft.fr.<br />
Conseil : Pour recevoir directement des mises à jour intermédiaires <strong>et</strong> des conseils d’utilisation, abonnezvous<br />
à la LST (revue trimestrielle + CD), en français.<br />
C<strong>et</strong>te documentation n’est pas contractuelle. PC SOFT se réserve le droit de modifier ou de supprimer<br />
tout suj<strong>et</strong> traité dans ce document.<br />
Tous les noms de produits ou autres marques cités dans c<strong>et</strong> ouvrage sont des marques déposées par leurs propriétaires respectifs.<br />
© PC SOFT 2006 : Aucune reproduction intégrale ou partielle du présent ouvrage sur quelque support que ce soit ne peut être effectuée<br />
sans l’autorisation expresse de PC SOFT.
3<strong>Concepts</strong> WinDev Mobile<br />
SOMMAIRE<br />
PARTIE 1 - DÉVELOPPEMENT D’UNE APPLICATION<br />
Environnement de développement ....................................................................................................... 9<br />
Développer une application pour Pock<strong>et</strong> PC ......................................................................................10<br />
Proj<strong>et</strong> <strong>et</strong> Analyse ................................................................................................................................... 11<br />
Perso-dossiers : Organisez votre proj<strong>et</strong> ............................................................................................... 12<br />
WinDev Mobile <strong>et</strong> Windows .................................................................................................................. 13<br />
WinDev Mobile <strong>et</strong> les processeurs ...................................................................................................... 14<br />
Les différents types de fenêtres .......................................................................................................... 15<br />
Les champs disponibles dans une fenêtre ......................................................................................... 16<br />
Les menus ............................................................................................................................................. 17<br />
Modèle de fenêtres ............................................................................................................................... 18<br />
RAD ........................................................................................................................................................ 19<br />
RID ......................................................................................................................................................... 20<br />
Composant ............................................................................................................................................ 21<br />
Composants multi-produits .................................................................................................................. 22<br />
Les états ................................................................................................................................................ 23<br />
Gestionnaire de Sources (GDS) ........................................................................................................... 24<br />
Centre de suivi de proj<strong>et</strong>s .................................................................................................................... 26<br />
Génération multiple .............................................................................................................................. 27<br />
ActiveSync ............................................................................................................................................. 28<br />
Test d’une application WinDev Mobile ................................................................................................ 29<br />
Installation d’une application pour Pock<strong>et</strong> PC .................................................................................... 30<br />
PARTIE 2 - BASE DE DONNÉES<br />
Données manipulées par une application pour Pock<strong>et</strong> PC ............................................................... 35<br />
Base de données Hyper File Mobile .................................................................................................... 36<br />
Base de données Hyper File Client / Serveur ..................................................................................... 37<br />
Bases de données CEDB standard ..................................................................................................... 38<br />
Manipulation des bases de données CEDB personnalisées ............................................................. 40<br />
Manipulation en WLangage des bases de données CEDB ................................................................ 43<br />
Comparaison Hyper File Mobile / CEDB ............................................................................................. 44<br />
Les requêtes .......................................................................................................................................... 46<br />
Les requêtes intégrées ......................................................................................................................... 47<br />
Synchronisation des données .............................................................................................................. 48<br />
3-Tiers .................................................................................................................................................... 50
4<br />
PARTIE 3 - PROGRAMMATION EN WLANGAGE<br />
Fonctions WLangage .............................................................................................................................53<br />
Manipulation des chaînes de caractères ............................................................................................54<br />
Sélecteur de fichiers <strong>et</strong> chemins sur Pock<strong>et</strong> PC .................................................................................56<br />
Gestion du clavier ..................................................................................................................................57<br />
Fonctions spécifiques au Pock<strong>et</strong> PC ....................................................................................................58<br />
PARTIE 4 - COMMUNICATION<br />
Communication avec WinDev Mobile ..................................................................................................61<br />
Gestion d’e-mails (protocole POP3/SMTP) ..........................................................................................64<br />
Gestion d’e-mails (CEMAPI) ..................................................................................................................65<br />
Manipuler des fichiers sur un serveur FTP ..........................................................................................67<br />
Gestion des SMS ...................................................................................................................................68<br />
PARTIE 5 - INTERACTIONS <strong>WINDEV</strong> - <strong>WINDEV</strong> MOBILE<br />
Interaction avec une application WinDev Standard ...........................................................................71<br />
Pock<strong>et</strong> PC : Partage des éléments WinDev .........................................................................................72<br />
Manipuler un Pock<strong>et</strong> PC depuis une application WinDev standard ..................................................73<br />
PARTIE 6 - ANNEXES<br />
Principales nouveautés de WinDev Mobile 11 ...................................................................................77<br />
Outils disponibles avec WinDev Mobile ...............................................................................................79<br />
Composants livrés avec WinDev Mobile ..............................................................................................80<br />
Exemples livrés avec WinDev Mobile ...................................................................................................81<br />
<strong>Concepts</strong> WinDev Mobile
5<strong>Concepts</strong> WinDev Mobile<br />
DANS QUEL ORDRE LIRE LES MANUELS ?<br />
WinDev Mobile est un puissant outil de développement d’applications pour Pock<strong>et</strong>s PC<br />
(Smartphone, Psion, ...).<br />
Pour une formation rapide <strong>et</strong> efficace à WinDev Mobile, nous vous conseillons l’ordre<br />
d’apprentissage suivant :<br />
1<br />
2<br />
3<br />
Lecture des "<strong>Concepts</strong>".<br />
Ce manuel (que vous avez entre les mains) présente les principaux concepts nécessaires<br />
à la création d’une application WinDev Mobile.<br />
"Auto-formation" (livre + exercices)<br />
Le guide d’auto-formation perm<strong>et</strong> une première approche "pratique" de WinDev<br />
Mobile. Vous pouvez ainsi vous familiariser avec les principaux éditeurs de WinDev<br />
Mobile.<br />
Test des exemples<br />
Testez les différents exemples livrés avec WinDev Mobile dans les domaines qui<br />
vous intéressent (SMS, Sondage, ...).<br />
L'aide en ligne perm<strong>et</strong> de trouver rapidement la syntaxe d'une fonction du WLangage, d’obtenir une<br />
aide sur l’interface, de trouver les concepts de programmation associés à une fonctionnalité, ...<br />
Nous vous souhaitons une agréable prise en main de WinDev Mobile.
6<br />
<strong>Concepts</strong> WinDev Mobile
PARTIE 1<br />
Développement d’une<br />
application
9<br />
ENVIRONNEMENT DE DÉVELOPPEMENT<br />
WinDev Mobile est un environnement de développement sous PC qui perm<strong>et</strong> de développer des<br />
applications pour Pock<strong>et</strong> PC, Smartphone, ...<br />
Remarque : Les applications générées à l'aide de WinDev Mobile fonctionnent sur une des<br />
plateformes suivantes (équipés de processeur ARM <strong>et</strong> compatibles, ARM v4T <strong>et</strong> compatibles, x86<br />
<strong>et</strong> compatibles) :<br />
• Pock<strong>et</strong> PC (2002, 2003, ...)<br />
• Téléphone Windows Mobile (Smartphone, ...)<br />
• Windows CE 3, 4 <strong>et</strong> 5 (Psion, ...)<br />
Ces applications ne fonctionnent pas sous PC Windows.<br />
Note : Dans ce livre, le terme "Pock<strong>et</strong> PC" est utilisé pour représenter toutes les plateformes<br />
possibles d’exécution (Pock<strong>et</strong> PC, Smartphone, Psion, ...). Pour les cas particuliers, le nom de la<br />
plateforme concernée est cité explicitement.<br />
Partie 1 : Développement d’une application
10<br />
DÉVELOPPER UNE APPLICATION POUR<br />
POCKET PC<br />
Partie 1 : Développement d’une application
11<br />
PROJET ET ANALYSE<br />
Un Proj<strong>et</strong> WinDev Mobile est un ensemble de fenêtres, champs, classes, composants, ... dont le<br />
but est de réaliser une application Windows.<br />
Une Analyse WinDev Mobile regroupe la description des fichiers de données.<br />
Un proj<strong>et</strong> est généralement associé à une analyse.<br />
Une analyse peut être associée à un ou plusieurs proj<strong>et</strong>s.<br />
Proj<strong>et</strong> 2<br />
Classes<br />
Feuille de<br />
styles<br />
Fenêtres <strong>et</strong><br />
champs<br />
Classes<br />
Proj<strong>et</strong> 1<br />
Feuille de<br />
styles<br />
Fenêtres <strong>et</strong><br />
champs<br />
Analyse<br />
Classes<br />
Proj<strong>et</strong> N<br />
Feuille de<br />
styles<br />
Pour créer l’application "jaidebeauxyeux", créez le proj<strong>et</strong> "jaidebeauxyeux".<br />
Fenêtres<br />
<strong>et</strong> champs<br />
Partie 1 : Développement d’une application
12<br />
PERSO-DOSSIERS : ORGANISEZ VOTRE<br />
PROJET<br />
L’éditeur de proj<strong>et</strong>s de WinDev Mobile perm<strong>et</strong> de représenter la cartographie complète du proj<strong>et</strong>.<br />
Sur des proj<strong>et</strong>s de taille importante, la navigation dans c<strong>et</strong>te représentation peut être délicate. La<br />
notion de "perso-dossiers" perm<strong>et</strong> d’améliorer c<strong>et</strong>te navigation<br />
Un "perso-dossier" contient les éléments que vous y rangez, par exemple : les éléments de<br />
l’application utilisables sous Pock<strong>et</strong> PC <strong>et</strong> ceux utilisables sous Smartphone.<br />
Des éléments peuvent être communs à plusieurs "perso-dossiers".<br />
Il est ainsi plus simple de travailler sur une partie de l’application.<br />
Partie 1 : Développement d’une application<br />
Contenu du<br />
perso-dossier<br />
Pock<strong>et</strong> PC<br />
Fenêtres, états, requêtes se rapportant aux<br />
Pock<strong>et</strong>s PC<br />
Contenu du<br />
perso-dossier<br />
Smartphone<br />
Fenêtres, états, requêtes se rapportant aux<br />
Smartphones
13<br />
<strong>WINDEV</strong> MOBILE ET WINDOWS<br />
Les applications créées avec WinDev Mobile peuvent fonctionner avec les versions de Windows<br />
suivantes :<br />
• Windows Pock<strong>et</strong> PC 2002.<br />
• Windows Mobile 2003 / 2003 SE (VGA) pour Pock<strong>et</strong> PC <strong>et</strong> pour Smartphone.<br />
• Windows Mobile 5.0 pour Pock<strong>et</strong> PC <strong>et</strong> pour Smartphone.<br />
Le schéma suivant récapitule les différentes familles de Windows disponibles pour les Pock<strong>et</strong>s PC.<br />
Windows CE 3.0<br />
Windows Pock<strong>et</strong> PC 2002<br />
Windows CE 4.0 ".NET"<br />
Windows CE 4.2 ".NET"<br />
Windows Mobile 2003 / 2003 SE (VGA) pour<br />
Pock<strong>et</strong> PC<br />
Windows Mobile 2003 / 2003 SE (VGA) pour<br />
Smartphone<br />
Windows CE 5.0<br />
Windows Mobile 5.0 pour Pock<strong>et</strong> PC<br />
Partie 1 : Développement d’une application<br />
Windows Mobile 5.0 pour Smartphone
14<br />
<strong>WINDEV</strong> MOBILE ET LES PROCESSEURS<br />
Les applications créées avec WinDev Mobile peuvent fonctionner sous des Pock<strong>et</strong>s PC équipés des<br />
processeurs suivants :<br />
• ARM <strong>et</strong> compatibles (Strong ARM, XScale, Samsung, Texas Instrument, ...)<br />
• ARM v4T <strong>et</strong> compatibles (XScale, ...)<br />
• x86 <strong>et</strong> compatibles (AMD Geode, Transm<strong>et</strong>a Crusoe, VIA C3, C7, Eden, ...)<br />
Partie 1 : Développement d’une application
15<br />
LES DIFFÉRENTS TYPES DE FENÊTRES<br />
Les applications WinDev Mobile peuvent utiliser deux types de fenêtres :<br />
• Les fenêtres maximisées (ce sont les fenêtres le plus souvent utilisé). Une fenêtre<br />
maximisée occupe tout l'écran du Pock<strong>et</strong> PC.<br />
• Les fenêtres non-maximisées. Une fenêtre non maximisée peut être redimensionnée par<br />
l'utilisateur, <strong>et</strong> occuper seulement une partie de l'écran.<br />
Les fenêtres maximisées<br />
Les principaux éléments d’une fenêtre maximisée sont les suivants :<br />
Les fenêtres non-maximisées<br />
Les principaux éléments d’une fenêtre non-maximisée sont les suivants :<br />
Bouton "Fermer ou OK"<br />
Le bouton "Fermer ou OK" perm<strong>et</strong> de fermer ou de valider la fenêtre en cours. Ce bouton est<br />
associé à un traitement spécifique de la fenêtre ("Avant ferm<strong>et</strong>ure par bouton OK/Fermer") exécuté<br />
avant le code de ferm<strong>et</strong>ure de la fenêtre.<br />
Partie 1 : Développement d’une application
16<br />
LES CHAMPS DISPONIBLES DANS UNE<br />
FENÊTRE<br />
WinDev Mobile m<strong>et</strong> à votre disposition de nombreux champs :<br />
Vous voulez ....<br />
Utilisez un champ de type<br />
Partie 1 : Développement d’une application<br />
Afficher du texte, un titre, ...<br />
Afficher un prix, une quantité, une adresse, une date, une<br />
heure, ...<br />
Sélectionner une valeur parmi une liste (Pays, Ville,<br />
Devise, …)<br />
Sélectionner plusieurs valeurs parmi une liste<br />
Afficher une image graphique (Photo, Graphe de statistiques,<br />
Courbe, …)<br />
Afficher une animation (Gif animé)<br />
Afficher le contenu d’un fichier en table (Liste des clients,<br />
détail d’une commande, …)<br />
Répéter des champs dans une fenêtre (Catalogue produits<br />
avec la photo, ...)<br />
Afficher un histogramme, une courbe, un graphe de type camembert<br />
Saisir des informations<br />
Afficher une progression<br />
Programmer une action dans une fenêtre (afficher une<br />
autre fenêtre, lancer une impression, …)<br />
Regrouper les champs par thème <strong>et</strong> afficher les thèmes un<br />
par un<br />
Libellé<br />
Différences avec WinDev standard<br />
Les champs suivants ne sont pas disponibles sous WinDev Mobile :<br />
•Champ Table Hiérarchique.<br />
•Champ Web Caméra.<br />
•Champ Conférence.<br />
• Champ Tiroir.<br />
• Champ HTML.<br />
• Champ OLE.<br />
Champ de saisie<br />
Sélecteur, Combo, Liste, Liste<br />
image<br />
Interrupteur, Liste<br />
Image<br />
Image<br />
Table fichier ou mémoire<br />
Zone répétée<br />
Champ graphe<br />
Champ de saisie<br />
Champ Jauge<br />
Bouton<br />
Ongl<strong>et</strong>, boîte à outils<br />
•Champ Carrousel.<br />
•Barre d'outils.<br />
•Code-Barres.
17<br />
LES MENUS<br />
Les menus créés avec WinDev Mobile s’adaptent automatiquement à la plateforme d’exécution<br />
choisie.<br />
Pock<strong>et</strong> PC<br />
Les menus apparaissent en bas de la<br />
fenêtre.<br />
Smartphone<br />
Les menus apparaissent en bas de la<br />
fenêtre.<br />
Les différentes options de menu peuvent<br />
facilement être sélectionnées à l’aide du<br />
styl<strong>et</strong> du Pock<strong>et</strong> PC.<br />
Les options de menu sont automatiquement<br />
numérotées : des numéros<br />
sont ajoutés automatiquement devant le<br />
libellé de chaque sous-option. Ces<br />
numéros perm<strong>et</strong>tent d’accéder aux<br />
sous-options à l’aide des touches du<br />
SmartPhone.<br />
Les options de menu sont également<br />
accessibles par le "joystick" du<br />
Smartphone.<br />
Remarque : Dans une application pour<br />
Smartphone, seuls deux menus peuvent<br />
être affichés simultanément. Ces menus<br />
sont généralement accessibles par les<br />
boutons situés directement sous l’écran<br />
du Smartphone.<br />
Partie 1 : Développement d’une application
18<br />
MODÈLE DE FENÊTRES<br />
WinDev Mobile perm<strong>et</strong> de créer des modèles de fenêtres. Ces modèles contiennent tous les<br />
éléments graphiques communs à l’ensemble des fenêtres de votre application.<br />
Les modifications effectuées dans un modèle de fenêtres sont automatiquement reportées sur<br />
toutes les fenêtres utilisant ce modèle.<br />
Un modèle de fenêtres perm<strong>et</strong> de respecter la charte graphique définie pour une application.<br />
Partie 1 : Développement d’une application<br />
Définition d’un modèle de fenêtres.<br />
Le modèle est encadré d’un<br />
trait jaune sous l’éditeur.<br />
Utilisation du modèle dans plusieurs fenêtres.<br />
Les éléments appartenant au modèle sont identifiés par un carré jaune.<br />
Pour créer un modèle de fenêtres à partir de la fenêtre en cours, sélectionnez l’option "Fichier ..<br />
Enregistrer comme un modèle".<br />
Pour créer une fenêtre utilisant un modèle, sélectionnez le modèle à utiliser lors de la création<br />
d’une fenêtre.<br />
Remarque : La programmation associée aux éléments du modèle peut être directement réalisée<br />
dans le modèle.<br />
Les caractéristiques des éléments peuvent être désolidarisées du modèle. Par exemple,<br />
désolidariser la position d’un champ du modèle pour positionner le champ ailleurs tout en<br />
conservant les autres évolutions sur le champ (code, style, ...). On parle alors d’héritage de champ.<br />
Dans ce cas, les éléments sont identifiés par un carré bleu.
19<br />
RAD<br />
Le RAD (Rapid Application Development) perm<strong>et</strong> de créer des fenêtres à partir :<br />
• de l’analyse liée au proj<strong>et</strong>,<br />
• des modèles RAD standard,<br />
• des modèles RAD personnalisés,<br />
• des gabarits.<br />
Les fenêtres générées contiennent tout le code nécessaire à leur fonctionnement. Ces fenêtres<br />
peuvent être testées immédiatement, avec les données présentes sur le poste de développement.<br />
Analyse<br />
Modèle RAD<br />
Pattern RAD<br />
RAD<br />
RAD Application complète<br />
RAD Fenêtre<br />
Gabarit<br />
Partie 1 : Développement d’une application<br />
Exemple de fenêtre<br />
générée par le RAD<br />
Exemple de code<br />
généré par le RAD
20<br />
RID<br />
Le RID (Rapid graphical Interface Design) perm<strong>et</strong> de créer des fenêtres à partir :<br />
• de l’analyse liée au proj<strong>et</strong>,<br />
• des modèles RAD standard,<br />
• des modèles RAD personnalisés,<br />
• des gabarits.<br />
Les fenêtres générées contiennent uniquement les champs liés aux rubriques de l’analyse. Tout le<br />
code nécessaire au fonctionnement de ces fenêtres reste à la charge du développeur. Vous pouvez<br />
directement saisir votre code personnalisé.<br />
Partie 1 : Développement d’une application<br />
Analyse<br />
Modèle RAD<br />
Pattern RAD<br />
RID<br />
RID Fenêtre<br />
Gabarit<br />
Exemple de fenêtre générée par le RID<br />
C<strong>et</strong>te fenêtre ne contient aucun code
21<br />
COMPOSANT<br />
Un composant est un ensemble d'éléments WinDev Mobile : fenêtres, états, analyse, ... C<strong>et</strong><br />
ensemble d'éléments effectue une fonctionnalité précise. Par exemple, un composant peut<br />
correspondre à une des fonctionnalités suivantes :<br />
• Envoi de SMS,<br />
•Envoi d'e-mails,<br />
•...<br />
Un composant WinDev Mobile peut être redistribué à d'autres développeurs WinDev Mobile<br />
(gratuitement ou non). Ces développeurs pourront ainsi intégrer simplement la fonctionnalité<br />
proposée par le composant dans leur application. Le composant sera donc intégré à l'application,<br />
<strong>et</strong> distribué avec l'application.<br />
Proj<strong>et</strong> WinDev<br />
Mobile<br />
Proj<strong>et</strong> WinDev<br />
Mobile<br />
Développement<br />
du composant<br />
Génération du composant<br />
Fichier .WDK<br />
Importation du<br />
composant dans<br />
différents proj<strong>et</strong>s<br />
WinDev Mobile<br />
Proj<strong>et</strong> WinDev<br />
Mobile<br />
Proj<strong>et</strong> WinDev<br />
Mobile<br />
Partie 1 : Développement d’une application<br />
Utilisation du<br />
composant<br />
Utilisation du<br />
composant<br />
Utilisation du<br />
composant
22<br />
COMPOSANTS MULTI-PRODUITS<br />
WinDev, WebDev <strong>et</strong> WinDev Mobile offrent la possibilité de créer des composants multi-produits.<br />
Ces composants peuvent contenir des fenêtres, des pages, ... <strong>et</strong> être utilisés aussi bien dans un<br />
proj<strong>et</strong> WinDev, WebDev ou WinDev Mobile.<br />
Le principe est le suivant :<br />
Proj<strong>et</strong> WebDev<br />
Proj<strong>et</strong> lié au proj<strong>et</strong><br />
maître WinDev<br />
Proj<strong>et</strong> WinDev<br />
Proj<strong>et</strong> maître<br />
Proj<strong>et</strong> WinDev<br />
Mobile<br />
Proj<strong>et</strong> lié au proj<strong>et</strong><br />
maître WinDev<br />
Partie 1 : Développement d’une application<br />
Pages HTML à intégrer<br />
dans le composant<br />
Création du composant<br />
- Sélection des éléments<br />
- Choix des produits cibles (Win-<br />
Dev, WebDev, ...)<br />
Fichiers WDK <strong>et</strong> WDI<br />
Utilisables dans les proj<strong>et</strong>s des<br />
produits cibles choisis<br />
Fenêtre à intégrer<br />
dans le composant<br />
La définition des proj<strong>et</strong>s liés au proj<strong>et</strong> WinDev Mobile est réalisée dans le proj<strong>et</strong> WinDev grâce à<br />
l’option "Proj<strong>et</strong> .. Description du proj<strong>et</strong>", ongl<strong>et</strong> "Multi-produits".
23<br />
LES ÉTATS<br />
WinDev Mobile perm<strong>et</strong> de créer <strong>et</strong> d’imprimer simplement des états, des plus simples aux plus<br />
complexes, grâce à l’éditeur d’états.<br />
Les états générés peuvent ensuite être imprimés au format PCL (fichier ".PCL", ou impression sur<br />
une imprimante PCL).<br />
Autres modes d’impression<br />
WinDev Mobile perm<strong>et</strong> également de réaliser une impression en WLangage (fonctions iXXX).<br />
Il est également possible d’envoyer directement des séquences de commandes à une imprimante<br />
(si celle-ci n’est pas au format PCL).<br />
Partie 1 : Développement d’une application
24<br />
GESTIONNAIRE DE SOURCES (GDS)<br />
Présentation<br />
Pour simplifier vos développements en équipe, WinDev Mobile propose désormais un gestionnaire<br />
de sources. Ce gestionnaire de sources perm<strong>et</strong> à plusieurs développeurs de travailler<br />
simultanément sur le même proj<strong>et</strong>, <strong>et</strong> de partager des éléments entre différents proj<strong>et</strong>s.<br />
Réseau<br />
(intran<strong>et</strong>)<br />
Partie 1 : Développement d’une application<br />
GDS<br />
ADSL<br />
(intern<strong>et</strong>)<br />
Déconnecté<br />
Une base regroupe les éléments du proj<strong>et</strong>, chaque poste<br />
possède une copie en local des éléments nécessaires au développement
25<br />
Fonctionnement du Gestionnaire de Sources<br />
Voici un exemple d’utilisation du Gestionnaire de Sources :<br />
Poste Local 1<br />
Proj<strong>et</strong> A<br />
Version 1<br />
3<br />
2<br />
Modification<br />
Extraction 9h57<br />
Proj<strong>et</strong> A<br />
Version 1<br />
Proj<strong>et</strong> A<br />
Version 2<br />
4<br />
Réintégration 10h41<br />
Proj<strong>et</strong> A<br />
Version 2<br />
Poste Local 2<br />
Proj<strong>et</strong> A<br />
Version 3<br />
Proj<strong>et</strong> A<br />
Version 2<br />
Poste Nomade<br />
Proj<strong>et</strong> A<br />
Version 1<br />
Proj<strong>et</strong> A<br />
Version 3<br />
6<br />
5<br />
1<br />
Extraction 14h28<br />
Extraction 9h13<br />
Modification en clientèle<br />
7<br />
Réintégration 18h32<br />
Base de Sources<br />
Poste Nomade<br />
Extraction de la Fenêtre B<strong>et</strong>a du<br />
Proj<strong>et</strong> A Version 1 à 9h13<br />
Poste Local 1<br />
Extraction de la fenêtre Alpha du<br />
Proj<strong>et</strong> A Version 1 à 9h57<br />
Réintégration de la fenêtre Alpha modifiée<br />
dans le Proj<strong>et</strong> A Version 2 à 10h41<br />
Poste Local 2<br />
Extraction de la fenêtre Alpha du<br />
Proj<strong>et</strong> A Version 2 à 14h28<br />
Poste Nomade<br />
Réintégration de la fenêtre B<strong>et</strong>a modifiée<br />
dans le Proj<strong>et</strong> A Version 3 à 18h32<br />
Si un élément (fenêtre, état, ...) du proj<strong>et</strong> est extrait, ce même élément ne pourra pas être extrait<br />
une seconde fois.<br />
Après modification des éléments extraits, il est nécessaire de réintégrer ces éléments pour que le<br />
proj<strong>et</strong> de base prenne en compte ces modifications. En eff<strong>et</strong>, la base de sources conserve un<br />
historique de tous les éléments du proj<strong>et</strong> depuis leur création.<br />
A chaque réintégration d’un élément, le numéro de version du proj<strong>et</strong> de base est incrémenté de 1.<br />
Partie 1 : Développement d’une application
26<br />
CENTRE DE SUIVI DE PROJETS<br />
Le Centre de suivi de proj<strong>et</strong>s perm<strong>et</strong> de gérer le planning de réalisation d’un proj<strong>et</strong>, de sa création<br />
à sa livraison finale. Il est ainsi possible de connaître l’ensemble des tâches à réaliser sur un<br />
proj<strong>et</strong>, les développeurs concernés, les durées nécessaires, l’état d’avancement du proj<strong>et</strong>, ...<br />
Partie 1 : Développement d’une application<br />
Fonctionnement du Centre de suivi de proj<strong>et</strong>s<br />
Après avoir listé l’ensemble des tâches d’un proj<strong>et</strong>, le Centre de suivi de proj<strong>et</strong> s’occupe de tout. La<br />
saisie du temps passé est quasi automatique, ne demande aucune action spécifique <strong>et</strong> ne génère<br />
aucune contrainte particulière.<br />
Lors de l’ouverture du proj<strong>et</strong> concerné, le Centre de suivi de proj<strong>et</strong> demande ou indique la tâche en<br />
cours. Dès qu’une tâche est réalisée, il suffit d’indiquer que c<strong>et</strong>te tâche est terminée <strong>et</strong> de spécifier<br />
la nouvelle tâche.<br />
Une tâche peut être reliée à un élément du proj<strong>et</strong> (fenêtre, état, ...). Chaque fois que l’élément<br />
concerné est ouvert, le temps passé sur c<strong>et</strong> élément est décompté <strong>et</strong> mémorisé dans le Centre de<br />
suivi. Inversement, depuis la liste des tâches, il est possible d’ouvrir automatiquement l’élément<br />
correspondant à la tâche que vous voulez réaliser.<br />
Chaque développeur peut également visualiser directement sa liste de tâches dans le vol<strong>et</strong> "Centre<br />
de suivi de proj<strong>et</strong>".
27<br />
GÉNÉRATION MULTIPLE<br />
Les configurations de proj<strong>et</strong>s perm<strong>et</strong>tent de définir simplement les différentes "Cibles" de votre<br />
proj<strong>et</strong>. Vous pouvez ainsi définir pour un même proj<strong>et</strong> plusieurs exécutables, plusieurs composants<br />
<strong>et</strong> plusieurs bibliothèques.<br />
Pour générer le résultat de chaque configuration, vous pouvez bien entendu sélectionner une à<br />
une chaque configuration, <strong>et</strong> générer le programme correspondant.<br />
Un autre moyen plus rapide existe : la génération multiple. Vous sélectionnez en une seule<br />
opération les configurations à générer, <strong>et</strong> le résultat est immédiat.<br />
Pour lancer une génération multiple, utilisez l’option "Atelier .. Génération multiple".<br />
Partie 1 : Développement d’une application
28<br />
ACTIVESYNC<br />
ActiveSync est un logiciel qui perm<strong>et</strong> de synchroniser des données (application WinDev, courrier<br />
électronique, calendrier, contacts, tâches, notes, ...) entre un PC <strong>et</strong> un Pock<strong>et</strong> PC.<br />
ActiveSync est généralement livré avec le Pock<strong>et</strong> PC mais peut également être téléchargé sur<br />
Intern<strong>et</strong>.<br />
ActiveSync se lance automatiquement sur le PC lors de la connexion du Pock<strong>et</strong> PC au PC.<br />
Le paramétrage des données à synchroniser est réalisé dans ActiveSync (icone "Options").<br />
Partie 1 : Développement d’une application<br />
Fonctionnalités de ActiveSync<br />
ActiveSync perm<strong>et</strong> de :<br />
•synchroniser des données entre un PC <strong>et</strong> un Pock<strong>et</strong> PC. Pour plus de détails, consultez<br />
"Synchronisation des données", page 48.<br />
• accéder au Pock<strong>et</strong> PC à partir d'une application WinDev standard.<br />
• manipuler une base de données CEDB à partir d'une application WinDev standard.<br />
• visualiser depuis le PC les fichiers présents sur le Pock<strong>et</strong> PC (icone "Explore").<br />
• copier un fichier présent sur le PC vers le Pock<strong>et</strong> PC (grâce à l'explorateur de fichiers).<br />
• convertir automatiquement les fichiers copiés sur le Pock<strong>et</strong> PC. Le format des fichiers copiés<br />
correspond ainsi au format des fichiers gérés par le Pock<strong>et</strong> PC (par exemple un fichier ".DOC"<br />
est converti en un fichier ".PSW").<br />
• effectuer des sauvegardes des données présentes sur le Pock<strong>et</strong> PC (option "Tools .. Backup/<br />
Restore").<br />
• ajouter <strong>et</strong>/ou supprimer des applications sur le Pock<strong>et</strong> PC (option "Tools .. Add/Remove<br />
programs").<br />
• transférer des bases de données Access sur le Pock<strong>et</strong> PC <strong>et</strong> inversement (option "Tools ..<br />
Import/Export database tables"). Les bases de données Access correspondent à des bases<br />
de données CEDB sur le Pock<strong>et</strong> PC.<br />
•...
29<br />
TEST D’UNE APPLICATION <strong>WINDEV</strong><br />
MOBILE<br />
Le test de l’ensemble du proj<strong>et</strong> perm<strong>et</strong> de simuler le lancement de l’application par l’exécutable. Il<br />
est ainsi possible de tester l'application dans son ensemble, même si son développement n’est<br />
pas terminé.<br />
Plusieurs types de test du proj<strong>et</strong> sont disponibles sous WinDev Mobile :<br />
• Test sur le poste de développement : ce test réalise une simulation d'un Pock<strong>et</strong> PC sur le<br />
poste de développement. Lors de ce test aucune connexion à un Pock<strong>et</strong> PC n'est nécessaire.<br />
Ce test perm<strong>et</strong> l'utilisation du débogueur. Cependant, le test étant réalisé sur un PC <strong>et</strong> non<br />
sur un Pock<strong>et</strong> PC, certaines différences de comportement de l'application peuvent être<br />
notées.<br />
• Test <strong>et</strong> débogage sur le Pock<strong>et</strong> PC connecté au poste de développement. Ce test perm<strong>et</strong><br />
l’utilisation du débogueur tout en étant réalisé directement sur le Pock<strong>et</strong> PC.<br />
• Test direct sur le Pock<strong>et</strong> PC connecté au poste de développement. Dans ce cas, l'exécutable<br />
correspondant au proj<strong>et</strong> est créé, copié directement sur le Pock<strong>et</strong> PC <strong>et</strong> exécuté. Lors de<br />
l’exécution du programme sur le Pock<strong>et</strong> PC, il est possible de déconnecter le Pock<strong>et</strong> PC du<br />
PC. Le débogueur n'est pas disponible.<br />
Partie 1 : Développement d’une application
30<br />
INSTALLATION D’UNE APPLICATION POUR<br />
POCKET PC<br />
Plusieurs méthodes sont proposées pour installer une application WinDev sur un Pock<strong>et</strong> PC :<br />
• installation au format CAB. Ce programme d’installation est exécuté sur un Pock<strong>et</strong> PC.<br />
• installation au format MSI. Ce programme d’installation est exécuté sur un poste PC sous<br />
Windows connecté à un Pock<strong>et</strong> PC.<br />
• installation par copie directe de l'exécutable du poste PC vers le Pock<strong>et</strong> PC.<br />
Partie 1 : Développement d’une application<br />
Installation au format CAB<br />
C<strong>et</strong>te installation consiste à :<br />
• créer l'exécutable de l'application sur le poste de développement grâce à WinDev Mobile.<br />
• générer le programme d'installation de l'application sur le poste de développement grâce à<br />
WinDev Mobile. Ce programme d’installation correspond à un fichier ".CAB".<br />
• copier ce programme d'installation sur les Pock<strong>et</strong>s PC des clients finals (grâce à une carte<br />
mémoire, par GPRS à partir d’un site Intern<strong>et</strong>, ou directement par l’explorateur de fichier).<br />
•lancer ce programme d'installation sur les Pock<strong>et</strong>s PC. Ce programme installe tous les<br />
fichiers nécessaires à l’application. A la fin de l’installation, le fichier ".CAB" est<br />
automatiquement supprimé du Pock<strong>et</strong> PC.<br />
Pour utiliser c<strong>et</strong>te application, lancez l'application sur le Pock<strong>et</strong> PC (par exemple, double-clic sur le<br />
fichier ".EXE").<br />
PC Windows<br />
Création de<br />
l’exécutable<br />
(Exe Pock<strong>et</strong>)<br />
Création de<br />
l’installation<br />
(Fichier .CAB)<br />
Poste de développement<br />
Carte mémoire, clé USB...<br />
Intern<strong>et</strong> Serveur FTP<br />
Copie directe<br />
Pock<strong>et</strong> PC<br />
Lancement de<br />
l’installation<br />
Exe<br />
Pock<strong>et</strong><br />
Déploiement 1
31<br />
Installation au format MSI<br />
C<strong>et</strong>te installation consiste à :<br />
• créer l'exécutable de l'application sur le poste de développement grâce à WinDev Mobile.<br />
• générer le programme d'installation de l'application sur le poste de développement grâce à<br />
WinDev Mobile. Ce programme d’installation correspond à un fichier ".MSI".<br />
• fournir ce programme d'installation aux clients finals.<br />
• lancer ce programme d'installation sur les postes PC. L'application sera automatiquement<br />
installée sur le Pock<strong>et</strong> PC actuellement connecté au poste en cours.<br />
Remarque : Si aucun Pock<strong>et</strong> PC n’est connecté, l’installation sera effectuée lors de la<br />
prochaine synchronisation entre le poste PC <strong>et</strong> le Pock<strong>et</strong> PC.<br />
Pour utiliser c<strong>et</strong>te application, lancez l'application sur le Pock<strong>et</strong> PC (par exemple, double-clic sur le<br />
fichier ".EXE").<br />
Partie 1 : Développement d’une application
32<br />
Installation par copie directe<br />
C<strong>et</strong>te fonctionnalité perm<strong>et</strong> de :<br />
• créer l'exécutable de l'application sur le poste de développement grâce à WinDev Mobile.<br />
• copier automatiquement c<strong>et</strong> exécutable sur le Pock<strong>et</strong> PC connecté au poste PC en cours.<br />
Pour utiliser c<strong>et</strong>te application, lancez c<strong>et</strong> exécutable sur le Pock<strong>et</strong> PC (par exemple, double-clic sur<br />
le fichier ".EXE").<br />
Partie 1 : Développement d’une application
PARTIE 2<br />
Base de données
35<br />
DONNÉES MANIPULÉES PAR UNE<br />
APPLICATION POUR POCKET PC<br />
Les données manipulées dans une application WinDev Mobile peuvent provenir :<br />
• d'une base de données Hyper File Mobile ou Hyper File Client / Serveur (fichiers ".Fic").<br />
• d’une base de données Oracle Lite, AS/400 ou SQL Server CE.<br />
• d'une base de données CEDB (fichiers ".cdb").<br />
• de fichiers ".INI".<br />
• de fichiers texte (au format ANSI ou UNICODE).<br />
• de la base de registres.<br />
Partie 2 : Base de données
36<br />
BASE DE DONNÉES HYPER FILE MOBILE<br />
Le format Hyper File Mobile est le format de base de données fourni avec WinDev Mobile. Ce<br />
format de base de données est compatible entre WinDev, WinDev Mobile <strong>et</strong> WebDev.<br />
Il s’agit d’un SGBD Relationnel redistribuable gratuitement.<br />
Ce format est identique au format Hyper File de WinDev standard <strong>et</strong> de WebDev (fichier ".WDD",<br />
fichiers de données, ...).<br />
Cependant, la taille disponible sur un Pock<strong>et</strong> PC étant restreinte <strong>et</strong> le système d’exploitation du<br />
Pock<strong>et</strong> PC étant limité, les fonctionnalités suivantes ne sont pas gérées par Hyper File Mobile en<br />
mode Classic :<br />
•les transactions.<br />
• la journalisation.<br />
• la gestion des blocages des fichiers <strong>et</strong> des enregistrements.<br />
• la gestion des fichiers au format Hyper File 5.5.<br />
Remarque : En Hyper File Mobile mode Client / Serveur, seuls les fichiers au format Hyper File 5.5<br />
ne sont pas gérés.<br />
Manipulation d’une base de données Hyper File Mobile depuis le Pock<strong>et</strong> PC<br />
Une base de données Hyper File Mobile correspond à un ensemble de fichiers ".FIC", ".NDX",<br />
".MMO".<br />
Chaque fichier de données peut être manipulé par une application WinDev Mobile. Ces<br />
manipulations sont réalisées grâce aux fonctions Hyper File (fonctions Hxxx).<br />
Partie 2 : Base de données<br />
Pock<strong>et</strong> PC<br />
Application<br />
WinDev<br />
Mobile<br />
Fonctions<br />
Hxxx,<br />
(Lecture,<br />
écriture...)<br />
Base de données
37<br />
BASE DE DONNÉES HYPER FILE CLIENT /<br />
SERVEUR<br />
Une application WinDev Mobile Hyper File peut également fonctionner en mode Client / Serveur.<br />
Les caractéristiques du mode Client / Serveur sont les suivantes :<br />
• Une application Hyper File Client / Serveur est exécutée sur différents Pock<strong>et</strong>s PC (appelés<br />
machines clientes).<br />
• Les fichiers de données sont présents sur un poste serveur. Seul le poste serveur accède<br />
physiquement aux fichiers de données.<br />
• L’ensemble des traitements (requête, lecture/ajout dans un fichier, ...) sont réalisés sur le<br />
serveur.<br />
Pock<strong>et</strong> PC 1<br />
Application<br />
WinDev<br />
Mobile<br />
Pock<strong>et</strong> PC 2<br />
Serveur Hyper File<br />
Windows ou Linux<br />
Application<br />
WinDev<br />
Mobile<br />
Pock<strong>et</strong> PC n<br />
Application<br />
WinDev<br />
Mobile<br />
Serveur Manta<br />
Bases de données<br />
Hyper File<br />
Client/Serveur<br />
Protocole TCP/IP<br />
Connexion du type :<br />
USB,<br />
Wi-Fi,<br />
Intern<strong>et</strong>...<br />
Partie 2 : Base de données
38<br />
BASES DE DONNÉES CEDB STANDARD<br />
Les applications standard Pock<strong>et</strong> PC<br />
Les Pock<strong>et</strong>s PC sont livrés avec un ensemble d’applications standard manipulant des bases de<br />
données CEDB standard.<br />
Ces bases de données correspondent aux bases de données présentes par défaut sur le Pock<strong>et</strong><br />
PC. Il s’agit des bases de données contenant les fichiers de données "Tâches", "Contacts",<br />
"Calendrier", ...<br />
Ces bases de données peuvent être manipulées grâce à une application WinDev Mobile.<br />
Partie 2 : Base de données
39<br />
Manipulation d’une base de données standard du Pock<strong>et</strong> PC (depuis un poste PC)<br />
Une base de données standard (contenant les fichiers de données tâches, contacts, ...) est<br />
présente sur le Pock<strong>et</strong> PC. C<strong>et</strong>te base de données peut être manipulée par une application WinDev<br />
Mobile.<br />
Si vous possédez WinDev standard, il est également possible de créer une application WinDev<br />
perm<strong>et</strong>tant de manipuler c<strong>et</strong>te base de données standard du Pock<strong>et</strong> PC.<br />
Ces manipulations sont réalisées grâce aux fonctions cdbXXX.<br />
La synchronisation entre la base de données du Pock<strong>et</strong> PC <strong>et</strong> les données visualisées grâce à<br />
Outlook est réalisée par ActiveSync.<br />
Remarque : Pour manipuler une base de données Pock<strong>et</strong> PC à partir d'une application WinDev<br />
standard, il est nécessaire de connecter le PC Windows au Pock<strong>et</strong> PC (fonction ceConnecte).<br />
Partie 2 : Base de données
40<br />
MANIPULATION DES BASES DE DONNÉES<br />
CEDB PERSONNALISÉES<br />
Base de données CEDB<br />
Les bases de données CEDB personnalisées correspondent à des bases de données Access<br />
(fichier ".MDB") préalablement exportées depuis un poste PC.<br />
Lors de la copie d'une base de données Access (fichier ".MDB") sur un Pock<strong>et</strong> PC depuis<br />
l’explorateur de fichiers, c<strong>et</strong>te base de données se transforme automatiquement en base de<br />
données CEDB (fichier ".CDB").<br />
Manipulation d’une base de données Pock<strong>et</strong> PC (CEDB) depuis le Pock<strong>et</strong> PC<br />
Une base de données CEDB peut être manipulée par une application WinDev Mobile. Ces<br />
manipulations sont réalisées grâce aux fonctions cdbXXX.<br />
Partie 2 : Base de données
41<br />
Manipulation d’une base de données Pock<strong>et</strong> PC (CEDB) depuis le PC Windows<br />
Si vous possédez WinDev standard, il est également possible de créer une application WinDev<br />
perm<strong>et</strong>tant de manipuler directement une base de données CEDB présente sur le Pock<strong>et</strong> PC. Ces<br />
manipulations sont également réalisées grâce aux fonctions cdbXXX.<br />
Remarque : Pour manipuler une base de données Pock<strong>et</strong> PC à partir d'une application WinDev<br />
standard, il est nécessaire de connecter le PC Windows au Pock<strong>et</strong> PC (fonction ceConnecte).<br />
Partie 2 : Base de données
42<br />
Synchronisation d’une base de données Pock<strong>et</strong> PC (CEDB) avec une base de<br />
données Access<br />
Une base de données Access (fichier ".MDB") est présente sur le PC Windows. C<strong>et</strong>te base de<br />
données est exportée sur le Pock<strong>et</strong> PC : ActiveSync la transforme automatiquement en base de<br />
données Pock<strong>et</strong> PC (fichier ".CDB").<br />
C<strong>et</strong>te base de données Pock<strong>et</strong> PC peut être manipulée par une application WinDev Mobile.<br />
Si vous possédez WinDev standard, il est également possible de créer une application WinDev<br />
perm<strong>et</strong>tant de manipuler la base de données Pock<strong>et</strong> PC.<br />
Ces manipulations sont réalisées grâce aux fonctions cdbXXX. La synchronisation entre la base de<br />
données du Pock<strong>et</strong> PC <strong>et</strong> la base de données Access est réalisée par ActiveSync.<br />
Partie 2 : Base de données<br />
Remarques :<br />
• Pour manipuler une base de données Pock<strong>et</strong> PC à partir d'une application WinDev standard,<br />
il est nécessaire de connecter le PC Windows au Pock<strong>et</strong> PC (fonction ceConnecte).<br />
• L'application WinDev standard peut également manipuler la base de données Access grâce<br />
à l'Accès Natif Access.
43<br />
MANIPULATION EN WLANGAGE DES<br />
BASES DE DONNÉES CEDB<br />
Fonctions du WLangage perm<strong>et</strong>tant de manipuler les bases de données de type CEDB :<br />
cdbAjoute<br />
cdbAnnuleRecherche<br />
cdbCol<br />
cdbDateHeureVersEntier<br />
cdbEcritCol<br />
cdbEnDehors<br />
Ajoute l'enregistrement présent en mémoire dans un fichier de données<br />
Annule le critère de recherche en cours<br />
Renvoie une caractéristique d'une colonne de l'enregistrement en cours<br />
Transforme une variable de type DateHeure en une valeur compatible avec une<br />
colonne de type date <strong>et</strong> heure (entier sans signe sur 8 oct<strong>et</strong>s)<br />
Modifie la valeur d'une colonne d'un enregistrement en mémoire<br />
Perm<strong>et</strong> de savoir si on veut se positionner sur un enregistrement en dehors du<br />
fichier<br />
cdbEntierVersDateHeure Transforme la valeur d'une colonne de type date <strong>et</strong> heure (entier sans signe sur 8<br />
oct<strong>et</strong>s) en une variable de type DateHeure<br />
cdbFerme<br />
cdbListeFichier<br />
cdbLit<br />
cdbLitDernier<br />
cdbLitPrécédent<br />
Ferme une base de données (fichier ".CDB")<br />
Liste les fichiers de données présents dans une base de données CEDB<br />
Lit un enregistrement dans un fichier en fonction d'un numéro d'enregistrement<br />
Positionne sur le dernier enregistrement d'un fichier <strong>et</strong> lit c<strong>et</strong> enregistrement<br />
Positionne sur l'enregistrement précédent d'un fichier <strong>et</strong> lit c<strong>et</strong> enregistrement<br />
cdbLitPremier<br />
cdbLitRecherche<br />
cdbLitSuivant<br />
cdbModifie<br />
cdbNbCol<br />
cdbNbEnr<br />
cdbNumEnr<br />
cdbOuvre<br />
cdbRaz<br />
Positionne sur le premier enregistrement d'un fichier <strong>et</strong> lit c<strong>et</strong> enregistrement<br />
Positionne sur le premier enregistrement d'un fichier dont la valeur d'une colonne<br />
spécifique est égale à une valeur recherchée<br />
Positionne sur l'enregistrement suivant d'un fichier <strong>et</strong> lit c<strong>et</strong> enregistrement<br />
Modifie l'enregistrement spécifié (ou présent en mémoire) dans le fichier de<br />
données<br />
Renvoie le nombre de colonnes de l'enregistrement en mémoire<br />
Renvoie le nombre d'enregistrements présents dans un fichier de données<br />
Renvoie le numéro de l'enregistrement en cours dans le fichier de données<br />
Ouvre une base de données (".CDB") sur le Pock<strong>et</strong> PC connecté au poste en cours<br />
Ré-initialise toutes les variables d'une structure de base de données standard<br />
Partie 2 : Base de données<br />
cdbSupprime<br />
cdbTrouve<br />
Supprime l'enregistrement en cours ou l'enregistrement spécifié dans le fichier de<br />
données<br />
Vérifie si l'enregistrement en cours correspond à la recherche en cours
44<br />
COMPARAISON HYPER FILE MOBILE /<br />
CEDB<br />
Pour afficher dans une fenêtre des informations provenant d'une base de données, il est<br />
nécessaire de lier les champs de c<strong>et</strong>te fenêtre avec les différentes rubriques de la base de<br />
données.<br />
La méthode d'affichage <strong>et</strong> de récupération des informations est différente selon la base de<br />
données utilisée (Hyper File Mobile ou CEDB).<br />
Liaison fichier entre une fenêtre <strong>et</strong> une base de données Hyper File Mobile<br />
La liaison d'un champ avec une rubrique est normalement définie sous l'éditeur de fenêtres, lors<br />
de la description du champ (ongl<strong>et</strong> "Fichier"). C<strong>et</strong>te liaison perm<strong>et</strong> d'indiquer la rubrique du fichier<br />
qui sera utilisée avec les fonctions EcranVersFichier <strong>et</strong> FichierVersEcran.<br />
Partie 2 : Base de données
45<br />
Liaison fichier entre une fenêtre <strong>et</strong> une base de données Pock<strong>et</strong> PC (CEDB)<br />
C<strong>et</strong>te liaison peut être effectuée uniquement par programmation (fonctions cdbXXX).<br />
Autres différences<br />
L’utilisation des bases de données Hyper File Mobile perm<strong>et</strong> d’accéder à toutes les fonctionnalités<br />
suivantes (liste non exhaustive) :<br />
• Rapidité de la base de données Hyper File Mobile.<br />
• Requêtes sur les bases de données Hyper File Mobile (créées avec l’éditeur de requêtes<br />
fourni en standard).<br />
• Rapidité de création d’une application grâce au RAD Application Complète.<br />
• Fonctionnalités spécifiques à la base de données Hyper File Mobile (Cryptage, ...)<br />
Partie 2 : Base de données
46<br />
LES REQUÊTES<br />
Une requête sert à interroger une base de données pour visualiser, insérer, modifier ou supprimer<br />
des données. La structure de la requête définit les données manipulées.<br />
Une requête peut interroger un ou plusieurs fichiers.<br />
L’éditeur de requêtes perm<strong>et</strong> de créer très simplement des requêtes, sans avoir à programmer.<br />
Fenêtre <strong>et</strong> champs<br />
d’une fenêtre (ongl<strong>et</strong><br />
"Contenu")<br />
Requête<br />
Etats<br />
Partie 2 : Base de données<br />
Le résultat de la requête se manipule<br />
comme un fichier<br />
Données en provenance d’un<br />
ou de plusieurs fichiers (Hyper<br />
File, Oracle, ...)<br />
Programmation<br />
(utilisation dans les<br />
fonctions WLangage)<br />
Requêtes
47<br />
LES REQUÊTES INTÉGRÉES<br />
Les champs d’une fenêtre peuvent être lié à un fichier de données ou à une requête existante, ... Il<br />
est également possible de lier ces champs à une requête créée lors de la conception du champ.<br />
Requête intégrée : MaFenêtre_1$Requête<br />
Requête intégrée : MaFenêtre_2$Requête<br />
Dans ce cas, la requête est intégrée à la fenêtre. Elle est présente dans le fichier WPW<br />
correspondant à la fenêtre. Si le fichier WPW est transmis, les requêtes intégrées utilisées par<br />
c<strong>et</strong>te fenêtre seront également fournies.<br />
Partie 2 : Base de données
48<br />
SYNCHRONISATION DES DONNÉES<br />
WinDev Mobile perm<strong>et</strong> de synchroniser des enregistrements utilisés par plusieurs applications.<br />
Les deux applications gèrent ainsi indépendamment les mêmes données. Lors de la<br />
synchronisation, les modifications effectuées dans la base de données manipulée par le PC sont<br />
automatiquement reportées sur le Pock<strong>et</strong> PC <strong>et</strong> vice-versa.<br />
C<strong>et</strong>te synchronisation s’effectue automatiquement par l’intermédiaire de :<br />
• ActiveSync lorsque le Pock<strong>et</strong> PC est connecté au PC Windows.<br />
•la Réplication Universelle lorsque le Pock<strong>et</strong> PC est connecté ou non au PC Windows.<br />
ActiveSync<br />
ActiveSync perm<strong>et</strong> de maintenir à jour des bases de données de même format utilisées à la fois<br />
par une application WinDev standard <strong>et</strong> par une application WinDev Mobile.<br />
Il est possible d’adapter la synchronisation à des cas particuliers. Par exemple, il est possible de<br />
récupérer uniquement les enregistrements concernant un produit spécifié ou les enregistrements<br />
réalisés à une certaine date, de gérer les conflits, d’afficher une fenêtre de paramétrage, ...<br />
Ces adaptations doivent être effectuées par programmation dans une collection de procédures<br />
appelée "WDSynchro.wdg". C<strong>et</strong>te collection de procédures est fournie en exemple avec WinDev<br />
Mobile.<br />
Remarque : Si une synchronisation complète doit être effectuée, aucune programmation n'est<br />
nécessaire.<br />
Partie 2 : Base de données<br />
Note : L’outil WDSynchro perm<strong>et</strong> de configurer ActiveSync pour synchroniser la base de données<br />
Hyper File (poste PC) <strong>et</strong> la base de données Hyper File Mobile (Pock<strong>et</strong> PC). C<strong>et</strong> outil est utilisable<br />
uniquement sur le poste de développement.
49<br />
Réplication universelle<br />
La réplication universelle perm<strong>et</strong> de maintenir à jour des bases de données de format identique ou<br />
différent utilisées par plusieurs applications. Il est par exemple possible de réaliser une<br />
synchronisation entre une base de données Hyper File Mobile <strong>et</strong> une base de données Oracle Lite.<br />
La réplication universelle utilise un modèle centralisé : toutes les bases de données se<br />
synchronisent avec une base de données maître. La base de données maître répercute ensuite les<br />
modifications vers les autres bases de données.<br />
Il est possible d’adapter la synchronisation à des cas particuliers. Par exemple, il est possible de<br />
récupérer uniquement les enregistrements concernant un produit spécifié ou les enregistrements<br />
réalisés à une certaine date, de gérer les conflits, d’afficher une fenêtre de paramétrage, ...<br />
Ces adaptations doivent être effectuées par programmation grâce à la fonction<br />
HRplProcédureFiltre.<br />
Partie 2 : Base de données
50<br />
3-TIERS<br />
Le but du 3-Tiers est de séparer les 3 "couches" habituelles d’une application : IHM, traitements <strong>et</strong><br />
données.<br />
Une application sera donc composée de 3 couches indépendantes :<br />
• une couche présentation,<br />
•une couche traitements,<br />
• une couche d’accès aux données.<br />
C<strong>et</strong>te séparation a pour but de rendre indépendantes chacune des couches afin de faciliter la<br />
maintenance <strong>et</strong> les évolutions futures de l’application. Elle assure une sécurité plus importante car<br />
l’accès à la base de données n’est autorisé que par la couche traitements. Elle a également<br />
l’avantage d’optimiser le travail en équipe <strong>et</strong> le développement multi-cibles.<br />
Partie 2 : Base de données
PARTIE 3<br />
Programmation en WLangage
53<br />
FONCTIONS WLANGAGE<br />
La plupart des fonctions WLangage présentes dans WinDev standard sont également disponibles<br />
dans WinDev Mobile. Il s'agit des fonctions communes aux deux produits.<br />
Seules les fonctions spécifiques à Windows ne sont pas disponibles sous WinDev Mobile, car<br />
Windows pour Pock<strong>et</strong> PC est plus limité.<br />
Le schéma suivant présente les fonctions du WLangage utilisables selon le type d'application<br />
développée :<br />
Partie 3 : Programmation en WLangage
54<br />
MANIPULATION DES CHAÎNES DE<br />
CARACTÈRES<br />
Différents formats de chaînes de caractères sont disponibles :<br />
• Le format UNICODE perm<strong>et</strong> de décrire un très large jeu de caractères par une représentation<br />
de chaque l<strong>et</strong>tre sur 2 oct<strong>et</strong>s. Ce format perm<strong>et</strong> de coder 65 536 caractères. Tous les<br />
caractères des 24 alphab<strong>et</strong>s les plus pratiqués dans le monde sont représentés dans un<br />
seul jeu. Chaque caractère dispose d’un identifiant unique. Ce format perm<strong>et</strong> de manipuler<br />
simultanément des caractères issus d’alphab<strong>et</strong>s différents.<br />
• Le format ANSI représente chaque caractère sur un oct<strong>et</strong>. Dans les alphab<strong>et</strong>s indoeuropéens,<br />
ce format perm<strong>et</strong> de coder 256 caractères. Ce format perm<strong>et</strong> de représenter<br />
tous les alphab<strong>et</strong>s. Cependant, un seul alphab<strong>et</strong> peut être utilisé à la fois.<br />
Chaînes de caractères sous Pock<strong>et</strong> PC<br />
En général, les applications Windows pour Pock<strong>et</strong> PC manipulent des chaînes de caractères au<br />
format UNICODE.<br />
Partie 3 : Programmation en WLangage
55<br />
Sous Pock<strong>et</strong> PC, lors de l'utilisation de fichiers texte contenant des chaînes de caractères au format<br />
ANSI, WinDev Mobile convertit automatiquement ces chaînes de caractères au format UNICODE.<br />
C<strong>et</strong>te conversion est effectuée même si l'ouverture de ce fichier au format ANSI est explicitement<br />
demandée.<br />
C<strong>et</strong>te conversion est totalement transparente.<br />
Rappel : Chaîne de caractères sous PC Windows<br />
Les applications Windows pour PC manipulent des chaînes de caractères au format ANSI.<br />
Sous un poste PC, il est possible d'ouvrir des fichiers texte au format ANSI <strong>et</strong> au format UNICODE.<br />
Aucune conversion n'est effectuée par défaut.<br />
La programmation des chaînes de caractères est identique sous WinDev standard <strong>et</strong> sous<br />
WinDev Mobile (sauf exception). WinDev effectue automatiquement les conversions nécessaires.<br />
Partie 3 : Programmation en WLangage
56<br />
SÉLECTEUR DE FICHIERS ET CHEMINS SUR<br />
POCKET PC<br />
Sélecteur de fichiers<br />
Sous Pock<strong>et</strong> PC, le sélecteur de fichiers perm<strong>et</strong> de sélectionner uniquement les fichiers présents :<br />
• dans le répertoire "\Mes Documents" ou dans un de ses sous-répertoires immédiats.<br />
• dans un répertoire situé à la racine d'une carte de stockage.<br />
La fonction fSélecteur perm<strong>et</strong> donc de sélectionner uniquement un fichier présent dans un de ces<br />
répertoires.<br />
Partie 3 : Programmation en WLangage<br />
Chemin des répertoires <strong>et</strong> des fichiers<br />
La gestion des répertoires est différente sur un poste PC <strong>et</strong> sur un Pock<strong>et</strong> PC.<br />
En eff<strong>et</strong>, sur un poste PC, les chemins sont de la forme : "C:\MesDocuments\MonFichier.txt". Alors<br />
que sur un Pock<strong>et</strong> PC, les chemins sont de la forme : "\MesDocuments\MonFichier.txt". Il n'y a pas<br />
qu’une seule arborescence <strong>et</strong> pas de notion de lecteur.<br />
Remarque : La notion de répertoire en cours n’existe pas sous Windows pour Pock<strong>et</strong> PC (limitation<br />
du système d’exploitation). C’est pourquoi les fonctions manipulant le répertoire en cours (fonction<br />
fRepEnCours par exemple) ne sont pas disponibles sous WinDev Mobile.
57<br />
GESTION DU CLAVIER<br />
Pour perm<strong>et</strong>tre aux utilisateurs de vos applications de saisir des informations, il est nécessaire<br />
d'utiliser le clavier du Pock<strong>et</strong> PC (appelé également SIP pour "Software Input Panel"). Ce clavier<br />
perm<strong>et</strong> par exemple de :<br />
•afficher un clavier miniature sur la partie basse<br />
de l'écran. L'utilisateur n'a plus qu'à cliquer sur<br />
ce clavier à l'aide du styl<strong>et</strong> pour saisir des<br />
informations :<br />
•reconnaître automatiquement les<br />
différents mots écrits directement sur<br />
l'écran à l'aide du styl<strong>et</strong> (méthode<br />
appelée "Transcriber").<br />
•reconnaître automatiquement des l<strong>et</strong>tres<br />
saisies avec un certain alphab<strong>et</strong> (méthode<br />
appelée "Reconnaissance des l<strong>et</strong>tres") :<br />
•reconnaître automatiquement des blocs<br />
de mots saisis avec un certain alphab<strong>et</strong><br />
(méthode appelée "Reconnaissance des<br />
blocs") :<br />
Partie 3 : Programmation en WLangage<br />
WinDev Mobile perm<strong>et</strong> de gérer simplement ce clavier grâce aux fonctions WLangage (fonctions<br />
ClavierXXX).<br />
Remarque : Sur un Smartphone, la saisie se fait grâce aux touches du clavier numérique.
58<br />
FONCTIONS SPÉCIFIQUES AU POCKET PC<br />
Fonctions de gestion du clavier<br />
Ces fonctions perm<strong>et</strong>tent de gérer facilement le clavier utilisé sur le Pock<strong>et</strong> PC :<br />
ClavierListe<br />
ClavierMode<br />
ClavierVisible<br />
Renvoie la liste des types de claviers disponibles sur le Pock<strong>et</strong> PC<br />
Perm<strong>et</strong> de connaître <strong>et</strong>/ou de changer le clavier en cours d'utilisation<br />
Perm<strong>et</strong> de savoir si le clavier en cours est activé <strong>et</strong> de rendre le clavier<br />
actif<br />
Fonctions de gestion de la carte SIM<br />
Ces fonctions perm<strong>et</strong>tent de gérer facilement les informations contenues dans le répertoire<br />
personnel présent sur une carte SIM. Ces fonctions sont disponibles uniquement pour les "Pock<strong>et</strong><br />
phone" ou les Smartphones.<br />
Partie 3 : Programmation en WLangage<br />
SIMEcrit<br />
SIMLit<br />
SIMNbContact<br />
SIMSupprime<br />
Écrit ou modifie une entrée dans le répertoire de la carte SIM<br />
Lit une entrée dans le répertoire de la carte SIM<br />
Renvoie le nombre d'entrées présentes dans le répertoire de la carte<br />
SIM<br />
Supprime une entrée dans le répertoire de la carte SIM<br />
Fonctions de gestion du lancement automatique d’une application<br />
Ces fonctions perm<strong>et</strong>tent de gérer le lancement automatique d’une application :<br />
AutoLanceAjoute<br />
AutoLanceSupprime<br />
Lance automatiquement une application WinDev Mobile lors d'un<br />
événement précis. Ce lancement est défini à partir d'une application<br />
WinDev Mobile.<br />
Arrête le lancement automatiquement d'une application WinDev<br />
Mobile.
PARTIE 4<br />
Communication
61<br />
COMMUNICATION AVEC <strong>WINDEV</strong> MOBILE<br />
WinDev Mobile perm<strong>et</strong> de faire communiquer deux Pock<strong>et</strong>s PC entre eux, un Pock<strong>et</strong> PC avec un<br />
Smartphone, un Pock<strong>et</strong> PC avec un PC, ...<br />
Ces "dialogues" se font par infrarouge, par Wi-Fi, par GPRS, ...<br />
Tableau récapitulatif<br />
Le tableau ci-dessous présente les différents modes de communication disponibles pour chaque<br />
fonctionnalité proposée par WinDev Mobile.<br />
Accès distant<br />
(RPC<br />
sur Hyper<br />
File)<br />
E-mail FTP HTTP Téléphonie<br />
SOAP<br />
J2EE<br />
.NET<br />
Sock<strong>et</strong><br />
SMS<br />
ActiveSync X X X X X X<br />
Carte réseau X X X X X X<br />
GPRS X X X X X X<br />
Infrarouge<br />
X<br />
Smartphone<br />
ou accès<br />
téléphonique<br />
(type GSM)<br />
X<br />
X<br />
Wi-Fi X X X X X X<br />
Partie 4 : Communication
62<br />
Quelques exemples<br />
1. Communication par Infrarouge<br />
La communication par infrarouge est réalisée grâce aux fonctions Sock<strong>et</strong> (Sock<strong>et</strong>Connecte-<br />
Infrarouge, Sock<strong>et</strong>CréeInfrarouge, ...). Il est ainsi possible de faire communiquer :<br />
• deux Pock<strong>et</strong>s PC entre eux.<br />
• un Pock<strong>et</strong> PC avec un Smartphone.<br />
• un Pock<strong>et</strong> PC avec un PC.<br />
• un Pock<strong>et</strong> PC avec tout type d'appareil équipé d'un port infrarouge (imprimante, portail<br />
électrique, ...).<br />
Partie 4 : Communication<br />
2. Communication par Wi-Fi<br />
La communication par Wi-Fi peut par exemple être utilisée pour transférer des fichiers par FTP.
63<br />
3. Communication par GPRS<br />
La communication par GPRS peut par exemple être utilisée pour accéder par Intern<strong>et</strong> à une base<br />
de données Hyper File distante.<br />
Partie 4 : Communication
64<br />
GESTION D’E-MAILS (PROTOCOLE POP3/<br />
SMTP)<br />
Les protocoles POP3 <strong>et</strong> SMTP sont des protocoles de gestion des e-mails reconnus par tous les<br />
fournisseurs de services. Ces protocoles perm<strong>et</strong>tent de dialoguer directement avec le serveur d'emails,<br />
disponible chez votre fournisseur d’accès.<br />
Remarques :<br />
• Le protocole POP3 perm<strong>et</strong> de recevoir des e-mails.<br />
• Le protocole SMTP perm<strong>et</strong> d'envoyer des e-mails.<br />
Partie 4 : Communication<br />
Principe d’utilisation<br />
1. Connecter le Pock<strong>et</strong> PC à un poste PC (nécessaire si le Pock<strong>et</strong> PC n'est pas équipé d'une<br />
carte Ethern<strong>et</strong> ou d'un modem GPRS).<br />
2. Se connecter au fournisseur d'accès (si nécessaire).<br />
3. Ouvrir une session de messagerie avec la fonction EmailOuvreSession.<br />
4. Envoyer <strong>et</strong> lire les messages.<br />
5. Fermer la session de messagerie avec la fonction EmailFermeSession.
65<br />
GESTION D’E-MAILS (CEMAPI)<br />
CEMAPI est une API de gestion des e-mails utilisée par la plupart des applications Pock<strong>et</strong> PC pour<br />
envoyer <strong>et</strong> recevoir des e-mails (Pock<strong>et</strong> Outlook généralement).<br />
CEMAPI perm<strong>et</strong> de simplifier la gestion des e-mails reçus chez l'hébergeur. Lorsqu'un e-mail est lu,<br />
il est automatiquement chargé dans la boîte de messages locale <strong>et</strong> supprimé du serveur (chez<br />
l'hébergeur).<br />
Toutes les caractéristiques nécessaires à la gestion des e-mails (protocole POP3, protocole SMTP,<br />
accès distant, ...) sont regroupées dans le "Compte utilisateur".<br />
Grâce aux fonctions e-mail du WLangage, une application WinDev Mobile peut manipuler<br />
directement les e-mails gérés dans une application utilisant "CEMAPI".<br />
Utilisation du Compte utilisateur "ActiveSync"<br />
Pour gérer les e-mails avec CEMAPI, il est nécessaire d'utiliser un compte utilisateur défini sous<br />
Pock<strong>et</strong> Outlook. Par défaut, Pock<strong>et</strong> Outlook gère le compte utilisateur "ActiveSync".<br />
Partie 4 : Communication
66<br />
Utilisation d’un compte utilisateur spécifique<br />
Pour utiliser un autre compte utilisateur, il est nécessaire d'en définir un.<br />
Si le Pock<strong>et</strong> PC n’a pas de liaison directe à intern<strong>et</strong>, une synchronisation avec le PC est nécessaire<br />
pour envoyer <strong>et</strong> recevoir les e-mails.<br />
Partie 4 : Communication<br />
Si le Pock<strong>et</strong> PC a un accès direct à Intern<strong>et</strong> (par Wi-Fi, ...), aucune synchronisation avec un PC n’est<br />
nécessaire.
67<br />
MANIPULER DES FICHIERS SUR UN<br />
SERVEUR FTP<br />
Le FTP (File Transfer Protocol) est un protocole de transfert de fichiers d'un site vers un autre site<br />
distant. Ce protocole perm<strong>et</strong> d'échanger des fichiers par TCP/IP, Intern<strong>et</strong> Wi-Fi ou Active Sync.<br />
Sur Intern<strong>et</strong>, plusieurs milliers de serveurs de fichiers sont accessibles par FTP. Ces serveurs<br />
proposent des logiciels shareware ou freeware, accessibles au public.<br />
WinDev Mobile m<strong>et</strong> à votre disposition des fonctions WLangage pour gérer des fichiers sur un<br />
serveur FTP depuis vos applications WinDev Mobile.<br />
Transfert de fichiers par liaison directe entre un Pock<strong>et</strong> PC <strong>et</strong> un serveur FTP par Wi-Fi :<br />
Transfert de fichiers par Intern<strong>et</strong> :<br />
Partie 4 : Communication
68<br />
GESTION DES SMS<br />
Grâce aux fonctions WLangage, WinDev Mobile perm<strong>et</strong> de :<br />
• envoyer simplement des SMS.<br />
• parcourir les SMS reçus.<br />
• supprimer un ou plusieurs SMS reçus.<br />
Un SMS (Short Message Service, appelé également Textos, Mini messages, Télémessages, ...)<br />
correspond à un message texte (160 caractères maximum) envoyé sur un téléphone portable.<br />
Pour utiliser les fonctions SMS, l'application Pock<strong>et</strong> PC doit être installée :<br />
• soit sur un Pock<strong>et</strong> PC disposant d'un accès téléphonique (type GSM).<br />
•soit sur un Smartphone.<br />
Pock<strong>et</strong> PC<br />
Application<br />
SMS<br />
PCSoft<br />
Téléphone Portable<br />
Smartphone, ...<br />
Envoi du message<br />
(Fonction SMSEnvoie)<br />
Partie 4 : Communication<br />
Création du message<br />
(Structure SMS)<br />
Réception <strong>et</strong> parcours<br />
des messages
PARTIE 5<br />
Interactions WinDev -<br />
WinDev Mobile
71<br />
INTERACTION AVEC UNE APPLICATION<br />
<strong>WINDEV</strong> STANDARD<br />
Les fonctions d'accès aux Pock<strong>et</strong>s PC perm<strong>et</strong>tent d'accéder aux Pock<strong>et</strong>s PC à partir d'une<br />
application WinDev standard.<br />
WinDev Mobile est livré en standard avec plusieurs exemples utilisant les fonctions d'accès aux<br />
Pock<strong>et</strong>s PC :<br />
• PC Base de registres.<br />
•PC Explorateur.<br />
Ces exemples sont utilisables sur un poste PC.<br />
Partie 5 : Interactions WinDev - WinDev Mobile
72<br />
POCKET PC : PARTAGE DES ÉLÉMENTS<br />
<strong>WINDEV</strong><br />
Il est possible d'utiliser les mêmes éléments WinDev (analyse, états, requêtes, ...) dans une<br />
application WinDev standard <strong>et</strong> dans une application WinDev Mobile :<br />
• Fenêtres : Les fenêtres sous WinDev standard <strong>et</strong> sous WinDev Mobile n’ont pas le même<br />
format (taille différente, position des menus, ...). Il est possible d’importer des fenêtres<br />
WinDev standard dans un proj<strong>et</strong> WinDev Mobile. Les fenêtres WinDev standard (fichier<br />
".WDW") se transforment automatiquement en fenêtres pour Pock<strong>et</strong> PC (fichier ".WPW").<br />
• Aide : Ce type d'élément n'existe pas sous Pock<strong>et</strong> PC.<br />
• Analyse, états, requêtes, classes, collections de procédures, ... : Ces éléments peuvent être<br />
directement partagés entre une application WinDev standard <strong>et</strong> une application WinDev<br />
Mobile.<br />
Partie 5 : Interactions WinDev - WinDev Mobile
73<br />
MANIPULER UN POCKET PC DEPUIS UNE<br />
APPLICATION <strong>WINDEV</strong> STANDARD<br />
Les fonctions WLangage suivantes perm<strong>et</strong>tent d'accéder aux Pock<strong>et</strong>s PC à partir d'une application<br />
WinDev standard :<br />
ceConnecte<br />
ceCopieFichier<br />
ceCréeRaccourci<br />
Connecte le poste en cours à un Pock<strong>et</strong> PC<br />
Copie un fichier présent sur le poste en cours vers le Pock<strong>et</strong> PC<br />
connecté; présent sur le Pock<strong>et</strong> PC connecté vers le poste en<br />
cours; présent sur le Pock<strong>et</strong> PC connecté vers un autre répertoire<br />
dans le Pock<strong>et</strong> PC<br />
Crée un raccourci sur le Pock<strong>et</strong> PC connecté au poste en cours<br />
ceDateFichier<br />
ceDéconnecte<br />
ceEtatAlimentation<br />
ceEtatConnexion<br />
ceFenEnumère<br />
ceFenTitre<br />
ceFichierExiste<br />
ceHeureFichier<br />
ceInfoOEM<br />
ceLanceAppli<br />
ceListeFichier<br />
ceNomMachine<br />
Renvoie ou modifie les différentes dates d'un fichier (date de<br />
création, de modification ou d'accès)<br />
Ferme la connexion entre le poste en cours <strong>et</strong> le Pock<strong>et</strong> PC<br />
Perm<strong>et</strong> de connaître diverses informations sur la batterie<br />
(principale ou de secours) du Pock<strong>et</strong> PC<br />
Perm<strong>et</strong> de connaître l'état de la connexion entre le poste en cours<br />
<strong>et</strong> un Pock<strong>et</strong> PC<br />
Perm<strong>et</strong> d'énumérer les fenêtres Windows actuellement ouvertes<br />
sur le Pock<strong>et</strong> PC<br />
Renvoie le titre de la fenêtre Windows spécifiée<br />
Teste l'existence d'un fichier<br />
Renvoie ou modifie les différentes heures d'un fichier (heure de<br />
création, de modification ou d'accès)<br />
Renvoie les informations OEM du Pock<strong>et</strong> PC : marque, modèle,<br />
numéro de série, …<br />
Lance l'exécution d'un programme (exécutable par exemple)<br />
depuis l'application en cours<br />
Liste les fichiers d'un répertoire (<strong>et</strong> de ses sous-répertoires) <strong>et</strong><br />
r<strong>et</strong>ourne le nombre de fichiers listés<br />
Renvoie le nom du Pock<strong>et</strong> PC<br />
Partie 5 : Interactions WinDev - WinDev Mobile<br />
cePlateforme<br />
Renvoie le nom de la plateforme du Pock<strong>et</strong> PC
74<br />
ceRegistreCléSuivante<br />
ceRegistreCréeClé<br />
ceRegistreEcrit<br />
ceRegistreExiste<br />
ceRegistreListeValeur<br />
ceRegistreLit<br />
ceRegistrePremièreSousClé<br />
Identifie la clé suivant la clé spécifiée dans la base de registres du<br />
Pock<strong>et</strong> PC<br />
Crée une clé dans la base de registres du Pock<strong>et</strong> PC<br />
Écrit une valeur dans un registre de la base de registres du Pock<strong>et</strong><br />
PC<br />
Teste l'existence d'une clé de la base de registres du Pock<strong>et</strong> PC<br />
Renvoie le nom <strong>et</strong> éventuellement le type des valeurs d'une clé de<br />
la base de registres du Pock<strong>et</strong> PC<br />
Lit la valeur d'un registre dans la base de registres du Pock<strong>et</strong> PC<br />
Identifie la clé suivant la clé spécifiée dans la base de registres du Pock<strong>et</strong><br />
PC<br />
Partie 5 : Interactions WinDev - WinDev Mobile<br />
ceRegistreSousClé<br />
ceRegistreSupprimeClé<br />
ceRegistreSupprimeValeur<br />
ceRep<br />
ceRepCrée<br />
ceRepSupprime<br />
ceSupprimeFichier<br />
Identifie le chemin de la Nième sous-clé spécifiée dans la base de<br />
registres du Pock<strong>et</strong> PC<br />
Supprime une sous-clé dans la base de registres du Pock<strong>et</strong> PC<br />
Supprime une valeur dans la base de registres du Pock<strong>et</strong> PC<br />
Recherche un fichier ou un répertoire sur le Pock<strong>et</strong> PC connecté au poste<br />
en cours<br />
Crée un répertoire sur le Pock<strong>et</strong> PC connecté au poste en cours<br />
Supprime un répertoire présent sur le Pock<strong>et</strong> PC connecté au poste en<br />
cours<br />
Supprime un fichier présent sur le Pock<strong>et</strong> PC connecté au poste en cours<br />
ceSupprimeRaccourci Supprime un raccourci précédemment créé avec la fonction<br />
ceCréeRaccourci<br />
ceSysRep<br />
ceTailleFichier<br />
ceTypeProcesseur<br />
ceVersionWindows<br />
ceXRes<br />
ceYRes<br />
Renvoie le chemin d'un répertoire du système du Pock<strong>et</strong> PC connecté au<br />
poste en cours<br />
Renvoie la taille (en oct<strong>et</strong>s) d'un fichier présent sur le Pock<strong>et</strong> PC connecté<br />
au poste en cours<br />
Renvoie le type de processeur du Pock<strong>et</strong> PC connecté au poste en cours<br />
Renvoie des informations sur la version de Windows utilisée sur le Pock<strong>et</strong><br />
PC connecté au poste en cours<br />
Renvoie la résolution horizontale de l'écran du Pock<strong>et</strong> PC connecté au<br />
poste en cours<br />
Renvoie la résolution verticale de l'écran du Pock<strong>et</strong> PC connecté au poste<br />
en cours<br />
Rappel : Il est également possible d’utiliser les fonctions cdbXXX (listées page 43).
PARTIE 6<br />
Annexes
77<br />
PRINCIPALES NOUVEAUTÉS DE <strong>WINDEV</strong><br />
MOBILE 11<br />
Lisez c<strong>et</strong>te partie si vous connaissez WinDev Mobile 10.<br />
WinDev Mobile 11 présente de nombreuses nouveautés.<br />
Environnement de travail<br />
Les principales nouveautés de l’environnement de travail :<br />
• Editeur de proj<strong>et</strong> :<br />
•Tableau de bord du proj<strong>et</strong>.<br />
•Règles métier : saisie de l’ensemble des règles à respecter dans le proj<strong>et</strong> (vol<strong>et</strong> "Règles").<br />
•Proj<strong>et</strong> commun : définition d’un proj<strong>et</strong> global multi-cibles.<br />
•Import de proj<strong>et</strong> WinDev Mobile vers WinDev.<br />
• Editeur de fenêtres :<br />
•Champ table : un nouveau traitement de tri, des titres de colonnes gérant le RTF.<br />
•Modèle de fenêtres : utilisation de fenêtres types.<br />
•Fenêtre avec paramètres : test de fenêtres avec passage de paramètres.<br />
• Editeur de code :<br />
•Détection de code mort <strong>et</strong> orphelin.<br />
•Code appelant <strong>et</strong> code appelé.<br />
•Classement des procédures.<br />
•Rétro-analyse de code : pour visualiser l’organisation du code.<br />
•Code modifié : mise en évidence du code modifié.<br />
•Saisie assistée : propose les différentes ressources disponibles (exemple, composant, ...).<br />
•Test unitaire des procédures <strong>et</strong> des classes.<br />
• Gestionnaire de Sources :<br />
•Gestion des branches perm<strong>et</strong>tant de gérer en parallèle plusieurs versions d’une même<br />
application.<br />
•Possibilité de nommer les différentes versions d’une application.<br />
•Recherche automatique des éléments partagés entre plusieurs proj<strong>et</strong>s.<br />
•Gestion des composants.<br />
• Débogage :<br />
Débogage réel sur le Pock<strong>et</strong> PC connecté au poste en cours.<br />
Partie 6 : Annexes
78<br />
Programmation<br />
Les principales nouveautés de programmation :<br />
• Débogage réel depuis le poste PC.<br />
• Concaténation optionnelle.<br />
• Programmation par action prédéfinie.<br />
• Impression de code-barres.<br />
• Changement de l’orientation de l’écran.<br />
• Compilation dynamique.<br />
•Nouvelles fonctions:<br />
•Fonctions de hachage (fonctions HashXXX).<br />
•Fonctions de gestion du système (fonctions sysXXX).<br />
•Fonctions de gestion du magnétophone (fonction MagnétoXXX).<br />
•...<br />
Installation d’application WinDev Mobile<br />
Les principales nouveautés :<br />
•Framework renommé commun à plusieurs applications.<br />
•Modification automatique des données Hyper File lors d’une mise à jour au format ".CAB".<br />
Partie 6 : Annexes
79<br />
OUTILS DISPONIBLES AVEC <strong>WINDEV</strong><br />
MOBILE<br />
Des outils spécifiques à la manipulation d’un Pock<strong>et</strong> PC depuis un poste PC sont disponibles :<br />
WDExplorer<br />
Outil perm<strong>et</strong>tant de visualiser les fichiers <strong>et</strong><br />
répertoires présents sur un Pock<strong>et</strong> PC, un<br />
Smartphone, ...<br />
WDRegistre<br />
Outil perm<strong>et</strong>tant de visualiser la base de registres<br />
d’un Pock<strong>et</strong> PC, d’un Smartphone, ...<br />
WDCEDB<br />
Outil perm<strong>et</strong>tant d’accéder à des bases de données<br />
standard (.cdb) présentes sur un Pock<strong>et</strong> PC, un<br />
Smartphone, ...<br />
WDCapture<br />
Outil perm<strong>et</strong>tant de réaliser des captures d’écran<br />
ou des vidéos du Pock<strong>et</strong> PC ou du Smartphone<br />
connecté.<br />
WDSynchro<br />
Outil de configuration des synchronisations Hyper File Mobile par ActiveSync.<br />
Partie 6 : Annexes
80<br />
COMPOSANTS LIVRÉS AVEC <strong>WINDEV</strong><br />
MOBILE<br />
Les exemples de composants fournis avec WinDev Mobile sont divisés en 2 catégories :<br />
• composants utilisables depuis une application WinDev Mobile.<br />
Ces composants sont présents dans le sous-répertoire "Composants\Composants<br />
exemples\Mobile" du répertoire d'installation de WinDev Mobile.<br />
Nom du composant<br />
Pock<strong>et</strong> Falcon<br />
Pock<strong>et</strong> GANTT<br />
Pock<strong>et</strong> Gestion Login<br />
Pock<strong>et</strong> GPS<br />
Pock<strong>et</strong> Sélecteur de répertoires<br />
Pock<strong>et</strong> Symbol<br />
Pock<strong>et</strong> TomTom<br />
Description<br />
Perm<strong>et</strong> d’accéder à toutes les fonctionnalités des Pock<strong>et</strong>s<br />
PC Falcon.<br />
Perm<strong>et</strong> d’afficher un diagramme de GANTT dans une table<br />
mémoire ou dans une fenêtre intégrée au composant.<br />
Gère l'identification des utilisateurs dans une application à<br />
partir d'un Login <strong>et</strong> d'un mot de passe.<br />
Perm<strong>et</strong> d'interroger un GPS afin de récupérer une longitude,<br />
une latitude, une vitesse de déplacement, une altitude.<br />
Sélecteur de répertoires pour Pock<strong>et</strong> PC.<br />
Perm<strong>et</strong> d’accéder à toutes les fonctionnalités des Pock<strong>et</strong>s<br />
PC Symbol.<br />
Pilote TomTom Navigator (logiciel de navigation assistée par<br />
satellite).<br />
• composants utilisables depuis une application WinDev standard manipulant les fichiers du<br />
Pock<strong>et</strong> PC.<br />
Ces composants sont présents dans le sous-répertoire "Composants\Composants<br />
exemples\Windows" du répertoire d'installation de WinDev Mobile.<br />
Partie 6 : Annexes<br />
Nom du composant<br />
PC Sélecteur de répertoire<br />
PC Sélecteur de Fichiers<br />
Description<br />
Sélecteur d'un répertoire présent sur un pock<strong>et</strong> PC depuis<br />
une application WinDev standard.<br />
Sélecteur de fichiers présents sur un Pock<strong>et</strong> PC depuis une<br />
application WinDev standard.<br />
Deux sous-répertoires sont spécifiques à chacun de ces exemples :<br />
• le sous-répertoire "-Exemple" contient un exemple de proj<strong>et</strong> utilisant le<br />
composant.<br />
• le sous-répertoire "-Source" contient le proj<strong>et</strong> du composant.<br />
Des composants supplémentaires sont livrés avec la L<strong>et</strong>tre du Support Technique (LST) ou sont<br />
disponibles sur notre site (www.pcsoft.fr).
81<br />
EXEMPLES LIVRÉS AVEC <strong>WINDEV</strong> MOBILE<br />
Les exemples livrés avec WinDev Mobile présentent de manière didactique les différentes<br />
fonctionnalités de WinDev Mobile.<br />
Leur code source est commenté <strong>et</strong> détaillé.<br />
Ces exemples sont présents dans le sous-répertoire "Exemples" du répertoire d'installation de<br />
WinDev Mobile <strong>et</strong> peuvent être ouverts directement depuis le vol<strong>et</strong> "Assistants, Exemples <strong>et</strong><br />
Composants".<br />
Différents types d'exemples sont livrés avec WinDev Mobile :<br />
• exemples utilisables uniquement sous Pock<strong>et</strong> PC.<br />
• exemples composés d'un proj<strong>et</strong> utilisable sous Pock<strong>et</strong> PC interagissant avec un proj<strong>et</strong><br />
utilisable sous PC.<br />
• exemples utilisables uniquement sous PC.<br />
Voici les fonctionnalités de quelques exemples livrés avec WinDev Mobile.<br />
Exemples utilisables uniquement sous Pock<strong>et</strong> PC<br />
Pock<strong>et</strong> Animated<br />
C<strong>et</strong> exemple illustre les possibilités d'animation d'une image avec<br />
WinDev Mobile.<br />
Pock<strong>et</strong><br />
Virtuel<br />
Clavier<br />
C<strong>et</strong> exemple propose des claviers virtuels entièrement personnalisables<br />
<strong>et</strong> beaucoup moins encombrants que le clavier standard des Pock<strong>et</strong>s<br />
PC.<br />
Pock<strong>et</strong> ClientFTP<br />
C<strong>et</strong> exemple perm<strong>et</strong> de visualiser le contenu d'un serveur ftp. Il perm<strong>et</strong><br />
aussi de télécharger des fichiers, de les renommer ou de les supprimer.<br />
Pock<strong>et</strong> Diaporama<br />
Pock<strong>et</strong> Emprunt<br />
Pock<strong>et</strong> Explorer<br />
Pock<strong>et</strong> Expressions<br />
Régulières<br />
Pock<strong>et</strong><br />
MIME<br />
Extraction<br />
C<strong>et</strong> exemple est un Visualisateur d'images pour Pock<strong>et</strong> PC. Il perm<strong>et</strong> de<br />
visualiser les images contenues dans un répertoire donné.<br />
C<strong>et</strong> exemple perm<strong>et</strong> de simuler des emprunts <strong>et</strong> de visualiser les<br />
tableaux d’amortissement correspondants.<br />
C<strong>et</strong> exemple est un explorateur de fichiers pour Windows CE. Vous<br />
pouvez lister les fichiers <strong>et</strong> les répertoires d'un Pock<strong>et</strong> PC.<br />
C<strong>et</strong> exemple perm<strong>et</strong> d’aborder l’utilisation des expressions régulières <strong>et</strong><br />
d’effectuer des recherches dans des chaînes de caractères.<br />
C<strong>et</strong> exemple perm<strong>et</strong> d’extraire les pièces contenues dans un email.<br />
Partie 6 : Annexes<br />
Pock<strong>et</strong> Fonctions<br />
Financières<br />
C<strong>et</strong> exemple présente l’utilisation des fonctions financières.
82<br />
Pock<strong>et</strong> Images<br />
Pock<strong>et</strong> Map<br />
Pock<strong>et</strong><br />
MotDePasse<br />
Pock<strong>et</strong> Notes<br />
Pock<strong>et</strong> Persistance<br />
Pock<strong>et</strong> Poker<br />
Pock<strong>et</strong> Pool de<br />
threads<br />
Pock<strong>et</strong> Présence<br />
C<strong>et</strong> exemple perm<strong>et</strong> de parcourir un répertoire spécifique à la recherche<br />
d’images.<br />
C<strong>et</strong> exemple est une version allégée de l'outil WDMap. C<strong>et</strong> exemple<br />
perm<strong>et</strong> de visualiser <strong>et</strong> de modifier des fichiers de données au format<br />
Hyper File Mobile directement sur un Pock<strong>et</strong> PC.<br />
C<strong>et</strong> exemple présente un "coffre" à mots de passe. Il peut être utilisé<br />
pour gérer les mots de passe créés lors de l’utilisation de sites Intern<strong>et</strong><br />
mais également dans des applications ou dans la vie courante.<br />
C<strong>et</strong> exemple perm<strong>et</strong> de dessiner des "notes" graphiques <strong>et</strong> de les<br />
enregistrer. Vous avez la possibilité de saisir des mots-clés pour<br />
r<strong>et</strong>rouver vos notes.<br />
C<strong>et</strong> exemple présente l’utilisation des fonctions de gestion des valeurs<br />
persistantes.<br />
C<strong>et</strong> exemple perm<strong>et</strong> de jouer au Poker sur un Pock<strong>et</strong> PC.<br />
Le but de ce jeu est simple : disposer de plusieurs cartes identiques.<br />
C<strong>et</strong> exemple présente l’utilisation des threads.<br />
Rappel : Un thread est un processus lancé en parallèle de l’application<br />
en cours.<br />
C<strong>et</strong>te application est un gestionnaire de présence. Elle perm<strong>et</strong> de noter<br />
les personnes présentes lors d'un séminaire.<br />
La base de données est préalablement renseignée avec la liste des<br />
personnes inscrites.<br />
Pock<strong>et</strong><br />
Fixes<br />
Radars<br />
C<strong>et</strong> exemple est basé sur l’interrogation d’un GPS. Il analyse les<br />
coordonnées de la position actuelle <strong>et</strong> la compare à celles des radars<br />
fixes installés en France. A l’approche d’un radar, un bip est émis pour<br />
informer le conducteur de la présence du radar.<br />
Partie 6 : Annexes<br />
Pock<strong>et</strong> Statistiques<br />
Pock<strong>et</strong> Téléphonie<br />
Pock<strong>et</strong> Tic Tac Toe<br />
Pock<strong>et</strong> ZIP<br />
C<strong>et</strong> exemple effectue divers calculs de statistiques.<br />
C<strong>et</strong> exemple est une application de téléphonie utilisable avec un Pock<strong>et</strong><br />
PC disposant d’un accès téléphonique (type GSM).<br />
C<strong>et</strong> exemple perm<strong>et</strong> de jouer au "Tic Tac Toe" sur un Pock<strong>et</strong> PC.<br />
Le but de ce jeu est simple : aligner 3 pions avant l'adversaire.<br />
C<strong>et</strong> exemple présente de créer <strong>et</strong> de manipuler des archives (fichiers<br />
".ZIP").
83<br />
Exemples composés d'un proj<strong>et</strong> utilisable sous Pock<strong>et</strong> PC interagissant avec un<br />
proj<strong>et</strong> utilisable sous PC<br />
Envois de SMS<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Envois de SMS"<br />
utilisable sous Pock<strong>et</strong> PC<br />
• Proj<strong>et</strong> "PC Envois de SMS" utilisable<br />
sous PC<br />
Gestion des listes d’achats<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Gestion des listes<br />
d’achats" utilisable sous Pock<strong>et</strong> PC<br />
• Proj<strong>et</strong> "PC Gestion des listes d’achats"<br />
utilisable sous PC<br />
Notes de Frais<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> NotesFrais" utilisable<br />
sous Pock<strong>et</strong> PC<br />
• Proj<strong>et</strong> "PC NotesFrais" utilisable sous<br />
PC<br />
Réservation Plage<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Beach" utilisable sous<br />
Pock<strong>et</strong> PC<br />
•Proj<strong>et</strong> "PC Beach" utilisable sous PC<br />
Sock<strong>et</strong> Unicode<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Sock<strong>et</strong> Unicode"<br />
utilisable sous Pock<strong>et</strong> PC<br />
• Proj<strong>et</strong> "PC Sock<strong>et</strong> Unicode" utilisable<br />
sous PC<br />
Ces exemples perm<strong>et</strong>tent d'envoyer des SMS.<br />
Ces exemples perm<strong>et</strong>tent de gérer une liste de<br />
magasins, de rayons, de produits <strong>et</strong> d’achats.<br />
Il est possible de synchroniser les données saisies<br />
dans les deux proj<strong>et</strong>s.<br />
Ces exemples perm<strong>et</strong>tent de gérer des notes de<br />
frais.<br />
Il est possible de synchroniser les données saisies<br />
dans les deux proj<strong>et</strong>s.<br />
Ces exemples perm<strong>et</strong>tent de gérer les réservations<br />
sur des plages privées.<br />
Il est possible de synchroniser les données saisies<br />
dans les deux proj<strong>et</strong>s.<br />
Ces exemples présentent le fonctionnement des<br />
sock<strong>et</strong>s avec les Pock<strong>et</strong>s PC.<br />
Sondage<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Sondage" utilisable sous<br />
Pock<strong>et</strong><br />
• Proj<strong>et</strong> "PC Sondage" utilisable sous PC<br />
Stocks<br />
• Proj<strong>et</strong> "Pock<strong>et</strong> Stocks" utilisable sous<br />
Pock<strong>et</strong><br />
• Proj<strong>et</strong> "PC Stocks" utilisable sous PC<br />
Ces exemples perm<strong>et</strong>tant de réaliser des<br />
sondages.<br />
Il est possible de synchroniser les données saisies<br />
dans les deux proj<strong>et</strong>s.<br />
Ces exemples perm<strong>et</strong>tent de gérer des stocks.<br />
Il est possible de synchroniser les données saisies<br />
dans les deux proj<strong>et</strong>s.<br />
Partie 6 : Annexes
84<br />
Tâches en réseau<br />
•Proj<strong>et</strong> "Pock<strong>et</strong> Tâches en réseau"<br />
utilisable sous Pock<strong>et</strong> PC<br />
•Proj<strong>et</strong> "PC Tâches en réseau" utilisable<br />
sous PC<br />
Utilisation des sock<strong>et</strong>s<br />
•Proj<strong>et</strong> "Pock<strong>et</strong> Utilisation des sock<strong>et</strong>s"<br />
utilisable sous PC<br />
•Proj<strong>et</strong> "PC Utilisation des sock<strong>et</strong>s"<br />
utilisable sous PC<br />
L'application PC Tâches en réseau perm<strong>et</strong> de saisir<br />
une liste de tâches (avec gestion de priorités, date<br />
d'échéance, rappel automatique, ...).<br />
L'application Pock<strong>et</strong> Tâches en réseau perm<strong>et</strong><br />
d'accéder à c<strong>et</strong>te liste de tâches pour indiquer<br />
qu'une tâche est en cours de réalisation ou<br />
réalisée.<br />
Ces exemples présentent l'utilisation des<br />
différentes fonctions de gestion des sock<strong>et</strong>s.<br />
Exemples utilisables uniquement sous PC<br />
PC Album Photo<br />
PC base de registres<br />
PC Browser CDB<br />
PC Explorateur<br />
C<strong>et</strong> exemple perm<strong>et</strong> d’importer <strong>et</strong>/ou d’exporter les photos d’un<br />
Pock<strong>et</strong> PC à partir d’un PC.<br />
C<strong>et</strong> exemple perm<strong>et</strong> de manipuler la base de registres d’un Pock<strong>et</strong> PC<br />
à partir d’un PC.<br />
C<strong>et</strong> exemple perm<strong>et</strong> d’accéder à des bases de données standard<br />
(.cdb) présentes sur un Pock<strong>et</strong> PC.<br />
C<strong>et</strong> exemple perm<strong>et</strong> de visualiser les fichiers <strong>et</strong> répertoires présents<br />
sur un Pock<strong>et</strong> PC<br />
Des exemples supplémentaires sont livrés avec la L<strong>et</strong>tre du Support Technique (LST) ou sont<br />
disponibles sur notre site (www.pcsoft.fr).<br />
Partie 6 : Annexes