Diskuzní fórum a databáze tipů a utilit pro AutoCAD, Inventor, Revit a další produkty Autodesk - od firmy Arkance Systems [www.cadforum.cz]
CZ | SK | EN | DE
Přihlášení
či registrace
   právě nás čte: 17356 
RSS kanál - CAD tipy RSS tipy
RSS diskuze

Diskuze Diskuzní fórum, poradna

 

NápovědaCAD diskuze, rady, výměna zkušeností

 
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, Fusion 360, 3ds Max a s 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. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy Arkance Systems (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

Téma uzavřenoPŘEPSÁNÍ PARAMETRU

 Odpovědět Odpovědět archiv
Autor
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Téma: PŘEPSÁNÍ PARAMETRU
    Zasláno: 13.bře.2019 v 13:23
Zdravím,

Mám pravidlo které mi založí a vyplní parametr "POLOTOVAR". jak mám napsat aby se mi parametr který již existuje přepsal tímto s více hodnotami?

Dim oParams As Parameters
Dim oPartDoc As PartDocument = ThisDoc.Document
Dim oPartCompDef As PartComponentDefinition = oPartDoc.ComponentDefinition
oParams = oPartCompDef.Parameters

Dim oUserParams As UserParameters = oParams.UserParameters

Try
  p = Parameter("POLOTOVAR")
Catch
  oUserParams.AddByValue("POLOTOVAR","", UnitsTypeEnum.kTextUnits)
  MultiValue.SetList("POLOTOVAR",
  "PLECH",
  "JAKL",
  "TRUBKA 4HR",
  "TRUBKA OBD",
  "TY� PLOCH�",
  "TY� KULAT�",
  "TY� Z�VITOV� (DIN 975)"
  )
End Try
Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru
krupicka Zobrazit panel
Arkance Systems support
Arkance Systems support
Avatar
Arkance Systems

Přihlášen: 15.říj.2015
Lokalita: ČR (Pha)
Používám:
Inventor HSM
Stav: Offline
Bodů: 122
Přímý odkaz na tuto zprávu Zasláno: 14.bře.2019 v 09:14
Dobrý den,
    Musíme ověřit existenci parametru. V případě, že existuje, jej odstranit a vytvořit nový.
Šel jsem na to procházením všech parametrů a porovnáváním jejich názvů s názvem "POLOTOVAR"
Smile
Dim oParams As Parameters
Dim oPartDoc As PartDocument = ThisDoc.Document
Dim oPartCompDef As PartComponentDefinition = oPartDoc.ComponentDefinition
oParams = oPartCompDef.Parameters
Dim ParaExist As Boolean = False

Dim oUserParams As UserParameters = oParams.UserParameters

Try
	For i = 1 To oParams.Count
		If oParams(i).Name = "POLOTOVAR" Then
			ParaExist = True
			Exit For
		End If
	Next
Catch

End Try


MessageBox.Show(ParaExist, "Existence parametru POLOTOVAR")

If ParaExist = True Then
	Parameter.Param("POLOTOVAR").Delete
End If

Try
  p = Parameter("POLOTOVAR")
Catch
  oUserParams.AddByValue("POLOTOVAR","", UnitsTypeEnum.kTextUnits)
  MultiValue.SetList("POLOTOVAR",
  "PLECH",
  "JAKL",
  "TRUBKA 4HR",
  "TRUBKA OBD",
  "TYC PLOCHA",
  "TYC KULATA",
  "TYC ZAVITOVA (DIN 975)"
  )
End Try

S pozdravem Martin Krupička, CAD Studio Smile
Zpět nahoru
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Zasláno: 14.bře.2019 v 09:48
Díky, přesně to jsem potřeboval. Už mi to funguje.
Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Zasláno: 15.bře.2019 v 11:02
Je možné toto pravidlo napsat tak aby fungovalo i pro sestavu? pokud ano, tak jak to napíšu?
Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru
Vladimír Michl Zobrazit panel
Moderátor
Moderátor
Avatar
Arkance Systems

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 21432
Přímý odkaz na tuto zprávu Zasláno: 17.bře.2019 v 08:10
Pro parametr sestavy nebo pro parametry všech komponent sestavy a podsestav? (to už je složitější). Pro parametr sestavy stačí upravit záhlaví - typy objektů.
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Zasláno: 18.bře.2019 v 08:40
Zdravím, 
Chtěl bych tímto pravidlem vyhledat, vymazat a znovu vytvořit uživatelský parametr "POLOTOVAR" v sestavě. Toto pravidlo funguje pro díl ale v sestavě hlásí chybu. Jedná se mi o to že budu postupně připisovat hodnoty do pravidla v "MultiValue.SetList" a proto když bude tato změna tak potřebuji aby byl starý seznam hodnot nahrazen novými. Hlavně u starých nebo převzatých projektů kde tento parametr není, nebo je vyplněn jinak. 
Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru
Navara Zobrazit panel
Arkance Systems support
Arkance Systems support
Avatar
Arkance Systems

Přihlášen: 08.zář.2008
Lokalita: ČR (Pha)
Používám:
Inventor
Stav: Offline
Bodů: 1636
Přímý odkaz na tuto zprávu Zasláno: 18.bře.2019 v 09:30
Tohle už začíná být docela rozsáhlé.
Co se týká zpracování sestavy, tak stačí upravit záhlaví, ale doporučuju to udělat tak, aby to fungovalo pro obojí (sestava i součást). To znamená získat oUserParams jak pro sestavu, tak pro součást. Zbytek uzavřít do metody s argumentem oUserParams.
No a v té metodě před smazáním parametru zkontrolovat, jestli je to přegenerování parametru nutné. Jinak totiž dochází ke změně souboru a budou neustále vznikat nové verze, které bude nutné ukládat i v případě, že fakticky k žádné změně nedojde.
 
Zpět nahoru
Lukáš Záruba Zobrazit panel
TOP uživatel
TOP uživatel

Přihlášen: 02.lis.2007
Lokalita: ČR (SČ)
Používám:
inventor 2015
Stav: Offline
Bodů: 429
Přímý odkaz na tuto zprávu Zasláno: 18.bře.2019 v 11:04
Děkuji za nápad pane Navaro, mohl byste mi napsat jak by šlo upravit abych získat oUserParams? 

Co se týče zjišťování nutnosti přegenerování, tak bych si s tím nelámal hlavu. Jelikož toto pravidlo je spouštěno ručně, pouze při nutnosti použít starý projekt nebo přenzané díly jako nový. Tím pádem se vždycky něco změní ( materiál, geometrie,.... ). 
Budu rád za radu i případně všelijaké postřehy.
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 13942:Rohový výštip v ohybu plechových součástí ve Fusion 360.
Tip 7083:VIPJak přepsat kótu Revitu numerickou hodnotou?
Tip 7999:Jak odstranit přepsání kótovacích stylů v kótách?
Tip 4785:Jak nalézt AEC objekty s přepsaným zobrazením?
Tip 9970:Proč se změna barvy součásti nepromítne do sestavy?
Tip 9529:Nastavení průhlednosti barevného schematu místností Revitu.


 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,641 sekund.