Inhaltsverzeichnis

Datenbanken auf dem Portfolio

Vorwort

Es wird im Laufe der Zeit immer schwieriger, neue Programme zu finden, die man für das Pofo Betriebssystem programmiert hat. Sicherlich ist das verständlich, denn Programme schreibt man nur, wenn man auch sicher ist, daß sie verkauft werden.
Daher wollen wir uns in den nächsten PofoInfos 1) darauf konzentrieren, was es alles für Programme gibt, die entweder frei kopierbar sind oder Shareware Status haben. Damit die Übersicht bleibt, haben wir uns immer auf einen Themengebiet konzentriert. Die Idee einmal Datenbanken zu bearbeiten kam von Lars Aschenbach, der ja des öfteren seine Ideenvielfalt in seinen Artikeln bewiesen hat.

Was ist eine Datenbank?

Da streiten sich die Geister, wenn man nach der Definition einer Datenbank fragt. Grundsätzlich ist eine Datenbank die Aneinanderkettung von Datensätzen, wobei ein Datensatz Informationen enthält, die in einer Struktur aufgegliedert sind.

datenbankenbild.jpg

Das Paradebeispiel ist die Adressverwaltung, die in jeder Datenbankanwendung immer wieder als Beispiel angeführt wird. Oder die CD/LP Sammlung, die Mitgliederverwaltung und und und .
Die Daten werden in der Regel in eine einzige File gespeichert und mit einem entsprechenden Programm kann ich dann auf einzelne Datensätze zurückgreifen und sie editieren, lesen oder löschen.
Jede Adressverwaltung ist in der Regel eine Datenbank. Da Adressen und Telephonnummern nun zu den am meisten benutzen Datenbanktypen gehören, findet man solche Anwendungen mit dem Aufgabengebiet in sich abgeschlossen immer wieder in verschiedene Formate. Man kann sicherlich zig tausende Adressverwaltungen kaufen, oder Vereinsverwaltungen.
Der Vorteil einer Datenbank ist die Verwaltung der Daten. Daher gehören Datenbanken zu den Programmen, die schnell und effektiv Daten zur Verfügung stellen.

Aufbau einer Datenbank

Jeder kennt bestimmt das eine oder andere Programm, entweder aus Schulungen, Eigenbedarf oder der Arbeit. Daher ist das Verständnis auch recht leicht zu erlernen.
Eine Datenbank besteht aus Tabellen. Sie kann aus einer Tabelle alleine bestehen, oder mehrere Tabellen beinhalten. Ich will das anhand der Clubdatenbank einmal beschreiben.
Zur Verwaltung des Clubs gehören sicherlich die Adressen. Aber wir benötigen unteranderem die Rechnungsverwaltung, die Artikelverwaltung und die Konto- und Ausgabenverwaltung.
Jeder der Einzelteile besteht aus mindestens einer Tabelle. Die Mitgliederdaten befinden sich in einer Tabelle, die Artikel in einer anderen, die Rechungstabelle besteht aus den Rechnungen und den dazugehörigen Positionen und die Ausgabentabelle ist mit der Kontotabelle verbunden.
In jeder der Tabellen ist nun die Struktur eines Datensatzes verankert. Hier wird festgehalten, welche Datenfelder benötigt werden, von welchem Typ und wie groß sie sind. Beispiel: In der Adreßtabelle stehen Name und Vorname, die aus Text bestehen und die Mitgliedsnummer, die in dem Fall immer zehnstellig ist und eine Nummer darstellt. Bei der Rechnungstabelle steht die Rechnungsnummer, die Mitgliedsnummer und der Betrag und bei der Kontotabelle der Posten, der Betrag und das Datum. Natürlich sind es in jedem Fall noch viele Felder mehr. Es sind hier nur einige als Beispiel aufgeführt.
Nun habe ich meine Tabellen und Datenfelder in den Tabellen, nun benötige ich sogenannte Masken, mit denen ich die Daten später in die Tabellen eingeben werde.
Diese Masken sind das, was der Benutzer der Datenbank als erstes zu sehen bekommt. Es gibt Eingabe- und Ausgabemasken. In diesen Masken werden die Datenfelder einer Tabelle beschrieben und können eingegeben werden.Nach Speicherung der Daten wird der Datensatz dann an die Tabelle angehängt und kann dann später gelesen oder ausgegeben werden.
Neben den Masken benötigen wir später noch Abfragen. Diese Abfragen können nach einer Definition Daten aus den Tabellen heraussuchen (abfragen). Will sich also nur Mitglieder haben mit den Vornamen „Joe“ , so kann ich eine Abfrage programmieren, die diese Ausfgabe für mich erledigt. Die Abfragen sind das A und O einer Datenbank und jenachdem wie gut eine Abfrage ist, kann ich auch entsprechend gute Informationen aus der Datenbank erhalten.
Die nächsten Ausgaben einer Datenbank kommen von Reports. Berichte sind zum Beispiel die gedruckten Rechnungen oder die Artikellisten. Berichte und Abfragen arbeiten eng zusammen. So kann ich miteiner Abfrage eine Liste an Informationen erstellen, die mich interessieren. Also selektiv Daten auswerten und mit Reports aufarbeiten zu übersichtlichen Graphiken.

