{ qbe.pas } program QBE; {$IfDef VER80} uses SnipTool, SnipData, SysUtils, WinTypes, WinProcs, DbiProcs, DbiTypes, DbiErrs; {$Else} uses WinTypes, WinCrt, Strings, DbiProcs, DbiTypes, DbiErrs, SnipTool, SnipData; {$EndIf} {===================================================================== Code: QBE(); Input: None. Return: None. Description: This example shows how to do a QBE on a Paradox table. ===================================================================== } var hDb: hDBIDb; { Handle to the database } hFldCur: hDBICur; { Cursor to the result set from the Query. } const eDBIQryLang: DBIQryLang = qrylangQBE; { Query Language to use Query string } szQry = 'CUSTOMER.DB | Name | Phone |'#10#13+ ' | Check | Check |'; begin Screen('*** "Query by Example" Example ***'); Screen(''); Screen(' Initializing IDAPI...'); if (InitAndConnect(hDb) <> DBIERR_NONE) then { Terminate example if } begin { Initialization fails } Screen(''); Screen('*** End of Example ***'); exit; end; Screen(' Setting the default Database directory...'); ChkRslt(DbiSetDirectory(hDb, pCHAR(szTblDirectory)), DBIERR_NONE, ' Error - SetDirectory.'); Screen(' Perform the following Query on the table:'); Screen(''); Screen(szQry); { The DbiQExecDirect function sets up the query, executes the query, and returns a cursor to the answer table. } Screen(''); Screen(' Do a direct query of the table...'); if (ChkRslt(DbiQExecDirect(hDb, eDBIQryLang, szQry, @hFldCur), DBIERR_NONE, ' Error - QExecDirect.') <> DBIERR_NONE) then begin CloseDbAndExit(hDb); Screen(''); Screen('*** End of Example ***'); exit; end; if Assigned (hFldCur) then { Check for a valid cursor } begin Screen(' Display the first 10 records in the answer table'); ChkRslt(DbiSetToBegin(hFldCur), DBIERR_NONE, ' Error - SetToBegin.'); DisplayTable(hFldCur, 10); Screen(''); Screen(' Close the cursor to the answer set... '); ChkRslt(DbiCloseCursor(hFldCur), DBIERR_NONE, ' Error - CloseCursor.'); end else begin Screen(' Error - Could not get cursor to the answer table.'); end; Screen(''); Screen(' Close the Database and exit IDAPI...'); CloseDbAndExit(hDb); Screen(''); Screen('*** End of Example ***'); end.