Vista Software
Apollo API Features

Apollo SDE API™ Features

High-Speed Query Optimization

The Apollo SDE features Mach SIx query optimization which is similar to FoxPro's Rushmore technology. Mach SIx query optimization provide super-fast filtering on very large data sets. Mach SIx uses existing index files to determine the records meeting a query condition and, in many cases, without having to access the table data itself. The query result can be obtained up to 1,000 times faster than conventional database filters.

Roll-Your-Own (RYO) Indexes and Queries

The SDE includes the ability to create and use, what we call, Roll-Your-Own (RYO) indexes and queries. This allows you to create and use ultra-fast in-memory RYO indexes on complex criteria. Ideal for managing large sub-sets of data in high-traffic environments.

Small Distributable .DLL File Sizes

An Apollo application that uses FoxPro tables would require that 2 SDE DLLs totalling ~450K in size be deployed along with your application. The DLL size to support Clipper and SIx data files is similiar. The entire SDE data engine, which allows you to support Clipper, FoxPro and SIx data types, is less than 1Meg in size.

Flexible Collation Support

SDE fully supports international and custom defined collation sequences. It also supports Duden and ETEC character sets. Click here to download the SDE collation sample.

Direct File Access

By providing direct access to the data and index files, Apollo is able to outperform systems using "middle-ware", such as ODBC drivers. Instead, Apollo uses the SuccessWare Database Engine's (SDE) high-speed Replaceable Database Engine (RDE) system, which allows your code to remain virtually unchanged, while selecting from any of three data and index file formats.

Native Record/File Locking

Apollo uses the file and record locking schemes native to the file format it's accessing (CA-Clipper, FoxPro, and HiPer-SIx). For example, if you open a FoxPro database with Apollo and update it concurrently with a FoxPro application, each application will respect the other's locks. Most ODBC engines, including JET, use an incompatible page locking system.

Xbase-Like Syntax

Besides supporting standard TTable-like methods and properties, Apollo's extended syntax was designed to leverage the existing knowledge of Xbase programmers migrating to a Windows environment. With this in mind, each Apollo method and property name is based on the equivalent Xbase command or function name. For example, to APPEND FROM another table you call the AppendFrom method. To create a new index file, call the Index method. Search for a record in the active index with Seek, ZAP the database with Zap, and so on. Built-in Xbase functions allow you to continue using indexes created with Xbase-native functions like UPPER() and DTOS().

Memo File Enhancements

Apollo's memo fields support storage of anything from text to graphic images and other Binary Large Objects (BLOBs). Windows bitmap (.gif) images can even be displayed directly from within an Apollo memo field, without the use of any other add-on product. Memo file "packing" is also supported, eliminating the memo file bloat problem typical with all Xbase memo file formats.

Automatic OEM / ANSI Conversion

Apollo automatically translates European OEM character set databases and indexes into Windows ANSI and vice-versa. This allows you to run DOS based applications concurrently with Windows applications using the same data.
Apollo Database Engines