Forum:Inventor
Thema:iLogic Dokument-Regel vs externe Regel
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge verwalten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
OibelTroibel

Beiträge: 241 / 0

ACAD/Inventor 2020 Professional

Hallo zusammen

Ich habe einen iLogic-Code, der über eine "interne" Regel ausführt funktioniert und über eine externe Regel nicht das macht was er soll. Ist das möglich, bzw sollte es nicht irrelevant sein woher der Code ausgeführt wird?

Code:
'Prüfen ob Dokument gespeichert wurde
Select ThisDoc.Document.FileSaveCounter
Case 0
MessageBox.Show("Bitte Bauteil zuerst speichern", "Speichererinnerung", MessageBoxButtons.OK, MessageBoxIcon.Stop)
Return
End Select

' Sicherstellen, dass nur .ipt berücksichtigt werden
Select Right(ThisDoc.FileName(True), 4)
Case ".idw"
Return
Case ".dwg"
Return
Case ".iam"
Return
Case ".ipn"
Return
End Select

'Prüfen ob Paramater "Beschaffung" bereits vorhanden ist und allenfalls erstellen
Dim oUserParameter As UserParameters
oUserParameter=ThisDoc.Document.ComponentDefinition.Parameters.UserParameters                         

Try
otester = oUserParameter.Item("Beschaffung")
Catch
oParameter=oUserParameter.AddByValue("Beschaffung", "3D-Druck", UnitsTypeEnum.kTextUnits)
MultiValue.SetList("Beschaffung", "3D-Druck", "Blechteil", "Drehteil", "Einkaufsteil", "Frästeil", "nicht definiert", "Plexiglas")

Parameter ("Beschaffung") = (InputListBox("Beschaffungsmethode wählen", MultiValue.List("Beschaffung"), Beschaffung, Title := "Beschaffungsmethode", ListName := "Auswahl"))
End Try
'iLogicVb.UpdateWhenDone=True

If Beschaffung = "nicht definiert" Then

'Liste der zu löschenden Benutzerproperties
Dim MyArrayList As New ArrayList
MyArrayList.Add("Beschaffung")

Dim oCustProp As Inventor.Property

'definiere Liste aller Benutzerproperties
oCustomPropertySet = ThisDoc.Document.PropertySets.Item("Inventor User Defined Properties")
'durchsuche alle properties der Liste
For Each oCustProp In oCustomPropertySet
'prüfe die Liste nach der zu löschenden Properties
If MyArrayList.Contains(oCustProp.Name)Then
'lösche das Benutzerpropertie
oCustProp.Delete
Else
'mache nichts
End If
Next

Else
iProperties.Value("Custom", "Beschaffung") = Beschaffung
End If
'iLogicVb.UpdateWhenDone=True


von der externen Regel ausgeführt, bleibt das benutzdefinierte iPropertie leer, von intern ausgeführt wird die Eigenschaft korrekt befüllt.

Beste Grüsse
Raphael

muellc

Beiträge: 3472 / 599

Inventor 2017.4.12 64 bit
Windows 10 Enterprise 64 bit
3DEXPERIENCE R2016x
--------------------
HP Z-Book 15 G4
32 Gig Ram
NVIDIA Quadro M2200
2x HP E243i

Hallo Raphael,

ändere mal

Code:
iProperties.Value("Custom", "Beschaffung") = Beschaffung

in

Code:
iProperties.Value("Custom", "Beschaffung") = Parameter("Beschaffung")

------------------
Gruß, Gandhi
Kampfkunst Siegen Outdoor Training

OibelTroibel

Beiträge: 241 / 0

ACAD/Inventor 2020 Professional

Hallo muellc

Vielen Dank für dein Tipp, funktioniert nun bestens
Was genau ist der Unterschied der beiden Schreibweisen?

Beste Grüsse
Raphael

muellc

Beiträge: 3472 / 599

Inventor 2017.4.12 64 bit
Windows 10 Enterprise 64 bit
3DEXPERIENCE R2016x
--------------------
HP Z-Book 15 G4
32 Gig Ram
NVIDIA Quadro M2200
2x HP E243i

Ganz ehrlich?
KEine AHnung.

Ich würde mal schätzen das meine Schreibweise eindeutiger ist als ein eingefügter Name, aber ich bin was ILogic angeht immer noch ein Anfänger.

------------------
Gruß, Gandhi
Kampfkunst Siegen Outdoor Training

OibelTroibel

Beiträge: 241 / 0

ACAD/Inventor 2020 Professional

Danke für deine ehrliche Antwort Ich werde es mir aber angewöhnen die eindeutigere Schreibweise zu verwenden.