Die Indizes

Man kann sich schnell vorstellen, daß die Datenmengen eine Suche in den Datenzu einem zeitaufwenigen Unterfangen machen. Daher arbeiten alle Datenbanken mit sogenannten Indizes. Man nimmt ein wichtiges Datenfeld aus einer Tabelle, meinetwegen die Postleitzahl und indiziert sie. Damit ist gemeint, daßich ein neues File erstelle in dem alle Postleitzahlen darinstehen aus meiner Tabelle mit der Information, wo in der Tabelle der dazugehörige Datensatz ist.
Suche ich nun ein Mitglied und weiß er wohnt in der 67316, dann kann ich das Indexfeld nach der 67316 durchsuchen lassen, was sicherlich nur ein Bruchteil der Größe hat, wie die eigentliche Tabelle. Damit kann ich schneller die 67316 finden und dann sucht das Programm nur noch den Datensatz heraus, auf den der Index mit der 67316 verweist und zeigt mir den kompletten Datensatz an.
Jemehr Indizes ich anlege zu so vielen Datenfelden wie möglich, um so schneller kann ich aus großen Datenbanken Informationen holen.
Zum anderen kann man solche Indexe auch mit Indexen anderer Tabellen verbinden und mehrere Datensätze aus verschiedenen Tabellen suchen.
Habe ich eine Mitgliedsnummer, kann ich über den Index aus der Tabelle Rechnungen nachsehen was das Mitglied schon alles für Rechnungen bekommen hat.
Und so weiter.
Das waren im Groben der Aufbau und die Funktionen einer Datenbank. Daran erkennt man sehr schnell, das der Pofo eine sehr ähnliche Datenbank schon eingebaut hat und nimmt man es sehr genau, dann sind es sogar zwei.
Die Adreßverwaltung ist eine Datenbank mit einer Tabelle und einem Index, nämlich dem Namen oder dem was in der ersten Zeile einer Adresse steht.
Nach der ersten Zeile wird die Datenbank auch sortiert und man kann sich ja auch Informationen aus der Datenbank / Adreßverwaltung heraussuchen lassen und aussortieren.
So gesehen ist die Adreßverwaltung eine der einfachsten Datenbanken, die sich als Vokabeltrainer, Inventarliste oder Aufgabenverwaltung eignet.
Zettel ® ist im Prinzip ebenfalls eine Datenbank –allerdings auf ein bestimmtes Aufgabengebiet zugeschnitten.
Sogar die Terminverwaltung könnte man als Datenbank ansehen.
Wir hatten ja schon in Ausgaben vorher über die Adreßverwaltung berichtet und wollen uns heute den Programmen widmen, die wir noch zu diesem Thema gefunden haben.

DB

bild_datenbank1.jpg Dieses kleine Programm findet man auf der Club CD 2). Es ist knapp 11 KB groß und verbirgt ein komplette Datenbank in sich. Es ist nicht nur ein Programm zum Bearbeiten der Daten in einer Datenbank, es ist auch ein Programm zum Erstellen einer Datenbank. Das Programm ist in Englisch gehalten, aber trotzdem einfach zu bedienen.
Aufruf:

