4Th Dimension, MS Access, and Filemaker Pro: a Comparison
Total Page:16
File Type:pdf, Size:1020Kb
4th Dimension, MS Access, and FileMaker Pro: A Comparrison 4D T E C H N O L O G Y W H I T E P A P E R Many individuals and organizations need database learn the system? How quickly can an experienced user applications. Their needs can range from a simple data- navigate through the application? How much time is base that tracks songs in an MP3 collection all the way needed to maintain and support the system? How use- to a multi-user client/server application that supports ful is the resulting application? When evaluating tools hundreds or even thousands of users as well as millions for designing databases,s, more and more organizations of records. The range of needs is quite broad so no are seeing the need to evaluate all of the attributes of a database is ideal in all circumstances. However,, most database design system as well as the attributes of the database applications fall in the middle range of system resulting database applications. requirements. For instance, most applications have oror will have multiple users. Most handle more than one file This document examines the following products:ts: MS or table of related information. Most manage at least Access,ss, FilFileMaker Pro, and 4th Dimension. Each productct thousands of records. It is this middle ground of appli- has its own strengths and weaknesses. In this docu- cations that are targeted by 4th Dimension, MS Access, ment, we will focus on the ability of these three prod- and FileMaker Pro. ucts to meet the needs of a middle range of system requirements. Specifically,, we assume the following Personal computers have empowered individuals to do requirements: multiple users (2 to 100), multiple tables much on their own. More specifically,, modern develop- (2 to 50) and at least thousands or even tens of thou- ment tools make designing databases much easier than sands of records. in the past. However,, as many individuals begin to cre- ate database systems, they find that designing a data- TERMINOLOGY base can be complex, regardless of the tool. The three Although each of the products examined in this white products compared here attempt to minimize the effort paper work with the same fundamental database com- needed to build a database. ponents, they sometimes use different terminology. Some of the products mentioned here use the term On the other hand,, users of a database application "File" when referring to a database table. This white don’t care how difficult it is to create.. They frequently paper uses the term "Disk File" to indicate an individual rebel against quickly designed applications that make document in the OS. Below is a brief chart that summa- their jobs more difficult. It often seems to users that rizes some of the differences in nomenclature between developers tend to minimize development time at the the products. expense of usefulness. In database design, difficulty is an extremely subjectivee attribute. Most database developers use time as a meas- uring stick for comparisons. New database designerss tend to focus on how "quickly" they can learn a data- base development system. While this is a completely valid component of measuring a database, the ease of learning a product is only one factor in evaluating a database design system.m. More experienced database There aae re a ffa ew gaps in the above tte erminology.gy. MS developers consider other factors in their evaluations. Access does not have an automatic way to query using How quickly can a database be developed? Once the an existing form whereas FileMaker Pro has no query database is completed,, how quickly can a new user builder other than using forms. FileMaker Pro also has HTTP://WWW.4D.COM/67 1 4th Dimension, MS Access, and FileMaker Pro: A Comparison 4D T ETE C H NN O L O G YY W H I TIT EE PP AA P E R R no mechanism for viewing multiple table definitions and their relationships in a single screen. In addition to the items in the chart above, this white paper uses the term application to refer to everything that makes up a database program including table defi- nitions, forms,, programming,g, relations,, etc. It also uses the term data to refer to the information entered by users. CREATING A DATABASE It is important to note that creating a database always involves the same fundamental steps. Regardless of how a database product approaches each step, developers of a database need to do the following in creating a data- base: Figure 1: Defining fields in MS Access - Define tables of information and the fields in those tables. MS Access provides an overview of the tables,, columns, - Design forms for on-screen use, including data viewing and relationships of a database through the and editing. Relationships window (Figure 2).. After defining the tableses - Design reports, labels,s, and other output, using forms or in a separate window (Figure 1),, the developer manually some other mechanism. chooses the tables that should be included in this view. - Write scripts,, macros, or methods to automate func-c- Dragging between fields creates relationships.ps. To edit tions and cause records/rows to be processed. field or table definitions, the developer uses the table - Customize the interface to make the system as easy to design window. use as possible. Defining Tables/Columns and viewing a database structure MS Access uses a spreadsheet-like interface for defining the fields in a table. Each row in the interface represents one column in the table. Various field-level attributes can be specified. This method is fairly convenient, but is a separate operation from defining relationships. Users must use the Relationships window to see an overview of the tables that make up the application. Figure 2: MS Access Relationships Window FileMaker Pro uses a single dialog for defining fields. AsAs with MS Access, each row represents a field in the table.. Unlike MS Access and 4th Dimension, FileMaker Proo includes "calculations" as a type of field. Calculations are defined using a formula editor and are treated similarly to other fields. FileMaker Pro takes care of evaluating the calculation whenever needed.d. This is convenient, but can also be a problem. Since calculations are evaluated by FileMaker Pro,o, developers do not control when the 2 HTTP://WWW.4D.COM/67 calculation is evaluated,d, which can hamper performance. it can play havoc with the entire application. Changing FileMaker Pro’s multiple file structure is one of the most common requests from developers. With no database overview, relationships are created in a series of dialogs (Figures 5 and 6) and can only be defined "one way." For example,, to relate a People and a Company table in both directions, the developer must define two relationships each in a different file. Figure 3: Defining fields in FileMaker Pro FileMaker Pro places a lot of emphasis on field creation. This is where yye ou define fielfields,ds, calculations,, validation,n, formats,ts, etc. (Figure 3).. While both MS Access and 4th Dimension have field level attributes, most attributes in those products can also be set on a per form basis. InIn Figure 5: FileMaker Pro Define Relationships window order to get form-specific behavior from a FileMaker Pro field, a calculation must be created that determines which form is currently being displayed (Figure 4).. Figure 6: FileMaker Pro Edit Relationship window w Figure 4: FileMaker Pro calculation editor FileMaker Developer 5.5 introduces a new capability called the Database Design Report. This feature outputs an overview of an entire FileMaker Pro application as either a FileMaker Pro database or as XML output. Although a welcome addition for developers, this new capability lacks the interactive nature of the other two database applications. FileMaker Pro’s "one table per disk file" approach is the source of this and other issues. For example, if even one of the files becomes misplaced,, HTTP://WWW.4D.COM/67 3 4th Dimension, MS Access, and FileMaker Pro: A Comparison 4D T E C H N O L O G Y W H I T E P A P E R Creating tables and fields in 4th Dimension involves the Forms Database Structure window and the Field Properties dia- A user most frequently interacts with a database log (Figure 7).. A single click defines and positions a new through forms (screens). Forms provide an interface for table in the structure window. Selecting a table allows users to add, modify,y, delete,te, examine, and manipulatete access to the Field Properties dialog where developers data. From a database user’s perspective,, a database add and modify field definitions. application is composed mostly by the sum of its forms. Creating and modifying forms is one of the most com- mon activities in designing a database application. Controlling the look, placement, and behavior of form objects is a significant task. Developing a databasese application requires some ability to understand screen layout, user interface design, and the most appropriatee interaction between users and the data. All three of the products provide a "Form Wizard" to aid in the creation of new forms. A form wizard is a screenn or series of screens that lead the developer through the steps necessary to create different kinds of forms. Although this can be a useful learning tool, most devel- opers usually start with blank forms or use the wizard to create simple forms as starting points. In either case,, most of the work is done by manually editing forms. Figure 7: Defining fields in 4th Dimension Below is a brief description of the form editing process for each of the products.