Visual Expert pour PowerBuilder

Trouver les références (Analyse d’impact)

Evitez les régressions : Si vous devez modifier un élément dans votre application (objet, méthode, variable, table ou colonne utilisée...), Visual Expert liste tous les composant liés à cet élément. Vous pouvez évaluer les conséquences de cette modification et éviter les effets de bord négatifs.

Vous pouvez, par exemple, demander toutes les datawindows ou scripts utilisés par une colonne de la base de données.

Documentez votre code

Avec Visual Expert, générez une documentation technique complète, personnalisée et actualisée de votre code PowerBuilder. Transférez facilement la connaissance de votre application.

Documentez les références et les appels dans votre code. Naviguez facilement entre ces références avec des liens hypertextes dans la documentation. 

Personnalisez votre documentation

  • Sélectionnez les détails que vous voulez afficher. Par exemple, pour une fenêtre, vous pouvez montrer ou cacher des contrôles, le code des fonctions et des événements, les attributs, les éléments référencés par la fenêtre, le résultat de l'analyse d'impact, etc. 
  • Adaptez le style de la documentation à la charte graphique de votre entreprise.

Planifiez votre documentation

  • Génération automatique tous les jours/semaines/mois ou à une heure donnée.
  • Libérez les ressources de votre PC en la programmant à un moment ou vous n'utilisez pas votre machine. A jour et disponible dès que vous en avez besoin.
  • Vous pouvez également générer la documentation depuis un serveur vers un emplacement partagé. Elle sera disponible pour chaque membre de l'équipe à tout moment.

Voir un exemple de documentation.

Explorer et comprendre un code complexe

Lors de la maintenance d'applications PowerBuilder complexes ou volumineuses, vous pouvez avoir besoin de comprendre un code qui ne vous est pas familier. Visual Expert est l'outil idéal dans ce genre de situation.

Le treeview de Visual Expert permet d'explorer la structure de l'application, ses composants (PBL, UserObjects, fenêtres, DataWindows, menus ...) et leurs dépendances.

Naviguez dans votre code comme jamais auparavant : Visual Expert ajoute un lien hypertexte sur chaque référence trouvée dans votre code permettant d'accéder à l'élément référencé en un clic. Des infobulles fournissent également plus d'informations sur l'élément sélectionné.

Explorez facilement la structure du code et des composants.

  • Visualisez la structure d'un objet complexe dans une arborescence. Par exemple, vous pouvez voir les contrôles embarqués, les méthodes et les variables de fenêtres complexes.
  • Affichez les appels entre les objets ou méthodes ; visualisez une cascade d'appels successifs.
  • Vérifiez les dépendances entre PBLs et découvrez quels objets d'une PBL appellent des objets situés dans d'autres PBLs.
  • Visualisez les références entre objets ou méthodes, ainsi que les lignes de code ou chaque élément est référencé.
  • Passez en revue les dépendances entre le code PB et la base de données (tables, des colonnes ou la procédure stockée utilisée).
  • Listez les fonctions externes déclarées dans PB et la DLL utilisée par l'application.

Liens d'héritage

Les applications PowerBuilder reposent souvent sur des frameworks complexes et des bibliothèques d'ancêtres.
Comprendre les liens d'héritage est la clé pour maîtriser le fonctionnement de votre application ou maintenir vos bibliothèques d'ancêtres.

Avec Visual Expert :

  • Explorez la hiérarchie d'héritage de fenêtres, UserObjects et menus.
  • Affichez la hiérarchie d'héritage au niveau de la fonction et de l'évenement.
  • Visualisez quelles méthodes sont simplement héritées ou étendues.
  • Trouver les événements et les fonctions surchargés d'un objet PB donné.

Recherche avancée

Avec de grands volumes de code, les recherches de chaînes de caractères retournent souvent trop de résultats, ce qui rend ces recherches fastidieuses et improductives. Visual Expert résout ce problème de la façon suivante :

  • Utilisation de critères multiples pour réduire le résultat de la recherche
    • Restriction de la recherche aux commentaires
    • Restriction de la recherche à un ou plusieurs types d'objets
    • Recherche du mot exact, ou commençant ou finissant par…
    • Recherche avec des expressions régulières
    • Respect de la casse
  • Recherche parmi pluiseurs targets PB en même temps
  • Recherche dans tous les fichiers texte (SQL, autre code source, shell scripts, ASCII...)
  • Analyse du résultat avec des fonctionnalités d'exploration avancées
  • Partage des résultats entre les membres de l'équipe (projet partagé ou export dans un document Excel ou HTML).

 

Fonctionnalités avancées Datawindow

Comme les DataWindows sont au centre des applications PowerBuilder, Visual Expert fournit des fonctionnalités spécifiques pour mieux les trouver et les maintenir :

  • Lister les datawindows en fonction de leur source de données (SQL, des procédures stockées, externe).
  • Trouver les datawindows référencées par une modification dynamique d'une propriété de "dataobject"
  • Voir les DW utilisées comme Dropdown Datawindows
  • Trouver les DW partageant le même buffer (Shared DW)
  • Trouver les Datawindows contenant des colonnes calculées dynamiquement avec des expressions
  • Pour une datawindow donnée, afficher le mapping colonnes de DW / colonnes de BDD
  • Etc.

Intégration avec PowerBuilder

  • Sélectionnez simplement une target PB et lancez l'analyse du code
  • Quand vous explorez votre code, vous pouvez trouver dans Visual Expert un objet que vous voulez modifier : vous pouvez basculer automatiquement vers l'IDE de PB pour les modifier.
  • Vous pouvez également sélectionner plusieurs éléments, par exemple après une analyse d'impact, et les pousser dans la Todolist PB. Vous pouvez alors les modifier dans PB en les ouvrant depuis la Todolist.

Revue de Code

Détection du code mort : Trouver et retirer le code mort améliore les performances de votre application et simplifie la maintenance. Visual Expert liste les éléments sans dépendance connue (héritage, référence, objet embarqué…). Ces éléments sont probablement inutilisés. La détection du code mort inclut les objets, fonctions, évenements, propriétés, paramètres ou variables.

Composants dupliqués : Si des objets d'un même type, portant le même nom, existent dans une cible donnée, PowerBuilder prendra uniquement en compte le premier et ignorera les suivants ; cela peut se entraîner un comportement anormal de l'application. Visual Expert peut scanner votre code pour trouver les composants dupliqués.

Métriques de code : Visual Expert peut produire des statistiques sur la taille et la volumétrie de votre code.

Méthodes vides : pendant la maintenance d' une application, certaines méthodes peuvent être temporairement commentées ou vidées de tout code source. Visual Expert peut localiser ces méthodes dans le cas où vous souhaiteriez les supprimer pour alléger votre code.

Travail d'équipe – Fonctionnalités Collaboratives

Les membres d'une équipe peuvent travailler ensembles sur une même application avec Visual Expert :

  • Visual Expert peut être exécuté sur un Serveur. Tous les membres de l'équipe ouvrent le même projet depuis leur poste.
  • Le code source est analysé côté serveur pour tous les utilisateurs.
  • Tous les membres de l'équipe peuvent explorer le code en même temps.
  • Pour partager le résultat (après une analyse d'impact par exemple), les membres de l'équipe peuvent partager une vue Visual Expert avec d'autres membres de l'équipe.
  • Les membres de l'équipe peuvent exporter et envoyer des vues Visual Expert en tant que fichier Excel ou HTML

Analysez plusieurs applications en même temps

Certains systèmes sont composés de plusieurs applications PB. Ces applications peuvent partager des ressources communes (tables, procédures stockées, dll, PB ancestor libraries…). Dans ce cas, il est judicieux d'analyser toutes les applications en même temps.

Visual Expert permet :

  • D'inclure plusieurs applications
  • De trouver les références à des ressources communes
  • De lancer des recherches sur plusieurs applications à la fois
  • De générer une documentation sur pluiseurs targets PB

Visual Expert supporte des très gros volumes de code, en particulier quand il est installé sur un serveur disposant de suffisamment de RAM et utilisant une version professional ou enterprise de SQL Server.

 

Essayez Visual Expert

Pourquoi Utiliser Visual Expert ?

Transfert de connaissance

Avec Visual Expert vous sauvegardez la connaissance de l'application dans un outil. Elle est disponible à tout moment, pour chaque dévelopeur et chef de projet.

Gestion du Changement

Visual Expert automatise les Analyse d'Impact pour éviter les régressions qui peuvent apparaître suite à une modification.

Réduction des coûts

Réduisez de 30 % vos efforts de développement avec Visual Expert.

Mise en œuvre rapide

Il ne suffit pas qu’un outil soit efficace, il faut aussi qu’il soit utilisé ! Moins d’une heure suffit pour l’installation et la prise en main de Visual Expert.

Visual Expert for PowerBuilder detailed features

Analyse d'impact

Références-croisées

  • Analyse d’impact détaillée
    Cette fonctionnalité listera tous les composants liés à un objet donné, méthode, variable, table, colonne… 
    Cette fonctionnalité peut être utilisée avant de modifier l’application : elle vous aidera à vérifier les conséquences d'une modifications sur les composants liés à l'objet modifié. 

    Afin de fournir un résultat complet, l’analyse d’impact inclut tous les types de dépendances: 

    Liens PowerBuilder-Bases de données : tout changement dans le schéma de la base de données peut affecter les composants PowerBuilder qui utilisent la table ou la colonne modifiée. Par exemple, une analyse d’impact sur une table vous donne toutes les DataWindows, les ordres SQL embarqués et les Procédures Stockées (1) appelant cette table. 
    Vous pouvez filtrer les références en fonction du type d’accès (Select, Insert, Update Delete)

    Relations d'héritage dans PowerBuilder : tout changement dans un objet PowerBuilder peut affecter ses descendants. Une analyse d’impact sur l’objet PB inclura donc tous ses descendants.

    Références au code PB : Une analyse d’impact sur un objet PB, une méthode ou une variable liste tous les objets PB et toutes les méthodes appelant cet objet. Des relations propres à PowerBuilder sont également supportées (par exemple, la référence entre une Colomne de DataWindow et une DropDownDatawindow).
    L’analyse d’Impact est également disponible pour les variables et les fonctions globales, ainsi que pour les propriétés et fonctions Système. Le résultat contient toutes les références à ces variables ou fonctions. 

    * Relations PB-Code de base de données : 
    Si votre application PowerBuilder appelle des Procédures Stockées, vous pouvez obtenir la liste de ces procédures: 
    - Vous pouvez lister toutes les procédures stockées appelées par chaque PBL de l’application. 
    - Vous pouvez lister toutes les procédures stockées appelées par chaque objet provenant d’une PBL donnée. 
    Une analyse d’impact peut être effectuée pour chaque Procédure Stockée référencée par le code PB . 
    Vous pouvez ainsi voir tous les objets et fonctions PowerBuilder appelant ces Procédures Stockées. 

    (1) Si votre application est également composée de Procédures Stockées (PL/SQL), Visual Expert analyse toutes les références aux tables et colonnes de ces procédures stockées. 
    Voir Visual Expert pour Oracle pour plus de détails.
  • Hiérarchie des Appelants
    Liste de toutes les méthodes successives appelant une fonction. Le résultat est affiché dans le treeview (par exemple: la fonction A est appelée par la fonction B, qui est elle-même appelée par la fonction C, etc…).
  • Hiérarchie des Appelés
    Liste de toutes les méthodes successives appelées par une fonction. Le résultat est affiché dans le treeview (par exemple: la fonction A est appelée par la fonction B, qui est elle-même appelée par la fonction C, etc...). Cette fonctionnalité permet de comprendre un processus complet de l’application. (Par exemple, quelles fonctions sont exécutées après que l’utilisateur ait déclenché un évènement spécifique).

Exploration du Code

  • Composants PowerBuilder
    Après l’analyse de votre projet, Visual Expert peut lister dans un treeview : 
    * Les PBL contenues dans l’application et les composants de chaque PBL
    * Les objets PowerBuilder - par type – contenuent dans l’application (toutes les DW du projet par exemple)
    * Les contrôles, fonctions, événements, attributs, variables, paramètres définis dans un objet PowerBuilder.

    En explorant le code dans le treeview, vous pouvez aussi afficher : 
    * L'objet qui contient le composant sélectionné (par exemple, la PBL contenant un objet, le contrôle contenant un événement ou l’événement contenant une variable locale,…)
    * La hiérarchie des contenants (la liste de tous les contenants successifs d’un composant). Par exemple, la hiérarchie de contenant d'un événement peut afficher le Contrôle/Objet/PBL/Projet où l’événement a été défini

    Vous pouvez afficher dans le treeview des informations concernant les objets du menu :
    * La hiérarchie complète des options de menu définies dans l'objet menu.
    * La même hiérarchie, plus tous les événements définis pour chaque élément du menu.

  • Composants de la base de données
    Pendant l’analyse de votre code, Visual Expert trouvera toutes les références aux composants de la base de données. Ainsi, vous pouvez lister dans le treeview :
    * Les tables de la base de données référencées par le code de PowerBuilder (à partir des Datawindows et ordres SQL embarqués)
    * Pour chaque table trouvée, vous pouvez lister les colonnes référencées par le code PowerBuilder
    * Les procédures stockées appelées par le code PowerBuilder (à partir des Datawindows et des scripts PB)

    Si votre application est aussi composée de code de base de données (PL/SQL), Visual Expert trouve toutes les références des tables, colonnes et des procédures stockées à partir de ce code.
    Voir la page Visual Expert pour Oracle pour plus d'info.

    Vous pouvez avoir une vue globale de votre projet (PowerBuilder + code de la base de données) en installant les versions appropriées de Visual Expert sur le même PC. Par exemple, si votre application est composée de code PB et de procédures stockées Oracle, vous pouvez combiner Visual Expert pour PowerBuilder et pour Visual Expert pour Oracle sur le même PC.
  • Requêtes SQL
    Après avoir analysé votre projet, Visual Expert peut afficher plusieurs listes de procédures :
    * Requêtes SQL définies dans l’application
    * Requêtes SQL contenant une chaîne de caractères donnée (Recherche textuelle sur les requêtes SQL du projet)
    * Requêtes SQL par type d’accès (requêtes select, insert, update ou delete)
    * Requêtes SQL par type de définition (définies dans le Script PowerBuilder, Datawindow, le code PL/SQL (1)).

    (1) nécessite Visual Expert pour Oracle
  • Liens d'héritage
    Visual Expert analyse tous les liens d’héritage. Cela permet d’afficher :
    * Les descendants directs (enfants) d’un objet PowerBuilder
    * La hiérarchie de descendants (treeview à plusieurs niveaux de tous les descendants d’objets successifs.) Par exemple, vous pouvez obtenir la hiérarchie d’héritage complète de votre application, comprenant le Framework et les objets métiers.
    * L'ancêtre direct d'un objet PowerBuilder
    * La liste complète des ancêtres d’un objet (tous les ancêtres successifs d’un objet donné).

    Quand un objet est hérité, les scripts définis dans ces objets peuvent être modifiés dans le script de l’objet descendant. Dans ce cas, Visual Expert garde la trace de la relation “d’héritage” entre le script de l’“ancêtre” et le script du "descendant"
  • Recherche d'une chaine de caractères
    Vous pouvez chercher une chaîne de caractères dans votre projet. Plusieurs options sont disponibles :
    * Recherche globale dans tout le projet (comprenant le code PowerBuilder, PL/SQL, Transact SQL, les fichiers SQL, ...)
    * Recherche limitée à un type de composant (ex: recherche sur les fenêtres uniquement). 
    * Vous pouvez chercher dans le nom et/ou le code source des composants.
    * Vous pouvez utiliser des expressions régulières dans une recherche (cliquez icipour en savoir plus sur les expressions régulières).
    * Vous pouvez lancer une recherche sur une sélection de composants (après avoir sélectionné quelques procédures dans le treeview par exemple).
  • Appels Dll
    Pendant l’analyse de votre code PowerBuilder, Visual Expert trouvera toutes les références aux fonctions dll.

    Par conséquent, vous pouvez lister dans le treeview :
    * Les dll utilisées par l’application
    * Pour une dll donnée, quelles sont les fonctions dll déclarées dans le code PowerBuilder
    * Pour une dll donnée, quels sont les objets PowerBuilder qui déclarent des fonctions dll
    * Pour chaque fonction dll déclarée dans PowerBuilder, toutes les références PowerBuilder à cette fonction dll.
    (Analyse d’impact dans l’application PowerBuilder sur une fonction dll).
  • Eléments Globaux de l'applications et du Système
    * Liste des variables Globales déclarées dans l’application PowerBuilder (nom+nombre d’appels sur chaque variable) 
    * Liste des fonctions globales définies dans l’application PowerBuilder (nom+nombre d’appels sur chaque fonction)
    * Liste des propriétés système référencées dans le code PowerBuilder (ex : visible,title, with…)
    * Liste des fonctions système référencées dans le code PowerBuilder (ex : close, opensheet, setpointer...)

Architecture

  • Graphe d'ouverture
    Liste de tous les menus ou fenêtres successifs ouverts dans le projet.
    Vous obtenez alors une arborescence représentant le chemin de navigation dans l’application (de fenêtre en fenêtre et de Menu en fenêtre).
  • Architecture Générale
    Architecture détaillée d’un objet (arborescence de tous les contrôles, fonctions, évènements et variables composant l’objet).
  • Architecture de Contrôle
    Architecture des contrôles composant un objet PowerBuilder (présentée en arborescence).

Divers

  • Aperçu
    Affiche un aperçu graphique d’un objet visuel PowerBuilder (Window, DataWindow, Visual UserObject). 
    Cet aperçu aide à comprendre l’application pendant que vous naviguez dans le code. 
    Vous pouvez également localiser n’importe quel contrôle en le sélectionnant dans l’aperçu. 
    Visual Expert ouvre alors le treeview là où le contrôle est défini.
  • Code mort (Objets Inutilisés)
    * Liste des Windows, UserObjects, DataWindows, Menus, ... non référencés/utilisés dans l’application.
    * Liste des fonctions, évènements et fonctions globales non référencés / utilisés dans l’application. 
    * Liste des attributs, variables globales, paramètres non référencés / utilisés dans l’application. 
    * Liste des dlls et des fonctions dll déclarées mais qui ne sont pas appelées dans l’application.
  • Composants dupliqués
    Recherche des composants ayant le même nom d’objet et le même type dans votre projet.
  • Localiser
    Utilisez cette fonctionnalité pour localiser un objet, une méthode ou une variable dans votre projet (exemple: où cet objet a-t-il été créé/ déclaré ?). La treeview s'ouvre sur cet objet.
  • DropDown Datawindow
    Liste de toutes les Datawindows utilisées en tant que DropDownDatawindows dans votre projet.
  • Datawindow Dynamique
    Liste de toutes les DataWindows référencées dynamiquement dans le code PB (exemple: Control.DataObject="<DataWindow name>")
  • Statistiques PBL
    Statistiques sur la taille et le contenu des Librairies PowerBuilder (PBLs)
  • Grandes PBL
    PBL contenant un nombre de bytes données.