PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

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
Profitez des 180 nouveautés communes de la version 23
La quasi totalité des nouveautés que vous venez de découvrir dans les pages précédentes est disponible dans WINDEV 23.
En plus de cette liste déjà impressionnante de nouveautés, WINDEV 23 propose également les nouveautés détaillées dans ce chapitre.
Cette version 23 de WINDEV est vraiment très riche !
Nouveau champ : Disposition
Le champ conteneur Disposition disponible en version 23 permet de gérer automatiquement (sans programmation) la re-disposition automatique des champs dans une fenêtre dont le contenu est modifié par programmation : champ passé en invisible en particulier.
Ce champ vous sera immédiatement indispensable.
Voir nouveautés 001 à 006.
Nouveau champ : Lecteur PDF (reader)
Le nouveau champ Lecteur PDF apporte un grand confort à vos utilisateurs finaux et soulage votre support client : la visualisation d'un document PDF est maintenant effectuée directement dans l'application, sans recours à un outil tiers, qui pouvait varier en fonction de chaque utilisateur final !
Il n'y a aucun logiciel supplémentaire à installer.
Une normalisation vraiment utile.
Voir nouveautés 011 à 014.
Nouveau champ : Editeur d'images
Le nouveau champ Editeur d'images permet à vos utilisateurs finaux de modifier eux-mêmes leurs images et photos et de les sauver directement depuis votre application.
Il n'y a aucun logiciel supplémentaire à installer.
Voir nouveautés 007 à 010.
Champs Tableur et Traitement de texte
Grâce au champ Tableur (23 évolutions !) et au champ Traitement de Texte (7 évolutions), vous offrez à vos utilisateurs finaux les outils bureautiques nécessaires à leurs opérations courantes.
Inutile de quitter votre application pour écrire ou modifier un courrier, un mail ou effectuer une simulation.
Il n'y a aucun logiciel supplémentaire à installer.
Voir nouveautés 015 à 049.
Champs Planning et Agenda : 8 nouveautés très utiles à l'expérience utilisateur
Le champ Planning (et Agenda) est très utilisé dans les applications de gestion.
En version 23, le champ Planning s'améliore encore. 8 nouveautés (voir nouveautés 058 à 065) permettent de créer des plannings encore plus intuitifs et plus agréables.
Vos plannings seront automatiquement plus beaux en version 23.
Le champ Planning évolue lui aussi
Le champ Planning évolue lui aussi
Champ Table : 5 nouveautés
Le champ Table est incontournable dans les applications écrites avec WINDEV.
En version 23, il bénéficie de 5 nouveautés puissantes : visualisation des enregistrements liés, rafraîchissement automatique de table, marges personnalisées...
(voir nouveautés 050 à 055)
Les tables sont très utilisées dans les applications WINDEV
Les tables sont très utilisées dans les applications WINDEV
Champ Graphe
Les beaux graphes sont toujours appréciés des utilisateurs finaux.
Le nouveau type de graphe "nuage de points 3D" vient s'ajouter à la liste déjà longue des modèles disponibles.
De nombreuses nouveautés sont également disponibles sur les autres types de graphes, en particulier un nouveau menu contextuel nettement amélioré (look et comportement) pour vos utilisateurs finaux.
Voir nouveautés 071 à 080.
Toujours plus de possibilités
Toujours plus de possibilités
Table fichier : rafraîchissement zéro programmation
En version 23, il est possible d'indiquer qu'une table fichier (remplie automatiquement par binding) se rafraîchit (se met à jour) dès que le fichier de données est modifié.
Il n'y a rien à programmer.
Dans le monde entier, toute table affichant la donnée sera mise à jour instantanément ! (fonctionnalité HFSQL Client/Serveur).
Champ TCD : figer la présentation par programmation
Le TCD (Tableau Croisé Dynamique ou Cube) offre de nombreuses fonctionnalités de personnalisation de la présentation à l'utilisateur final.
Certains concepteurs de TCD ne souhaitent pas que les utilisateurs finaux modifient la présentation qu'ils ont prévue.
En version 23, il devient possible de ne plus autoriser de dérouler ou d'enrouler des niveaux.
Il est également possible d'interdire toute modification des colonnes et des lignes (pas de suppression possible pour l'utilisateur final)
Champ Combo : recherche
En version 23, l'utilisateur final peut effectuer des recherches dans le champ Combo : utile dans les grandes combos.
Champ Combo sans saisie : texte alternatif
En version 23, il devient possible d'afficher un texte alternatif tant que l'utilisateur final n'a pas choisi d'option.
Par exemple, "Sélectionnez une option !".
Champ Zone répétée : recherche
En version 23, on peut également effectuer des recherches dans un champ Zone Répétée.
La recherche est possible en standard
La recherche est possible en standard

