pb-analyze

star 1

Use when you need to understand existing PowerBuilder code — explore architecture, inheritance, dependencies, and data flow. For deep analysis with a full report, use the pb-analyst agent instead.

juliendetilleux By juliendetilleux schedule Updated 3/10/2026

name: pb-analyze description: Use when you need to understand existing PowerBuilder code — explore architecture, inheritance, dependencies, and data flow. For deep analysis with a full report, use the pb-analyst agent instead.

PowerBuilder Code Analysis

Skill integre — Guide l'analyse dans la conversation courante. Pour une analyse approfondie avec rapport complet, lancer l'agent pb-analyst.

Trigger

Demande de comprendre un objet PB existant : "c'est quoi w_xxx ?", "montre-moi l'architecture de uo_xxx", "qui utilise d_xxx ?".

Workflow

Etape 1 : Vue d'ensemble

Utiliser pb_get_object_summary pour obtenir rapidement :

  • Type, ancetre, library
  • Nombre de fonctions et events
  • Variables d'instance

Etape 2 : Heritage

Utiliser pb_get_inheritance :

  • Ancetres : de quoi herite cet objet ? Quels comportements sont herites ?
  • Descendants : qui herite de cet objet ? (impact en cas de modification)

Etape 3 : Dependances

Utiliser pb_get_dependencies :

  • Qui appelle cet objet ? (dependances entrantes)
  • Quels objets cet objet utilise-t-il ? (dependances sortantes)

Etape 4 : Lecture du code source

Utiliser pb_read_object pour lire le code complet. Identifier :

  • Fonctions publiques (of_*) et privees (wf_*)
  • Events personnalises (ue_*)
  • Variables d'instance (is_, il_, ib_, id_)
  • DataWindows utilises et leur SQL (pb_get_datawindow_sql)

Etape 5 : Patterns architecturaux

Determiner le role de l'objet :

  • Fenetre sheet : fenetre principale avec toolbar et menu
  • Fenetre response : dialogue modal (saisie/confirmation)
  • NVO metier : logique business sans UI (nvo_*, nv_*)
  • NVO utilitaire : services transversaux (log, mail, config)
  • DataWindow : presentation de donnees (grid, freeform, composite)
  • Menu : barre de menu et items (m_*)

Etape 6 : Structure du projet

Si necessaire, utiliser pb_get_project_structure pour comprendre :

  • Organisation des 69+ libraries
  • Repartition par module metier
  • Conventions de nommage des libraries

Format de sortie

Analyse : [nom_objet]

Identite

  • Type : [type] | Ancetre : [ancetre] | Library : [library]
  • Fonctions : [nb] | Events : [nb] | Variables : [nb]

Heritage

  • Chaine : [objet] → [parent] → [grand-parent] → ...
  • Descendants : [nb] objets heritent de [objet]

Dependances

  • [nb] objets utilisent [objet]
  • [objet] utilise [nb] objets

Role architectural

[Description du role dans l'application]

Fonctions cles

Fonction Visibilite Role

Donnees

DataWindow SQL resume Tables
Install via CLI
npx skills add https://github.com/juliendetilleux/powerbuilder-toolkit --skill pb-analyze
Repository Details
star Stars 1
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator
juliendetilleux
juliendetilleux Explore all skills →