Powerd911 – Numéro #1 au Canada

Supprimer les informations inutilisés (MCD)

Ces quelques lignes de code en Visual Basic Script permettent de supprimer les informations qui ne sont pas utilisés au niveau d’un modèle conceptuel.

Compatible avec PowerDesigner/PowerAMC 16.5

'*****************************************************************************
'* Nom du fichier : SUPPRIME_INFORMATION.vbs
'* Titre : Supprime les informations qui ne sont pas utilisés
'* Modèle: Modèle de données conceptuel (MCD)
'* Objets: Information
'* Auteur: Benoît Le Nabec
'* URL : http://www.Powerd911.guru
'* Créé: 2015-01-01
'* Version: 1.0
'*****************************************************************************

' Permet de conserver une trace de l'exécution du script

'   dim fs,f
'   set fs = CreateObject("Scripting.FileSystemObject")
'   set f = fs.CreateTextFile("C:PowerAMC_vbs.log")

dim index
index = 0

dim model 'current model
set model = ActiveModel

If (model Is Nothing) Then
MsgBox "Il n'y a pas de modèle actif"
ElseIf Not model.IsKindOf(PdCDM.cls_Model) Then
MsgBox "Ce n'est pas un modèle conceptuel"
Else
Cherche_Information model
MsgBox "Il y'a eu " & index & " information(s) qui ont été détruit"
End If

'*****************************************************************************
'Titre : Cherche_information
'Description : Cherche les informations
'*****************************************************************************

sub Cherche_Information(folder)
dim item

'Boucle pour toute les informations
for each item in folder.DataItems

'Si l'information n'est pas un raccourci
if not item.IsShortCut then
'Supprime les informations qui ne sont pas utilisés
Supprimer_information item
end if
next

'Cherche des informations au niveau des packages
dim subFolder
for each subFolder in folder.Packages
Cherche_Information subFolder
next
end sub

'*****************************************************************************
'Titre : Supprime l'information
'Description : Supprime les informations qui ne sont pas utilisés
'*****************************************************************************
sub Supprimer_information(node)
'Si l'information n'est pas utilisé
if node.UsedBy="" then
'Supprime l'information
node.delete
index = index + 1
end if
end sub

Laisser un commentaire