Man startet DB von jedem Speichermedium. Übergibt man gleich zum Start eine Datei, so wird diese geladen und man kommt in das Hauptmenü, von dem man dann die Daten in dem File bearbeiten kann.
{Bild Hautmenü}
Wir gehen einmal davon aus, daß wir schon eine Datenbank haben, die wir hier einmal „Artikel“ nennen. Es handelt sich dabei um eine kleine Datenbank, die Artikel mit Einkaufspreis und Verkaufspreis, Beschreibung und Artikelnummer so wie die Art des Artikels verwaltet.
Mit Display kann man sich den schon eingegebenen Artikel ansehen. Mit der Return Taste wird immer der nächste Artikel angezeigt.
bild_datenbank2.jpg Append fügt einen neuen Datensatz hinzu. Die Eingabemaske wurde bei der Erstellung der Datenbank generiert und dient uns nun als Eingabehilfe. Bei der Eingabe müssen alle Felder ausgefüllt werden.
Hier merken wir schon den ersten Nachteil einer englischen Software: Sie mag keine deutschen Umlaute.
New DB erlaubt es uns eine neue Datenbank zu generieren.
Bei diesem Punkt wird grundsätzlich entschieden wie die Datenbank einmal aussehen soll, wieviele Felder sie haben wird und wie diese heißen. Ferner werden die Positionen festgelegt, wo die Eingabefelder später auf dem Bildschirm erscheinen, d.h. ich lege die Eingabemaske fest.
Der Ablauf ist recht einfach und auch in Englisch kein Problem. Man legt zuerst einmal fest, ob es eine andere oder ob man dieselbe Datenbank nur noch einmal ohne Inhalt anlegen möchte.
Danach wird man nach der Anzahl der Felder gefragt. In unserem Beispiel sind das 5 Felder:
Artikelnnummer, Art, Beschreibung, der EK und VK Preis.
Diese Felder „beschrifte“ ich nun, was allerdings bedeutet, daß sie vom Namen her nicht länger als 8 Zeichen sein dürfen. Dann bestimme ich die Art des Datenfeldes. Dazu habe ich drei Möglichkeiten:

Danach gebe ich die Stellen an, sprich die Größe.
Danach bestimme ich, wo auf der späteren Eingabemaske das Feld erscheinen soll. Das sollte sinnvollerweise in der Eingabereihenfolge sein und die Felder dürfen sich nicht überlappen. Dazu malt man sich am besten den Bildschirm auf ein kariertes Blatt Papier. Bekanntlich hat der Pofo ja 40 mal 8 Zeichen Platz. Da ich ja weiß wie groß die Felder maximal sein können, kann ich das vorher auf einem Blatt Papier planen.
Die Eingabe der Daten erfolgt in unserem Beispiel 5 mal und zum Schluß wird man nochmals gefragt, ob die Eingaben korrekt sind.
Fertig ist die Datenbank.
Quit erklärt sich von alleine.
Serach ist eines der wichtigsten Aufgaben einer Datenbank. Damit kann ich nun in meiner kleinen Datenbank Datensätze suchen anhand von einem Suchbegriff. Wählt man diesen Menüpunkt, dann sucht man sich aus, in welchem Feld man suchen möchte und gibt dann den Text ein, nach dem gesucht werden soll. Wird ein Datensatz gefunden, so wird er auf den Bildschirm geprintet.
Findet man mehrere, so kann man sich die Daten nacheinander anzeigen lassen mit der Return-Taste.
Total erlaubt es nun Summen zu generieren. Das geht logischerweise nur bei Zahlenfeldern. Man sucht sich aus der Maske ein Feld heraus, in dem sich Zahlen befinden und bekommt schließlich die Summe aller Datensätze angezeigt.
Help ist eine kleine englische Hilfe, die die Menüpunkte nochmals erläutert.
Sicherlich ist DB.EXE kein Genuß an Komfortabilität oder Möglichkeiten. Vielmehr stellt es eine Möglichkeit dar, einwenig auf die Art der Darstellung und Datensatzgestaltung Einfluß zu nehmen. Mit einer guten BAT 3) Datei kann man hier eine recht lauffähige Verwaltung aufbauen.
Leider kann das Programm nicht drucken und ist somit für den meisten Gebrauch wenig sinnvoll.

F O L I B A S E

Einleitung

FOLIBASE ist ein Programm, das unter MS DOS, bzw. DIP auf dem Portfolio läuft. Es erlaubt die Suche nach einem bestimmten Begriff, und zeigt daraufhin einen dazugehörigen Text und/oder eine Grafik im 1920-Byte-Format an
Bedienung
Um FOLIBASE starten zu können, müssen zuerst folgende Einstellungen in der Systemvorbereitung vorgenommen werden:

