Abfragen von Informationen
Abfragen von Informationen Beispiel zur Abfrage von Informationen mit der Programmierschnittstelle
Die CONZEPT 16-Programmierschnittstelle stellt dem Programmierer eine Vielzahl von Funktionen zur Verfügung, um jede Art von Informationen über die Elemente einer Datenbank zu ermitteln: Dateien, Teildatensätze, Felder, Schlüssel, Verknüpfungen usw. Bei den meisten Elementen gibt es jeweils zwei Funktionen zur Ermittlung allgemeiner Informationen - über die Nummer des Elementes und über dessen Namen.
Die Info-Befehle haben alle die gleiche Funktionsweise: Der entsprechenden Funktion werden der jeweilige Instanz-Handle und elementspezifische Angaben zusammen mit einem Zeiger auf eine Info-Struktur, in welche die Informationen geschrieben wird übergeben (die Strukturkomponente InfoSize muss vor der Übergabe initialisiert werden). Als Ergebnis liefern die Informationsfunktionen einen Wert vom Typ vERROR zurück. Ist dieser Wert gleich 0, kann die gewünschte Information aus der Info-Struktur gelesen werden, andernfalls ist ein Fehler aufgetreten.
Beispiel
#include
#include "c16_pgx.h"
extern void MsgBox(char *lpszMsg);
// Instanz-Handle
extern vPHANDLE ghInstance;
int GetSubRecordCount(int nFileNo)
{
// Funktionsergebnis
int nErg;
// struct zur Aufnahme der Dateiinformation
vC16_FileInfo fileInfo;
// v16_FileInfo-Struktur initialisieren
fileInfo.InfoSize = sizeof(vC16_FileInfo);
// Anzahl Teildatensätze ermitteln
nErg = C16_FileInfo(ghInstance, nFileNo, &fileInfo);
// Fehler
if(nErg < 0)
{
char pszMsgText[80];
sprintf(pszMsgText, "Dateiinformationsfehler %d\n", nErg);
MsgBox(pszMsgText);
return(0);
}
else
{
return(fileInfo.FileSbrCount);
}
}
Die Anzahl der Teildatensätze in Datei nFileNo wird ermittelt. Gibt es die Datei nicht oder tritt ein Verarbeitungsfehler auf, wird eine entsprechende Meldung ausgegeben und 0 zurückgegeben.