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: 14078 
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řenoPopis súčiastky

 Odpovědět Odpovědět archiv
Autor
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Téma: Popis súčiastky
    Zasláno: 23.zář.2013 v 16:19
Dobrý den.

Chcem sa spýtať či sa nedá automaticky za pomoci iLogic rozložiť názov súčiastky.
Napr. SW_34_05_02_Grundplatte toto celé sa mi zapisuje do čísla součásti. Ja by som to potreboval rozložiť na SW_34_05_02 to by bolo číslo součásti a Grundplatte aby zapísalo do popis (musí to byť velkým písmom).
Ale povodný názov ktorý vidím v zložke je SW_34_05_02_Grundplatte.

ILogic moc neovládam skôr vôbec.

Ďakujem za radu
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 23.zář.2013 v 17:07
Princip najdete v tipu:
Je potřeba přesně popsat vzor názvu - oddělovače nebo pevné délky podřetězců.
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 05:51
Tomu vôbec nerozumiem ako by som to mal prepísať. Dalo by sa mi pomôcť prosím.

Ďakujem
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 07:11
Rádi pomůžeme, ale právě že potřebujeme přesněji popsat ten vzor - dochází k oddělení vždy po 4. podtržítku? Nebo po posledním podtržítku? Nebo vždy po 12. znaku? Nebo po poslední numerické skupině?
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 07:29
Dochádza tomu vždy po poslednom podtržníku aby sa oddelil názov a zapísal do iVlastností "POPIS"
SW_17_00_02_Grundkorper
DFM_W_05_03_Schneidplatte
SW_27_01_10_07_Zwischenstuck

Uviedol som tu aj príklady. Počet podtržníkov sa môže meniť.

Velmi pekne ďakujem
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 08:08
Mělo by fungovat toto (netestováno):
 
docname=ThisDoc.FileName(False)
Dim matches As System.Text.RegularExpressions.MatchCollection
Dim match As System.Text.RegularExpressions.Match
Dim groups As System.Text.RegularExpressions.GroupCollection
matches = System.Text.RegularExpressions.Regex.Matches(docname, "\b.+_(.+)$\b")
If matches.count>0 Then
 For Each match In matches
  groups = match.Groups
  iProperties.Value("Project", "Description") = groups.item(1).Value
  MsgBox("iProperties set to " & groups.item(1).Value)
 Next
 Else
 MsgBox("No match!")
End If
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 08:25
Ďakujem velmi pekne funguje to.
Rozdeleni funguje ale ak by som mohol mať dotaz.

SW_34_07_00_Adapter
Rozdelí to pekne "Adapter zapíše do popisu" ale celý názov mi zostáva v čísle súčiastke SW_34_07_00_Adapter a to červeným by som potreboval vymazať preč s čísla součásti aby som to nemusel mazať ručne.

A nedalo by sa náhodou urobiť že vytiahne číslo "
SW_34_07_00" a zapíše ho do čísla součásti a zasa názov "Adapter" by sa zapísal do popisu. Tým by sa mi vyriešilo všetko.

Ak sa to tak ovšem dá tak urobiť.
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 08:32
Ano, to je jen drobná úprava:
 
docname=ThisDoc.FileName(False)
Dim matches As System.Text.RegularExpressions.MatchCollection
Dim match As System.Text.RegularExpressions.Match
Dim groups As System.Text.RegularExpressions.GroupCollection
matches = System.Text.RegularExpressions.Regex.Matches(docname, "\b(.+)_(.+)$\b")
If matches.count>0 Then
 For Each match In matches
  groups = match.Groups ' parenthesis 1 and 2
  iProperties.Value("Project", "Description") = groups.item(1).Value
  iProperties.Value("Project", "Part Number") = groups.item(2).Value
  MsgBox("iProperties set to " & groups.item(1).Value & " and " & groups.item(2).Value)
 Next
 Else
 MsgBox("No match!")
End If
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 24.zář.2013 v 08:38
Ďakujem velmi pekne.
Funguje to ako má.
ulahčili ste mi robotu
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 27.lis.2013 v 08:43
Dobrý den. funguje to fajn ale narazil som na problém:

Pri tvare SW_17_00_02_Grundkorper_SPI......mi to rozdelí na číslo súčiastky SW_17_00_02_Grundkorper a do popisu dá SPI (to znamená zrkadlové).Dá sa to prosím nejak ošetriť?

