DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Composant / Composant Externe
  • Présentation
  • Quelques cas d'utilisation d'un composant externe
  • Travail en équipe
  • Les projets volumineux
  • Les bases de données accédées par plusieurs projets
  • Les traitements utilisés dans plusieurs projets
  • La possibilité de diffuser une fonctionnalité ou un ensemble de fonctionnalités
  • Composant externe multiproduits
  • Caractéristiques d'un composant externe
  • De quoi est constitué le composant externe ?
  • Que contient un composant externe ?
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Un composant externe est un ensemble d'éléments WINDEV, WEBDEV ou WINDEV Mobile : fenêtres, pages, états, analyse, etc. Cet ensemble d'éléments effectue une fonctionnalité précise. Par exemple, un composant peut correspondre à une des fonctionnalités suivantes :
  • Envoi de fax,
  • Envoi d'emails,
  • ...
Un composant externe peut être redistribué à d'autres développeurs WINDEV, WEBDEV ou WINDEV Mobile (gratuitement ou non). Ces développeurs pourront ainsi intégrer simplement la fonctionnalité proposée par le composant dans leur application (ou leur site). Le composant sera donc intégré à l'application (ou site), et distribué avec l'application (ou site).
Dans le cas d'applications multilingues, un composant externe redistribué peut être traduit à l'aide de WDMSG à partir du projet utilisant le composant.
Remarque : Pour optimiser l'organisation de vos projets, il est possible d'utiliser des composants internes. Les composants internes permettent de regrouper vos ressources selon des thèmes spécifiques.
Quelques cas d'utilisation d'un composant externe
Pour partager du "code", il y a cinq méthodes principales avec WINDEV :
  1. Les collections de procédures.
  2. Les classes.
  3. Les composants externes.
  4. Les composants internes.
Voici plusieurs cas dans lesquels les composants externes peuvent être intéressants.

Travail en équipe

Un développeur crée et maintient un composant externe qu'il met à la disposition des autres développeurs. Il ne risque pas d'y avoir des modifications faites "par erreur" !

Les projets volumineux

Les composants externes permettent d'avoir plusieurs projets distincts de tailles réduites et d'avoir un projet central dans lequel les éléments des autres projets sont visibles. L'utilisabilité des composants externes est bien meilleure que les bibliothèques (fichiers WDL).
Rappel : Pour optimiser l'organisation de vos projets, il est possible d'utiliser des composants internes.

Les bases de données accédées par plusieurs projets

Lorsqu'une même base de données est accédée par plusieurs projets, il est fréquent d'avoir des incohérences dans la base de données dues à des codes sources modifiés ou trop vieux. En regroupant les opérations d'accès (en écriture au moins) à la base de données dans un composant externe, cela permet d'avoir un seul code source à vérifier/maintenir et donc de limiter le risque d'incohérences dans la base de données.
De plus, l'utilisation d'un composant évite de recompiler l'application lors d'une modification de l'analyse.

Les traitements utilisés dans plusieurs projets

Il est fréquent d'avoir des traitements plus ou moins complexes utilisés dans plusieurs projets. Il est possible de réutiliser ces traitements par l'intermédiaire de "collections de procédures" ou de "classes". Dans ce cas, il existe un risque de modifications non reportées entre les différents projets, qui rendent ensuite ces éléments incompatibles entre eux.
L'utilisation des composants externes permet d'éviter des modifications intempestives et permet de conserver des projets compatibles auxquels il est simple d'apporter une modification commune.
De plus avec l'utilisation possible du mot-clé PRIVE, vous pourrez assurer la confidentialité de votre code à tous les niveaux du composant externe. Lors de la réutilisation de votre composant externe dans un autre projet WINDEV, l'appel d'une procédure PRIVEE ne sera pas permis mais la documentation concernant l'utilisation de la procédure sera affichée !

La possibilité de diffuser une fonctionnalité ou un ensemble de fonctionnalités

Les composants externes permettent de réaliser une fonctionnalité ou un ensemble de fonctionnalités. D'autres développeurs pourront intégrer ces fonctionnalités dans leurs propres projets WINDEV. Les développeurs qui utilisent un composant externe peuvent voir les éléments du composant rendus visibles. Cependant il ne sera pas possible de voir ou de modifier le code source.
Vous pouvez diffuser gratuitement ou même commercialiser des composants externes !

Composant externe multiproduits

Un composant externe peut être prévu pour fonctionner dans :
  • une application WINDEV,
  • une application WEBDEV,
  • une application WINDEV Mobile,
  • ou dans les trois types d'applications.
