Vytisknout stránku | Zavřít okno

REFERENČNÍ DÍLY

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: Inventor
Popis fóra: Otázky k programům Autodesk Inventor, Inventor Professional a Inventor LT, Product Design Collection a Suite, Factory Design Suite; a digitální prototypy
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=35237
Datum vytištění: 23.dub.2026 v 01:30


Téma: REFERENČNÍ DÍLY
Odeslal: Spartan54
Předmět: REFERENČNÍ DÍLY
Datum odeslání: 26.čer.2024 v 08:57
Dobrý den,
mám vytvořené pravidlo pro automatické vytváření STEPů plechových dílů ze sestavy. Potřebuju, aby pravidlo nevytvořilo STEP ze součásti, která má nastavenou strukturu rozpisky jako referenční. Přidal jsem podmínku : doc.ComponentDefinition.BOMStructure <> "51972".
S touto podmínkou STEP nevytvoří, pokud je struktura rozpisky nastavena přímo na dílu. Pokud změním strukturu rozpisky jenom ve stromu sestavy, tak na díle zůstane normální a STEP se vytvoří.
Nemáte radu jak toto ošetřit?



Odpovědi:
Odeslal: Spartan54
Datum odeslání: 26.čer.2024 v 10:40
Tady je celý kód:

Sub Main ()

'Testuje soubor na sestavu. Nelze spustit z dílu nebo výkresu.
If ThisApplication.ActiveDocument.DocumentType = kAssemblyDocumentObject Then

'Nalezne všechny podsestavy a díly v hlavní sestavě
    Dim SeznamStep As New ArrayList
    Dim doc As Document
    Dim FNamePosStep As Long
    Dim docFNameStep As String
    Dim oDocs As Documents = ThisApplication.Documents
    
    SeznamStep.add(ThisApplication.ActiveDocument.FullFileName)
        For Each doc In ThisApplication.ActiveDocument.AllReferencedDocuments
        FNamePosStep = InStrRev(doc.FullFileName, "\", -1)  
        docFNameStep = Mid(doc.FullFileName, FNamePosStep + 1, Len(doc.FullFileName) - FNamePosStep)
            If doc.DocumentType = kPartDocumentObject And doc.SubType = "{9C464203-9BAE-11D3-8BAD-0060B0CE6BB4}" And iProperties.Value(docFNameStep, "Project", "Project") = Parameter("VÝROBNÍ_ČÍSLO") And doc.ComponentDefinition.BOMStructure <> "51972" And Err.Number = 0 Then
                If iProperties.Value(docFNameStep, "Custom", "He_SkZb") = "201" Then
                SeznamStep.add(doc.FullFileName)
'                MessageBox.Show(doc.FullFileName, "Title")

                doc = oDocs.Open(doc.FullFileName, True)
                auto = iLogicVb.Automation
                auto.RunExternalRule(doc,"TISK PDF_STEP\STEP")
                doc.Close(True)
                End If
            End If
        Next
Else

MessageBox.Show("Testovaný soubor není sestava. Toto pravidlo lze spustit pouze v sestavě.", "Zkontroluj umístění projektu a souburu!")

End If        
        
End Sub




Vytisknout stránku | Zavřít okno