Que diriez-vous:
Dim CC As New ClearCase.Application
CC.Views(true, myRegionName)
Il devrait obtient la collection de vues dans la région déterminée, y compris ceux de l'instantané.
(Note: cela peut être semblable à ce que vous proposez dans votre question, mais avec une syntaxe de CAL plus précis)
Par exemple, je confirme le script ccperl suivant ne retourne instantané et vues dynamiques:
Type 'ccperl listViews.pl
', à condition:
- vous avez sauvegardé la ligne suivante dans un fichier nommé '
listViewws.pl
'.
- vous remplacez '
myRegionName
' par votre région ClearCase actuelle
- vous utilisez la même région que celle du script.
Script:
use Win32::OLE;
$DEBUG = 1;
print "Instantiating CAL CC\n" if $DEBUG;
my $cal_cc = Win32::OLE->new('ClearCase.Application')
or die "Could not create the ClearCase Application object\n";
$cclsview = $cal_cc->Views("False","myRegionName");
$Views_Entries = $cclsview->Count;
print "nbViews $Views_Entries\n";
$Views_Index = 1;
while ($Views_Index <= $Views_Entries) {
print "Processing View entry $CS_Index\n" if $DEBUG;
$View = $cclsview->Item($Views_Index);
$ViewName = $View->TagName;
$ViewIsSnapshot = $View->IsSnapShot;
print "View $ViewName $ViewIsSnapshot\n";
$Views_Index++;
}
réponse mis à jour, avec un script ccperl – VonC