Champ HTML : agrandissement automatique selon le contenu
En version 23, la hauteur du champ HTML s'adapte automatiquement en fonction du contenu.
En plaçant le champ HTML dans un nouveau champ Disposition, les éventuels champs situés autour du champ HTML se déplacent automatiquement.
Voir nouveautés 001 à 006.
Champ HTML : nouvelle fonction ExécuteJS
La nouvelle fonction WLangage ExécuteJS permet d'exécuter le code Javascript contenu dans la page qui est affichée dans un champ HTML.
Ce code Javascript va s'exécuter comme sous un navigateur.
Par exemple, le code va dessiner.
Champ Libellé : agrandissement automatique selon le contenu
En version 23, de la même manière que pour le champ HTML, la taille du champ Libellé (multilignes) s'adapte automatiquement en fonction du contenu (hauteur et/ou largeur).
En plaçant le champ Libellé dans un nouveau champ Disposition, les éventuels champs situés autour du champ Libellé se déplacent automatiquement.
Voir nouveautés 001 à 006.
Cadre de focus personnalisable pour tous les champs
Lorsqu'un champ prend le focus, un cadre système (des pointillés) est affiché sur le champ.
En version 23, ce cadre est paramétrable : épaisseur, couleur, type de trait, transparence, ...
2 nouveaux gabarits
Un gabarit définit la charte graphique d'une application.
L'aspect des interfaces proposées dans les applications suit souvent les modes.
Il est donc important de bénéficier de nouveaux gabarits pour ses applications.
Notez également que la revue trimestrielle LST (Lettre du Support Technique, accompagnée de ses DVD) propose également chaque trimestre de nouveaux gabarits.
Gestion des plans
En version 23, la gestion des plans est énormément facilitée par leur nommage possible et par la présentation de l'ensemble des plans d'une fenêtre dans l'environnement.
Voir nouveautés 083 et 084.
Taille par défaut de création des champs
La création des champs (glisser/déposer) en version 23 évolue pour mieux matérialiser la taille et l'emplacement du champ dès sa création.
Astuce : la combinaison de touches Ctrl Z permet de revenir à la taille sans adaptation.
Voir nouveauté 085.
Palette de couleurs
Un jeu de couleurs prédéfinies, harmonisées avec le gabarit en cours, est proposé par le sélecteur de couleurs de l'éditeur.
Voir nouveauté 089.
Evénement de changement d'agencement
Le concept d'agencement permet de créer une fenêtre unique qui se comportera différemment selon la taille et l'orientation de la fenêtre.
En version 23, un nouvel événement de programmation apparaît : le code de "Changement d'agencement".
Lorsque l'agencement est modifié, cet événement est appelé.
Cela permet de programmer des comportements très spécifiques.
FAA : recherche sur Internet
Dans une table ou dans un champ, lorsqu'un mot est sélectionné, le menu contextuel permet d'effectuer directement une recherche sur Internet.
Le navigateur par défaut est lancé avec le ou les termes sélectionnés copiés dans le champ de recherche du navigateur.
Tout mot ou ensemble de mots sélectionné peut être recherché sur Internet d'un clic
Tout mot ou ensemble de mots sélectionné peut être recherché sur Internet d'un clic
FAA : recherche sur Combo et Zone répétée
Les utilisateurs finaux raffolent des possibilités de "recherche" qui leur sont offertes dans les applications.
En version 23, ils seront comblés par les nouvelles possibilités de recherche dans les Zones Répétées et dans les Combos.
FAA : nombreuses nouvelles FAA sur le champ Tableur
La champ Tableur a énormément évolué en version 23.
Parmi les évolutions, de nombreuses FAA ont fait leur apparition.
Voir toutes ces FAA en nouveautés 015 à 037.
FAA : copie d'écran intelligente des états
Il est possible de demander une copie d'écran d'état "intelligente" : seul l'état est capturé, tout ce qui est autour est ignoré.
Erreur de norme de programmation
Une nouvelle catégorie d'erreurs apparaît en version 23.
Ce type d'erreur n'empêche pas l'exécution du code.
C'est un warning alors ? Non ! Car ces erreurs concernent des règles définies par vous-même (et parce que personne ne lit les warnings).
Ces erreurs de norme de programmation peuvent concerner :
  • ne pas autoriser les accès HFSQL dans une fenêtre (pour un découpage MV ou MVP par exemple),
  • ne pas autoriser la syntaxe objet dans le projet,
  • une rubrique ou une procédure zombie est utilisée,
  • ...
Cela permet un code plus propre ou facilite le "nettoyage" d'un ancien code.
Pour plus de détails, consultez Erreurs de norme de programmation.
Isolation des accès à la base de données
Dans certaines architectures de programmation, les accès à la base de données ne doivent pas être effectués dans l'interface.
Ces accès à la base de données doivent être effectués dans du code métier en procédures ou dans des classes.
En version 23, une option (au niveau du projet ou au niveau d'une fenêtre) permet de demander à générer une erreur de norme d'IHM si un accès à une base de données est effectué depuis le code de la fenêtre.
Pour plus de détails, consultez Erreurs de norme de programmation.
Code mort de la fenêtre uniquement
En version 23, il devient possible de demander la recherche du "code mort" uniquement dans une fenêtre donnée.
Cela facilite le refactoring ou le "nettoyage" d'une fenêtre en particulier.
La liste affichée est plus claire.
Rappel : l'audit statique affiche l'ensemble du code mort du projet, ainsi que de nombreuses autres informations très pertinentes. Lancez régulièrement l'audit de vos projets.
Evolutions pour MVP
Les nouvelles fonctions DemandeMiseAJourIHMParent et ExécuteMiseAJourIHMParent pour les superchamps, modèles de champs ou fenêtres internes permettent de déclencher le rafraîchissement du champ Conteneur.
Consommation de Webservices SOAP et REST
Un rappel : WINDEV permet de consommer facilement des Webservices de technologie REST et SOAP.
En version 23, la norme MTOM/XOP est supportée.
Voir nouveauté 150.
GDS in the cloud : "GDS Drive"
Vous le savez, le GDS peut être hébergé dans le cloud en quelques clics, pour un coût dérisoire grâce à GDS Drive (www.gdsdrive.fr). Le service est disponible, et évolue en permanence.
Voir nouveauté 081.
GDS : nombreuses améliorations
En version 23, le GDS propose de nombreuses améliorations très utiles : création de branche à partir d'un répertoire local, affichage des branches dans la fenêtre de bienvenue, modification des libellés de réintégration, interface de résolution des conflits, ...
Découvrez toutes ces nouveautés 105 à 112.
Trousseau de connexions
Lorsque plusieurs serveurs de télémétrie sont utilisés, les paramètres de connexion à chaque serveur sont maintenant proposés. Il est inutile de les re-saisir.
Une petite nouveauté utile au quotidien.
Graphe de répartition
Dans les graphes de répartition de télémétrie personnalisée, de nouvelles informations sont affichées : total, pourcentage, ...
Retours par email sécurisé
Les dysfonctionnements et suggestions émis par l'utilisateur final peuvent être envoyés par email.
En version 23, l'envoi de ces emails peut être sécurisé par l'utilisation d'un serveur SMTP sécurisé.
Les informations ne sont plus visibles sur le réseau
Support des plans de fenêtre
L'éditeur d'aide intégré à WINDEV 23 supporte maintenant les plans de fenêtres : l'éditeur d'aide génère les pages d'aide pour chacun des plans.
Installation silencieuse : aucune intervention de l'utilisateur final
En version 23, les installations peuvent s'effectuer de façon "silencieuse", c'est-à-dire sans demander d'intervention de la part de l'utilisateur.
Il suffit de lancer la procédure d'installation, et celle-ci va à son terme sans interface.
Pour plus de détails, consultez :
Mises à jour automatiques silencieuses
Lorsqu'une installation "Réseau" a été effectuée en mode silencieux, les mises à jour automatiques qui seront ensuite proposées s'effectueront par défaut en mode silencieux.
L'utilisateur n'aura aucun choix à effectuer, l'application se mettra automatiquement à jour à son lancement, et se lancera dès l'installation terminée.
Rappel : une installation "Réseau" s'effectue en 2 temps :
  1. La version à installer est installée sur un (ou des) serveurs de l'entreprise (ou sur un serveur dans le cloud).
  2. Les postes des utilisateurs finaux sont à jour depuis ce serveur.
Pour plus de détails, consultez :
Installation sans UAC (sans message bloquant) facile
Les systèmes Windows récents protègent par défaut les installations en ouvrant une fenêtre dite "d'UAC" qui exige un mot de passe (qui de plus doit être un mot de passe "administrateur" au sens Windows).
WINDEV permettait déjà de s'affranchir de cette protection.
En version 23, cette possibilité se met en place de manière beaucoup plus simple.
Java : Tâches parallèles
Le type TâcheParallèle est disponible sous Java en version 23.
L'écriture d'algorithmes utilisant des threads est simplifiée.
Il devient possible de faire des tâches de continuation.
Java : Type numérique
Le type Numérique est supporté par Java.
Ce type permet des calculs précis.
Le nombre de chiffres significatifs avant et après la virgule est paramétrable (38 chiffres maxi).
Java : Type entier signé sur 1 et 2 octets
Les types Entier sur 1 ou 2 octets sont disponibles.
C'est utile lors du dialogue avec des modules tiers qui exigent ce type de formatage.
Java : Fonctions statistiques et financières
La version 23 de WINDEV propose les fonctions de calculs statistiques et des fonctions financières en Java.
Java : Copie de contexte HFSQL allégée
La copie de contexte allégée est disponible en Java.
Cela améliore la gestion des ressources lors de l'utilisation des tâches parallèles.
52 nouvelles fonctions WLangage pour Java
Le WLangage s'enrichit de 52 nouvelles fonctions pour Java.
MAC
Nouvelles fonctionnalités MacOS
Le WLangage s'enrichit de 52 nouvelles fonctions pour Mac.
.Net : Renvoi d'objet WLangage ou objet WLangage en paramètre
En version 23, la génération d'assemblage .Net évolue et propose la possibilité de renvoyer des objets WLangage dans les méthodes exposées ou de prendre des objets WLangage en paramètre de ces méthodes.
Utilisation d'assemblage .Net : saisie de code C# directement dans l'éditeur de code
En version 23, la saisie directe de code C# dans l'éditeur de code de WINDEV permet d'utiliser toutes les syntaxes exposées par un assemblage.
Toutes les syntaxes de C# sont supportées.
Linux : Fonction proxy
La fonction WLangage Proxy est disponible sous Linux.
Linux : Big Data Memcached
L'accès natif à la base de données Big Data Memcached, spécialisée dans les caches de gros volume, est également disponible sous Linux.
Nouveautés communes
En version 23, le WLangage sous WINDEV s'enrichit substantiellement. Il profite des nouveautés communes et de nombreuses évolutions.
Voir nouveautés 116 à 148.
Extraction de fichier depuis votre WDL
En version 23, la fonction fExtraitRessource permet d'extraire un fichier qui est inclus dans une WDL, la bibliothèque qui contient toutes les ressources d'un exécutable.
Cela permet de livrer des fichiers (fichiers de données, de paramètres, images, ...) sans avoir à livrer de fichiers séparés !
Par mesure de sécurité, seul le code présent dans une WDL peut extraire des fichiers présents dans la WDL. Un code provenant de l'extérieur sera ignoré.
Evolutions de la POO
En version 23, la POO évolue : interfaces, visualisation des membres abstraits, méthodes zombies, ...
54 nouvelles constantes
54 nouvelles constantes sont disponibles en WLangage en version 23.
6 nouveaux types
6 nouveaux types de variables sont disponibles en WLangage :
8 nouvelles propriétés
Le WLangage s'enrichit de 8 nouvelles propriétés pour WINDEV.
AncrageAuContenuIndique si la taille d'un champ change pour s'adapter à son contenu
CheminFichierIndique le nom du fichier associé à un champ Tableur
DispositionIndique la disposition des cellules dans un champ Disposition
EllipsePermet de connaître et modifier le mode de gestion de l'ellipse dans un champ Libellé d'un état
EntêteVisiblePermet de gérer l'affichage des entêtes de lignes et colonnes dans un état basé sur un champ Tableur
InaltérablePermet de gérer l'inaltérabilité du fichier de données (un fichier inaltérable ne peut pas être modifié : seuls les ajouts sont possibles)
ModeAffichageChange le mode d'affichage du champ Traitement de texte
QuadrillageVisibleIndique si le quadrillage est visible ou non dans un champ Tableur.
Syntaxes objet
Le WLangage offre une nouvelle forme de syntaxe très intéressante : la saisie est beaucoup plus simple. Par exemple :
NomDuChamp.Fonction
Les champs concernés par cette syntaxe sont :
  • Champ Agenda
  • Champ Arbre
  • Champ Bandeau défilant
  • Champ Barre d'outils
  • Champ Calendrier
  • Champ Caméra (vidéo)
  • Champ Captcha
  • Champ Carte
  • Champ Cellule
  • Champ Chemin de navigation
  • Champ combo
  • Champ de saisie
  • Champ Diagramme de Gantt
  • Champ Editeur d'images
  • Champ Graphe
  • Champ HTML
  • Champ Image
  • Champ Interrupteur
  • Champ Liste
  • Champ Multimédia
  • Champ Onglet
  • Champ Organigramme
  • Champ Planning
  • Champ popup
  • Champ Note
  • Champ Ruban
  • Champ Sélecteur
  • Champ Table
  • Champ Table hiérarchique
  • Champ Tableau croisé dynamique
  • Champ Tableau de bord
  • Champ Tableur
  • Champ TimeLine
  • Champ Traitement de texte
  • Champ Treemap
  • Champ Xaml
  • Champ Zone multiligne
  • Champ Zone répétée
  • Menu
  • Type File
  • Type Liste
  • Type Pile
  • Type Tableau
  • Type Tableau associatif
  • Type Variant
56 nouvelles fonctions WLangage sous WINDEV
Le WLangage s'enrichit de 56 nouvelles fonctions pour WINDEV :
DateHeureVersEpochConvertit une date et une heure au format Epoch.
dCouleurDominanteImageRécupère la couleur dominante de l'image passée
EpochVersDateHeureConvertit une date et une heure au format Epoch en une date et une heure.
ExécuteJSExécute du code Javascript avec ou sans valeur de retour.
fExtraitRessourceExtrait une ressource de l'application dans un emplacement physique de l'appareil.
fListeRessourceListe les ressources intégrées à l'application.
grCouleurBarreInitialise la couleur d'une barre spécifique sur un graphe de type Histogramme ou Histogramme empilé.
grCouleurPointConfigure la couleur d'un point particulier sur un graphe de type courbe, nuage de points ou bulle.
grHistoAgrégationDéfinit l'algorithme d'agrégation des données d'un graphe de type histogramme (groupé ou empilé).
grNiveauTemporelMasqueFixe le masque d'affichage d'un niveau de l'échelle temporelle d'un graphe.
grNiveauTemporelMaxFixe le nombre de niveaux à afficher dans l'échelle temporelle d'un graphe ainsi que le niveau maximum.
grNuage3DAjouteDonnéeAjoute une donnée dans un graphe de type Nuage 3D.
grNuage3DCouleurAltitudeIndique les couleurs des différents niveaux d'altitude d'une série d'un graphe de type nuage 3D.
grNuage3DProjectionIndique s'il est possible de projeter les points d'une série d'un graphe Nuage 3D sur un plan donné.
grNuage3DReliePointIndique s'il faut relier (à l'aide de lignes) les points d'un graphe de type Nuage 3D.
grNuage3DSupprimeCouleurAltitudeSupprime les couleurs d'altitude spécifiées par la fonction grNuage3DCouleurAltitude.
grTaillePointParamètre la taille d'un point particulier sur un graphe de type Courbe ou Nuage de points.
HasardCryptoBuffer / HasardCryptoEntierRenvoie un nombre aléatoire utilisable pour effectuer de la cryptographie.
HVérifieInaltéréVérifie qu'un ou tous les enregistrements d'une table inaltérable n'ont pas été modifiés (par exemple avec un éditeur hexadécimal).
HVérifieMémoVérifie que les mémos du fichier sont intègres
MemcachedAffecteModifie un couple clé/valeur dans le cache Memcached.
MemcachedAffecteGroupeCléModifie un couple clé/valeur dans le cache Memcached sur un groupe de serveurs.
MemcachedAjouteAjoute un nouveau couple clé/valeur dans le cache Memcached
MemcachedAjouteGroupeCléAjoute un nouveau couple clé/valeur dans le cache Memcached sur un groupe de serveurs.
MemcachedAjoutePréfixeAjoute la valeur au début de la valeur existante dans le cache pour la clé donnée.
MemcachedAjoutePréfixeGroupeCléAjoute la valeur au début de la valeur existante dans le cache pour la clé donnée sur un groupe de serveurs.
MemcachedAjouteSuffixeAjoute la valeur à la fin de la valeur existante dans le cache pour la clé donnée.
MemcachedAjouteSuffixeGroupeCléAjoute la valeur à la fin de la valeur existante dans le cache pour la clé donnée sur un groupe de serveurs.
MemcachedCASModifie la valeur d'une clé si elle n'a pas été modifiée.
MemcachedCASGroupeCléModifie la valeur d'une clé si elle n'a pas été modifiée sur un groupe de serveurs.
MemcachedDécrémenteDécrémente la valeur associée à la clé.
MemcachedDécrémenteGroupeCléDécrémente la valeur associée à la clé sur un groupe de serveurs.
MemcachedIncrémenteIncrémente la valeur associée à la clé.
MemcachedIncrémenteGroupeCléIncrémente la valeur associée à la clé sur un groupe de serveurs.
MemcachedModifieModifie un couple clé/valeur dans le cache Memcached.
MemcachedModifieGroupeCléModifie un couple clé/valeur dans le cache Memcached sur un groupe de serveurs.
MemcachedRécupèreRécupère des valeurs de clé.
MemcachedRécupèreGroupeCléRécupère des valeurs de clé sur un groupe de serveurs.
MemcachedSupprimeSupprime une clé.
MemcachedSupprimeGroupeCléSupprime une clé sur un groupe de serveurs.
PicCréeCrée une image dans le champ Editeur d'images.
PicFermeFerme l'image contenue dans un champ Editeur d'images.
PicOuvreOuvre une image dans le champ Editeur d'images.
PicSauveSauvegarde l'image affichée dans le champ Editeur d'images.
TableurAjouteImageAjoute une image dans un champ Tableur.
TableurRestaurePositionEtSélectionRestaure la position des ascenseurs et la sélection dans un champ Tableur.
TableurSauvePositionEtSélectionSauve la position des ascenseurs et la sélection dans un champ Tableur.
TableurTrieSélectionTrie la sélection de la feuille en cours d'un champ Tableur.
TestVérifieDifférenceVérifie si les expressions spécifiées sont différentes en programmation défensive et en mode test automatique.
TestVérifieEgalitéVérifie si les expressions sont égales en programmation défensive et en mode test automatique.
TestVérifieFauxVérifie si une expression est fausse en programmation défensive et en mode test automatique.
TestVérifieNonNullVérifie si l'expression n'est pas Null en programmation défensive et en mode test automatique.
TestVérifieNullVérifie si l'expression est Null en programmation défensive et en mode test automatique.
TestVérifieVraiVérifie si une expression vaut Vrai en programmation défensive et en mode test automatique.
XMLOuvreLecteurCrée un lecteur permettant de lire un document XML sans le charger en mémoire.
ZoneRépétéeSupprimeSelectSupprime la ou les lignes sélectionnées dans un champ Zone répétée fichier ou mémoire.
Version minimum requise
  • Version 22
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire