[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
DB10.PAS
{ ---------------------------------------------------------------- }
{ TDB-TESTPROGRAMM 10 - VIEWER F.R BELIEBIGE DBASE-DATEIEN }
{ ---------------------------------------------------------------- }
{ Es werden die in der Kommandozeile angegebenen Datenbank-Dateien }
{ - sofern m.glich / existent - in Struktur und Inhalt angezeigt. }
{ Wildcards sind nicht erlaubt; sollte keine Datei angegeben wer- }
{ den, so wird eine Eingabe erfragt. }
{ ---------------------------------------------------------------- }
{ (c) 1992 by Aurora featuring M.J. Schwaiger }
{ ---------------------------------------------------------------- }
{ History: }
{ 1992-03-15 MS Modulschnittstelle / Objektdefinitionen }
{ ---------------------------------------------------------------- }
PROGRAM TDBTst1;
USES
ADOS,
Error,
TDB;
VAR
Db : PDataBase;
Name : STRING;
Count : INTEGER;
Typ : CHAR;
NK,
Size,
Params : BYTE;
D : TEXT;
BEGIN
SetErrHandler (ErrPrint);
ASSIGN (D, '');
REWRITE (D);
IF PARAMCOUNT < 1 THEN
BEGIN
WRITELN;
WRITE ('Dateiname: ');
READLN (Name);
IF POS ('.', Name) < 1 THEN
Name := Name + '.DBF';
IF NOT (ExistiertDatei (Name)) THEN
BEGIN
WRITELN (D);
WRITELN (D, 'Datenbank ', Name, ' nicht gefunden !');
WRITELN (D);
END { IF NOT (ExistiertDatei (Name)) THEN }
ELSE
BEGIN
Db := NEW (PDataBase, Use (Name));
WRITELN (D);
WRITELN (D, ' Datenbankstruktur:');
WRITELN (D);
FOR Count := 1 TO Db^.AnzahlFelder DO
BEGIN
Db^.FeldTyp (Db^.FeldName (Count), Typ, Size, NK);
WRITE (D, Count : 2, '. ', Db^.FeldName (Count), ' ',
Typ, ' ', NK);
IF Typ = 'N' THEN
WRITELN (D, ' : ', NK)
ELSE
WRITELN (D);
END; { FOR Count := 1 TO db^.AnzahlFelder DO }
WRITELN (D);
WRITELN (D, Db^.AnzahlFelder, ' Felder, ', Db^.Count,
' Datens.tze');
WRITELN (D);
WRITELN (D);
WRITELN (D, ' Datenbankinhalt:');
WRITELN (D);
IF Db^.EOF THEN
BEGIN
WRITELN (D);
WRITELN (D, 'Keine Datens.tze gespeichert');
END
ELSE
BEGIN
Db^.First;
WHILE NOT (Db^.EOF) DO
BEGIN
WRITE (D, Db^.RecNo : 4, '. ');
FOR Count := 1 TO Db^.AnzahlFelder DO
WRITE (D, Db^.READ (Db^.FeldName (Count)), ' ');
WRITELN (D);
Db^.Skip (1);
END; { WHILE NOT (db^.EOF) DO }
END; { IF db^.EOF THEN ... ELSE }
WRITELN (D);
DISPOSE (Db, CLOSE);
END; { IF NOT (ExistiertDatei (Name)) THEN ... ELSE }
END { IF PARAMCOUNT < 1 THEN }
ELSE
BEGIN
FOR Params := 1 TO PARAMCOUNT DO
BEGIN
Name := PARAMSTR (Params);
IF POS ('.', Name) < 1 THEN
Name := Name + '.DBF';
IF NOT (ExistiertDatei (Name)) THEN
BEGIN
WRITELN (D);
WRITELN (D, 'Datenbank ', Name, ' nicht gefunden !');
WRITELN (D);
END { IF NOT (ExistiertDatei (Name)) THEN }
ELSE
BEGIN
Db := NEW (PDataBase, Use (Name));
WRITELN (D);
WRITELN (D, ' Datenbankstruktur:');
WRITELN (D);
FOR Count := 1 TO Db^.AnzahlFelder DO
BEGIN
Db^.FeldTyp (Db^.FeldName (Count), Typ, Size, NK);
WRITE (D, Count : 2, '. ', Db^.FeldName (Count), ' ',
Typ, ' ', NK);
IF Typ = 'N' THEN
WRITELN (D, ' : ', NK)
ELSE
WRITELN (D);
END; { FOR Count := 1 TO db^.AnzahlFelder DO }
WRITELN (D);
WRITELN (D, Db^.AnzahlFelder, ' Felder, ', Db^.Count,
' Datens.tze');
WRITELN (D);
WRITELN (D);
WRITELN (D, ' Datenbankinhalt:');
WRITELN (D);
IF Db^.EOF THEN
BEGIN
WRITELN (D);
WRITELN (D, 'Keine Datens.tze gespeichert');
END
ELSE
BEGIN
Db^.First;
WHILE NOT (Db^.EOF) DO
BEGIN
WRITE (D, Db^.RecNo : 4, '. ');
FOR Count := 1 TO Db^.AnzahlFelder DO
WRITE (D, Db^.READ (Db^.FeldName (Count)), ' ');
WRITELN (D);
Db^.Skip (1);
END; { WHILE NOT (db^.EOF) DO }
END; { IF db^.EOF THEN ... ELSE }
WRITELN (D);
DISPOSE (Db, CLOSE);
END; { IF NOT (ExistiertDatei (Name)) THEN ... ELSE }
END; { FOR Params := 1 TO PARAMCOUNT DO }
END; { IF PARAMCOUNT < 1 THEN ... ELSE }
CLOSE (D);
END. { PROGRAM TDBView }
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson