Eine Anweisung ENVIRONMENT konfiguriert eine Sprachumgebung. Eine Sprachumgebung ist eine Net.Data-Komponente, mit der Net.Data auf eine Datenquelle, wie zum Beispiel eine DB2-Datenbank, zugreift oder ein in einer Sprache wie REXX geschriebenes Programm ausführt. Net.Data stellt eine Reihe von Sprachumgebungen bereit sowie eine Schnittstelle, mit der Sie Ihre eigenen Sprachumgebungen erstellen können. Diese Sprachumgebungen und die Schnittstelle für Sprachumgebungen werden im Handbuch Net.Data Language Environment Reference beschrieben.
Für den Aufruf der Sprachumgebung erfordert Net.Data, daß in der Net.Data-Initialisierungsdatei eine Anweisung ENVIRONMENT für eine Sprachumgebung vorhanden ist.
Net.Data gibt mehrere Variablen an, die sich darauf auswirken, wie Net.Data-Sprachumgebungen Aufrufe an in FUNCTION-Blöcken definierte Funktionen interpretieren. Die Einstellungen dieser Variablen müssen an eine Sprachumgebung übergeben werden, um wirksam zu werden.
Zum Beispiel kann ein Makro eine Variable DATABASE definieren, um den Namen einer Datenbank anzugeben, in der eine SQL-Anweisung innerhalb der Funktion DTW_SQL ausgeführt werden soll. Der Wert von DATABASE muß an die SQL-Sprachumgebung (DTW_SQL) übergeben werden, damit die SQL-Sprachumgebung die Verbindung zur angegebenen Datenbank herstellen kann. Zum Übergeben der Variablen an die Sprachumgebung müssen Sie die Variable DATABASE der Parameterliste in der Umgebungsanweisung für DTW_SQL hinzufügen.
Die Net.Data-Beispielinitialisierungsdatei geht beim Anpassen der Einstellungen der Anweisungen für die Net.Data-Umgebungskonfiguration von bestimmten Annahmen aus. Diese Annahmen sind für Ihre Umgebung eventuell nicht zutreffend. Ändern Sie die Anweisungen Ihrer Umgebung entsprechend.
Gehen Sie wie folgt vor, um eine Anweisung ENVIRONMENT hinzuzufügen oder zu aktualisieren:
Anweisungen ENVIRONMENT haben die folgende Syntax:
ENVIRONMENT(art) bibliotheksname (parameterliste, ...) [CLIETTE "cliette_name"]
Parameter:
Der Name, durch den Net.Data diese Sprachumgebung einem FUNCTION-Block zuordnet, der in einem Net.Data-Makro definiert ist. Sie müssen die Art der Sprachumgebung in einer FUNCTION-Blockdefinition angeben, um die Sprachumgebung zu definieren, in der Net.Data die Funktion ausführen soll.
Der Name der DLL oder gemeinsam benutzten Bibliothek mit den Schnittstellen für Sprachumgebungen, die Net.Data aufruft. Unter OS/2 wird der DLL-Name ohne die Erweiterung .dll angegeben. Unter AIX wird der Name des gemeinsam benutzten Objekts mit der Erweiterung .o angegeben.
Die Liste der Parameter, die bei jedem Funktionsaufruf neben den Parametern, die in der FUNCTION-Blockdefinition angegeben sind, an die Sprachumgebung übergeben werden.
Die Parameter werden nach den in der FUNCTION-Blockdefinition angegeben Parametern in das Feld parm_data_array der Struktur dtw_lei übergeben. (Informationen zu diesen Strukturen finden Sie im Handbuch Net.Data Language Environment Reference.)
Sie müssen diese Parameter als Konfigurationsvariablen oder als Variablen in Ihrer Makrodatei definieren, bevor Sie eine Funktion ausführen können, die von der Sprachumgebung verarbeitet wird. Wenn eine Funktion ihre Ausgabeparameter ändert, behalten die Parameter ihre geänderten Werte nach der Beendigung der Funktion bei.
Der Name der Cliette. cliette_name kann sich auf die Cliette für die Sprachumgebung der Java-Anwendung beziehen oder eine Datenbank-Cliette angeben. Der Parameter cliette_name wird zusammen mit dem Schlüsselwort CLIETTE verwendet, und beide sind nur bei Direktverbindungen gültig. CLIETTE und cliette_name sind wahlfrei und können nur für Sprachumgebungen der Datenbank- und Java-Anwendung und für benutzerdefinierte Sprachumgebungen verwendet werden, für die Cliettes geschrieben wurden.
Syntax:
CLIETTE "DTW_JAVAPPS"
Syntax:
CLIETTE "typ:db_name"
Parameter:
Wenn Net.Data die INI-Datei verarbeitet, werden die Sprachumgebungs-DLLs bzw. gemeinsam benutzten Bibliotheken nicht geladen. Net.Data lädt eine Sprachumgebungs-DLL bei der ersten Ausführung einer Funktion, die diese Sprachumgebung angibt. Die DLL bleibt dann so lange geladen, wie Net.Data geladen ist.
Beispiel: Anweisungen ENVIRONMENT für von Net.Data bereitgestellte Sprachumgebungen
Beim Anpassen der Anweisungen ENVIRONMENT für Ihre Anwendung müssen Sie den Anweisungen ENVIRONMENT die Variablen hinzufügen, die von Ihrer Initialisierungsdatei an die Sprachumgebung übergeben werden müssen, oder die Net.Data-Makroprogrammierer zum Festlegen oder Überschreiben in ihren Makros benötigen.
ENVIRONMENT (DTW_SQL) DTWSQL ( IN DATABASE, LOGIN, PASSWORD, TRANSACTION_SCOPE, SHOWSQL, ALIGN, START_ROW_NUM, DTW_SET_TOTAL_ROWS) CLIETTE "DTW_SQL:MYDBASE" ENVIRONMENT (DTW_SYB) DTWSYB ( IN DATABASE, LOGIN, PASSWORD, TRANSACTION_SCOPE, SHOWSQL, ALIGN, START_ROW_NUM, DTW_SET_TOTAL_ROWS) ENVIRONMENT (DTW_ORA) DTWORA ( IN DATABASE, LOGIN, PASSWORD, TRANSACTION_SCOPE, SHOWSQL, ALIGN, START_ROW_NUM, DTW_SET_TOTAL_ROWS) ENVIRONMENT (DTW_ODBC) DTWODBC ( IN DATABASE, LOGIN, PASSWORD, TRANSACTION_SCOPE, SHOWSQL, ALIGN, DTW_SET_TOTAL_ROWS) ENVIRONMENT (DTW_APPLET) DTWJAVA ( ) ENVIRONMENT (DTW_JAVAPPS) ( OUT RETURN_CODE ) CLIETTE "DTW_JAVAPPS" ENVIRONMENT (DTW_PERL) DTWPERL ( OUT RETURN_CODE ) ENVIRONMENT (DTW_REXX) DTWREXX ( OUT RETURN_CODE ) ENVIRONMENT (DTW_SYSTEM) DTWSYS ( OUT RETURN_CODE ) ENVIRONMENT (HWS_LE) DTWHWS ( OUT RETURN_CODE )
Jede Anweisung ENVIRONMENT muß auf einer separaten Zeile stehen.