Thread Pro/Engineer VB API und Perl-Script (12 answers)
Opened by Zulu at 2011-10-29 13:09

Zulu
 2011-11-01 13:02
#153707 #153707
User since
2011-10-29
8 Artikel
BenutzerIn
[default_avatar]
Folgende Zeile liefen in Visual Basic den "item" der Abmessung mit dem Namen "durchmesser1":
item = CType(model, IpfcModelItemOwner).GetItemByName(EpfcModelItemType.EpfcITEM_DIMENSION, "durchmesser1")

Diese Zeile weist dem "item" einem einen neuen Wert zu, der aber kein double sondern ein "CMpfcModelItem" sein muss:
CType(item, IpfcBaseParameter).Value = ((New CMpfcModelItem).CreateDoubleParamValue(new_value))


Die Frage ist nun wie "((New CMpfcModelItem).CreateDoubleParamValue(new_value))" in Perl aussehen muss. Ich habe bisher folgendes getestet:


Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
my $new_value = 110;
##VBA code: item = CType(model, IpfcModelItemOwner).GetItemByName(EpfcModelItemType.EpfcITEM_DIMENSION, "durchmesser1")
my $item = $model->GetItemByName(10,$ParamName);

##VBA code: CType(item, IpfcBaseParameter).Value = ((New CMpfcModelItem).CreateDoubleParamValue(new_value))
##PERL GEHT NICHT: my $my_CMpfcModelItem = Win32::OLE->new("pfcls.CMpfcModelItem"); # FelherM.: "Ung³ltige Klassenzeichenfolge
##PERL GEHT NICHT: my $my_CMpfcModelItem = Win32::OLE->new("CMpfcModelItem"); # FelherM.: "Ung³ltige Klassenzeichenfolge
##PERL GEHT NICHT: $item->Value = $model->CMpfcModelItem->CreateDoubleParamValue($new_value); #FelherM.: "Mitglied nicht gefunden"
##PERL GEHT NICHT: $item->Value = $model->CreateDoubleParamValue($new_value);  #FelherM.: "Mitglied nicht gefunden"
##PERL GEHT NICHT: $item->Value = $session->CMpfcModelItem->CreateDoubleParamValue($new_value); #FelherM.: "Mitglied nicht gefunden"
##PERL GEHT NICHT: $item->Value = $session->CreateDoubleParamValue($new_value); #FelherM.: "Mitglied nicht gefunden"
$item->Value = ...???

Last edited: 2011-11-01 15:17:08 +0100 (CET)

View full thread Pro/Engineer VB API und Perl-Script