Code Analysis Helper
Evolution
Version courante : Béta
Consultez les Release Notes du CAH
Liste des fonctionnalités
CAH intègre des outils qui vous permettront de remplacer la majorité des commandes obsolètes :
Remplacer des commandes obsolètes
- Avant sera transformé en (Événement formulaire=Sur chargement)
- Apres sera transformé en (Événement formulaire=Sur validation)
- En pied sera transformé en (Événement formulaire=Sur impression pied de page)
- En rupture sera transformé en (Événement formulaire=Sur impression sous total)
- Activation sera transformé en (Événement formulaire=Sur activation)
- Désactivation sera transformé en (Événement formulaire=Sur désactivation)
- Appel extérieur sera transformé en (Événement formulaire= Sur appel extérieur)
- C_ALPHA sera transformé en C_TEXTE
- C_ENTIER sera transformé en C_ENTIER LONG
- TABLEAU ALPHA sera transformé en TABLEAU TEXTE
Nettoyage de code
- Suppression de la commande REDESSINER LISTE qui ne fait plus rien
Optimiser la gestion des chaines
- Caractère(13) ou caractère (retour chariot) devient \r
- Caractère(9) ou caractère (tabulation) devient\t
- Caractère(10) ou caractère (retour à la ligne) devient \n
- Caractère(34) ou caractère (guillemet) devient \"
Optimiser les appels au serveur
- Remplacement possible des Date du jour(*) pardes Date du jour
- Remplacement possible des Heure courante(*) pardes Heure courante
Pour rendre le code plus fonctionnel en multiplate-forme
- Remplacement possible de ":"par la constante séparateur dossier
- Remplacement possible de "\\"par la constante séparateur dossier
Pour rendre le code plus conforme à certainesrecommandations de 4D
- Remplacement de self par OBJET Lirepointeur(Objet courant)
CAH intègre des outils qui vous permettront également de :
- Identifier les méthodes critiques
- Identifier les ensembles de même nom sur des tables différentes
- Connaitre les méthodes modifiées sur une période
- Générer un PDF d’une méthode sans couper le code
- Générer un PDF des écrans et du code d’un formulaire
- Naviguer entre les méthodes via les relations entre elles (dependancies)
- Voir les paramètres des méthodes, visualiser toutes les méthodes avec un critère précis, partagées par exemple
- Repérer les méthodes sans code (commentaire et code inactif (si(faux)) retiré
- Visualiser les commandes utilisées et dans quelles méthodes
Détecter des patterns non optimisés
o Boucle avec déplacement dans la sélection
o Tant que(non(fin de sel
o Charger sur lien suivi début de sélection
o Chercher suivi début de sélection
o Jointure suivi début de sélection
o Trier suivi début de sélection
o Trier suivi de sélection vers tableau
o Utiliser ensemble suivi début de sélection
o Chercher suivi de chercher dans sélection
o Chercher suivi de nommer ensemble
o Tout sélectionner suivi de chercher ou chercherdans sélection
o Tout sélectionner suivi de début de sélection
o Sélection vers tableau sur plusieurs lignes
o Tableau vers sélection sur plusieurs lignes
o Appliquer à sélection sans utilisation du« Lockedset »
o Supprimer sélection sans utilisation du« Lockedset »
Vérification des couples de commandes ouvrantes/fermantes
- Lecture écriture et Lecture seulement
- Début transaction et valider ou annuler transaction
- Fixer destination de recherche
- Fixer limite de recherche
- Empiler et dépiler enregistrement
- Sémaphore
- Création et effacement d’ensembles
- Gestion des sélections temporaires
- Création et effacement des menus
- Création et effacement des listes hiérarchiques
- Création et effacement des SVG (4D SVG)
- Création et effacement des mails (4D internet commands)
- Création et effacement des XML
- Ouvrir document
Liste de commandes à « surveiller »
o 28 commandes au 19 juin 2017
Ensembles
- Détection d’ensembles de même nom sur des tablesdifférentes
- Détection d’opérations sur des ensembles à desendroits inopportuns
- Détection d’opérations sur des ensembles qui nedevraient pas avoir lieu
Recherche
- Détection des recherches sur l’ensemble de labase
- Détection du nombre de recherches sur chaquechamp et chaque table
- Détection des champs joints dans des recherchespour envisager des indexes composites
- Affichage des recherches par tables
Nommage des méthodes, des champs des tables etdes formulaires
o Détection des noms contenant des points
o Détection des noms contenant des caractèresaccentués
o Détection des noms contenant des mots réservés à4D
o Détection des noms contenant des mots réservésau SQL
o Détection des noms contenant des espaces
Tables
o Affichage de la liste des tables
o Affichage du poids de la structure d’unenregistrement
o Affichage des liens manuels et automatiques
o Insertion de code pour permettre la suppressiondes liens automatiques
o Affichage de données sur les clefs primaires
Forms
o Affichage des informations sur une form
o Impression de la form avec son code
o Analyse du code exécuté lors d’un cycle précis
o Liste des objets d’une form avec aide à lalocalisation
o Recherche d’un objet dans une form
Bibliothèque d’images
- Liste des images et utilisation
- Transfert vers le dossier de ressources avec la création d’un dossier old_library dans le dossier des ressources
- Remplacement des LIRE IMAGE DANS BIBLIOTHEQUE par des LIRE FICHIER IMAGE
- Détection de l’utilisation des images dans les formulaires et aide à la localisation