11.11.2014 Views

pobierz plik referatu - Politechnika Śląska

pobierz plik referatu - Politechnika Śląska

pobierz plik referatu - Politechnika Śląska

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008<br />

J. Frączek<br />

www.bdas.pl<br />

importu/eksportu danych, menu. Podstawową wadą generatorów a<strong>plik</strong>acji bazodanowych<br />

jest fakt, że są to rozwiązania płatne.<br />

Przedstawiona w niniejszym rozdziale biblioteka EALib wspomaga szybkie i efektywne<br />

tworzenie a<strong>plik</strong>acji bazodanowych. Opisywane rozwiązanie oparto na bibliotece Borland<br />

dbSwing, której komponenty pozwalają powiązać kontrolki wizualne z obiektami warstwy<br />

dostępu do danych [8]. Bazując na klasach biblioteki dbSwing utworzono nowe klasy<br />

o wzbogaconej funkcjonalności. Opisywane rozwiązanie jest wynikiem prac własnych oraz<br />

kilkuletniego wysiłku osób współtworzących poszczególne elementy rozwiązania<br />

w ramach realizowanych tematów prac dyplomowych magisterskich [1,2,3,4,5].<br />

Przed przedstawieniem zrealizowanego projektu opisano wymagania jakie powinien<br />

spełniać framework tworzenia a<strong>plik</strong>acji bazodanowych. W części tej zebrano osobiste<br />

doświadczenia związane z użytkowaniem interfejsu graficznego rozbudowanych a<strong>plik</strong>acji<br />

ERP: IFS Applications, Microsoft Dynamics NAV oraz opisano rozwiązania oferowane<br />

przez generatory a<strong>plik</strong>acji: MSE Magic eDeveloper, Centura, Oracle Forms Developer.<br />

2 Wymagania dotyczące warstwy prezentacji a<strong>plik</strong>acji bazodanowych<br />

Framework programistyczny dla tworzenia desktopowych a<strong>plik</strong>acji bazodanowych<br />

realizowanych przy użyciu uniwersalnych języków programowania (Java, C/C++/C#,<br />

Pascal) powinien oferować gotowe rozwiązania dla następujących obszarów a<strong>plik</strong>acyjnych:<br />

− klasa okna głównego a<strong>plik</strong>acji,<br />

− klasa formatki podstawowej,<br />

− klasy (lub szablony) umożliwiające szybką realizację najczęściej występujących<br />

formatek:<br />

− kartoteka (np. kartoteka pojedynczego pracownika),<br />

− lista (np. lista wykaz kont księgowych),<br />

− kartoteka z listą:<br />

− obsługa danych pozostających w relacji 1:N (np., dane wydziału wraz<br />

z listą jego pracowników),<br />

− obsługa danych pozostających w relacji M:N (np., grupy użytkowników<br />

i przypisani do nich użytkownicy),<br />

− klasa słownika,<br />

− jednolite mechanizmy obsługi odczytu i edycji danych,<br />

− zintegrowane mechanizmy filtrowania i wyszukiwania danych,<br />

− możliwość automatycznej aktualizacji a<strong>plik</strong>acji,<br />

− zintegrowany system bezpieczeństwa.<br />

Zastosowanie konkretnego szkieletu programistycznego może wymagać spełnienia<br />

dodatkowych wymagań, a w szczególności:<br />

− odpowiedniego wypełnienia treścią <strong>plik</strong>ów konfiguracyjnych frameworka,<br />

− istnienia struktur metadanych w bazie danych (np. do przechowywania informacji<br />

o konfiguracji formatek a<strong>plik</strong>acji),<br />

− określonej budowy obiektów warstwy przechowywania danych (np. przy stosowaniu<br />

mechanizmów tzw. optymistycznego blokowania).<br />

Podane w dalszych rozdziałach cechy i funkcjonalności szczegółowe fameworku są<br />

pewną propozycją. W szczególności projektanci szkieletu programistycznego mogą przyjąć<br />

inne założenia i wdrożyć rozwiązania odmienne od zaproponowanych. Przedstawione<br />

propozycje dotyczą frameworku służącego do realizacji a<strong>plik</strong>acji desktopowych,<br />

110<br />

(c) Copyright by <strong>Politechnika</strong> Śląska, Instytut Informatyki, Gliwice 2008

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!