ODBC-Funktionen
Die ODBC-Schnittstelle - Funktionen Aufruf von Funktionen
Beim Einrichten einer Datenquelle kann eine Startprozedur angegeben werden.
Diese A+-Prozedur (Übersetzt mit der Compileroption @A+) wird beim Einloggen eines Benutzers über die ODBC-Schnittstelle ausgeführt. In dieser Prozedur können mit dem Befehl FldAttributes () Feldattribute gesetzt und mit ProcAdvertise () Prozeduren bekannt gemacht werden.
Die Feldattribute werden benötigt, wenn die Datensätze nach bestimmten Regeln sortiert übermittelt werden sollen. Sollen die Datensätze nach einem alphanumerischen Feld sortiert werden, erfolgt die Sortierung nach der ASCII-Tabelle. In der Sortierung sind also alle Großbuchstaben vor die Kleinbuchstaben sortiert. Soll aber zum Beispiel die Groß- und Klein-Schreibung nicht berücksichtigt werden, können entsprechende Feldattribute mit der Anweisung FldAttributes () gesetzt werden (siehe dort).
Zugriff auf Funktionen
Über die ODBC-Schnittstelle können ebenfalls Funktionen aus CONZEPT 16 aufgerufen werden. Diese "Stored Procedures" müssen zuvor mit dem Befehl ProcAdvertise () bekannt gemacht werden. Die Bekanntgabe der Funktionen kann entweder in der Startprozedur der ODBC-Datenquelle oder in einer Stored Procedure erfolgen.
Eine Beschränkung der Benutzer auf bestimmte Funktionen kann somit durch die Bekanntgabe einer Anmeldefunktion realisiert werden. Dieser Funktion werden Benutzer und Passwort übergeben. Die Überprüfung der Angaben erfolgt innerhalb von CONZEPT 16. In Abhängigkeit des Benutzers können dann unterschiedliche Funktionen bekanntgegeben werden. Funktionen, die nicht bekannt gegeben wurden, können über die Schnittstelle nicht aufgerufen werden.
Innerhalb der Funktionen können keine Dialoge oder Fenster geöffnet werden.
Ergebniswerte können entweder durch den Rückgabewert der Funktion oder durch die Übergabe eines var-Arguments (Call-by-Reference) erfolgen. Als Übergabe- und Rückgabewerte können nur Datentypen verwendet werden, die sowohl in CONZEPT 16, als auch in SQL bekannt sind. Die Übergabe einer Variablen vom Typ font oder von einem Array ist zum Beispiel nicht möglich. Weitere Informationen befinden sich in der Beschreibung des Befehls ProcAdvertise ().