| Variable | Bedeutung | 
	| ndat-type | Auswahl zwischen ODBC und JDBC als Datenbank-Schnittstelle. 
 ODBC:
 
 ndat-type=jni
 
 JDBC:
 
 ndat-type=ndatjdbc
 
 Für jede ndat-Schicht kann eine ndat-type-Belegung
	ausgewählt werden, d. h. in der ndat.dft können beide Möglichkeiten vertreten sein.
 | 
    | DATABASE | DATABASE und ODBC 
 DATABASE ist der Standardparameter für den Namen der ODBC-Datenquelle.
 
 ndat-type=jni
 DATABASE=IFAS
 (*siehe DSN-Konfiguration über Windows => ODBC-Datenquellen-Administrator*)
 
 DATABASE und JDBC
 
 Im Falle der Nutzung von ODBC wird nur der Parameter
         DATABASE verwendet. Bei JDBC hingegen
         sind die Parameter DATABASE_DRIVER und
         DATABASE_CONNECT nötig.
 
 Je nach Art der Datenbank gibt es für JDBC verschiedene Treiber und verschiedene Wege, um eine Datenbankverbindung aufzubauen:
 
         Tipp:SQL (Microsoft-Treiber):
 DATABASE_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver
 DATABASE_CONNECT=jdbc:sqlserver://10.4.20.31;database=IFAS;integratedSecurity=true
 (*Zu beachten ist bei Microsoft SQL Server die Instance. Der Name kann je nach Installation variieren (meist SQLEXPRESS)*)
 
 Allgemeine Syntax:
 jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
 Klicken, um zu einer Erläuterung zu gelangen
Die Konfigurationen für die Verbindung mit einem SQL-Server sind durchaus variabel. Es existiert eine Fülle an
	optionalen Parametern, wie integratedSecurity=true im obigen Beispiel. Ob diese weiteren Parameter
	verwendet werden, bleibt dem zuständigen Systemadministrator überlassen. Eine Übersicht liefert das
    Microsoft Developer Network (MSDN).
 
 
 Access:
 DATABASE_DRIVER=sun.jdbc.odbc.JdbcOdbcDriver
 (*Notwendige Angaben zum verwendeten Treiber*)
 DATABASE_CONNECT=jdbc:odbc:;DRIVER=Microsoft Access Driver
 (*Notwendiger Connect-String*)
 (*.mdb);DBQ=d:\Database\ifas.mdb
 (*Name der verwendeten Datenbank*)
 
 Oracle:
 DATABASE_DRIVER=oracle.jdbc.driver.OracleDriver
 DATABASE_CONNECT=jdbc:oracle:thin:@orarepl01.duisburg.kisters.de:1521:IFAS01
 (*jdbc:oracle:thin:[user/password]@host[:port][:SID]*)
 
 Bei wechselndem Betrieb kann sowohl der ODBC- als auch die JDBC-DATABASE-Parameter in der ndat.dft belegt werden.
	Über ndat-type kann dann flexibel zwischen ODBC und JDBC gewechselt werden.
 
 Alternativ kann durch die Angabe FileDSN erreicht werden, dass die Einrichtung eines ODBC-Treibers entfällt; das gesamte IFAS-Paket kann allein durch einfaches
	Kopieren des Verzeichnisses C:\ifas eingerichtet werden:
 
 1) SQL-Server-Beispiel:
 
 
DATABASE=FileDSN=C:\ifas\bin\IFAS.dsn 
 
         | Inhalt der Datei IFAS.dsn: (Bsp. für SQL-Server) |  
         | [ODBC] |  
         | DRIVER=SQL Server | *Treiber* |  
         | DATABASE=IFAS | *Datenbank* |  
         | SERVER=nixdui04 | *Server* |  
         |  |  
         | [JDBC] |  
         | DATABASE_DRIVER=com.microsoft.sqlserver.jdbc.SQLServerDriver | *Notwendige Angaben zum verwendeten Treiber* |  
         | DATABASE_CONNECT=jdbc:sqlserver://nixdui04;database=IFAS | *Art der Schnittstelle:Datenquelle:Bezeichnung des Servers:Name der
         Datenbank* |  
         | ndat-type=NdatJDBC | *Angabe des entsprechenden Ndat-Types, welcher innerhalb der IFAS-Module
         zunehmend verwendet wird* |  
 2) Oracle-Beispiel:
 
 
ndat-type=ndatjdbc
DATABASE=FileDSN=C:\ifas\bin\IFAS-Oracle1.dsn;
DATABASE_DRIVER=oracle.jdbc.driver.OracleDriver
DATABASE_CONNECT=jdbc:oracle:thin@orarepl01.duisburg.kisters.de:1521:IFAS01
 
 
         | Inhalt der Datei IFAS-Oracle1.dsn: (Bsp.
         für Oracle) |  
         | [ODBC] |  
         | DRIVER=Oracle in ORA9201Server | *Angabe des benötigten Treibers* |  
         | DBQ=ifas | *Name der Datenbank* |  
         | SERVER=ifas | *Bezeichnung des Servers* |  | 
    | UID | Benutzerkennung zur Anmeldung an die Datenquelle. Der Parameter kann hier ganz
        entfallen, dann wird der in der ODBC-Datenquelle eingetragene Benutzer ausgewählt. | 
    | PWD | Passwort (unverschlüsselt oder verschlüsselt), falls ein Kennwort
        benötigt wird. Der Parameter kann hier ganz entfallen, dann wird das in der ODBC-Datenquelle eingetragene
        Kennwort benutzt. | 
    | pwd_crypt | Default:0 (unverschlüsselt). Durch den Wert pwd_crypt = 1 wird
        festgelegt, dass ein verschlüsseltes Passwort (Parameter PWD) eingetragen ist. Mit dem Hilfsprogramm
        bwcrypt.exe kann das Passwort entsprechend den NDAT-Konventionen verschlüsselt werden. | 
    | lock_table_stmt | Default: lock Table %s in exclusive mode. SQL-Anweisung zum Sperren einer
        Tabelle. Sind in einer Datenbank keine Sperren zulässig, so kann der Parameter auf den Wert NULL gesetzt
        werden. | 
    | dbtrace | Name einer zu erstellenden Protokolldatei mit relativem oder absolutem Pfad.
        Der Wert 'APPLNAME' veranlasst NDAT zum Anlegen einer Datei mit dem Namen (die ersten 8 Zeichen der
        Überschrift) der Applikation; damit wird verhindert, dass ein Programm die gerade von einem anderen
        Programm angelegte Ndat-Debug-Datei überschreibt. | 
    | dbtime | Protokollierung der benötigten Zeiten für jedes Datenbankkommando in
        Verbindung mit dem Parameter dbtrace (s. o.). Der Wert 1 misst alle Datenbankzugriffzeiten, der Wert 2
        zusätzlich die absoluten Zeiten (dadurch sind Rückschlüsse auf Benutzeraktionen oder
        Programmlaufzeiten zwischen je zwei Datenbankaktionen möglich. | 
    | count_distinct | Standardmäßig wird bei dem NDAT-Kommando count distinct das SQL-Kommando 'Select count(distinct <spaltenname>)'
		generiert. Der Wert 0 veranlasst NDAT das Schlüsselwort DISTINCT wegzulassen (MS-Access). | 
    | nullable | Standardmäßig können NULL-Werte beim Insert eingetragen werden.
        Der Wert 0 veranlasst NDAT bei NULL-Werten eine 0 bzw. einen Leerstring einzutragen. | 
    | replace_wildcards | Standardmäßig werden keine Ersetzungen von Platzhaltern (wildcards) vorgenommen. Der Wert 1 bewirkt eine Ersetzung von
		'*' in '%' und von '?' in '_'. | 
    | stripblanks | Standardmäßig werden Blanks am Ende abgeschnitten. Der Wert 0
        verhindert das Abschneiden von Blanks am Ende. | 
    | timeout | Das Programm arbeitet standardmäßig ohne Timeoutzeiten beim
        Select-Kommando. Ein Wert > 0 bewirkt den Abbruch von Kommandos, die länger als timeout Sekunden benötigen. | 
    | transaction | Standardmäßig wird bei einem Transaktionsstart nur beim ersten Mal die Funktion SQLSetConnectOption
		(SQL_AUTOCOMMIT_OFF) aufgerufen. Durch den Wert 1 wird diese Funktion bei jedem Transaktionsstart aufgerufen, der Wert 2 bewirkt, dass
		zusätzlich bei einem Transaktionsende die Funktion SQLSetConnectOption(SQL_AUTOCOMMIT_ON) aufgerufen wird. | 
    | convert | Durch den Wert convert = 1 werden alle Buchstaben des übergebenen Kommandos in Großbuchstaben gewandelt,
	convert = 2 wandelt entsprechend in Kleinbuchstaben. (Die Dateninhalte bleiben unverändert.) | 
    | trace_file | Durch den Wert trace_file = 1 wird die Debug Protokolldatei für das Schreiben einer jeden Zeile geöffnet und geschlossen.
		Bei einem Programm-Abbruch ist dadurch eine vollständig abgeschlossene Datei gewährleistet (Bit 0 gesetzt). Durch den Wert trace_file = 2 werden nur die Fehler protokolliert (Bit 1 gesetzt).
 Der Wert trace_file = 3 ist eine Kombination aus den trace_file-Werten 1 und 2.
 Bei den trace_file-Werten 4 - 7 werden die Zeilen nicht getrennt (Bit 2 gesetzt).
 | 
    | db_malloc | Interne Überprüfung der Speicherallokierung inklusive der Ausgabe
        einer Statistik am Ende der Trace-Datei. db_malloc=0 schaltet diese Überprüfung aus. | 
    | multi_connect | multi_connect=2 für Datenverbindungen mit dem Microsoft SQL-Server notwendig. Geschachtelte Select-Anweisungen werden automatisch
		in verschiedene ODBC-Verbindungen verteilt. | 
    | spclchars | Default = '. Spezielle Zeichen, die in den Datenbereichen von Insert oder
        Update Kommando verdoppelt werden. | 
    | db_set<n> | Der Inhalt der Variablen db_set0, ..., db_set<n> wird bei jedem Aufbau
        einer Datenbankverbindung als Datenbank-Kommando direkt an die Datenbank geschickt. | 
    | shared_memory<n> | Bei eingeschalteter Ndat-Debugdatei wird jede Zeile der Debug-Datei zusätzlich in einen Speicherbereich geschrieben,
		der von anderen Programmen, wie z. B. dem Programm dbtrace.exe ausgelesen werden kann. shared_memory=0 schaltet diese Funktion aus, dadurch wird das Schreiben der Debug-Datei
		geringfügig schneller. | 
    | SQL_*<n> | Datentypenmapping von gültigen ODBC-Datentypen in NDAT-Datentypen. 
 Gültige ODBC-Datentypen:
 SQL_CHAR
 SQL_DATE
 SQL_TIMESTAMP
 SQL_VARCHAR
 SQL_BIT
 SQL_LONGVARCHAR
 SQL_DECIMAL
 SQL_NUMERIC
 SQL_INTEGER
 SQL_SMALLINT
 SQL_TINYINT
 SQL_FLOAT
 SQL_BIGINT
 SQL_DOUBLE
 SQL_REAL
 
 Gültige NDAT-Datentypen:
 DB_STRING
 DB_LONG
 DB_SHORT
 DB_DOUBLE
 DB_FLOAT
 
 Beispiel:
 SQL_DATE=DB_STRING
 SQL_DOUBLE=DB_FLOAT
 
 |