PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Définition
  • De quoi est constitué un composant externe ?
  • Que contient un composant externe ?
  • Créer et générer un composant externe
  • Distribuer un composant externe
  • Présentation
  • Utilisation directe du composant
  • Distribution simple d'un composant
  • Distribution grâce à une procédure d'installation
  • Utiliser un composant externe dans une application
  • Déploiement d'une application utilisant un composant externe
  • Présentation
  • Mise à jour des composants et des exécutables déployés
  • Modifier un composant externe
  • Présentation
  • Les différents types de compatibilité
  • Caractéristiques avancées d'un composant
  • Documentation automatique
  • Visibilité d'un élément d'un composant
  • Le fichier WDO
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
13. Composant externe en pratique
Chapitre précédentSommaireChapitre suivant
Présentation

Définition

Un composant externe est un ensemble d'éléments WINDEV : fenêtres, états, analyse, ... Cet ensemble d'éléments effectue une fonctionnalité précise. Par exemple, un composant externe peut correspondre à une des fonctionnalités suivantes :
  • Envoi de fax
  • Envoi d'emails, ...
Remarques :
  • Pour optimiser l'organisation de vos projets, il est possible d'utiliser des composants internes. Pour plus de détails, consultez Composant interne en pratique.
  • Dans la suite de ce chapitre, le terme "composant" signifie "composant externe".
Un composant externe peut être redistribué à d'autres développeurs WINDEV (gratuitement ou non). Ces développeurs pourront ainsi intégrer simplement la fonctionnalité proposée par le composant dans leur application. Le composant sera donc intégré à l'application et distribué avec l'application.
Lors de la création du composant, l'auteur spécifie :
  • la provenance des éléments du composant. Le développeur peut construire un composant à partir d'un projet WINDEV lié à un projet WEBDEV et/ou un projet WINDEV Mobile.
  • les éléments du composant visibles ou non par l'utilisateur du composant. Les éléments visibles seront accessibles dans le graphe du projet ou par programmation.
  • le mode d'utilisation du composant (comment utiliser le composant, les paramètres permettant d'accéder aux fonctionnalités du composant, ...). Une documentation succincte (à compléter) est automatiquement générée et associée au composant.
Remarque : Des exemples de composants sont livrés en standard avec WINDEV. Ces composants sont accessibles depuis la fenêtre de bienvenue (option "Ouvrir un exemple").Remarque : Des exemples de composants sont livrés en standard avec WINDEV. Ces composants sont accessibles depuis la page d'accueil de WINDEV (option "Ouvrir un exemple").

De quoi est constitué un composant externe ?

Un composant est défini et généré à partir d'un projet WINDEV existant. Il peut être ensuite intégré dans d'autres projets WINDEV.
Tous les éléments du composant sont totalement indépendants du projet dans lequel le composant est intégré. Le composant peut avoir sa propre analyse, ses fenêtres, ses états, ses fichiers de données, ... Lors de la création de la génération du composant, il suffit d'indiquer si ces éléments pourront être manipulés ou non dans le projet WINDEV intégrant ce composant.
Le composant est constitué de trois fichiers :
<NomComposant>.WDKFichier composant. Contient tous les éléments du composant.
Ce fichier est nécessaire à l'intégration du composant dans un projet.
Ce fichier doit également être livré dans la procédure d'installation de l'application utilisant le composant.
<NomComposant>.WDIDescription du composant (uniquement pour le développement d'applications).
Ce fichier est nécessaire à l'intégration du composant dans un projet.
Ce fichier ne doit pas être livré dans la procédure d'installation de l'application utilisant le composant.
<Nom du composant>.WDO (fichier optionnel)Fichier optionnel
Fichier au format texte contenant la liste des différents éléments livrés en plus avec le composant (fichiers de données, fichiers .INI, ...). Consultez Le fichier WDO.

Que contient un composant externe ?

Un composant contient :
  • les différents éléments à redistribuer (fenêtres, états, ...). Ces éléments peuvent être accessibles ou non lors de l'importation du composant dans un projet WINDEV.
  • une brève description du composant.
  • une aide permettant de ré-utiliser ce composant. Cette aide est générée à partir des commentaires de code.
Remarque : Par défaut, si un composant utilise une analyse, des fichiers de données, ... les fonctions WLangage de gestion HFSQL manipuleront ces éléments dans un contexte indépendant. Ces paramètres peuvent être modifiés dans les options avancées du composant. Pour plus de détails, consultez l'aide en ligne.
Créer et générer un composant externe
La création d'un composant doit être effectuée à partir d'un projet contenant tous les éléments nécessaires au fonctionnement du composant. Il est donc conseillé d'utiliser un projet spécifique pour créer chaque composant.
La création d'un composant se fait en plusieurs étapes :
  1. Développement des éléments du composant.
  2. Création du composant.
  3. Définition des options avancées du composant.
  4. Génération du composant.
Le composant peut alors être distribué et ré-utilisé.
Distribuer un composant externe

Présentation

Lorsque le composant a été créé, testé et généré, il peut être mis à disposition des développeurs. Plusieurs méthodes sont possibles :
  • utilisation directe du composant
    Exemple : le composant est directement utilisé sur le poste du développeur qui a créé le composant.
  • distribution simple, en fournissant directement les fichiers nécessaires.
    Exemple : le composant est destiné à être utilisé à l'intérieur d'une même société, par plusieurs développeurs. Dans ce cas, les fichiers nécessaires peuvent être copiés sur un disque réseau.
  • procédure d'installation du composant (avec une procédure d'installation du composant identique à celle utilisée pour les applications).
    Exemple : Ce mode de distribution est conseillé si le composant est destiné à être vendu ou à être distribué à grande échelle, avec des mises à jour régulières.

Utilisation directe du composant

Le composant est créé et utilisé sur le même poste. Lors de l'importation du composant dans un projet WINDEV, il suffit de sélectionner le fichier WDI correspondant au composant. Ce fichier est disponible dans le répertoire EXE du projet composant.
Attention : Si le composant utilise des fichiers spécifiques (fichiers de données, fichiers texte, ...), il est nécessaire de créer un fichier <NomComposant>.WDO après la génération du composant. Ce fichier contient la liste des fichiers externes (fichiers de données, fichiers texte, ...) utilisés par le composant.
Ces fichiers référencés dans le fichier <NomComposant>.WDO seront automatiquement recopiés dans le répertoire EXE du projet utilisant le composant WINDEV.

Distribution simple d'un composant

