Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesNew Leaders of the Client/Server Migration


June 1996 / BYTE Lab Product Report / New Leaders of the Client/Server Migration

"Upstarts" Delphi 2.0 and Visual Basic 4.0 offer the fastest ways of building client/server applications for Windows users.

Mark Hettler

Before the client/server "revolution," most companies' data resided in old flat-file databases on legacy mainframes. Today, companies face the challenge of tracking and efficiently using the data as it migrates to network servers and users' local hard disks. Spreadsheet programs, desktop DBMSes, or specialized query tools can help, but they're not easily tied together into integrated applications.

The best answer lies in software that helps you build mechanisms for users to enter, sort, filter, and report on your organization's data. With such client/server development packages, you can create custom progr ams that incorporate your business policies, procedures, and data operations into stand-alone applications.

We tested four leading packages for Windows: Borland International's Delphi Client/Server Suite 2.0, Microsoft's Visual Basic 4.0 Enterprise Edition, Powersoft's PowerBuilder Enterprise 4.0, and Gupta's SQLWindows 5.0.

How We Tested

NSTL tested the products for performance, versatility, and usability. We used each product to develop a standard database of books, authors, and customer orders for an order-entry system. Our test applications allow users to browse a database of 50,000 existing orders in various ways, and to enter new orders. Test users also run two reports: one detailing order status for customers within a user-specified range of zip code values, and the other covering all orders within a range of order numbers. This latter report can be achieved using either a five-table join or a three-l evel nested report.

We tested nondatabase functions with a string-parsing test that's based on an actual data collection mechanism NSTL uses. This is a significant performance indicator because database access speed often depends largely on the back-end server, not on the application.

Delphi Client/Server Suite

We tested an advanced beta version of Borland's Delphi; the final code release for version 2.0 wasn't available at press time, but the product is now shipping. In BYTE's experience, the performance of prerelease versions is often inferior to that of final products, but in our tests Delphi was head and shoulders above all its competitors. And this wasn't in just one area; Delphi was superior across the board: in database and nondatabase operations, browsing entire database tables, executing queries, and searching for data.

Delphi's navigation control allows scrolling, adding, updating, deleting, or canceling changes to records with a single bu tton click and no programming. A field editor allows quick placement of fields on forms and easy specification of calculated and lookup fields. Once a developer has specified a table or query object, he can select multiple fields and drag them onto the form. Delphi also includes Database Explorer, a powerful database administration tool.

The program offers a unique data control grid, which is essentially a grid of miniforms. Developers can place multiple fields, labels, and other objects in the upper left cell of the grid in any arrangement they desire, just as they would on a form. Each cell of the grid then displays a different record.

Delphi has unique facilities for synchronizing master/detail display--displaying a single record from one table and multiple related records from another. For example, our order-browsing form displays the matching entry records for the current order record. With most other products, you have to program a procedure that executes each time the user moves to a new master record, to requery the detail section. With Delphi, however, you link fields in the master and detail tables. As the user scrolls through the master records, the form automatically maintains synchronization based on the specified link fields.

Delphi is the only product in this group that cannot execute an event procedure each time the user moves to a new record. However, it allows a program to search for a specific value in any indexed field.

Delphi comes with two separate report-writing facilities. QuickReports uses Delphi forms and controls to tightly integrate reports with applications, but designing reports is confusing and cumbersome. ReportSmith has better facilities for designing reports, but applications must launch the ReportSmith run-time program in order to run the reports. The Delphi package includes a component repository that developers can store in a client/server database. All in all, an outstanding product.

PowerBuilder Enterprise

Powersoft's Powe rBuilder Enterprise 4.0 uses two main interfaces, the Window Painter for designing forms and the DataWindow Painter for defining visual interfaces to databases. Windows can contain embedded DataWindows. PowerBuilder's interfaces are the most intuitive and user-friendly of this group, but it's inconvenient to move between the two painters and awkward to manipulate embedded DataWindows.

With PowerBuilder you can implement standard SQL cursors, where the program executes a SQL statement and can step forward (and backward, if the database engine permits) through the result set. With cursors, the developer must programmatically move data from cursor fields to form fields for users to be able to view the data.

DataWindow Painter provides a visual query design interface, placing result fields in a window automatically. You can customize record layouts and display a multirecord view. This is the only product here that builds in "query by form," where the user puts a form into query mode and enters selec tion criteria directly. You can search on any DataWindow field.

With PowerBuilder you can produce sophisticated reports, including multilevel grouped reports, that users can launch directly. However, previewing, browsing, or printing selected pages requires a separate program, InfoMaker, that's also included but is particularly awkward to launch from 32-bit PowerBuilder applications.

SQLWindows 5.0

With Gupta's SQLWindows, developers work in an interface called the Outliner, a program editor in which you can drill down to varying levels of detail. The Outliner lists, in outline form, the components and subcomponents making up an application. Code is related to specific components in the outline.

The package provides a variety of tools for developing forms, including QuickForms. However, NSTL was unable to use all these facilities in testing because of a 32,768-record limit; instead, we were forced to use standard SQL cursors.

Developers use ReportWindows to design reports, although the main SQLWindows application manages actual record retrieval. It incorporates the data into the report format via a complicated set of event procedures.

