![]() |
![]() |
![]() |
Press Releases from Fox Software: FoxPro 2.0 |
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0's new open architecture and
Application Programmer's Interface (API) introduce a remarkably flexible
library structure that offers third-party add-on developers tremendous
profit opportunities, and allows users and programmers to extend the FoxPro
system in nearly any conceivable direction. The new system integrates C and
assembly language routines into any FoxPro application in all forms of
FoxPro, including the end-user and developer interactive version, Runtime
and stand alone EXE programs.
FoxPro 2.0's new open architecture, available through its Application Programmer's Interface (API), allows programmers to write functions in C and Assembler. These functions are placed in external libraries which can be accessed from FoxPro via a new SET LIBRARY TO command. Modules within a FoxPro external routine library are dynamically loaded into and released from memory as required.
"Our Dynamic Link Library and API system provide unmatched connection
flexibility," Dr. David Fulton, Fox Software President, said. "Unlike any
other implementation we've seen in the database category, FoxPro 2.0 allows
developers to create libraries that can be used interchangeably with
interactive FoxPro, Runtime applications, and/or free-standing EXE's. This
should be very significant to the third-party library development
community, since every user is a potential customer, no matter what form of
FoxPro they're using."
The FoxPro External Routine API is an interface definition which allows
programmers to extend the capabilities of FoxPro and the FoxPro user
interface. In-depth access to the internal FoxPro engine allows programmers
to access databases, manipulate memory, work with files, manipulate memos,
handle FoxPro events, work with windows, process FoxPro statements and
expressions and access FoxPro memory management, file and record
input/output routines, dialogs and error handlers, events, video output
routines, etc.
A new Library Construction Kit contains all necessary software to create
FoxPro libraries in the C language. Included is a special version of the
new Watcom 8.5 Optimizing C compiler, a highly rated compiler which
produces code that is both extremely fast and compact, the Watcom Linker,
various Watcom utilities, and the Fox Software code needed for library
creation.
The Library Construction Kit retails for $500, and is available now. Users
can upgrade to the Professional Edition of Watcom C8.5 for an additional
$149.95.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - A separate "Extended Mode" version of
FoxPro which uses protected mode on 80386 and 80486 processors is included
with all copies of the FoxPro 2.0 package at no extra cost.
The extended versions of FoxPro 2.0, both single- and multi-user, employ
true 32-bit instructions to take full advantage of advanced
microprocessors. FoxPro 2.0 is also the first microcomputer database to
implement mainframe-style demand paging, a memory management technique
which allows efficient operation in smaller amounts of extended memory.
In virtually all applications, the extended mode versions of FoxPro 2.0 run
noticeably faster than the standard mode versions. Improvements are
particularly noteworthy on very large data files.
Combined with FoxPro 2.0's revolutionary new Rushmore(tm) query
optimization technology, the speed enhancement of the extended mode
versions opens new horizons for the management of massive datasets.
For example, on a 140 megabyte data file of 1.6 million records, the
extended mode version of FoxPro 2.0 creates a single field index 2.6 times
faster than standard mode FoxPro 2.0. Extended mode FoxPro 2.0 creates this
index 6.1 times faster than dBASE IV.
While standard mode FoxPro 2.0 is already unusually generous in terms of
the limits it places on database applications, the extended mode versions
either remove or ease these limits still further.
Among the improvements available in the extended mode versions of FoxPro
2.0:
The extended versions of FoxPro 2.0 are completely compatible with the VCPI standard, with DMPI compatibility to come. This eliminates the need for reconfiguration when operating under memory managers like Quarterdeck Office Systems' QEMM and multitasking systems like DesqView.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0 introduces a new indexing
system which offers many advantages. FoxPro's new compound indexes store
multiple, unlimited index entries or tags in one index file, indexing is
very much faster than in competitive products, and the index files are
significantly smaller than competitive multiple-index implementations.
For example, on a 140 megabyte data file of 1.6 million records, FoxPro 2.0
creates a single field index 2.3 times faster than dBASE IV, and the index
file is one-sixth the size of that created by dBASE IV (approximately 8
megabytes vs. 48 megabytes). The extended mode version of FoxPro 2.0 (see
related release) is even faster, creating the index 6.1 times faster than
dBASE IV!
Two types of compound indexes are available. A compound index can be
automatically opened with a given database. In addition, multiple free-
standing independent compound indexes may also be opened explicitly.
FoxPro 2.0 can store an unlimited number of tags in a compound index file, providing maximum flexibility to accommodate any application requirements. dBASE IV can store only 47 tags in its MDX index format.
FoxPro 2.0 places no restrictions on how many index files, whether the new CDX compound indexes or traditional IDX indexes, may be open. The only limit is whatever DOS imposes on the number of available file handles.
FoxPro 2.0 updates all open compound and standard indexes automatically as changes are made to the database. As in the past, this automatic index maintenance is transparent to the programmer and end user.
The previous FoxPro IDX indexing method is retained in version 2.0, primarily for compatibility with existing applications. A new COMPACT clause creates IDX-style indexes that are from one-half to one-sixth the size of IDX format indexes.
A series of new and enhanced commands and functions provides simple and
straightforward control over both the new CDX compound indexing system and
traditional IDX indexes. Provisions are also included to convert back and
forth between CDX and IDX index formats.
Indexes can be created in either ascending or descending order; no special
tricks are required for descending numeric indexes, for example. A clever
variation allows indexes to be used in either ascending or descending
order, regardless of the order specified when the index was created.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro/LAN 2.0 provides significantly
faster performance compared to earlier versions of FoxPro/LAN and
competitive products, consumes less memory, operates smoothly in mixed DOS-
Macintosh networks and offers a myriad of language, relationality, fourth
generation object-oriented design tools.
A series of innovative enhancements deliver greatly improved performance, generally 2-3 times faster than the previous version of FoxPro/LAN, with some operations up to thirty times faster:
FoxPro 2.0 provides exceptional flexibility in mixed networks of DOS and
Macintosh computers. Users on mixed networks can share data and index files
simultaneously, with no data conversion or other impediments. Even programs
written with straightforward user interfaces can be shared and executed on
both platforms.
FoxPro/Mac, a sister program to FoxPro 2.0 for DOS, will be released later
this year, and will allow an even greater degree of application
commonality.
FoxPro/LAN 2.0 is supplied in two versions, an extended version for 80386
and 80486 processors and a standard version for other CPU's. The extended
version provides faster performance in many respects and offers more
generous capabilities for memory variable storage and other elements.
New loaders introduced in FoxPro 2.0 determine the processor used in the
network server and in individual workstation nodes. The appropriate version
of FoxPro/LAN is loaded automatically, assuring the best performance
possible in networks using a variety of CPU's.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0 provides a host of new
interface capabilities, new and augmented subsystems, and new and enhanced
language commands and functions.
Many of these major improvements are discussed in separate releases in this
package. This release covers a number of the new items not discussed
elsewhere.
FoxPro 2.0 provides help text in both structured and context sensitive
fashion. Several innovative enhancements make this system especially
flexible and powerful.
"Free-Form Hypertext Help" allows users to highlight any key word in any
location in the help text, any editing window or the command window, and
move immediately to help on that subject. This extremely versatile feature
is even available within any editing or command window, not just within the
Help system itself, providing an unmatched context-sensitive capability.
In addition, automatic cross-referencing moves instantly to information on
subjects included in "See Also" cross-references. A new Help filter system
restricts the visible range of topics for simplified access. Help has also
now been added for FoxPro interface elements.
Developers, programmers and end users can add all three forms of Help
access to applications with minimal effort.
BROWSE FOR, to allow including a general scope specification to specify the
records to be displayed in a BROWSE, has long been one of the most
requested enhancements to FoxPro. This powerful capability is now available
in FoxPro 2.0.
"BROWSE FOR fulfills one of the most common enhancement requests from our
users," Dr. Fulton said. "Our new Rushmore optimization technology made it
possible for us to satisfy this need, yet provide fine performance. BROWSE
FOR will allow programs to be simplified and made more flexible."
FoxPro's interactive View window has always allowed establishing relations between files with no programming. With the new FoxPro 2.0 One-To-Many relational capabilities, the View window has been enhanced to add specific control over one-to-many relations. Even beginners can construct complex relational structures with no programming, using FoxPro's BROWSE, REPORT and other subsystems to manipulate relational system intuitively.
FoxPro 2.0 allows editing of keyboard macros. A special built-in editor is provided for this purpose. Users can now write macros manually, as well as record the keystrokes automatically.
FoxPro 2.0 can append data from and write data to a wide variety of file formats used by popular applications. Among the file formats supported are:
DIF | Data Interchange Format |
FW2 | Framework II spreadsheets |
MOD | Microsoft Multiplan BIFF (Binary File Format) document |
RPD | RapidFile database |
SYLK | Symbolic Link interchange format |
WK1 | Lotus 1-2-3 Release 2.xx spreadsheet |
WK3 | Lotus 1-2-3 (Release 3.0) spreadsheet |
WKS | Lotus 1-2-3 (Release 1A) spreadsheet |
WR1 | Symphony (versions 1.1, 1.2 and 2.0) spreadsheet |
WRK | Symphony (versions 1.0, 1.01) spreadsheet |
XLS | Microsoft Excel (version 2) spreadsheet |
FoxPro 2.0's interface introduces a new concept called minimized windows.
Any system window or user window created with the new MINIMIZE clause can
be reduced to a one line by 16 character minimized window containing the
window's title. The minimized window can be positioned anywhere on the
display or automatically "docked" in the lower right portion of the screen.
The minimize provisions, along with new Zoom commands added to the FoxPro
menu line, make it easy to place many windows on the screen or in a window
simultaneously and still have ample space for output.
FoxPro 2.0's built-in program and file editor has been enhanced with several user-requested features. An optional status line can display the line and column number of the cursor's current position, as well as various status annunciators. Hanging indentation capabilities have been added. Search and search/replace are now bidirectional, forward or backward through a file. Line numbers previously sought are now remembered by the editor, an aid to program revision during debugging.
FoxPro's interactive Fourth Generation Report Writer has been enhanced with several improvements which increase flexibility and improve ease of use. Among the many advances:
Quick Reports, Screens and Queries can now be created under program control, without invoking the FoxPro 2.0 interactive design tools. This allows programmers to design systems which gather information from end users and create reports, screens and queries reflecting user needs, without requiring the user to learn or use the FoxPro design tools.
The FoxPro language has been upgraded with many new and enhanced commands and functions. Among the highlights:
Users can enhance the visual appeal of printed output with new printer
drivers in FoxPro 2.0. Drivers are supplied for a variety of popular
printers, with special drivers for printers supporting Hewlett-Packard PCL
and PostScript.
Users can create new printer drivers or modify existing ones easily.
Drivers use standard FoxPro code, so special features can also be added
readily. Versions of the printer drivers written in C using FoxPro's API
open architecture are also provided for users requiring maximum throughput.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - Users can create custom menus easily with
no programming with FoxPro 2.0's new interactive Menu Builder, new and
enhanced commands and functions, and templates which create menu code.
FoxPro 2.0's new interactive Menu Builder, one of a suite of new fourth
generation design tools, combines advanced, highly flexible menu
capabilities with unparalleled ease of use.
Users merely specify menu prompts and the commands they should execute.
Multiple level hierarchical or cascading submenus and popups can be created
easily. Users can specify keyboard shortcuts merely by pressing the desired
shortcut key.
Once the menus and popups have been defined, the new FoxPro code generator system takes over and creates the program code to implement the menus and popups, No user programming is required. The generated code can be executed directly or inserted into any FoxPro application.
Users now enjoy full control over the FoxPro System menu bar and popups. Items can be deleted or added, and routines can be assigned to the Systems pads or System popups. This allows users to customize the FoxPro system menu for many purposes, including simplifying the available options for beginning users, adding new options seamlessly or changing how standard options operate.
FoxPro's command language has been expanded with over two dozen new
commands and functions and powerful enhancements to many other commands.
Over 100 new system variables have been added to control the FoxPro System
menu.
These new language expansions provide the underpinning for the interactive
menu definition and automatic menu generation systems. In addition, they
allow advanced programmers to gain still further flexibility and control.
The new Menu Builder is part of a suite of fourth generation tools in FoxPro 2.0. In addition to the Menu Builder, the new Screen Builder and enhanced Report Writer and Label Generator tools provide enormous versatility with unmatched ease of use.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0's new Project Manager helps
developers manage the application creation process. The Project Manager
unifies and coordinates all the elements which are part of an application.
Users can create applications under the Project Manager's control to run in
interactive FoxPro 2.0, the FoxPro Runtime, or two types of executable EXE
packages.
A FoxPro 2.0 project is a special file which keeps track of all programs
which are required to create an application, as well as all the
dependencies, references and connections among the files. Working in
conjunction with FoxPro's automatic compilation features, a project insures
that compiled files are based on the latest source files.
Projects can contain more than program object code. Users can store
interface elements like screen sets, menus and formats, reports, labels and
queries, external API libraries, memory variable files, keyboard macros and
even read-only databases for lookups. Storing all these elements in a
central location helps organize development and reduces disk clutter.
Developers can build projects either interactively, by specifying all the
component pieces of an application, or automatically via FoxPro 2.0's new
Build command. Build searches files and libraries for references to other
files or libraries, keeping track of everything that will be needed to
create the final application.
"The project concept provides the flexibility and control of traditional
`make' utilities, but with far less effort and no learning curve," noted
Dr. David Fulton, President of Fox Software. "Projects greatly ease
development of complex applications, smoothly and easily."
Once users create a Project, they can build either a custom application
(APP) or two styles of executable program (EXE).
A monolithic single EXE contains everything necessary to operate as a
stand-alone executable application. Alternately, developers can opt for a
collection of small EXE files which require the presence of a central Fox
library.
"There are advantages to all three options. It's basically a packaging
decision, with the optimal choice depending on the application, the
hardware and software environment, and other factors. For example, using
the small EXE model makes remote updating via modem much more efficient and
less costly," Dr. Fulton observed. "There seems to be some mystique about
EXE files, and now FoxPro satisfies those who want this approach. But we've
provided the flexibility possible with EXE's throughout all three
techniques. FoxPro 2.0 is one system that happens to be able to create both
Runtime and different flavors of EXE executables; there's no `EXE compiler'
per se."
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - New fourth generation relational tools in
FoxPro 2.0 provide users, programmers and developers with easy-to-use,
interactive relational data entry, relational querying and relational
reporting capabilities.
An innovative relational query-by-example (RQBE), integrated FoxPro SQL
language extensions, one-to-many relations and other relational features
work in concert with FoxPro 2.0's 4GL Screen Builder, Menu Builder, Report
Writer and Label Generator tools to provide unmatched power and
flexibility.
FoxPro 2.0's new Relational Query-by-Example (RQBE) provides an easy-to-use
interactive environment for retrieving information. The RQBE process
requires no programming. It is appropriate for both beginners performing ad
hoc data retrieval and programmers and developers constructing queries for
incorporation into applications.
Using FoxPro's unique windowing user interface, RQBE users can easily build
even complex relational queries with either mouse or keyboard. The user can
specify which databases to access, how they are related, which fields to
include in the output and how they should be grouped, sorting sequences,
the format of the output, and specific selection criteria for any field.
"Enhancing relational capabilities was a central design goal for FoxPro
2.0, and the new Relational Query-By-Example is the cornerstone of this
effort" said Dr. David Fulton, Fox Software President. "While it offers the
interactive and easy-to-learn, easy-to-use aspects of traditional QBE's,
RQBE goes well beyond them in its abilities to extract the exact
information the user needs even in complex relational situations - at
extremely high speed and with no programming necessary."
Unlike other relational querying implementations for microcomputers, which have earned a well deserved reputation for sluggish performance, FoxPro 2.0 provides extraordinarily fast data retrieval. On an industry-standard benchmark suite of 69 queries, FoxPro 2.0 outperformed other relational products by dramatic margins:
Product |
Total Time (Secs) |
Ratio Vs. FoxPro 2.0 |
Oracle | * | * |
dBASE IV | 2197 | 81 |
XDB | 603 | 22 |
FoxPro 2.0 | 27 | -- |
The real-world implications are extremely significant: consider that competitive relational products can take well over an hour to perform tasks which take FoxPro 2.0 under half a minute! Even the fastest competitive product takes over ten minutes!
FoxPro's 4GL RQBE generates a FoxPro SQL SELECT statement which may be used anywhere in source code programs. In many cases, a single FoxPro SQL SELECT can replace many lines of FoxPro-style code.
FoxPro 2.0 adds non-procedural SQL SELECT statements to the mainstream of
its programming language. No special switches or mode changes are required
to access the power and efficiency of FoxPro SQL SELECTS.
The non-procedural aspect of FoxPro 2.0's SQL greatly eases the complexity
of intricate data retrieval tasks. The need to write and track complicated
FoxPro SELECT
During RQBE definition, the user can examine the SELECT statement being
constructed at any time. "This can be a potent learning technique. SQL is
new to most FoxPro and X-Base users," Dr. Fulton noted, "Experimenting with
the RQBE interface and seeing the resulting FoxPro SQL SELECT is one of the
best ways to learn SQL I've seen."
FoxPro 2.0 also provides several other powerful SQL commands. CREATE TABLE
creates table structures programmatically without reference to an existing
table, and INSERT adds records to a table in one step, which requires fewer
locks in network environments and thus yields notably faster performance.
FoxPro 2.0's SQL implementation supports nested SELECT statements, allowing
selection of records from a set of records chosen by another SELECT. In
addition, FoxPro SQL offers the uncommon capability of accepting general
expressions in the projection (fields) list and WHERE clause. This provides
tremendous flexibility in query design, allowing use of the rich spectrum
of FoxPro expressions in SQL statements.
Relational query results can be directed to a variety of FoxPro subsystems,
including a Browse, the Report and Label form systems, a Cursor, the screen
Display, etc. SQL output can be sent directly to an array.
In addition, RQBE output can be routed to an automatic Quick Report. This
option creates attractively formatted columnar or form-style report output
from a query immediately, without the need to predefine a report form.
Users can now display multiple related datafiles in simultaneous visible windows with FoxPro's powerful BROWSE facility. When moving through a parent database in one BROWSE window, only the related records in children databases will be displayed in multiple BROWSE windows on the screen at the same time.
FoxPro 2.0 implements SET SKIP TO to create one-to-many relationships between databases. SET SKIP TO allows moving within a child database without moving the record pointer in the parent database. In this way, many records in the child database related to a single parent record can be displayed.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - Rushmore(tm), a patent-pending new access
and filtering optimization technology introduced in FoxPro 2.0, provides
startling speed increases in accessing data in indexed files. Even compared
with previous versions of FoxPro, already widely regarded as the fastest
microcomputer database manager, FoxPro 2.0's Rushmore technology can access
data up to two orders of magnitude or more faster!
"We think the Rushmore technology is a true breakthrough that advances the
state of the art," said Dr. David Fulton, Fox Software President. "It opens
new vistas for data management on microcomputers. Massive tasks that were
beyond the scope of micro-based computers and required mini or mainframe
computers are now well within the capabilities of desktop systems."
Rushmore optimization is automatically employed - and dramatically improves
the performance of - any FoxPro command that uses a filtering condition
where indexes are available. Common FoxPro commands like BROWSE, SCAN and
many others benefit automatically. The long-requested general-purpose
BROWSE FOR in FoxPro 2.0 provides remarkable performance, largely through
the availability of Rushmore technology.
Rushmore, combined with other optimization techniques, is also utilized
automatically with FoxPro 2.0's new SQL SELECT statements.
"Rushmore has an extraordinary impact on data access. It works with any
existing application, although programmers will probably want to change
some strategies to extract its full advantages. Interestingly, the best
techniques for using Rushmore are simpler methods, not more complex," Dr.
Fulton observed. "It's better to look at an entire database, rather than
use tricks to work only with subsets."
"For example, on a 140 megabyte data file of 1.6 million records, a simple COUNT without Rushmore active took 186.5 seconds with FoxPro 2.0 (and 422 seconds with dBASE IV). A SEEK-COUNT WHILE strategy took 43.3 seconds with FoxPro 2.0 (and 79 seconds with dBASE IV). With Rushmore active, the simple COUNT took .126 seconds! Note that this is 3,349 times faster than the same simple COUNT under dBASE IV and 627 times faster than even the best strategy with dBASE IV!"
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - A new object-oriented Screen Builder in
FoxPro 2.0 uses fourth generation techniques to create attractive and
functional input and editing screens. The new Screen Builder is easy to
learn and easy to use for beginners, while providing complete control and
flexibility for advanced users, programmers and developers.
The user designs screens by simply choosing objects from a pull-down menu
and placing them anywhere on the screen, with either a mouse or the
keyboard.
The objects include:
The Screen Builder, modeled after that in FoxBASE+/Mac, provides
sophisticated, object-oriented controls without any programming. Taking
full advantage of FoxPro's unique event-driven, windows-style interface,
elegant and highly sophisticated screens can be constructed quickly and
easily.
As objects are placed on the screen, a broad spectrum of editing options,
including range checking, validation clauses with user-defined functions,
when clauses and even scroll bar management of long fields can be attached.
Advanced users can also create "Code Snippets" (blocks of code attached to
screen objects) to provide unlimited control over object behavior, field
contents and other aspects of the screen interface. The code snippet
approach places controlling code where it belongs: at the point in the
system where it has effect.
The FoxPro Screen Builder includes a variety of tools and options to ease
the screen design process.
Selecting multiple objects is now faster and easier with FoxPro 2.0's new
marquee tool. The marquee surrounds a group of objects with an outline, so
operations can be performed on all the selected objects.
Users can draw boxes and lines using a variety of line types, including
single and double lines, a panel of solid color, or any ASCII character, in
any color combination. Graphic elements can improve entry accuracy by
improving the readability and by calling attention to a particular area of
the screen.
Objects can be positioned on top of or behind other objects, centered,
colored, grouped and ungrouped for ease in manipulating complex collections
of objects, and the order in which objects will be accessed can be changed.
A time-saving Quick Screen option displays datafile fields in either
columnar or form layout, eliminating the need to enter a series of fields
manually.
Users can create Screen Sets consisting of one or more screens. Each individual screen is a functionally complete interactive element that can be part of a larger functional group of control panels and full screen displays. The Screen Set concept encourages construction and reuse of generic screen elements and control objects.
Information about the objects on the screen is saved in a FoxPro database, which in turn is used by the FoxPro's code generation system to create polished FoxPro code. The generated code can be executed directly or inserted into any FoxPro application.
The new Screen Builder is part of a suite of fourth generation tools in FoxPro 2.0. In addition to the Screen Builder, the new Menu Builder and enhanced Report Writer and Label Generator tools provide enormous versatility with unmatched ease of use.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0 provides template language
technology completely integrated within FoxPro, using FoxPro itself as its
own template language. The new approach replaces FoxView, FoxCode and
FoxGen, the template tools provided with earlier versions of FoxPro.
The new FoxPro template system is implemented with only a handful of
specialized FoxPro text merge commands. In conjunction with the new Screen
Builder and Menu Builder discussed in related releases, these few commands
provide the many benefits of template systems, like ease of application
development, reusability of template modules, and commonality of interface
across multiple applications.
"The new template capabilities in FoxPro 2.0 represent something of a
conceptual breakthrough," noted Dr. David Fulton, President of Fox
Software. "Template systems have always been based on the concept of
writing a form of pseudo-code and replacing portionswith actual product
code later. Of course, this required users to learn a completely new
language and set of rules - an investment which many programmers simply
weren't prepared to make."
"It dawned on us that we could handle this via the time-tested concept of
the `mail merge' - simply using FoxPro as its own template language! It
proved remarkably easy to add just a few text merge-oriented commands to
FoxPro and provide all the unquestionable benefits of template technology
without any of the drawbacks. There's little or no learning curve required.
Anyone who knows how to program in FoxPro already knows the template
language!"
The actual process of writing templates and creating code is
straightforward. A SET TEXTMERGE TO command specifies an output file to
which all subsequent code will be directed. SET TEXTMERGE ON indicates that
all text code found between TEXT...ENDTEXT commands, or that appears after
a special TEXTMERGE character (\, \\) is output to the file. In addition,
all expressions, functions and memory variables found between paired angle
brackets (<< and >>) are to be evaluated before they are sent to the output
file. SET TEXTMERGE TO closes the output file.
The resulting code is standard FoxPro source which the user can execute or
further modify as desired.
FoxPro 2.0 includes a variety of sample templates, which are themselves FoxPro programs, that process output from the new Screen Builder and Menu Builder. The output can take the form of FoxPro format files, code segments, or applications.
FoxPro 2.0 includes a new Application Developer called FoxApp. Users can create simple, yet well-structured and functional, applications with absolutely no programming and minimal effort. In addition to creating usable applications, FoxApp can also be employed by novice users as a learning tool.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0 offers a multitude of new
features, patent-pending technological advances, performance unmatched by
any microcomputer database, an innovative Relational Query-By-Example,
completely integrated SQL, a suite of fourth generation design tools and
many other advantages, in most cases at the same price as earlier versions
of FoxPro.
The single user version of FoxPro 2.0 carries a suggested retail of $795,
identical with previous versions of FoxPro.
"This represents an incredible value," noted Charles Valentine, Jr., Fox
Software Vice-President of Marketing and Sales. "We've never particularly
emphasized price as a major selling point for our products, but providing
such massive performance acceleration and extensive benefits while
maintaining price deserves special attention. Also notable is the inclusion
of both standard and extended true 32-bit versions at no additional cost;
in the past, we and many other vendors have offered separate versions at
significant extra cost."
FoxPro/LAN, the multi-user version which shipped simultaneously, also
provides both standard and extended versions. Retail price is $1,295.
"The LAN product is extremely cost efficient," Valentine observed. "Unlike
dBASE IV, Paradox and others which require expensive `LAN Packs' for each
group of a few nodes added to a network, FoxPro/LAN is licensed per server.
Users are welcome to add as many nodes to a server as their network system
allows, with absolutely no extra payment to Fox. It's not uncommon to see
corporations spending twenty or thirty thousand dollars or more for
competitive software just to serve a large network. With FoxPro/LAN, they
need spend only about one thousand dollars, with vastly superior
performance to boot."
The new FoxPro 2.0 Distribution Kit serves the needs of developers and
programmers who wish to distribute applications to end users and clients.
It replaces the Runtime sold with previous versions of FoxPro.
The Distribution Kit can create three forms of packaging for distributed
applications: the traditional runtime, small EXE executables using a
central library, or single monolithic EXE's. All three are completely
royalty free; once developers buy the Distribution Kit they never need pay
Fox any royalties or account for their sales in any way.
"Once again, the Distribution Kit is an excellent value," Valentine said.
"Retail price remains unchanged at $500, even though the Kit provides more
flexibility via its multiple packaging options."
Fox continues its tradition of low-cost upgrades for its existing user
base.
Price protection for FoxPro 2.0 took effect on February 1, 1991. All
registered owners of FoxPro 1.02 who acquired it after this date can
upgrade to the equivalent package in the FoxPro 2.0 system at no cost.
Upgrades for other owners of FoxPro 1.02 are $195 for single user, $250 for
LAN, and $100 for Runtime to Distribution Kit upgrade. In addition,
registered owners of FoxBASE+ can also upgrade to FoxPro 2.0 for the same
costs.
FOR IMMEDIATE RELEASE
Perrysburg, Ohio, May 20, 1991 - FoxPro 2.0 introduces a new virtual memory
system utilizing sophisticated technology to optimize memory utilization
and increase performance.
The new virtual memory system does not use overlays, eliminating the
inefficiencies inherent in overlay swapping. In previous versions of
FoxPro, 64K of RAM was used for managing overlay swapping. The new virtual
memory manager does not need this memory, and restores it to the general
memory management pool.
The virtual memory system manages segments intelligently. Granularity is
improved because segments are smaller than massive overlays. The
intelligent memory technology can exchange needed segments very rapidly,
and frequently used segments are retained in memory as needed.
The root segment in FoxPro 2.0 is reduced to approximately 280K, which
makes much more usable memory (on the order of 200K) available to the
FoxPro memory manager. This is particularly valuable in the LAN version of
FoxPro.
The virtual memory system improves performance in several respects. In addition to increasing available general purpose memory and the intelligent and extremely fast segment management, critical code that previously had to be stored in the root can now be relegated to segments because segments can be loaded so much faster.