Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Parameterwert einem Item zuordnen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Parameterwert einem Item zuordnen (817 mal gelesen)
cmb
Mitglied
Systembetreuer


Sehen Sie sich das Profil von cmb an!   Senden Sie eine Private Message an cmb  Schreiben Sie einen Gästebucheintrag für cmb

Beiträge: 500
Registriert: 12.07.2002

CATIA V5-6R2016 64bit
Smarteam R22.6
Moldflow Adviser 2014
Lenovo Think Pad P90

erstellt am: 25. Jan. 2010 17:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Forum,

ich versuche aus drei Parameterwerten [blau,gruen,braun], welche aus einer Parameterliste ausgelesen werden, neue Parameter [mit den Werten 100,200,500] zuzuweisen.
Das funkt soweit ganz gut.
Wenn ich diesen neuen Parameter [param40_neu] meinem ITEM zuweisen möchte [products2.item("param40_neu")] motz das script.
Gebe ich den Wert direkt ein [products2.item("500")] läuft es wie gewünscht durch.
Ich habe schon versucht den param40_neu als strParam zu deklarieren hatte damit aber leider keinen Erfolg.

Vielleicht kann mir jemand von Euch hier weiterhelfen.

Gruß

Norbert

Language="VBSCRIPT"

Sub CATMain()

Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument
Dim product1 As Product
Set product1 = productDocument1.Product
Dim products1 As Products
Set products1 = product1.Products
' aktiviert Skeleton Part
Dim product2 As Product
Set product2 = products1.Item("Master skel")
Dim product3 As Product
Set product3 = product2.ReferenceProduct

' Parameter auslesen
Set product2 = CATIA.ActiveDocument
Set product2 = products1.Item("Master skel")
Set parameters1 = product2.Parameters
Set Stift = parameters1.Item("eop")

Param40 = Stift.Value 'Bsp ist braun

' Zuweisung Exemplarnamen
Dim param40_neu As Object
If Param40 = "blau" Then
param40_neu = 100
ElseIf Param40 = "gruen" Then
param40_neu = 200
Else
param40_neu =500'hier nimmt er den Wert "braun" und setzt den neuen Wert
End If

MsgBox "Wert Param40_neu "& (Param40_neu) 'hier erscheint der Wert 500

Dim selection40 As Selection
Set selection40 = productDocument1.Selection
Dim visPropertySet40 As VisPropertySet
Set visPropertySet40 = selection40.VisProperties
Dim product40 As Product
Set product40 = products1.Item("stift")
Dim products2 As Products
Set products2 = product40.Products
Dim product41 As Product

Set product41 = products2.item("param40_neu")  'hier motzt das Script; wenn ich "500" eintrage laeuft es ohne zu meckern durch
Set products40 = product41.Parent

Dim bSTR40 As String
bSTR40 = product41.Name
selection40.Add product41
Set visPropertySet40 = visPropertySet40.Parent
Dim bSTR41 As String
bSTR41 = visPropertySet40.Name
Dim bSTR42 As String
bSTR42 = visPropertySet40.Name
visPropertySet40.SetShow 0
selection40.Clear

End Sub

------------------
V5R18
Catia + Smarteam

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 25. Jan. 2010 17:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cmb 10 Unities + Antwort hilfreich

Servus

Versuch es mal mit:
Set product41 = products2.item(param40_neu)
Wenn du einen Wert/Variable in " " schreibst wird es als Sting interpretiert.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 25. Jan. 2010 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cmb
Mitglied
Systembetreuer


Sehen Sie sich das Profil von cmb an!   Senden Sie eine Private Message an cmb  Schreiben Sie einen Gästebucheintrag für cmb

Beiträge: 500
Registriert: 12.07.2002

CATIA V5-6R2016 64bit
Smarteam R22.6
Moldflow Adviser 2014
Lenovo Think Pad P90

erstellt am: 25. Jan. 2010 17:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Bernd,

vielen Dank für den Tipp.
Das Script bemängelt mir dann:
Objekt erforderlich:'param40_neu'

------------------
V5R18
Catia + Smarteam

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

V5Playaz
Mitglied
Dipl.-Ing (BA)


Sehen Sie sich das Profil von V5Playaz an!   Senden Sie eine Private Message an V5Playaz  Schreiben Sie einen Gästebucheintrag für V5Playaz

Beiträge: 447
Registriert: 12.07.2005

DELL PRECISION 390
3,25 GB RAM
WIN XP PRO SP2
CATIA V5 R16-19
Delmia V5 R19
VB6, VB2008
Adobe Acrobat 9 Pro Extended

erstellt am: 25. Jan. 2010 18:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für cmb 10 Unities + Antwort hilfreich

Hallo,

wenn ich bisher alles richtig verstanden habe, lautet der Wert deines Parameters 'param40_neu' = 500 ?

Es wäre möglich, dass dir dieser Wert als string angezeigt wird und nicht als Zahl.
Du musst also den Wert in eine Zahl konvertieren und ohne Anführungszeichen in die Klammern schreiben.

Falls das nicht die Lösung war, solltest du mal die Watch List deines VBA-Editors zur Hand nehmen und die Produkt-Struktur prüfen.

Grüsse Dominik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cmb
Mitglied
Systembetreuer


Sehen Sie sich das Profil von cmb an!   Senden Sie eine Private Message an cmb  Schreiben Sie einen Gästebucheintrag für cmb

Beiträge: 500
Registriert: 12.07.2002

CATIA V5-6R2016 64bit
Smarteam R22.6
Moldflow Adviser 2014
Lenovo Think Pad P90

erstellt am: 25. Jan. 2010 18:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ihr seid die größten,

vielen Dank das Script tut:

Dim param01 As Integer
param01 = CSTR(param40_neu)
Set product41 = products2.item(param01)

1000 Dank

Norbert

------------------
V5R18
Catia + Smarteam

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz