Diskuzní fórum a databáze tipů a utilit pro AutoCAD, Inventor, Revit a další produkty Autodesk - od firmy CAD Studio [www.cadforum.cz]
Česky Slovensky English Deutsch
Přihlášení:
▶ Registrace

 právě čte: 4232 
RSS tipy RSS kanál - CAD tipy
RSS diskuze RSS kanál - CAD diskuze

Diskuze Diskuzní fórum

NápovědaCAD diskuze

CAD Fórum - Homepage Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit a dalšími CAD aplikacemi. Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru.
Fórum nenahrazuje technický support firmy CAD Studio - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
  FAQ FAQ  Prohledat fórum   Události   Registrovat Registrovat  Přihlásit Přihlásit

ilogic

 Odpovědět Odpovědět archiv
Autor
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Téma: ilogic
    Zasláno: 08.led.2018 v 09:33
Zravím všechny,
mam malinkou prozbu, obdrželi jsme od zákazníka veliké sestavy kde jsou všechny díly namodelovány z plechu.
Ale ani u jednoho dílu není zaškrtnuto v parametrech políčko "Exportovat parametr" Thickness.
Chtěl bych přes ilogic vše najednou zašrtnout jelikož to dělat po jednou kuse tak to bych dělal do příštích vánoc.
Podařilo se mi sehnat tento kod ale nějak mi nejde, možná tam je někde chybička ale já jí nevidim.

Dim oAsmDoc As AssemblyDocument

         oAsmDoc = ThisApplication.ActiveDocument

    If ThisApplication.ActiveDocument.DocumentType <> kAssemblyDocumentObject Then

        MsgBox("Toto není sestava!"vbExclamation)

               Return

        Exit Sub

    End If

  

    Dim oRefDocs As DocumentsEnumerator

         oRefDocs = oAsmDoc.AllReferencedDocuments

 

    For Each oRefDoc As PartDocument In oRefDocs

          Try

        Parameter.Param(oRefDoc.DisplayName"Thickness").ExposedAsProperty = True

        Catch

           End Try

    Next

Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
CAD Studio a.s.

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 17208
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Vladimír Michl Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 08.led.2018 v 10:33
Možná něco jako (moc nezkoušeno):
 
Dim oAsmDoc As AssemblyDocument
oAsmDoc = ThisApplication.ActiveDocument
Dim userParam As UserParameter
Dim oRefDocs As DocumentsEnumerator
Dim oRefDoc As Object
oRefDocs = oAsmDoc.AllReferencedDocuments
For Each oRefDoc In oRefDocs
Try
  For Each userParam In oRefDoc.ComponentDefinition.Parameters.UserParameters
    If userParam.Name = "Thickness"
       userParam.ExposedAsProperty = True
    End If
  Next
Catch
End Try
Next
Vladimír Michl (moderátor)
CAD Studio a.s. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.cz)
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 08.led.2018 v 10:46
Děkuji za radu ale pořád mi to nechce zaškrtávat Thickness.
Napadlo jestli by někdo nevěděl udělat aby to zašktlo všechny ty okýnka v parametrech.
Já bych si pak vybral které budu používat dále.
Děkuji
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
CAD Studio a.s.

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 17208
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Vladimír Michl Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 08.led.2018 v 11:35
Pokud to není uživatelský, ale běžný geometrický parametr, pak:
 
Dim oAsmDoc As AssemblyDocument
oAsmDoc = ThisApplication.ActiveDocument
Dim userParam As Parameter
Dim oRefDocs As DocumentsEnumerator
Dim oRefDoc As Object
oRefDocs = oAsmDoc.AllReferencedDocuments
For Each oRefDoc In oRefDocs
Try
  For Each userParam In oRefDoc.ComponentDefinition.Parameters
   ' MsgBox(oRefDoc.DisplayName & "=" & userParam.Name)
     If userParam.Name = "Thickness"
       userParam.ExposedAsProperty = True
     End If
  Next
Catch
End Try
Next
Vladimír Michl (moderátor)
CAD Studio a.s. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.cz)
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 08.led.2018 v 11:44
Děkuji moc už to běhá, jste dobrej.
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 10.led.2018 v 14:11
Ještě jednou chci poprosit. To zašrtnutí "Thickness" už běží, ale věděl by někdo jak napsat aby to zašrtlo všechny parametry. Zkusil jsem to takto ale nedělá to co má.

Dim oAsmDoc As AssemblyDocument
oAsmDoc = ThisApplication.ActiveDocument
Dim userParam As Parameter
Dim oRefDocs As DocumentsEnumerator
Dim oRefDoc As Object
oRefDocs = oAsmDoc.AllReferencedDocuments
For Each oRefDoc In oRefDocs
Try
  For Each userParam In oRefDoc.ComponentDefinition.Parameters
   ' MsgBox(oRefDoc.DisplayName & "=" & userParam.Name)
            userParam.ExposedAsProperty = True
     Next
Catch
End Try
Next

