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ě nás čte: 990 
RSS tipy RSS kanál - CAD tipy
RSS diskuze RSS kanál - CAD 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 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

SKLÁDÁNÍ NÁZVU Z PRÁDNÝCH VLASTNOSTÍ

 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ů: 345
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Lukáš Záruba Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Téma: SKLÁDÁNÍ NÁZVU Z PRÁDNÝCH VLASTNOSTÍ
    Zasláno: 14.pro.2018 v 19:16
Zdravím,

Mám ilogic, který mi skládá popis nebo název dílů z uživatelských i-vlastností a třeba jednoho či několika parametrů. 

iProperties.Value("Summary", "Title")= iProperties.Value("Custom", "PREDNAZEV")&" "&iProperties.Value("Custom", "PREDNAZEV2")&" "&iProperties.Value("Custom", "TYP")&" "&iProperties.Value("Custom", "MAT")&" - "&iProperties.Value("Custom", "ROZMER_KRYTU")

Problém nastává když mám pravidlo složené s několika i-vlastností jedna nebo několik jich je prázdných. V názvu to potom napíše mezeru. Potřebuji do vzorce vložit nějaký zástupný symbol, který řekne inventoru prázdné i-vlastnosti neřeš!

Jde to nějak? 
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
CAD Studio s.r.o.

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 18067
Možnosti příspěvku Možnosti příspěvku   Poděkování (1) Poděkování1   Citace Vladimír Michl Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 14.pro.2018 v 19:32
Je potřeba jednotlivě ošetřit možné chyby přístupu k neexistujícím vlastnostem - např. pomocí Try/Catch:


Try
Nazev = iProperties.Value("Custom", "PREDNAZEV")
Catch
End Try
Try
Rozmer = iProperties.Value("Custom", "ROZMER_KRYTU")
Catch
End Try
MsgBox(iProperties.Value("Summary", "Title") & "-" & Nazev & "-" & Rozmer)
Vladimír Michl (moderátor)
CAD Studio s.r.o. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.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ů: 345
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Lukáš Záruba Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 14.pro.2018 v 20:51
Ale Já potřebuji aby mi toto pravidlo vyplnilo I-vlastnost "NÁZEV" a to tak aby mi ho složil z následujících i-vlastností nebo parmetrů. Až sem pravidlo funguje skvěle! Už v základní šabloně mám připravené uživatelské i-vlattnosti "PREDNAZEV"; "PREDNAZEV2"; "TYP" a parametr DÉLKA.

iProperties.Value("Summary""Title")= iProperties.Value("Custom""PREDNAZEV")&" "&iProperties.Value("Custom""PREDNAZEV2")&" "&iProperties.Value("Custom""TYP")&""&iProperties.Value("Custom""MAT")&" - "&iProperties.Value("Custom""DÉLKA")

problém nastane když použiju toto pravidlo a hodnota třeba u "PREDNAZEV2" je prázná viz výstřižek. potom mi to složí název a místo vynechání vloží mezeru:

"PREDNAZEV" "Zde místo vynechání hodí mezeru" "TYP" - "DÉLKA"

Potřebuji to upravit tak aby se při skládání názvu inventor podíval zda není zadaná i-vlatnost či parametr prázný a v tom případě ho vynechal.
Připojené náhledyPřihlaste se pro zobrazení plné verze - 4903/Výstřižek1_2018-12-14_20-50-47.JPG

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
CAD Studio s.r.o.

Přihlášen: 09.zář.2004
Lokalita: ČR (JČ)
Používám:
Dodáváme produkty Autodesk
Stav: Offline
Bodů: 18067
Možnosti příspěvku Možnosti příspěvku   Poděkování (1) Poděkování1   Citace Vladimír Michl Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 14.pro.2018 v 22:25
Ano, rozumím, ale ten princip právě platí i pro tento případ. Jednak je třeba ošetřit případ, kdy ty vlastnosti vůbec neexistují a jednak pak můžete ošetřit i jejich prázdnou hodnotu ("vynechat" znamená přiřadit hodnotu "").

Např. tedy:

Rozmer=""
Try
Rozmer = iProperties.Value("Custom", "ROZMER_KRYTU") & " "
Catch
End Try
iProperties.Value("Summary", "Title")= Rozmer & ….
Vladimír Michl (moderátor)
CAD Studio s.r.o. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.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ů: 345
Možnosti příspěvku Možnosti příspěvku   Poděkování (0) Poděkování0   Citace Lukáš Záruba Citace  OdpovědětOdpověď Přímý odkaz na tuto zprávu Zasláno: 15.pro.2018 v 09:16
ZDRAVÍM, 

Mnohokrát děkuji již mi to funguje:

Try
 Nazev1 = iProperties.Value("Custom", "N1")
 Catch 
End Try
Try
 NMezera1 = iProperties.Value("Custom", "N1-M")
 Catch 
End Try
Try
 Nazev2 = iProperties.Value("Custom", "N2")
 Catch 
End Try
Try
 NMezera2 = iProperties.Value("Custom", "N2-M")
 Catch 
End Try
Try
 Nazev3 = iProperties.Value("Custom", "N3")
 Catch 
End Try
Try
 NMezera3 = iProperties.Value("Custom", "N3-M")
 Catch 
End Try
Try
 Rozmer1 = iProperties.Value("Custom", "R1")
 Catch 
End Try
Try
 RMezera1 = iProperties.Value("Custom", "R1-M")
 Catch 
End Try
Try
 Rozmer2 = iProperties.Value("Custom", "R2")
 Catch 
End Try
Try
 RMezera2 = iProperties.Value("Custom", "R2-M")
 Catch 
End Try
iProperties.Value("Summary", "Title") = (Nazev1 &""& NMezera1 &""& Nazev2 &""& NMezera2 
&""& Nazev3 &""& NMezera3 &""& Rozmer1 &""& RMezera1 &""& Rozmer2 &""& RMezera2)

Nyní ní mohu mít jeden univerzální vzorec který mi vyplní správně název bez ohledu na to z kolika slov nebo rozměrů se skládá. Do teď jsem měl spousty vzorců uloženy jako fragment a používal jsem je dle potřeby. 

Připojené náhledyPřihlaste se pro zobrazení plné verze - 4903/Výstřižek3.JPG




Upravil Lukáš Záruba - 15.pro.2018 v 09:19
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 5848:VIPSkládání PLT výkresů (nesting) i na plotry nepodporující tuto funkci.
Tip 2273:Jak z PC nastavit časový interval pro skládání výkresů?
Tip 6975:VIPProblém s dialogem vlastností modelu zobrazení Topobase.
Tip 1997:Co je to nesting a jaké plotry jej podporují?
Tip 1432:Jak editovat objekt uvnitř skupiny bez rozbíjení a následného skládání skupiny?
Tip 9481:Dynamické zobrazení libovolné vlastnosti objektu jako pole.


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