Nach oben So gehts mit IDC Viel ADO um .. Tips und Tricks Einstellempfehlungen Expertendiskussion

So funktioniert IDC Abfragen mit Text-Dateien

  1. Datenquelle einrichten

Systemsteuerung - ODBC - System DSN
Über HINZUFÜGEN - wird eine weitere Quelle eingerichtet

Bei DEFINE - FORMAT etwa so vorgehen

Die "Datenbank" SAMMEL.TXT sieht dann etwa so aus

Datum Feld1 Feld2
8/1/97 A B
8/1/97 E D

Die Datei SCHEMA.INI enthält das Datenbank Design

[sammel.txt]
ColNameHeader=True
Format=TabDelimited
MaxScanRows=25
CharacterSet=OEM
Col1=DATUM Date
Col2=FELD1 Char Width 255
Col3=FELD2 Char Width 255
  1. Der Aufruf

Die Datei FEEDBACK.HTM ist der Ausgangspunkt, hier wird dem User was angezeigt. Parameter ham wer hier noch keine, also einfacher Aufruf der IDC Datei.

<HTML>
<HEAD>
<TITLE>
Einfache Datenbankabfrage
</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<H2>Internet-Datenbank-Connector Beispiel 1: Einfache Datenbankabfrage</H2>
<P>
<A HREF="/scripts/feedback.idc?">Klicken Sie hier, um eine Abfrage
auszuf&uuml;hren</A>
</BODY>
</HTML>
  1. Die SQL Anfrage

Die Datei FEEDBACK.IDC enthält die Datenbank-Anfrage. Wichtig dabei: in dem Verzeichnis in dem diese Datei liegt müssen Ausführrechte (Execute) eingestellt sein. Standardmäßig sind im Verzeichnis \Scripts diese Execute Rechte gesetzt, daher empfiehlt es sich die Datei dort abzulegen.

Datasource: Internet summary
Template: feedback.htx
SQLStatement:
+SELECT * from sammel.txt
  1. Die Ausgabe

Die Datei FEEDBACK.HTX bereitet die Ergebnisse auf. Für die HTX Datei sind keine Ausführrechte notwendig. Der Einfachheit halber bei der Wartung empfehlt es sich jedoch die Datei im gleichen Verzeichnis wie die .IDC abzulegen.

<HTML>
<HEAD><TITLE>testlauf</TITLE></HEAD>
<%begindetail%>

Zwischen begindetail und enddetails werden die Query-Ergebnisse eingefügt.

<%if CurrentRecord EQ 0 %>

Wenn der erste Satz (0-basierte Satznummer) daher kommt, dann einen Kopf einfügen

Abfrageergebnisse:
Datum feld1 feld2
<%endif%>

Ende des Kopfs

<%Datum%><br>
<%Feld1%><br>
<%Feld2%><p>
<%enddetail%>

Jetzt die Daten Feld für Feld ausgeben. Oft eignet sich eine Tabelle dafür besser. Hier würde es jedoch das Beispiel aufblähen.

<%if CurrentRecord EQ 0 %>

Nach dem Abarbeiten aller Sätze steht der Satzcounter beim letzten Satz. Nur, wenn überhaupt kein Satz gefunden wurden (0 Sätze zurückgegeben), dann steht er immer noch bei 0 - sprich: es gab kein Ergebnis und dann geben wir darüber Rückmeldung an den Anwender.

<I><B>Leider nichts gefunden.</B></I>
<%else%>
<I><B>Ende Listing.</B></I>
<%endif%>
</BODY>
</HTML>

Und das war es dann auch schon.

Schlußbemerkung:
dies ist ein Working Dokument (nun ja, wie alles im Internet ist es ständig in Bewegung). Es gibt noch viel zu sagen über IDC. Mich würde jedoch interessieren, ob es irgendjemand weitergeholfen hat. Von daher freue ich mich über Feedback, Fragen, Anregungen für weitere Erweiterungen. In diesem Sinne: nicht lange zögern und ab mit dem Mail an HubertD@neusob.de.

Zum Seitenanfang

Bei Fragen wenden Sie sich bitte an das Team
Stand: 19. April 1999.  Zur BN Eingangsseite