Popis

Základní charakteristika

DBMoney je knihovna, která umožňuje přístup do tabulek databáze ekonomického informačního systému Money 2000 SE/S3 firmy CÍGLER SOFTWARE, a.s. Money 2000 SE je nejrozšířenějším ekonomickým systémem v České republice, pracuje pod Windows 95/98/NT/2000, ale používá interní formát databází. To ztěžuje externí přístup na jeho databáze, např. export, import pro vlastní internetový obchod, tisk štítků na jehličkových tiskárnách, vlastní zpracování dat, apod.

Databáze je souborového typu podobně jako např. DBF. Soubory mají příponu DAT, DIX, DIA, MDI, MDT. Přičemž bázová data jsou uložena v DAT, v dalších souborech jsou memo pole, indexy a zámky. Firma CÍGLER SOFTWARE, a.s. dodává COM knihovnu MON2KDBE.DLL, která umožňuje obousměrný přístup do databáze korektním způsobem. Tzn. umožňuje víceuživatelskou spolupráci nad databází včetně samotného Money 2000 SE/S3. Knihovna ale bohužel pouze exportuje COM rozhraní pro přístup do databáze ale toto rozhraní není lehce použitelné v Delphi (nejedná se ani o ODBC, BDE, TDataSet, atd.).

Proto vznikla knihovna DBMoney for Delphi, která pracuje nad MON2KDBE.DLL. Její stěžejní komponenta TMoneyTable a je přímým potomkem komponenty TDataSet a nepotřebuje ke své činnosti Borland Database Engine. Pod Delphi je tedy nyní možné s databázemi Money 2000 SE/S3 pracovat stejným způsobem jako s tabulkami DBF, DB či jinými tabulkami podporovanými přes BDE. Funkce je popsána v přiloženém manuálu a je zřejmá z přiložené demonstační aplikace DBMBROW.

Vlastnosti

Čtení/zápis

Je podporován obousměrný přístup čtení i zápis, včetně polí typu Date, Time, Memo a GUID.

Navigace

Jsou podporovány všechny navigační funkce First, Prior, Next, Last, EOF, BOF, IsEmpty, včetně bookmarků.

Zámky

Jsou podporovány zámky pro celé tabulky i pro jednotlivé záznamy.

Master / detail

Jsou plně implementovány funkce pro vztah master/detail podobně jako v DBTables. Detailní tabulka musí mít index podle spojovaných polí. Pokud je indexováno více polí než je spojováno, tak na těchto zbylých polích lze hledat nebo nastavit range.

Indexy

Tabulky DAT mají implementovány indexy, které mohou být nastaveny přes jedno nebo přes více polí.

Filtry

Slouží k filtrování záznamů, které jsou v aktuálním indexu. Funkce SetRangeStart, SetRangeEnd, ApplyRange, SetRange, EditRangeStart, EditRangeEnd, CancelRange jsou podobné jako v DBTables. Kromě těchto rozsahů postavených na indexech lze nastavit libovolný textový filtr. Vyhodnocování se provádí v MON2DFLT.DLL. Vlastní funkce (vyhodnocování výrazu) není implementováno.

Hledání

Jsou implementovány funkce Find, FindNearest, GotoKey, SetKey, EditKey podobně jako DBTables. Navíc je možno hledat i nad poli ve vztahu detail, pokud jsou ještě v indexu.

Autoinkremenace

Lze přiřazovat hodnoty identifikátorů nově přidávaných záznamů jako číselnou řadu. Nově přidaný záznam bude mít hodnotu o jedničku větší než nejvyšší dosavadní hodnota.

MON2KDBE.DLL

Knihovna (Automation Server) je dodávaná firmou CÍGLER SOFTWARE, a.s. a umožňuje korektní víceuživatelský přístup do databáze Money 2000 SE/S3. Funkce knihovny není potřeba používat přímo. Ke správné funkci je třeba používat aktuální verzi knihovny.

Knihovna už je součástí novějších distribucí programu Money S3.

DBBROW.EXE

Jednoduchý browser pro přímé procházení a opravy databázových tabulek. Umožňuje řazení podle indexu, hledání, hromadné vylňování hodnot atd. Je vhodné nastavit si program jak defaultní prohlížeč souborů s příponou ".dat".