Powerd911 – Numéro #1 au Canada

Ajouter le nom de l’objet a son commentaire

Ces quelques lignes de code en Visual Basic Script permettent d’ajouter le nom de l’objet (Nom de la table, colonne, vue) au commentaire associé à l’objet dans le cadre de l’utilisation d’un modèle physique.

Compatible avec PowerDesigner/PowerAMC 16.5

'******************************************************************************
'* Nom du fichier : MAJ_COMMENTAIRE.vbs
'* Définition : Ajouter le nom de l'objet à son commentaire
'* Modèle: Modèle de données physique (PDM)
'* Objets: Table, Colonne, Vue
'* Auteur: Benoît Le Nabec,
'* URL : http://www.Powerd911.guru
'* Créé: 2015-01-01
'* Version: 1.0
'******************************************************************************

Option Explicit

ValidationMode = True
InteractiveMode = im_Batch

Dim count
Dim mdl

count=0

Set mdl = ActiveModel

If (mdl Is Nothing) Then
MsgBox "Il n'y a pas de modèle actif"
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
MsgBox "Le modèle courant n'est pas un modèle physique"
Else
Analyse_Dossiers mdl
End If

MsgBox ("Nombre total de commentaires modifiés" & count)

'*****************************************************************************
'Titre : Obtenir_le_bon_Commentaire
'Description : Permet d'ajouter le nom de l'objet au commentaire
'*****************************************************************************
Function Obtenir_le_bon_Commentaire(name,comment)

'S'il n'y a pas de commentaire
if trim(comment)="" Then
'Inscrit le nom de l'objet + ":"
Obtenir_le_bon_Commentaire = name + "?"
count=count+1
'Si le commentaire est égal au nom de l'objet sans les ":" - aucune modification
ElseIf comment = name Then
'Inscrit le nom de l'objet
Obtenir_le_bon_Commentaire = name
'Si on ne trouve pas dans le commentaire le nom de l'objet avec ": " ou + ":"
ElseIf InStr(comment, name + "?") <1 And InStr(comment, name + ":")<1 Then
'Inscrit le nom de l'objet + ": " + Commentaire
Obtenir_le_bon_Commentaire = name + "?" + comment
count=count+1
'Si le nom de l'objet est déjà présent dans le commentaire - aucune modification
Else
Obtenir_le_bon_Commentaire = comment
end if
End Function

Private sub Analyse_Dossiers(folder)
Dim Tab
'Pour chacune des tables
for each Tab in folder.tables
'Si la table n'est pas de type raccourci
if not tab.isShortcut then
tab.comment = Obtenir_le_bon_Commentaire(tab.name,tab.comment)

Dim col
'Pour chacune des colonnes
for each col in tab.columns
col.comment = Obtenir_le_bon_Commentaire(col.name,col.comment)
next
end if
next

Dim view

'Pour chacune des vues
for each view in folder.Views
if not view.isShortcut then
view.comment = Obtenir_le_bon_Commentaire(view.name,view.comment)
end if
next

Dim f
'Pour chacun des packages
For Each f In folder.Packages
if not f.IsShortcut then
Analyse_Dossiers f
end if
Next
end sub

Laisser un commentaire