Net.Data verfügt über zahlreiche integrierte Funktionen, die die Entwicklung von Web-Seiten vereinfachen. Diese Funktionen sind von Net.Data bereits definiert, so daß Sie diese Funktionen nicht mehr in einem FUNCTION-Block definieren müssen. Rufen Sie diese Funktionen einfach in einem Makro an einer beliebigen Stelle auf, an der eine benutzerdefinierte Funktion aufgerufen werden kann.
Eine integrierte Funktion wird auf gleiche Weise aufgerufen wie eine benutzerdefinierte Funktion, nämlich mit dem Net.Data-Funktionsaufruf. Abbildung 7 zeigt, wie die Net.Data-Funktionen und die Makrodatei miteinander interagieren.
Abbildung 7. In Net.Data integrierte Funktionen

Net.Data verarbeitet innerhalb eines HTML-Blocks einen Funktionsaufruf für die integrierte Funktion. Net.Data verarbeitet die Funktion und gibt dann die Ergebnisse innerhalb eines HTML-Blocks in der Makrodatei zurück.
Es gibt drei Methoden, mit denen integrierte Funktionen ihre Ergebnisse zurückgeben können. An dem zugehörigen Präfix können Sie erkennen, wie eine Funktion ihre Ergebnisse ausgibt:
Einige integrierte Funktionen unterstützen nicht jede Art. Wenn Sie ermitteln möchten, um welche Art es sich bei einer bestimmten integrierten Funktion handelt, ziehen Sie das Kapitel zu den integrierten Net.Data-Funktionen im Handbuch Net.Data Reference zu Rate.
In den folgenden Abschnitten wird eine allgemeine Übersicht über die integrierten Net.Data-Funktionen gegeben. Mit diesen Funktionen können Sie allgemeine und mathematische Funktionen sowie Zeichenfolge-, Wort- bzw. Tabellenbearbeitungsfunktionen ausführen. Außerdem können Sie permanente Funktionen für die Transaktionsverarbeitung verwenden. Beschreibungen der einzelnen Funktionen mit Syntax und Beispielen finden Sie im Handbuch Net.Data Reference. Für einige dieser Funktionen müssen Variablen definiert werden, bevor sie verwendet werden können, oder sie müssen in einem spezifischen Kontext verwendet werden.
Mit Hilfe dieser Gruppe von Funktionen können Sie Web-Seiten durch Ändern von Daten oder Zugreifen auf Systemservices entwickeln. Hiermit können Sie Umgebungsvariablen abfragen und setzen, HTML-Escape-Codes verwenden und andere nützliche Informationen vom System abrufen.
Sie verwenden zum Beispiel die Funktion DTW_EXIT, um festzulegen, daß Net.Data ein Makro verlassen soll, ohne die restlichen Anweisungen der Makrodatei zu verarbeiten, wenn eine bestimmte Bedingung eintritt:
%HTML(cache_example) {
<html>
<head>
<title>This is the page title</title>
</head>
<body>
<center>
<h3>This is the Main Heading</h3>
<!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!>
<! Joe Smith sees a very short page !>
<!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!>
%IF (customer == "Joe Smith")
</body>
</html>
@DTW_EXIT()
%ENDIF
...
</body>
</html>
%}
Mit der Funktion DTW_URLESCSEQ werden Zeichen, die in einer URL-Adresse nicht erlaubt sind, durch die entsprechenden Escape-Werte ersetzt. Wenn beispielsweise die Eingabevariable string1 den Inhalt "Guys & Dolls" hat, ordnet DTW_URLESCSEQ die Ausgabevariable dem Wert "Guys%20%26%20Dolls" zu.
Eine Liste gültiger allgemeiner Funktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Diese Funktionen führen mathematische Operationen aus, über die Sie numerische Daten berechnen und ändern können. Neben den mathematischen Standardoperationen können auch Modulus-Divisionen ausgeführt, eine Ergebnisgenauigkeit angegeben und Exponentialschreibweise verwendet werden.
Zum Beispiel potenziert die Funktion DTW_POWER den Wert des ersten Parameters mit dem Wert des zweiten Parameters und gibt das Ergebnis zurück. Siehe dazu das folgende Beispiel:
@DTW_rPOWER("2", "-3", result)
DTW_POWER gibt ".125" zurück.
Eine Liste gültiger mathematischer Funktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Diese Funktionen können zum Bearbeiten von Zeichen in Zeichenfolgen verwendet werden. So können Sie zum Beispiel eine Zeichenfolge von Klein- in Großschreibung (oder umgekehrt) umsetzen, Zeichen einfügen oder löschen, einen Zeichenfolgewert einer anderen Variablen zuordnen und noch andere nützliche Funktionen ausführen.
Zum Beispiel können Sie DTW_ASSIGN verwenden, um den Wert einer Eingabevariablen einer Ausgabevariablen zuzuordnen. Sie können diese Funktion auch verwenden, um eine Variable in einem Makro zu verwenden. Im folgenden Beispiel wird der Variablen RC Null zugeordnet.
@DTW_ASSIGN(RC, "0")
Weitere Zeichenfolgefunktionen sind DTW_CONCAT zum Verknüpfen von Zeichenfolgen und DTW_INSERT zum Einfügen von Zeichenfolgen an einer bestimmten Position sowie viele andere Funktionen zum Bearbeiten von Zeichenfolgen.
Eine Liste gültiger Zeichenfolgefunktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Diese Funktionen können zum Bearbeiten von Wörtern in Zeichenfolgen verwendet werden. Die meisten dieser Funktionen arbeiten auf dieselbe Weise wie Zeichenfolgefunktionen, jedoch bezogen auf ganze Wörter. Hiermit können Sie zum Beispiel die Anzahl der Wörter in einer Zeichenfolge zählen, Wörter entfernen oder nach einem Wort in einer Zeichenfolge suchen.
Verwenden Sie beispielsweise DTW_DELW0RD, um eine bestimmte Anzahl von Wörtern aus einer Zeichenfolge zu löschen:
@DTW_DELWORD("Now is the time", "2", "2", result)
DTW_DELWORD gibt die Zeichenfolge "Now time" zurück.
Weitere Wortfunktionen sind DTW_WORDLENGTH (gibt die Anzahl der Zeichen in einer Zeichenfolge zurück) und DTW_WORDPOS (gibt die Position eines Worts in einer Zeichenfolge zurück).
Eine Liste gültiger Wortfunktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Diese Funktionen können zum Generieren von Berichten oder Formularen mit Hilfe der Daten in einer Net.Data-Tabellenvariable verwendet werden. Sie können diese Funktionen auch verwenden, um die Werte in einer Net.Data-Tabellenvariable abzurufen und festzulegen. Tabellenvariablen enthalten einen Wertebereich mit den zugehörigen Spaltennamen. Sie bieten eine bequeme Möglichkeit, ganze Wertegruppen an eine Funktion weiterzugeben.
Zum Beispiel fügt DTW_TB_APPENDROW eine Zeile an die Tabelle an. Im folgenden Beispiel fügt Net.Data zehn Zeilen an die Tabelle myTable an:
@DTW_TB_APPENDROW(myTable, "10")
Außerdem gibt DTW_TB_DUMPH den Inhalt einer Makrotabellenvariablen zurück, die in die Befehle <PRE></PRE> eingeschlossen ist, wobei jede Zeile der Tabelle in einer anderen Zeile angezeigt wird. DTW_TB_CHECKBOX gibt einen oder mehrere HTML-Markierungsfeldeingabefehle aus einer Makrotabellenvariablen zurück.
Eine Liste gültiger Tabellenfunktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Die FFI-Schnittstelle (Flat File Interface - Schnittstelle für unstrukturierte Textdateien) kann zum Öffnen, Lesen und Bearbeiten von Daten aus unstrukturierten Textdateiquellen (Textdateien) sowie zum Speichern von Daten in unstrukturierte Textdateien verwendet werden.
Zum Beispiel schreibt DTWF_APPEND den Inhalt einer Tabellenvariablen an das Ende einer Datei, und DTWF_DELETE löscht Sätze aus einer Datei.
Außerdem unterstützen die FFI-Funktionen Dateisperren mit DTWF_CLOSE und DTWF_OPEN. DTWF_OPEN sperrt eine Datei, damit sie ein anderer Prozeß weder lesen noch aktualisieren kann. DTWF_CLOSE gibt die Datei frei, wenn Net.Data sie nicht länger benötigt, damit die anderen Prozesse auf die Datei zugreifen können.
Eine Liste gültiger FFI-Funktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Die Funktionen für Web-Registrierdatenbanken können zum Verwalten der Registrierdatenbanken und der darin enthaltenen Einträge verwendet werden. Eine Web-Registrierdatenbank ist eine Datei mit einem von Net.Data verwalteten Schlüssel, die das einfache Hinzufügen, Abrufen und Löschen von Einträgen ermöglicht.
Zum Beispiel fügt DTWR_ADDENTRY Einträge hinzu, während DTWR_DELENTRY Einträge löscht. DTWR_LISTSUB gibt Informationen zu den Registrierdatenbankeinträgen in einem OUT-Tabellenparameter zurück, und DTWR_UPDATEENTRY ersetzt vorhandene Werte für einen angegebenen Registrierdatenbankeintrag durch einen neuen Wert.
Eine Liste gültiger Funktionen für Web-Registrierdatenbanken mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.
Die permanenten Makrofunktionen unterstützen die Transaktionsverarbeitung in Net.Data, indem Sie definieren können, welche Makroblöcke in einer einzelnen Transaktion permanent sind. Verwenden Sie diese Funktionen, um den Anfang und das Ende einer Transaktion zu definieren und den Geltungsbereich der Variablen in der Transaktion zu definieren sowie um festzulegen, welche HTML-Blöcke in der Transaktion permanent sind und ob für Änderungen in der Transaktion eine COMMIT- oder eine ROLLBACK-Operation ausgeführt werden soll.
Zum Beispiel gibt DTW_ACCEPT die Transaktionskennung für eine Transaktion an, während DTW_TERMINATE den letzten HTML-Block in der Transaktion angibt. DTW_RTVHANDLE generiert eine eindeutige Transaktionskennung für Blöcke in der Transaktion. Sie können DTW_COMMIT und DTW_ROLLBACK verwenden, um in der Transaktion COMMIT- und ROLLBACK-Operationen einzuleiten.
Eine Liste gültiger permanenter Funktionen mit Syntax und Beispielen finden Sie im Kapitel über integrierte Funktionen im Handbuch Net.Data Reference.