Já bych si pak vybral které budu používat dále.
Děkuji
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
CAD Studio a.s.

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 17208
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Vladimír Michl Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 10.led.2018 v 15:21
Takto by to fungovat mělo - možná zkuste odkomentovat ten MsgBox, abyste viděl k jakému parametru to dojde - možná vám ten Try vypadne na nějaké chybě.
Vladimír Michl (moderátor)
CAD Studio a.s. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.cz)
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 10.led.2018 v 15:57
Nevim proč ale po odmazaní "MsgBox" to šlape, opět děkuji.
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 10.led.2018 v 16:25
tak ještě malinkou pomoct, chtěl bych aby u všech zaškrtnutých parametrů se mi nastavilo "přesnost - na celá čísla" a pak odškrtnout řetězec jednotek a koncové nuly.
vše niz příloha
Připojené náhledyPřihlaste se pro zobrazení plné verze - 16028/inventor.jpg

Zpět nahoru
Navara Zobrazit panel
CAD Studio support
CAD Studio support
Avatar
CAD Studio a.s.

Přihlášen: 08.zář.2008
Lokalita: ČR (Pha)
Používám:
Inventor
Stav: Offline
Bodů: 986
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Navara Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 11.led.2018 v 10:03
třeba takhle:
 
Dim part As PartDocument = ThisDoc.Document
Dim userParam As Inventor.Parameter = part.ComponentDefinition.Parameters(1)
 
'...
Dim propertyFormat  = userParam.CustomPropertyFormat
userParam.ExposedAsProperty = True
part.Update
propertyFormat.Precision = Inventor. custompropertyprecisionenum.kZeroDecimalPlacePrecision
propertyFormat.ShowTrailingZeros = False
propertyFormat.ShowUnitsString = False
'...
 
Zpět nahoru
assaxio Zobrazit panel
Diskutér
Diskutér
Avatar

Přihlášen: 30.dub.2009
Lokalita: ČR (Pha)
Používám:
Inventor 2O18
Stav: Offline
Bodů: 13
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace assaxio Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 12.led.2018 v 15:07
mohu ještě jednou poprosit, mam asi při pátku zatmění a nějak si nevim rady jak to spasovat dohromady. předem moc děkuji.

Dim oAsmDoc As AssemblyDocument

oAsmDoc = ThisApplication.ActiveDocument

Dim userParam As Parameter

Dim oRefDocs As DocumentsEnumerator

Dim oRefDoc As Object

oRefDocs = oAsmDoc.AllReferencedDocuments

For Each oRefDoc In oRefDocs

Try

  For Each userParam In oRefDoc.ComponentDefinition.Parameters

            userParam.ExposedAsProperty = True

     Next

Catch

End Try

Next

 

Dim part As PartDocument = ThisDoc.Document
Dim userParam As Inventor.Parameter = part.ComponentDefinition.Parameters(1)

 

'...
Dim propertyFormat  = userParam.CustomPropertyFormat

userParam.ExposedAsProperty = True
part.Update

propertyFormat.Precision = Inventor. custompropertyprecisionenum.kZeroDecimalPlacePrecision
propertyFormat.ShowTrailingZeros = False
propertyFormat.ShowUnitsString = False
'...

Zpět nahoru
Vít Marčík Zobrazit panel
CAD Studio support
CAD Studio support
CAD Studio - Autorizovaný dealer Autodesk
CAD Studio a.s.

Přihlášen: 01.dub.2015
Lokalita: ČR (MS)
Používám:
Autodesk Factory Design Suite Ultimate
Stav: Offline
Bodů: 1
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Vít Marčík Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 15.led.2018 v 13:19
zkuste takhle po drobné úpravě:
Dim oAsmDoc As AssemblyDocument

oAsmDoc = ThisApplication.ActiveDocument

Dim userParam As Parameter

Dim oRefDocs As DocumentsEnumerator

Dim oRefDoc As Object

oRefDocs = oAsmDoc.AllReferencedDocuments

For Each oRefDoc In oRefDocs

Try

	For Each userParam In oRefDoc.ComponentDefinition.Parameters

            userParam.ExposedAsProperty = True
			Dim propertyFormat  = userParam.CustomPropertyFormat
			oRefDoc.Update
			propertyFormat.Precision = Inventor. custompropertyprecisionenum.kZeroDecimalPlacePrecision
			propertyFormat.ShowTrailingZeros = False
			propertyFormat.ShowUnitsString = False

	Next

Catch

End Try

Next
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 10851:iLogic - jak ve výkresu zpracovat materiál a cestu součásti?
Tip 8631:Mluvící iLogic pravidlo pro kontrolu materiálu součásti Inventoru (výchozí materiál).
Tip 9476:Ukládání DWG kopie IDW výkresu pojmenované podle revize.
Tip 11550:iLogic: Spuštění externího procesu s parametry
Tip 8717:Jak ve výkresu zobrazit těžiště podsestavy?
Tip 9467:Automatické publikování schválených výkresů z Inventoru.


 Odpovědět Odpovědět

Přejít na fórum Oprávnění fóra Zobrazit panel



Stránka byla vygenerována za 0,734 sekund.