Zadania - 1

  1. Zbudowac aplikację do przeglądania dowolnie wybieranych przez użytkownika tabel dBase i Paradox - użyć komponentu TOpenDialog (z odpowiednimi filtrami) lub innych, umożliwiających wybór tabel do edycji.
  2. Zbudować aplikację z własną obsługą operacji związanych z nawigacją, edycją, dodawaniem, usuwaniem i anulowaniem zmian (bez użycia TDBNavigator).
  3. Na zaprojektowanej i utworzonej (w dowolny sposób) przez siebie przykładowej tabeli zademonstrować programowy dostęp do jej zawartości: a) wykonanie większej ilości zapisów w tabeli; b) czyszczenie zawartości tabeli c) modyfikacja zawartości wszystkich rekordów tabeli (np. zamiana małych liter na duże, przeliczenie zawartości pól numerycznych wg ustalonego wzoru, itp.).
  4. Oprogramować procedurę generującą raport z zawartości wybranej dowolnie tabeli do pliku tekstowego lub HTML (jako separatora wartości pól użyć np. tabulatora (#9) - raport otworzyć w Excelu; lub znaczników HTML).
  5. Napisać program, który będzie kreował w "runtime" nowy formularz z obiektami klas: TDBGrid, TDBNavigator, TTable, TDataSource; formularz każdorazowo ma pełnić rolę przeglądarki dla wybranej w głównym formularzu tabeli bazy danych.

Użyteczne właściwości i metody klas TTable i TField

Właściwość FIELDS :TFields;

Ilość pól w tabeli:

var n:Integer;
 //...
 n:=Table1.Fields.Count;

Wartość pola typu całkowitego w pierwszym polu tabeli:

var x:Integer;
 //...
 x:=Table1.Fields[0].AsInteger;

Wartość pola typu łańcuchowego w trzecim polu tabeli:

var s:String;
 //...
 s:=Table1.Fields[2].AsString;

Można dokonywać konwersji typów, czyli np.:

var s:String;
 //...
 s:=Table1.Fields[0].AsString;

nawet gdy pole nie jest typu łańcuchowego.

Metody .BOF i .EOF

Sprawdzenie czy "kursor" tabeli jest na końcu tabeli:

If Table1.EOF then //...

Sprawdzenie czy "kursor" tabeli jest na początku tabeli:

If Table1.BOF then //...

Format tabeli w HTML

<TABLE> //znacznik początku tabeli
 <TR> 
    <TH>P1</TH> 
    <TH>P2</TH>
    <TH>P3</TH> 
 </TR>
 <TR>
    <TD>123</TD>
    <TD>456</TD>
    <TD>789</TD>
 </TR>
 <TR> 
    <TD>1221</TD>
    <TD>1223</TD>
    <TD>1224</TD>
 </TR>
</TABLE>

P1 P2 P3
123 456 789
1221 1223 1224

<TABLE>  - znacznik początku tabeli
</TABLE> - znacznik końca tabeli

<TR>     - znacznik początku wiersza
</TR>    - znacznik końca wiersza

<TH>     - znacznik początku komórki nagłówkowej
</TH>    - znacznik końca komórki nagłówkowej

<TD>     - znacznik początku komórki danych
</TD>    - znacznik końca komórki danych