FOLIBASE wird durch Eingabe von FOLIBASE.EXE in den Kommandointerpreter gestartet, nachdem es zu- vor auf der internen Ramdisk oder auf einer Speicherkarte des Portfolio vorliegt. Die Eingabeaufforderung für den gewünschten Begriff zeigt zugleich die Anzahl der vorhandenen Begriffe an, z.B. '#5 suche:',d.h. es sind fünf Begriffe gespeichert; um einen Begriff suchen zu lassen, tippen Sie einfach diesen ein oder auch einen Teil davon.
Erstellung von Begriffen

In der Datei FOLIBASE.PTH findet FOLIBASE die notwendigen Informationen, die hier aufgelistet sind (Beispiel):

DEMO (Begriff) \\ 
DEMO.TXT (Text für Begriff) \\ 
DEMO.FPX (Bild für Begriff) \\ 

Falls die Text- oder die Bilddatei nicht gewünscht wird, ist einfach „-“ statt des Dateinamens anzugeben.
Foliobase ist 13 kb groß. Die Verwaltung der Daten ist einfach gemacht, allerdings das Dazugeben von Dateien ist schon etwas problematischer. Geeignet ist das Programm für Leute die Texte und Bilder verwalten müssen. Aber hier kommt man schnell an die Speichergrenzen einer Ramkarte oder des Laufwerkes C des Pofos. Vorstellbarer Einsatz ist das Verwalten von Artikeln oder gemälden, bei denen man Bilder und Beschreibung verwalten will. Foliobase ist in Deutsch und damit sicherlich für den einen oder anderen geeignet.

PFCIJF

bild_datenbank3.jpg Leider ist mein holländisch verdammt schlecht und so kann ich zu der kleinen Datenbank nicht so viel sagen. Soweit ich das mitbekommen habe, verwaltet man Kurse und Teilnehmer einer Schule. Leider ist auch die Anleitung in Holländisch, was es für mich unmöglich macht eine genaue Beschreibung abzuliefern . Vielmehr wollte ich hier einen Appell an Mitglieder machen, die mir hier helfen können und das Programm ohne Sprachprobleme bedienen können. Wer will, soll sich das Programm auf der Diskette einmal ansehen, einen Bericht schreiben und ihn der Redaktion zukommen lassen.
Ich habe einmal ein Screenshot gemacht, um wenigstens ein kleines Bild zu haben.
Dem Programm ist (Gott sei Dank) eine Beispieldatenbank beigelegt.
Das Proggramm selbst ist kanppe 21 KB groß mit Dokumentation und der knapp einem kb großen Beispieldatei braucht man knappe 40 Kb freien Speicher.
bild_datenbank4.jpg Kleiner Tip, wenn man das Programm startet: Der Dateiname wird zusammengesetzt aus zwei Teilen. Der erste Teil ist „na“und der zweite Teil „3h1“. Zusammen gibt das den doch so selbsterklärenden Dateinamen: „klna3h1.sdf

CBASE