La distribution simple d'un composant consiste à fournir uniquement les fichiers nécessaires au fonctionnement du composant par simple copie. Les fichiers sont copiés dans un répertoire spécifique. Ce répertoire peut par exemple être présent sur un serveur réseau.
Lors de l'importation du composant dans un projet WINDEV, il suffit de sélectionner le fichier WDI correspondant au composant dans le répertoire de distribution.
Pour distribuer un composant, il est nécessaire de fournir :
  • Les fichiers automatiquement générés par WINDEV (fichier <NomComposant>.WDK et fichier <NomComposant>.WDI).
  • Si nécessaire, les fichiers spécifiques manipulés par le composant (fichiers de données, fichiers d'initialisation, ...) ainsi que le fichier <NomComposant>.WDO.
Le fichier texte <NomComposant>.WDO contient la liste des fichiers qui doivent être fournis avec le composant. Pour plus de détails sur ce fichier, consultez le paragraphe Le fichier WDO.

Distribution grâce à une procédure d'installation

La diffusion des composants à l'aide d'une procédure d'installation consiste à fournir un programme d'installation aux utilisateurs du composant WINDEV. Ce programme installe tous les fichiers nécessaires à l'utilisation du composant dans le répertoire spécifié par l'utilisateur.
Ce mode d'installation permet de gérer automatiquement :
  • le fichier WDO et l'installation des fichiers spécifiques (fichiers de données, ...) utilisés par le composant.
  • l'installation d'outils spécifiques (MDAC, driver ODBC pour HFSQL, ...)
  • la mise à jour automatique des fichiers de données utilisés par le composant (si nécessaire).
  • la désinstallation du composant.
Pour proposer une procédure d'installation pour un composant :
  1. Créez la procédure d'installation du composant : sous le volet "Projet", cliquez sur "Procédure d'installation".
  2. Dans les différents plans de l'assistant, spécifiez :
    • le support d'installation du composant
    • les langues proposées dans la procédure d'installation
    • le répertoire d'installation par défaut du composant
    • les modules optionnels à installer. Il est possible de modifier la liste des fichiers à distribuer avec le composant. Le fichier WDO sera automatiquement créé à partir de cette liste.
    • ...
Par défaut, les fichiers nécessaires à l'installation d'un composant sont créés dans le sous-répertoire INSTALL COMPO du projet.
Rappel : Lors de la création de l'installation d'une application, les fichiers nécessaires sont créés dans le répertoire INSTALL du projet.
Utiliser un composant externe dans une application
Un composant peut être ré-utilisé à tout moment dans n'importe quelle application WINDEV : il suffit de connaître le répertoire des fichiers du composant et de l'importer dans le projet. L'importation du composant peut également se faire via le GDS.
Lorsqu'une nouvelle version d'un composant est disponible, il suffit d'installer les nouveaux fichiers de cette mise à jour dans le répertoire d'installation du composant (selon le mode d'installation utilisé). Pour plus de détails sur les différents modes d'installation d'un composant, consultez Distribuer un composant externe.
Si le composant a été publié et importé via le GDS, les mises à jour sont proposées à l'ouverture du projet utilisant le composant.
La création de l'exécutable (utilisant le composant) se fait de la même manière que pour une application classique WINDEV. Les DLLs nécessaires au fonctionnement du composant sont automatiquement détectées.
Déploiement d'une application utilisant un composant externe

Présentation

Le déploiement d'une application utilisant un ou plusieurs composants se fait de la même façon que le déploiement d'une application classique (option "Procédure d'installation" sous le volet "Projet").
Lors du déploiement d'une application utilisant un composant, les fichiers suivants sont automatiquement installés sur le poste de l'utilisateur :
  • <NomComposant>.WDK,
  • <NomApplication>.EXE,
  • les fichiers nécessaires au fonctionnement du composant et de l'application.

Mise à jour des composants et des exécutables déployés

Lors de la mise à jour d'un composant et/ou d'un exécutable déployé, il est possible d'installer sur le poste de l'utilisateur final :
  • soit l'exécutable de l'application, le composant et les fichiers nécessaires à leur fonctionnement.
  • soit uniquement l'exécutable de l'application et les fichiers nécessaires au fonctionnement de l'application.
  • soit uniquement le composant et les éventuels fichiers nécessaires à son fonctionnement.
Pour plus de détails sur la gestion de la compatibilité entre l'application et son composant, consultez Compatibilité Composant externe et application déployée.
Pour mettre à jour un composant en clientèle, deux possibilités existent :
  1. La recompilation du projet hôte
    Recompilez le projet qui utilise le composant et redistribuez l'application avec le composant. Dans ce cas, aucun problème de version ou de compatibilité ne sera rencontré. La recompilation est nécessaire dans les cas suivants :
    • De nouvelles fonctions ont été ajoutées dans le composant et doivent être prises en compte.
    • Les paramètres de certaines procédures ont été modifiés.
    • Incompatibilité de la nouvelle version avec les anciennes versions du composant.
    • ...
  2. Distribution directe du fichier .WDK
    Fournissez directement une mise à jour du composant (fichier .WDK) en clientèle sans recompilation du projet.
    Cette possibilité s'applique en général lorsque :
    • La nouvelle version sert à corriger un ou des dysfonctionnements d'une version antérieure.
    • De nouvelles fonctions ont été ajoutées dans le composant mais ne sont pas nécessaires au bon fonctionnement de l'application.
Modifier un composant externe

Présentation

A tout moment, un composant créé et généré peut être modifié. Cette modification peut correspondre :
  • soit à l'ajout d'éléments dans le composant.
  • soit à la suppression d'éléments du composant.
  • soit à la modification des droits sur les éléments du composant.
  • soit à la modification d'un des éléments du composant.
Dans tous les cas, après cette modification, le composant doit être re-généré pour prendre en compte les modifications effectuées.

Les différents types de compatibilité

La gestion de la compatibilité est liée aux versions d'un composant. En effet, si des modifications ont été apportées au composant, les applications qui utilisent le composant en déploiement peuvent rencontrer des problèmes d'exécution si elles ne sont pas en phase avec ce composant.
La gestion de la compatibilité est une étape importante dans la modification d'un composant. Il existe 2 types de compatibilité :
  • la compatibilité descendante : la version du composant utilisée (fichier .WDK) pour compiler les applications utilisant ce composant doit être toujours supérieure ou égale à la version actuellement utilisée en déploiement.
    Cette compatibilité est automatiquement gérée. Si le composant installé avec l'application est d'une version inférieure à celle utilisée par l'application, l'application refusera de fonctionner.
  • la compatibilité ascendante : l'utilisation d'une nouvelle version d'un composant avec les projets compilés avec une ancienne version peut être interdite. Il est donc nécessaire de recompiler les projets pour utiliser correctement la nouvelle version du composant.
Caractéristiques avancées d'un composant

Documentation automatique

Un composant doit absolument être accompagné d'une documentation pour permettre sa réutilisation.
WINDEV simplifie la réalisation de cette documentation en proposant :
  • une présentation générale du composant. Cette présentation générale est saisie lors de la génération du composant. Lors de l'utilisation du composant dans une application WINDEV, cette présentation sera visible lors du choix du composant à importer dans le projet.
  • une génération automatique de la documentation technique à partir des commentaires insérés dans le code des éléments du composant.
Quels sont les commentaires de code pris en compte ?
Les commentaires pris en compte automatiquement pour la documentation du composant sont :
  • Les commentaires placés en tête des procédures WLangage
  • Les commentaires placés en tête des traitements suivants :
    • Code d'initialisation des fenêtres,
    • Code d'initialisation des états,
    • Code d'initialisation des classes,
    • Code d'initialisation des collections de procédures.
A quel moment la documentation est-elle générée ?
La documentation du composant est générée lors de la première génération du composant (option "Générer" sous le volet "Projet").
Lors de cette génération de la documentation :
  • les commentaires existants dans le code sont utilisés pour créer la documentation.
  • si aucun commentaire n'existe, WINDEV documentera automatiquement les éléments accessibles du composant en précisant les paramètres attendus en entrée et en sortie de chaque élément. Les commentaires correspondants sont automatiquement créés dans les différents éléments.
Remarque : A chaque re-génération du composant, il est possible de re-générer la documentation associée au composant (bouton "Regénérer" dans la fenêtre "Historique du composant").
Attention : Si vous utilisez le bouton "Regénérer", les modifications effectuées sous l'assistant de génération seront supprimées.
Comment disposer de la documentation d'un composant ?
La présentation générale du composant et la documentation technique du composant sont disponibles :
  • lors de l'intégration d'un composant dans un projet : sous le volet "Projet", dans le groupe "Projet", déroulez "Importer" et sélectionnez l'option "Importer un composant externe".
  • à tout moment, lors d'un double-clic sur l'icône du composant présent dans le volet "Explorateur de projets" ou par l'option "Description" du menu contextuel du composant.
La documentation spécifique à un élément du composant peut être obtenue en double-cliquant sur cet élément (volet "Explorateur de projet" ou graphe du projet) ou en appuyant sur la touche F2 depuis le code de cet élément.

Visibilité d'un élément d'un composant

Lors de la création d'un composant, il est possible de définir les éléments du composant qui seront accessibles ou non par l'utilisateur du composant.
  • Si l'élément est accessible, l'utilisateur du composant verra cet élément dans la liste des éléments du projet. Il pourra manipuler ces éléments par programmation (comme s'il s'agissait d'un élément créé dans le projet).
    Remarque : Le code de cet élément n'est cependant pas visible.
  • Si l'élément n'est pas accessible, l'utilisateur ne saura même pas que cet élément existe.
Attention : Selon le mode de déclaration des éléments du projet (classe, collection de procédures, ...), les éléments accessibles ou non peuvent varier.

Le fichier WDO

Lors de la génération du composant, deux fichiers sont automatiquement créés dans le répertoire EXE du projet en cours :
<NomComposant>.WDKContient tous les éléments à redistribuer (fenêtres, états, ...) avec le composant
<NomComposant>.WDIInterface du composant. Ce fichier contient :
  • une aide pour l'utilisation du composant lors de sa réintégration
  • les éléments à l'utilisation du composant dans le projet (information de compilation, ...)
Lors de la diffusion du composant, ces deux fichiers doivent être redistribués.
Si le composant utilise des éléments supplémentaires (fichiers de données, ...), il est nécessaire d'ajouter dans le répertoire EXE du projet :
  • un fichier .WDO : ce fichier contient la liste des fichiers externes (fichiers de données, fichiers texte, ...) utilisés par le composant. Ces fichiers doivent être livrés et installés avec le composant.
  • les fichiers devant être redistribués avec le composant. Ces fichiers peuvent être placés selon une sous-arborescence spécifique. Dans ce cas, le code du composant doit gérer l'accès à ces fichiers selon cette même arborescence.
Qu'est-ce que le fichier WDO ?
Le fichier .WDO est un fichier au format TXT, pouvant être créé et modifié à tout moment. Ce fichier peut par exemple être créé et modifié avec l'éditeur de texte standard de Windows, NotePad.
Ce fichier contient la liste des fichiers externes (fichiers de données, fichiers texte, ...) utilisés par le composant et devant être livrés et installés avec le composant. Ces fichiers doivent être recopiés dans le répertoire EXE des projets utilisant le composant. Ce fichier ".WDO" peut contenir :
  • soit le nom complet du fichier.
    Par exemple : C:\Composants\ComposantSélecteur\EtatInitial.INI
  • soit le nom du fichier. Ce fichier sera recherché dans le répertoire en cours du composant.
    Par exemple : EtatInitial.INI
  • soit un nom de fichier utilisant un chemin relatif.
    Les syntaxes possibles sont :
    • Répertoire\NomFichier.xxx pour indiquer un sous répertoire du répertoire en cours
    • .\NomFichier.xx pour indiquer le répertoire en cours
    • ..\NomFichier.xx pour indiquer le répertoire parent Par exemple : \ComposantSélecteur\EtatInitial.INI
Ce fichier sera utilisé lors de l'intégration du composant dans le projet. Les chemins précisés dans le WDO doivent correspondre aux chemins où les fichiers sont installés sur le poste de développement du composant.
Lors de l'intégration du composant, l'arborescence spécifiée dans le WDO sera conservée et reproduite dans le répertoire EXE du projet. Pour plus de détails, consultez le paragraphe Utiliser un composant externe dans une application.
Exemple : Le composant "Code Postal" utilise un fichier de données "Cedex" (fichiers Cedex.fic et Cedex.ndx). Dans le projet de création du composant, ce fichier de données est présent dans le répertoire EXE du projet.
Pour que le composant soit livré et installé avec le fichier de données, il faut créer le fichier WDO dans le répertoire EXE du projet de création du composant. Ce fichier doit contenir les lignes suivantes :
.\CEDEX.Fic
.\CEDEX.NDX
Diffusion d'un composant avec WDO
Pour diffuser un composant utilisant un fichier WDO :
  • Si vous n'utilisez pas de procédures d'installation pour le composant, il est nécessaire de fournir :
    • le fichier WDK,
    • le fichier WDI,
    • le fichier WDO,
    • tous les fichiers nécessaires référencés dans le fichier WDO.
  • Si vous utilisez une procédure d'installation pour le composant, le fichier WDO sera automatiquement créé lors de la création de la procédure d'installation du composant.
    Il suffit pour cela dans l'assistant de :
    1. Demander la modification des fichiers à installer (option "Modifier la liste des fichiers à installer" dans les "modules additionnels").
    2. Sélectionner les fichiers supplémentaires à installer.
    Le fichier WDO sera automatiquement créé et installé avec le composant.
Chapitre précédentSommaireChapitre suivant
Version minimum requise
  • Version 9
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire