|
Xcase for Fox

Xcase for Fox is a smoothly integrated, upper and lower
CASE tool designed to provide a complete solution for the management of todays
increasingly complex database applications. Tightly integrated with the development
environment, Xcase offers powerful automation and maintenance, assisting the FoxPro 2.x
and VFP developer throughout every stage of the development process.
What Will Xcase for Fox Do For Me?
Xcase for Fox will not only assist you to correctly design
your databases from the start, but Xcases powerful upper and lower CASE features
will assist you in accomplishing every database related task encompassed by the entire
life cycle of your application: From conceptual analysis, to data model design, to
presentation and documentation, through database file generation, to code generation, and
finally throughout on-going database maintenance.
Will Xcase for Fox Work for Me?
Whether you are developing applications with FoxPro 2.x or
VFP, migrating to VFP or moving into a heterogeneous Client-Server environment also
handling SQL databases, Xcase for Fox will work for you. Especially designed to work with
VFP and FoxPro 2.x, it is also a migration tool that facilitates your move to
VFP.
Xcase for Fox can reverse and forward engineer from
VFPs DBC, and can import from FoxPro 2.x tables. With a single mouse click on the
enhanced VFP menu, you can transform a VFP model into a striking Xcase diagram. Using
Xcases superior modeling and design tools, you can redesign your Fox databases and
then generate VFP and FoxPro 2.x tables.
Xcase for Fox Does Everything You
Wish Fox Could Do!
While VFP supports database management by providing a tool
to design a database, a repository for Meta-data, stored procedures, triggers and
referential integrity, these features have many shortcomings.
This is where Xcase comes in!
Xcase for Fox enhances and complements the VFP and FoxPro
2.x environments by providing these powerful features:
|
What Xcase
adds to Visual FoxPro and FoxPro 2.x
|
Xcase
|
VFP
|
FoxPro
|
|
Customizable
and robust true Data Dictionary in DBF format
|
+
|
N
|
--
|
|
Set all
database properties without writing a single line of code
|
+
|
N
|
--
|
|
True design
tool... no need to commit to a modification right away
|
+
|
N
|
--
|
|
Application
allowing you to update the structure of your customer's databases
|
+
|
N
|
--
|
|
Model
integrity checking... won't let you set relations that won't work
|
+
|
N
|
--
|
|
Automatic
definition and maintenance of Primary, Foreign, and Inverse Keys
|
+
|
N
|
--
|
|
Automatic
maintenance of SQL Views as you modify field names or relations
|
+
|
N
|
--
|
|
Customizable
Referential Integrity Builder... works with Composite Keys!
|
+
|
N
|
--
|
|
Customizable
attribute inheritance from parent field or associated Domain
|
+
|
N
|
--
|
|
Presentation
quality diagrams: colors, fonts, annotations, graphics, zoom...
|
+
|
N
|
--
|
|
Print full
color diagrams and define your own reports
|
+
|
N
|
--
|
|
Divide a
complex database into manageable sub-diagrams
|
+
|
N
|
--
|
|
Display the
information you need: descriptions, keys, indexes, physical info...
|
+
|
N
|
--
|
|
Combine
Database Container Tables (DBC) and Free Tables in one model
|
+
|
N
|
--
|
|
Reverse and
forward engineer SQL tables with Xcase Professional Edition
|
+
|
N
|
--
|
Customizable and true, robust Data
Dictionary in DBF Format
Although VFP provides a DBC, it is not a true Data
Dictionary as it does not contain information about the structure of the files, and with
the DBC alone, you cannot create the database files. There is also a great deal of
important Meta-data missing such as, the precise mapping between primary keys and foreign
keys.
In VFP, a persistent relation is simply defined as a link
between a primary index and a foreign index. When those indexes contain more than one
field, as in the case of composite keys, this information is inadequate in order to
correctly build Referential Integrity Code or to insure the automatic maintenance and the
integrity of the Meta-data.
The Xcase Data Dictionary includes all of the crucial
Meta-data information such as file structures, index keys, primary and foreign keys, and
their precise mapping. In addition, you can add your own user defined attributes, and you
can even customize the Xcase editors to incorporate the user defined attributes. For
example, you could define a picture, a foreign language caption, or anything you choose,
for a field. The Xcase Dictionary is made up of DBF files that are easy to access and
allow the easy implementation of Data Driven programming as you can open the Data
Dictionary at run time.
All Database Properties Are Set
Without Writing A Single Line of Code
There are many DBC properties which can only be set by
running code because they do not appear in the user interface provided by VFP. This is the
case for many view attributes or for index collation. Xcase allows you to set all of the
file and database attributes directly in the editors provided, without having to write a
single line of code.
A True Design Tool: No Need To
Commit To Modifications Right Away
When you modify a table structure either in FoxPro 2.x or
VFP, you are required to modify the physical table when you exit the table designer. A
time consuming process, you must wait for the modification to be executed before being
allowed to move to the next table.
Xcase allows you to make modifications on the model rather
than directly on the actual database so that you can modify many tables, moving back and
forth between modifications. Once you have reviewed the ramifications of the modifications
on your design, you may commit to the modifications which can be executed while you are
away from your desk.
Application That Allows You To
Update the Structure Of Your Customers Database
Lets say that you have developed applications for
customers, and after they have been installed and data has been input, you release a new
version of your software which, as is often the case, includes many modifications to the
database structure. Because the DBC provided by VFP does not contain information about the
file structures, you are required to write a program to modify both the DBC and the table
structures each time the database structure is modified. This, needless to say, is a
maintenance nightmare.
Although VFP offers a utility that automatically writes a
program to create a new DBC and file structures, it has two serious flaws. First, it will
only create a new DBC and set of tables, but will not update an existing database
containing data. In fact, you will be required to erase the existing DBF files in order to
create a new DBC and set of DBF tables. The second problem is that because the utility
provided by VFP compiles the stored procedures, VFP must also be installed at your
customers site.
Xcase includes an application for installation at the
customers site so that when you modify the database structures, you may send the
updated Data Dictionary files to your customer. By simply running the application, Xcase
will compare the Meta-data stored in the Data Dictionary with the actual DBC and file
structures at the customers site, and seemlessly update these structures for you.
The application we provide makes it unnecessary to have VFP installed at your
customers site.
Model Integrity Check That
Wont Allow You To Set Relations That Dont Work: Automatically Defines And
Maintains Primary, Foreign and Inverse Keys
When you create relations in VFP, you can inadvertently set
relations that wont work. For example, in a Customer table you may have a field,
Cust_ID, defined as Character 6. If you build a primary index on that field, you must
manually add to the table Orders a field called, for example, Cust_ID (Foreign Key). VFP
will allow you to define it as Character 5. You will then have to manually create a
foreign index based on this field, and create a relation by linking the primary and
foreign indexes. This relation will not work because of the mismatch between the lengths
of the Primary Key fields and the Foreign Key fields. VFP will also allow you to do
circular relations like A is related to B, B is related to C, and C is related back to A,
without detecting that this relation is invalid.
Xcase will not only not allow you to make such errors, but
it will automatically create indexes, foreign keys, inverse keys and joins for you. For
example, in Xcase you first create Cust_ID in the Customer table as Character 6, and flag
it as primary key. You then create a relation by simply selecting the Relation Icon and
clicking on Customer, and then on Orders. The field Cust_ID will automatically
"migrate" into the Orders table, which means that the field is automatically
defined for you with the proper attributes. If you want to change the length of that field
in Orders, you must simply change the Parent field in the Customer table, and your
modification will be automatically cascaded into Orders. At the same time, the primary
index will be automatically defined in the Customer table, and the foreign index will be
automatically defined in the Orders table.
As you make modifications, your model is automatically and
correctly updated even when the primary key is composed of multiple fields (Composite
Key), as well as when the migration must occur across several relations. Whether you are
working with VFP tables or Fox 2.x tables, you will fully benefit from the automation and
maintenance provided by Xcase.
Automatic Maintenance Of SQL Views
As You Modify Field Names, Relations And Primary Keys
In VFP if after having built views,
you want to modify a field name in one of the tables, you must manually update the name of
the field. In fact, all maintenance of SQL views must be done manually.
One of the most powerful features of Xcase is the way it
handles views. Lets say that you want to build a view for Order Lines, and that you
want to include the name of the Boss of the Employee who took the Order. In order to
function correctly, this view must use several relations. From Order Lines, you must go to
Orders, from Orders to Employee, and from Employee again to Employee, using a
self-relation from Employee to Employee. Xcase automatically identifies that from Order
Lines to Employee, there exist two "paths": one to the Employee who took the
Order, and a second one to the Boss of the Employee that took the Order. Xcase will allow
you to name these two "paths", and when you select fields for a view, you can
select them through the names of the "paths" without having to again specify the
relations composing them.
In addition to this being a very convenient way of building
views, the real power of this feature is in the automation and maintenance. For example,
you may decide Employee is identified by Employee ID (Primary Key), instead of being
identified by Employee Name (a poor choice given that an identification should be unique,
and there may be more than one employee with the same name). Your SQL View statement will
be automatically updated to all your Join statements.
Customizable
Integrity Builder That Works With Composite Keys!
Xcase includes a very powerful template language that will
generate virtually any database related code. Xcase replaces the Referential Integrity
Code Builder of VFP with a template which overcomes the two main problems of the R. I.
Code Builder. That is, unlike VFP, it works with composite keys and you can customize the
generated code. Moreover, the code produced by Xcase supports nullification of a foreign
key when the Parent record is deleted. Lets say you have a Parent table, Employee,
and a Child table, Customer. What should the desired Business Rule be to implement
"Fire an Employee"? While VFP offers you the first three of the following
choices, Xcase also offers you the fourth option:
1) Do nothing. You probably do not want to do this as it
will result in a violation of Referential Integrity.
2) Cascade. When you delete Employee, you will also delete
his Customers, which you probably dont want to do either.
3) Restrict. You will not be allowed to delete the Employee
if he is in charge of recorded Customers, although you want to delete the fired Employee.
4) Nullify. When you delete the Employee, then the foreign
key of this Employee in the Customer file should be nullified, signaling that the Customer
is currently not being handled by an Employee. (In this case, you should have, in the
Employee file, a record with an empty ID.)
Customizable Attribute Inheritance
From The Parent Field Or Associated Domain
Xcase provides highly sophisticated and customizable
mechanisms to set attribute inheritance. In many instances, a modification of an attribute
or a field should be inherited by other fields. Xcase, unlike VFP, fully supports this in
three cases:
1) The Foreign Key field inherits from its Parent primary
key. For example, if you want to change the caption of Cust_ID in the Customer table, you
may set the automatic inheritance of the modification into the caption of the foreign key,
Cust_ID, in the Orders table.
2) A View field inherits from its Parent field. You may set
that any view which also contains the Cust_ID field will have the caption automatically
modified as well.
3) A field inherits from its Parent Domain. Xcase allows
you to define domains, which are actually extended field specifications that can include
type, size, and also caption, validation, and even user defined attributes, etc. For
example, you can define a domain called Telephone, and define all of its attributes. When
you define a field, you can identify it as type "Telephone" and not simply as a
character. The field will then automatically inherit all of the attributes of the domain,
unless you choose to override them. Finally, when you modify an attribute of a domain,
Xcase will allow you to selectively cascade that modification to all of the fields sharing
that domain in your model.
Presentation Quality Diagrams and
Reports
Your database design will have a tremendous impact on the
quality of the information system which you will supply to your customer, and on the
degree to which it will reflect the customers business world. For this reason, it is
essential to be able to communicate well with both your colleagues and your clients, not
only using screen designs, but above all, with clear and attractive diagrams of your
database design.
Xcase produces presentation quality diagrams at various
levels of detail, with various types of content and technical information such as keys,
indexes, descriptions, etc. You may choose to show descriptions to customers with limited
understanding of database design, while choosing to show your colleagues physical
attributes, focusing perhaps on keys rather than showing all of the fields. Xcase allows
you to print the diagrams in full color and in any size. You have full control of color
and fonts, and may add graphic shapes, annotations, etc.
A powerful documentation tool, Xcase
gives you the option of using the built-in report writer or, any xBase compatible report
writer, to fully document your database design. Divide A Complex Database Into Manageable
Sub-Diagrams
The trend today to include more aspects of an enterprise,
such as production, sales, inventory, personnel, etc. makes great demands on modern
databases which must necessarily contain a large number of tables. The database must
reflect the independence and interrelation of the various departments in a business, which
in some cases are managed by different programmers.
Xcase allows you to break a complex database down into
multiple diagrams, each containing only a sub-set of the tables of the model. You can
zoom-in and out, and open multiple windows showing different sections of the diagram
simultaneously. This "Divide and Conquer" feature is sorely lacking in the
database design tool that comes with VFP, as well as in FoxPro 2.x.
Combine Database Container
Tables(DBC) and Free Tables in One Model
When you design a database using VFP, you are restricted to
tables belonging to a DBC. Sometimes, however, you may want to include in your design free
tables that belong to a system not ported to a DBC format. Xcase allows you to do so.
How Does Xcase for Fox Compare With
The Competition?
Other data modeling tools on the market provide only
limited support for FoxPro 2.x , and none handles VFP s DBC tables. While some will
allow you to create FoxPro 2.x tables, it is not possible to modify their structure while
preserving existing data.
Price
Most of the competing products are sold for a much higher
price than is Xcase for Fox, Standard Edition. By no means a scale down program, Xcase not
only provides extremely tight support for both VFP and FoxPro, but in general, offers many
more powerful enhancements than the higher priced products.
We are offering the upgrade from the Standard Edition to
the Professional Edition at the difference in the list price (plus a nominal shipping and
handling charge).
|