TheTeamWindows module stores the pieces of an application in a repository on a database server. This repository stores reusable objects that might be needed for multiple applications, as well as serving as a version control system.

This is a short summary of a complex product that clearly finished last in these tests. However, Gupta has changes in the pipeline for the next version (see the sidebar "New Releases Move the Target" ), so successors to SQLWindows should not be counted out.

Visual Basic 4.0

Historically, Microsoft's Visual Basic has suffered from weak database access facilities. But version 4.0 (Enterprise Edition) catapults it to the top tier of client/server products, introducing remote data control, which bypasses the Jet database engine to provide direct access to client/serve r databases. This remote data control is especially well integrated with Microsoft SQL Server, providing support for such server features as server-side cursors. Microsoft also provides clear instructions on how to implement remote automation, which allows for partitioned applications (see the sidebar "Partitioning Adds a Middle Layer" ).

Visual Basic's interface is similar to Delphi's. A new project begins with a blank form, on which you place controls selected from a palette. You set properties for the form or individual controls by entering options in a property grid. Double-click on a component icon when you want to write code.

VB uses Open Database Connectivity (ODBC) for database access. You define data sources for applications by specifying ODBC data sources directly. An add-on, Data Form Designer, lets you select fields in a table or query from a pick list, and then it automatically generates a form with those fields.

Visual Basic, like Delphi, provides powerful debugging features. Besides setting breakpoints, stepping through code, and inspecting variables, users can know the routine that called the current routine, and the routine that called that one, etc. You can also have the program break whenever a selected variable's value changes.

You generate reports with Crystal Reports. You can place a report control inside applications, which can assign properties, such as selection criteria and sort order, at run time.

Making a Choice

The last time NSTL evaluated this kind of software, PowerBuilder was the top-rated product. Its first-to-worst slide reflects mainly considerable improvement by the competition. SQLWindows, a very close second-place finisher last time, has also fallen behind the times. Both are due for heavy-duty upgrades, as detailed in "New Releases Move the Target."

Visual Basic has always been a powerful tool for developing Windows applications, with a wide variety of built-in and third-party controls. And with ext ensive remote data support in this version, it's better than ever.

But good as those products are, Borland's Delphi takes top honors. Developers will find its procedures for form design and accessing of components similar to Visual Basic's, but in many little ways Delphi simply makes it easier and more convenient to access data from a client/server database. And its speed, both in database and nondatabase operations, is far ahead of all the competition.



Product Info

Delphi Client/Server Suite 2.0.....................$2000 (Windows 95 or NT 3.51; 
                                                          486/25 or faster; 
                                                          8 MB RAM; 50 MB disk space)
Borland International
Scotts Valley, CA
Phone:    (408) 431-1000
Internet: 
http://www.borland.com

Circle 1023 on Inquiry Card.

PowerBuilder Enterprise for Windows, version 4.0...$3295
 (Windows 3.x or NT; 
                                                          386 or faster; 
                                                          8 MB RAM; 19 MB disk space)
Powersoft Corp.
Concord, MA
Phone:    (508) 287-1500
Fax:      (508) 369-3997
Internet: 
http://www.powersoft.com

Circle 1024 on Inquiry Card.

SQLWindows 5.0.....................................$3495
 (Windows 3.1, 95, NT,
                                                          or OS/2; 486 or faster; 
                                                          8 MB RAM; 24 MB disk space)
Gupta  (now Centura)
Menlo Park, CA
Phone:    (800) 444-8782
Fax:      (415) 321-5471
Internet: 
http://www.gupta.com

Circle 1025 on Inquiry Card.

Visual Basic 4.0, Enterprise Edition................$ 999
 (Windows 3.1, 95, or NT 3.51; 
                                                           486/25 or faster;
 
                                                           6 MB RAM; 20-80 MB disk space)
Microsoft Corp.
Redmond, WA
Phone:    (206) 882-8080
Fax:      (206) 936-7329
Internet: 
http://www.microsoft.com

Circle 1026 on Inquiry Card.


C/S DEVELOPMENT TOOLS

screen_link (95 Kbytes)

Borland's Delphi Client/Server Suite is the fastest, most versatile, and easiest to use of the client/server development tools that NSTL evaluated. It offers superior performance across th e board and provides many useful data access features.

1.Frequent Filers. File-based operations are common, and this compact group of icons makes them readily accessible.

2. Creating Objects. This Windows 95-inspired 10-tabbed toolbar makes it easy to pick from the many types of operators and on-screen devices available, with a different toolbar just a click away.

3.That's Not Quite What I Meant. Once you've placed an object on a form or in a data module, the Object Inspector allows you to examine and set its properties and any associated events.

4. Dat's My Data. With Delphi, you can group all the components of an application into related modules. This example window shows three data tables, a query (which can include multiple forms), and a stored procedure.

5.Good Form. Delphi's form designer lets you place almost any type of data object, operator, or function. Form1 sh ows how graphics can be brought into a query screen.

6. Easy Pickings. Pull-down pick lists are just one of many interactive tools at the application designer's disposal that simplify the work of the eventual user.


Mark Hettler has been with Software Digest for five years, where he pioneered NSTL's coverage of SQL servers and multiuser databases. You can reach him at editors@bix.com .

Up to the BYTE Lab Product Report section contentsGo to previous article: Go to next article: New Releases Move the TargetSearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network