Dans ce dernier cas, WINDEV permet :
  • d'intégrer les éléments provenant des différents produits (WEBDEV et/ou WINDEV Mobile) dans un même composant externe.
  • d'indiquer pour chaque plateforme d'exécution le code WLangage correspondant (par exemple, l'affichage d'une fenêtre se fait par la fonction Ouvre en WINDEV et l'affichage d'une page se fait par la fonction PageAffiche en WEBDEV).
Caractéristiques d'un composant externe
Lors de la création du composant externe, l'auteur spécifie :
  • les éléments du composant visibles ou non par l'utilisateur du composant. Les éléments visibles seront accessibles via le volet "Explorateur de 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, etc.). Une documentation succincte (à compléter) est automatiquement générée et associée au composant.
Attention : Un composant n'est pas un superchamp. En effet, le superchamp ne peut être constitué que de champs alors que le composant est constitué de fenêtres, pages, états, etc. Dans la plupart des cas, le composant attend des informations (paramètres), les traite, et renvoie un résultat à l'application qui l'utilise. De plus, contrairement au superchamp, un composant a une installation spécifique.
WINDEV Remarque : Des composants exemples sont livrés en standard avec WINDEV. Ces composants sont accessibles depuis le volet "Projet" de l'éditeur : sous le volet "Projet", dans le groupe "Projet", déroulez "Importer" et sélectionnez l'option "Un composant Externe .. Composant utilitaire ou exemple". Les projets correspondants peuvent être ouverts depuis la page d'accueil de WINDEV (Ctrl + <).

De quoi est constitué le composant externe ?

Un composant externe peut être :
  • défini et généré à partir d'un projet WINDEV, WEBDEV ou WINDEV Mobile existant. Une configuration de projet de type "Composant" permettra de sélectionner les éléments du projet existant à intégrer dans le composant.
  • créé à partir d'un projet de type "Composant externe". Ce projet est constitué par défaut d'une plateforme de type "Composant externe" qui contiendra les éléments nécessaires à la création et à la génération du composant.
Ce composant externe peut être ensuite intégré dans d'autres projets WINDEV, WEBDEV, WINDEV Mobile.
Tous les éléments du composant sont totalement indépendants du projet dans lequel le composant est intégré. Le composant externe peut avoir sa propre analyse, ses fenêtres, ses états, ses fichiers, etc.
Lors de la génération du composant externe, il suffit d'indiquer si ces éléments seront accessibles ou non par le projet intégrant ce composant. Les éléments non accessibles ne seront ni visibles ni manipulables par le projet qui importera ce composant.
Le composant externe est constitué de plusieurs fichiers :
<Nom du composant>.WDKFichier composant. Contient tous les éléments du composant externe.
Ce fichier est nécessaire à l'intégration du composant externe dans un projet.
Ce fichier doit également être livré dans la version cliente de l'application utilisant le composant externe.
<Nom du composant>.WDIDescription du composant (uniquement pour le développement d'applications).
Ce fichier est nécessaire à l'intégration du composant externe dans un projet.
Ce fichier ne doit pas être livré dans la version cliente de l'application utilisant le composant externe.
<Nom du composant>.WDZFichier des dépendances du WDK (uniquement pour les composants WEBDEV et WINDEV Mobile)
Fichier contenant les dépendances du fichier WDK. Ces informations sont extraites dans le projet dans lequel le composant est intégré.
  • Dans le cas d'un composant WEBDEV, ce fichier contient par exemple les pages WEBDEV générées, les images, etc.
  • Dans le cas d'un composant Mobile (iOS ou Android), ce fichier contient par exemple les fichiers de génération Android, etc.
<Nom du composant>.WDOFichier optionnel
Fichier au format texte contenant la liste des différents éléments livrés en plus avec le composant externe (fichiers de données, fichiers .INI, etc.). Ce fichier peut être créé manuellement ou généré automatiquement à partir des éléments spécifiés dans le dossier "Autres" du volet "Explorateur de projet". Pour plus de détails, consultez Le fichier WDO.
Que contient un composant externe ?
Un composant externe contient :
  • les différents éléments à redistribuer (fenêtres, états, etc.). Ces éléments peuvent être accessibles ou non lors de l'importation du composant dans un projet WINDEV, WEBDEV ou WINDEV Mobile. Ces éléments ne peuvent pas être modifiés à partir du projet utilisant le composant.
  • 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 externe utilise une analyse et des fichiers de données, les fonctions HFSQL manipuleront ces éléments dans un contexte HFSQL indépendant. Ces paramètres peuvent être modifiés dans les options avancées du composant. Pour plus de détails, consultez Options avancées d'un composant externe.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 28/08/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale