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 ou Transact-SQL ), Visual Expert trouve toutes
les références des tables, colonnes et des procédures
stockées à partir de ce code.
Voir les pages de Visual
Expert pour Oracle, Visual
Expert pour Sybase ASE ou Visual
Expert pour SQL Server pour plus de détails.
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
Sybase, vous pouvez combiner Visual Expert pour PowerBuilder et pour
Visual
Expert pour Sybase ASE 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 Transact-SQL (1)
ou le code PL/SQL (2)
(1) Nécessite Visual
Expert pour Sybase ASE ou Visual
Expert pour SQL Server
(2) 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
ici pour 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...)
|
| 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 ou Transact-SQL), Visual
Expert analyse toutes les références aux tables et
colonnes de ces procédures stockées.
Voir les pages de Visual
Expert pour Oracle, Visual
Expert pour Sybase ASE ou Visual
Expert pour SQL Server pour plus d'information. |
| 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.) |
| Architecture |
Graphe d'ouverture
des fenêtres |
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
composants 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) |
| PBL trop grandes |
PBL contenant trop de composants. |