Das kleine Progrämmchen ist eine ebenfalls gute Datenbank auf eine etwas andere Art und Weise. Mit knapp 2 Kb und der PBRUN Datei, die man vielleicht so und so auf dem Pofo hat, kann man schnell einen Fragekatalog mit den Antworten dazu generieren.
Beispiel: Sie nehmen an einer Befragung teil und sollen Mitbürger über ein Themengebiet befragen. Dann stellen Sie zuerst die Fragen in einem Text zusammen. Dazu wird eine Textdatei mit dem Editor angelegt, die etwa dieses Aussehen hat:
CBASE {Damit erkennt das Programm die Gültigkeit des Files}
Erste Frage, 30 {die Zahl gibt an, wielang der Text sein soll, der eingegeben werden kann
Zweite Frage, 30… und so weiter.
Diese Datei speichert man mit CBASE auf das Laufwerk C (Wichtig, denn auf A:\ findet CBASE leider die Datei nicht). Dann startet man CBASE (und vorher PBRUN, das Runtimemodul des Basics).
Nach Eingabe der Fragedatei wird man noch gefragt, wo die Antworten abgespeichert werden sollen. Man sollte beachten, daß man etwas Speicher auf der Ramdisk hat. Je nach Aufkommen kann die dann entstehende Datei sehr groß werden.
Nun werden von CBASE die Fragen gestellt und man muß nur noch die Antworten eintippen oder eintippen lassen. Die Prozeduren kann man beliebig durchführen. Ist man mit einem Fragebogen fertig wird automatisch der nächte angefangen und so weiter. Mit Xit kann man jederzeit CBASE verlassen.
Der Clou: die Antworten werden in einem ADR File abgespeichet sortiert nach der ersten Frage. So kann diese Datei mit der ADR Verwaltung aufgerufen werden und bearbeitet oder ausgewertet werden.
Wie schon gesagt eine kleine sinnvolle Anwendung für den Pofo, die auch mit den vorhandenen Porgrammen arbeitet.

ARDMIN 600

bild_datenbank5.jpg Natürlich dürfen Adreßmanager nicht fehlen beim Thema Datenbanken.
ADRMIN 600 ist ein Programm, was Adressen in einem DBF File Format ablegt. Ich habe leider kein Dbase mehr auf meinem Rechner und kann daher nicht sagen, ob die Daten auch auf dem PC damit lesbar wären, aber das Programm läuft auch auf dem PC, somit kann man sicherlich auch die Daten auf dem PC editieren und verwalten.
Das Programm braucht 8 KB Platz für sich selbst und dann entsprechend dem Umfang für die Adressen.
Die Startmaske ist übersichtlich und gestaltet sich einfach. Hier ein Sceenshot.
Zuerst hat man die Suchfunktionen nach Name, Ort, Faxnummer oder Telephonnummer oder Bemerkungen. Mit E kann man Daten hinzufügen, wobei die Eingabemaske eher schlecht als recht ist.
Man kann keine Druckfunktionen nutzen und keine Löschungen vornehmen. Damit ist das Programm allemal dazu geeignet, den Pofo zum Adreßnachschlagewerk zu degradieren, daher kann man auch den Pofo mit O ausschalten.
Eine der weiteren Funktionen des Programmierens ist es, eine Art DBF Verwaltung anzubieten, mit dem sich seine Meßdaten zu Maschienen deren Standort verwalten lassen. Leider ist keine freie Eingabe möglich und es gibt keine Dokumentation zu diesem Programm. Schade eigentlich. Ich habe hier noch die Adresse gefunden. Vielleicht kann sich ein Mitglied, dessen Interesse geweckt wurde, sich an den Autor wenden.

DBFREAD

Wieder einmal die Holländer, die anscheinend mit den Datenbanken etwas mehr zu tun haben, die das kleine Programm dbfread.exe programmiert haben. Das knapp 8 Kb große Teilchen ist in der Lage eine Datenbank File im Dbase kompatiblen Format einzulesen und zu konvertieren.
Dabei wird einmal die Struktur eingelesen derDatenbank und auf den Bildschirm gezeichnet.Die Datenfeldbezeichnungen stehen dann hinter Zahlen. Diese Zahlen kann man nun eintippen und sich entscheiden, welches Feld in die neue ADR Datei exportiert werden soll. Man kann ihr dann eine Zeile in dem ADRFormat eines Datensatzes zuweisen.
Es ist kein Genuß, was an Komfort oder Eingabeleistungen hier geboten wird, aber es ist praktekabel und funktioniert.

FAZIT

Soweit zu den Datenbanken, die wir auf dem freien kopierbaren Markt gefunden haben. Sicherlich gibt es eine Menge an Programmen mehr. Alleine in dem kommerziellen Sektor sind viele Programme gewesen, die Aufgaben in verschiedenen Bereichen übernommen hatten. Leider haben viele Firmen keinen Ansprechpartner mehr oder wissen sogar nichts von Ihrer Software. Sollten wir noch etwas in Erfahrung bringen, dann wird das in einer der nächsten PofoInfos erscheinen.

Wo sonst ?

Sollten weiter Erfahrungen mit Datenbanken bekannt sein, bitten wir diese hier zu hinterlassen.

1)
PI bedeutet PofoInfo, die Clubzeitschrift des Portfolioc Club Deutschland, Ausgaben Übersicht
2)
Die Club CD kann immernoch bestellt werden unter www.portfolioclub.de/shop/shop.html
3)
Stapeldateinen unter DOS