Další problém mám s tým že by som to potreboval to rozdelenie zvoliť len raz. Ak na súčiastke niečo zmením a dám to uložiť sa tam vyhadzuje stále tá tabulka. Dá sa to nejak urobiť aby to rozpísalo len raz a ked znovu uložím dokument že to nebude chcieť znova rozpisovať. Pri zostave 500 súčiastkach je to na dlho.

Ďakujem za odpoveď
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 27.lis.2013 v 09:36
To makro je navržené podle logiky "odděl za posledním podtržítkem". Pokud v některých případech tato logika neplatí, je potřeba stanovit jinou. Z toho příkladu mi nějaká jiná snadná logika nevyplývá - nebo je to vždy "5. skupina oddělená podtržítky"? nebo snad "první nečíselná skupina za čistě číselnými"? To už je na regulární výrazy trochu složitější.
To, kdy se dané pravidlo má spouštět, určujete pomocí událostí. Pokud se má spouštění nějak automatizovat podmíněně, upravili bychom makro jako zakázkový vývoj.
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 27.lis.2013 v 10:09
Tu prvú ulohu som vyriešil : SW_17_00_02_Grundkorper_SPI som nahradil SW_17_00_02_Grundkorper-SPI takže už to rozdeluje tak ako má SW_17_00_02 a na popis Grundkorper-SPI.

ta druha otázka by sa nadala spustiť caz spoušteč udalosti. Mám to nastavené na "po uložení dokumentu" či by sa to dalo zmeniť, lebo ked dávam uložiť po každej konštrukčnej zmene stále ten názov vyhadzuje a rozdeluje čo už ale nepotrebujem ked sa to  rozdelilo na začiatku.
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 28.led.2014 v 14:25
Prosím Vás dalo by sa to zordeliť za poslednou číselnou radou? ako by vyzeral ten kód. Nemožem nato prísť.


Ďakujem
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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 28.led.2014 v 15:18
Regulární výraz by pak měl vypadat takto:
 
\b(.+)_(\D+)$\b
 
ale nezkoušeno.
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 28.led.2014 v 21:15
Dobrý večer.

Ďakujem za výraz ale nefungu je to.

docname=ThisDoc.FileName(False)
Dim matches As System.Text.RegularExpressions.MatchCollection
Dim match As System.Text.RegularExpressions.Match
Dim groups As System.Text.RegularExpressions.GroupCollection
matches = System.Text.RegularExpressions.Regex.Matches(docname, "\b(.+)_(\D+)$\b")
If matches.count>0 Then
 For Each match In matches
  groups = match.Groups ' parenthesis 1 and 2
  iProperties.Value("Project", "Description") = groups.item(2).Value
  iProperties.Value("Project", "Part Number") = groups.item(1).Value
  MsgBox("iProperties set to " & groups.item(1).Value & " and " & groups.item(2).Value)
 Next
 Else
 MsgBox("No match!")
End If




toto je už s tým novým výrazom.
Skúšal som to na GRM_W_02_20_12_PLATTE_LINKS
Potrebujem to rozdeliť o poslednom čísle.

Ďakujem veľmi pekne.

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ů: 21434
Přímý odkaz na tuto zprávu Zasláno: 28.led.2014 v 21:27
Tento název se ale strukturou liší od předchozích případů. Pokud se to dále nezkomplikuje dalším případem, tak aktuální regulární výraz je tento (koncové skupině/skupinám ale teď musí předcházet alespoň jedna numerická skupina a v poslední skupině nesmí být číslice):
 
\b(.+\d+)_(\D+)$\b
Vladimír Michl (moderátor)
Arkance Systems s.r.o. - www.arkance-systems.cz
(podpora viz hd.cads.cz)
Zpět nahoru
CADCAPONE Zobrazit panel
Diskutér
Diskutér

Přihlášen: 13.lis.2012
Lokalita: Slovensko
Používám:
Inventor 2016
Stav: Offline
Bodů: 72
Přímý odkaz na tuto zprávu Zasláno: 28.led.2014 v 21:37
Ďakujem veľmi pekne.
Snád sa to už neskomplikuje.To by mal byť výsledný názov súšiastky.

Ešte raz vám ďakujem
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 9341:Použití iLogic na rozklad jména IPT souboru a naplnění iVlastností.
Tip 10851:iLogic - jak ve výkresu zpracovat materiál a cestu součásti?
Tip 9476:Ukládání DWG kopie IDW výkresu pojmenované podle revize.
Tip 8717:Jak ve výkresu zobrazit těžiště podsestavy?
Tip 9467:Automatické publikování schválených výkresů z Inventoru.
Tip 11550:iLogic: Spuštění externího procesu s parametry


 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 1,540 sekund.