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

 právě čte: 4940 
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

Téma uzavřenoPoužití DBConnect a data uložená v XRECORD

 Odpovědět Odpovědět archiv
Autor
JKOTASEK Zobrazit panel
Nováček
Nováček
Avatar

Přihlášen: 06.led.2016
Lokalita: ČR (ÚL)
Používám:
AutoCAD Map 3D 2015
Stav: Offline
Bodů: 3
Přímý odkaz na tuto zprávu Téma: Použití DBConnect a data uložená v XRECORD
    Zasláno: 06.led.2016 v 11:03
Zdravím,

ve firmě vyvíjíme systém na čtení DXF souborů s následnou provázaností s SQL DB.
K tomuto účelu využíváme v Autocadu při tvorbě výkresů funkce DBConnect (XDATA), s čímž souvisejí parametry 1000, 1004 a 1005.
V podstatě nemáme zásadní problém a víceméně nám vše dle našich potřeb už léta funguje.

Občas ale narážím na problematiku údajů uložených v sekci XRECORD.
Manuály k DXF se k této části vyjadřují pouze ve smyslu "zde si aplikace Autocadu ukládají svá data", ale už jsem se nikde nedočetl, v jaké konkrétní podobě v případě používání DBConnect.

Např.:
  0
XRECORD
...
330
21A
1004
1409030000000000FFFFFFFF0200FFFF
330
21A
330
21C
1004
50F9020000000000FFFFFFFF0100FFFF
1000
Propojení1Popisek1

330
280
1004
8FFA020000000000FFFFFFFF0100FFFF
1000
Propojení1Popisek1


Zda k černému kódu 1000 patří jak červená část s 1 entitou a kódem 1004, tak zelená část s 2 entitami a společným kódem 1004.
Podle mého zkušebního výkresu ano a takto s tím pracuji, ale občas tam zůstanou údaje, které mi toto pravidlo naruší, např. že zcela chybí kód 1000. Obvykle se to opraví v Autocadu pomocí funkce Ověření.
Ale i tak bych chtěl mít algoritmus upravený tak, aby tuto chybu dokázal ošetřit.

Dokážete mě, prosím, někdo nasměrovat nebo poradit, kde se dočtu, co konkrétně a v jaké podobě je v XRECORD v souvislosti s DBConnect uložené?
JK
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: Online
Bodů: 16558
Přímý odkaz na tuto zprávu Zasláno: 06.led.2016 v 11:44
DBConnect je jen jedna z aplikací/funkcí využívající rozhraní ASE. Záleží zda používáte pouze DBConnect příkazy nebo i nějaká vlastní API volání ASE. V DWG databázi pak mohou XRECORD záznamy vypadat dost různě (může záležet i na verzi AutoCADu).
 
Co je účelem (zhruba) oné hlavní aplikace? Tento přístup přes DXF a hodně staré funkce ASE může být dost nespolehlivý.
Vladimír Michl (moderátor)
CAD Studio a.s. - www.cadstudio.cz
(podporu najdete na helpdesk.cadstudio.cz)
Zpět nahoru
JKOTASEK Zobrazit panel
Nováček
Nováček
Avatar

Přihlášen: 06.led.2016
Lokalita: ČR (ÚL)
Používám:
AutoCAD Map 3D 2015
Stav: Offline
Bodů: 3
Přímý odkaz na tuto zprávu Zasláno: 06.led.2016 v 14:20
Používáme čistě jen příkazy DBConnect a s tím spojené vkládání popisek volných a provázaných s entitami. Žádné nadstavby nebo vlastní funkce, čistě jen plná verze Autocadu.

Výsledkem naší aplikace je, že dokáže z DXF vytáhnout seznam DB_ID uložených v XDATA.
Zároveň jsme schopni získat vztah DB_ID (kód 1004) a ENT_ID (kód 5), tedy s jakým řádkem DB je jaká entita propojená, což není v sekci ENTITIES problém, tam to dokáži 100% načíst a je to v pohodě.
Ale jakmile načítám informace z XRECORD (související s ASE_INDEX_DICTIONARY), už se nemám o co opírat (nějaký manuál) a v podstatě vycházím z předpokladu, který jsem uvedl v dotazu.

Ano, ASE je stará funkce a my ji používáme už od Autocadu 2000. Také proto si zatím všechny výkresy ukládáme do formátu DXF verze 2000, abychom s tím neměli problém.
Zpět nahoru

Pro technickou podporu CAD
kontaktujte Helpdesk

Příbuzné CAD tipy:
Tip 4778:Výkresové texty řízené obsahem databáze.
Tip 2821:Jak lze ovládat příkaz DbConnect z příkazové řádky nebo skriptu?
Tip 2463:Jak zkopírovat spojení, popisky či dotazy dbConnect z jednoho výkresu do druhého?
Tip 22:connecting Excel sheet by dbConnect
Tip 6367:Vložení a aktualizace času a datumu ve výkresu AutoCADu
Tip 1504:Jak uložit výkres z Mechanical Desktopu do formátu starší verze AutoCADu?


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