Vytisknout stránku | Zavřít okno

Spouštěče událostí

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: iLogic a ETO
Popis fóra: Funkce a makra iLogic, Inventor Engineering to Order (ETO), automatizace a konfigurace výrobků
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=13683
Datum vytištění: 10.kvě.2026 v 08:48


Téma: Spouštěče událostí
Odeslal: dusek
Předmět: Spouštěče událostí
Datum odeslání: 07.říj.2011 v 22:09
Inventor má v iLogic předem nadefinované spouštěče událostí. Lze k těmto spouštěčům přidávat nové? Dost mi tam chybí spouštěč při tisku, tak jestli si to mohu nějak přizpůsobit.

Díky
V.D.


-------------
Václav Dušek



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 07.říj.2011 v 23:11

Na jiné typy událostí (třeba i tisk) se lze "pověsit" pomocí VBA či .NET, nikoliv přímo iLogicem.



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: dusek
Datum odeslání: 07.říj.2011 v 23:52
A vy držíte noční službu? :-)

Nešlo by vypracovat nějaký návod či postup? :-) To už asi bude jiný "programování" ...


-------------
Václav Dušek


Odeslal: Vladimír Michl
Datum odeslání: 09.říj.2011 v 10:45
Noční i denní :-)
 
"Návod na programování" bohužel nepůjde - ano, znamená to už klasické programování, nikoliv jen zjednodušené prostředí iLogic. Možná ale napište co přesně potřebujete, možná to půjde zajistit jinou metodou než reaktorem na Print. Třeba doplněním nějakého tlačítka do ribbonu nebo funkcí Vaultu.


-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: dusek
Datum odeslání: 09.říj.2011 v 14:30
Ono těch případů bude asi víc, ale momentálně se mi jedná o tento případ:

Ve výkrese v rohovém razítku máme hmotnost. Čas od času se místo údaje hmotnosti ukáže, že hmotnost "není". V nové verzi se to teď jmenuje jinak, ale to si teď nevzpomenu jak. Aby se objevila správna hodnota, stačí aktualizovat hmotnost modelu a už se tam ukáže co má. Tomuhle všemu rozumím.

Problém nastane když hmotnost není aktualizovaná a já pošlu výkres na tisk. Vytiskne se to bez hmotnosti. A mě by se líbilo, kdyby to před každým tiskem tu hmotnost aktualizivalo, čímž by se zamezilo tomu aby to vytisklo výkres bez údaje hmotnosti.

Když nad tím tak přemýšlím, tak to samé by se mi hodilo i při zařazování do Vaultu, že se mi stane, že zařadím výkres a místo hmotnosti tam je "není". Tím si tak vyloučím možnost tisku rovnou z Vaultu.

Když tak nad tím přemýšlím, tak obecně spouštěče Před zařazením a Před tiskem tam chybí.

Možná by stálo za zvážení jestli by CadStudio neudělalo nějakou dodělávku přístupnou například jen pro VIP zákazníky. :-)


-------------
Václav Dušek


Odeslal: Navara
Datum odeslání: 09.říj.2011 v 23:15
Co se týká hmotnosti, tak tam je možnost využít X-Tools 2.0, kde je možné nechat si vytvořit uživatelskou vlastnost s hodnotou hmotnosti, která se aktualizuje při uložení dokumentu. V razítku se potom odkázat na tuto vlastnost, která není prázdná. Nevýhodou může být nepřesná hodnota u sestav, pokud dojde ke změně dílu bez aktualizace a uložení sestavy.
Co se týká spouštěčů před tiskem a před zařazením, tak v plném API jsou nepřímo dostupné. Problém ale je, jak byste si je dokázal sám obsloužit bez použití plného API.
Další možností by bylo vytvoření vlastního tlačítka/příkazu pro tisk a zařazení, které by provedlo příslušnou aktualizaci a následně spustilo původní příkaz.


Odeslal: dusek
Datum odeslání: 10.říj.2011 v 13:58
V rámci AutoMaker nám hmotnost nějak takhle funguje, bohužel problém je v tom, že se to aktualizuje až po uložení. A pak se může stát, že vytisknu výkres s neaktuální hmotností ...

Vytváření vlastních ikonek je pro mne Vysoká škola programátorská a obávám se, že mi tu nikdo peníze na zaplacení CadStudia nedá.

Když jsem tak nad tím přemýšlel, tak tyto dva spouštěče v seznamu chybí. Napadá mne spousta případů, kdy bych potřeboval hlídat hodnoty před tiskem nebo před zařazením. Když už by to nešlo přes CadStudio, tak bych minimálně poslal "zlepšovák" na AutoDesk. Pro ně by doplnění takovýchto funkci být problém nemusel, ne? :-)


-------------
Václav Dušek


Odeslal: Navara
Datum odeslání: 16.říj.2011 v 21:07
Vytváření ikonek není tak složité, jak se může na první pohed zdát. Pokud máte vytvořené makro ve VBA (ne v iLogicu!), tak je na to postup přes úpravu uživatelských příkazů. Viz obrázek
 
Co se týká samotného kódu, tak je složen ze dvou částí.
První část aktualizuje hmotnost a druhá spouští libovolný příkaz inventoru. Například tisk.
 
----
Sub PrintWithUpdateMass()
    'Aktualizace hmotnosti vsech odkazovanych dokumentu
    Dim drw As DrawingDocument
    Set drw = ThisApplication.ActiveDocument
   
    Dim doc As Document
    Dim mass As Double
   
    For Each doc In drw.AllReferencedDocuments
        mass = doc.ComponentDefinition.MassProperties.mass
    Next
   
    Call drw.Update
   
    'Spusteni tisku, nebo jineho prikazu
    Call ThisApplication.CommandManager.ControlDefinitions("AppFilePrintCmd").Execute
   
End Sub
---
Pozn.: V tomto kódu chybí ošetření chyb pro přehednost kódu.
 
Jak naložit s tímto makrem se dočtete zde
http://helpdesk.cadstudio.cz/helpdesk.html?id=F146 - http://helpdesk.cadstudio.cz/helpdesk.html?id=F146
 
 
 



Vytisknout stránku | Zavřít okno