// BDE - (C) Copyright 1995 by Borland International // tblopen.c #include "snipit.h" static const char szTblName[] = "cust"; static const char szTblType[] = szDBASE; //===================================================================== // Function: // TableOpen(); // // Description: // This example shows how to open and close a table. //===================================================================== void TableOpen (void) { DBIResult rslt; // Return value from IDAPI functions hDBIDb hDb; // Handle to the database hDBICur hCur; // Handle to the table Screen("*** Opening a Table ***\r\n"); BREAK_IN_DEBUGGER(); Screen(" Initializing IDAPI...\r\n"); if (InitAndConnect(&hDb) != DBIERR_NONE) { Screen("\r\n*** End of Example ***"); return; } Screen(" Setting the database directory..."); rslt = DbiSetDirectory(hDb, (pCHAR) szTblDirectory); ChkRslt(rslt, "SetDirectory"); Screen(" Opening the %s table...", szTblName); rslt = DbiOpenTable(hDb, // Handle to the database of the // table Paradox and dBASE use // the standard database (pCHAR) szTblName, // Name of the table (pCHAR) szTblType, // Type of the table - not needed // if the table name contains // an extension NULL, // Index name NULL, // Index tag name NULL, // Index ID dbiREADWRITE, // Open the table for both reading // and writing dbiOPENSHARED, // Open the table in shared mode - // other applications can have // concurrent access xltFIELD, // Field values are translated from // internal Paradox types to // types usable in the // application FALSE, // Unidirectional - Yes, No NULL, // Optional parameters &hCur); // Cursor handle to the table if (ChkRslt(rslt, "OpenTable") != DBIERR_NONE) { CloseDbAndExit(&hDb); Screen("\r\n*** End of Example ***"); return; } Screen("\r\n The %s table was opened successfully!\r\n", szTblName); Screen(" Close the %s table...", szTblName); rslt = DbiCloseCursor(&hCur); ChkRslt(rslt, "CloseCursor"); Screen(" Close the database and exit IDAPI..."); CloseDbAndExit(&hDb); Screen("\r\n*** End of Example ***"); }