Scrigroup - Documente si articole


HomeDocumenteUploadResurseAlte limbi doc
BulgaraCeha slovacaCroataEnglezaEstonaFinlandezaFranceza


Delphi 3 - Technology Overview


+ Font mai mare | - Font mai mic


Technology Overview

The Highest-Productivity

RAD Client/Server Tool for Windows

I. Executive Summary

II. Introduction 

III. Business Insight: Turn data into actionable information for better decision making 

A. Decision Cube Multi-Dimensional Analysis: 

B. Integrated QuickReports -- faster and easier: 

C. TeeCharts - integrated 3D charts: 

IV. Active Insight -- An Enterprise Component Foundry for maximum reusability

A. One-Step ActiveX:

B. Built-in COM Support:

V. Code Insight: Comprehensive Coding Wizards for Ease of Use

A. Code Insight speeds the learning curve 

Code Template Wizard for Correct Syntax

Code Completion Wizard for Simplified Programming

Code Parameter Wizard to Reduce Errors

ToolTip Expression Evaluation for Faster Debugging

DLL Debugging for Robust Code

VI. Multi-Tier Broker Architecture for scalability

A. Remote Data Broker for thin client database applications:

B. Constraint Broker for data validation, consistency and integrity

C. Business Object Broker for FailOver Safety 

D. Scalable Database Engine Support 

VII. Packages: Leading Edge Compiler Technology

VIII. Web-Enabled Client/Server Applications

A. WEB Broker: Client and Server Web Applications

B. ActiveForms and Web Deployment 

IX. Comprehensive Client and Server Functionalities

A. Data Module and Remote Data Module Objects 

B. Scaleable Active Dictionary 

C. Object Repository

D. Visual Form Inheritance and Form Linking 

E. SQL Monitor

F. SQL Explorer

G. InterBase NT - Relational Database 

X. Conclusion 

I.           Executive Summary

Application developers rely on Delphi Client/Server Suite for high-productivity, high-performance, scalable, client/server rapid application development tools. As corporate developers expand their scope to include the Internet and internal corporate 'Intranets,' Delphi's technological strengths in high-performance, reusable component technology help organizations realize a larger return on investment with better use of information.

Today, over 600,000 copies of Delphi have been used to produce commercial, client/server, enterprise and Internet-enabled applications. For example:

NASA's Atlantis and Russia's Mir Space station used Delphi to help identify and capture photographs of the earth. Also, NASA's 'Scientific and Technical Information System', developed with Delphi was named one of the nations top client/server applications by InfoWorld magazine.

American Airlines automated Flight Department procedures to eliminate paper-based-information bottlenecks. The flight department built a system to track air crew qualification requirements, schedule training events, and generate comprehensive reports. By using Delphi to develop applications that access the SABRE system running on IBM mainframes using DB2, American Airlines Flight Department has been able to save the very high cost of developing for SABREs Transaction Processing Facility (TPF) environment.

Other companies using Delphi Client/Server Suite to solve their business problems include: American Cyanamid, American Stores, Arthur Anderson, AT&T, BMW, BP Shipping, Bank of America, BBC Television, British Telecom, Compaq, DHL, EDS, Fiat, First National Bank of Chicago, Glaxo, KPMG, Sarah Lee Knitting, Standard & Poors, SwissBank, Union Bank, US Marine Corps, etc.

Delphi continues to set the standard for high productivity, rapid development of high performance client, server and multi-tier applications through the enterprise and across the Internet. Delphi 3 bridges enterprise wide client/server development and the Internet by building upon a it's unique combination of technologies, including rapid application development, scalable multi-tier database development, true object-oriented reusability and high-performance native-code compiler. Delphi 3 delivers on three key solution areas:

Making Multi-Tier Easier for Scalability and Reliability

Internet Enabling your Client/Server Applications using your existing Delphi skills

Ease of Use and Highest Productivity for the Business, Enterprise, and Developer

Delphi 3 helps reduces application complexity created by the increased demands of the enterprise and the Internet. Delphi adds significant functionality to cost-effectively make the transition to large-scale computing. Delphi 3's new technologies, such as Remote Data Broker, Packages, OLEnterprise, and Internet enablement in Delphi 3 allow for thin client applications to be easily distributed, configured, and maintained, thereby reducing costs. Built in support for Microsoft systems technology including COM and ActiveX support, allow for language interoperability so that you can leverage your existing investments and extend them across the enterprise. High-speed native SQL Links drivers and access to Entera Intelligent Middleware, allow you to integrate legacy data with new systems in order to leverage the company's knowledge base.

Delphi is the only scalable and open multi-tier architecture that puts your business at the center of development.

Delphis client-side insight technologies increase the productivity of the business, enterprise and developer by putting the business at the center of development.

Delphis server-side multi-tier brokers provide scalability and reliability from the desktop through the enterprise while making multi-tier easy.

Delphis ActiveX and HTML frameworks are the most productive Internet Development environment for high-speed dissemination of database information over the web

II.         Introduction

For many applications, particularly in the enterprise area, a more advanced, multi-tiered architecture has additional advantages in scalability, security and reliability. Coupled with the ongoing growth of corporate Intranets, we saw a natural convergence of client/server and Internet computing to deliver a mature, enterprise architecture that provides distributed computing capabilities without sacrificing the productivity and maturity of tools that exist in the client/server arena.

Delphi is a worthy investment of time and expertise -- Gartner Group

Delphi, in it's third release, is an established development tool delivering depth so that you can complete the most complex applications quickly, and breadth in order to deliver two tier or multi-tier applications for the Internet and Enterprise. Delphi has established itself as the standard for client/server development with the most comprehensive and highest productivity suite of client and server tools.

Delphi Client/Server Suite is used to create departmental and corporate client/server applications with native database drivers for Oracle, Sybase, Informix, DB2, MS SQL Server and InterBase.

Delphi has won over 30 awards for technical innovation based on its unique combination of the worlds fastest optimizing native code compiler, high productivity object-oriented component architecture and scalable database technology.

Delphi has shipped over 600,000 units worldwide in just over 18 months ensuring widespread developer support with over 50 third party books, 6 magazines and thousands of third party components and tools.

Delphi/400 Client/Server Suite, scheduled for release in early 1997, gives midrange system developers the productivity and performance of Delphi for extending their investment in AS400 data and applications.

Delphi Enterprise, for high-end corporate developers, will combine Delphi 3 with the Entera intelligent middleware from Open Environment to deliver high-end scalability, reliability and security for enterprise applications as well as integration with existing enterprise applications and data on legacy systems.

Delphi 3 adds over 50 new technologies. Client Insight technologies make Delphi 3 the highest productivity, easiest-to-use most productive tool for Windows development.

Business Insight turns data into actionable information for better decision making

Active Insight is an enterprise component foundry for reusability

Code Insight for ease of use and greater productivity

Multi-Tier Broker technologies reduce configuration and distribution costs with ultra-thin client database applications in a business-critical environment.

Remote Data Broker for zero configuration multi-tier applications

Business Broker for failover safety in a business critical application environment

Constraint Broker for data integrity and reduced network traffic

Web Enabled Client/Server technologies allow you to deliver information over the web using your existing Delphi client/server skills.

Web Broker and Web Deployment for high speed dissemination of information over the Web

This paper will discuss these technologies and how they enable a corporation to put the important aspects of the business at the center of development. By doing so, you can bring development projects to completion more quickly and scale with the growing demands of the business.

III.      Business Insight: Turn data into actionable information for better decision making

Corporations generate a lot of data and most business applications generate large volumes of transactional data. Consider an order entry system that records all the information about your customers. But increasingly what is needed is a way to take the large volumes of data and turn it into useful information to support better decision making. Taking advantage of this growing quantity of data can provide the insight into more cost-efficient business practices, insight into a competitive advantages or insight into market opportunities.

Delphi 3's Business Insight provides the fastest way to turn enterprise-wide data into actionable information. Delphi 3 includes seamlessly integrated components for graphically displaying enterprise or Internet data:

Decision Cube for multi-dimensional data analysis

TeeCharts for flexible high-speed visualization of database information

Quick Reports for summarization of data.

Each component of Delphi's Business Insight works together to provide powerful decision support to your applications. Now you can easily build custom Decision Support Systems applications that give your users the ability to access and analyze enterprise-wide data at precisely the level of detail they require to make informed business decisions.

A.        Decision Cube Multi-Dimensional Analysis:

Decision Cube is for anyone who wants more sophisticated 'live' analysis of data. It allows for ad hoc data analysis, and yet scales to meet the high-level information delivery needs of executive users. Decision Cube can be delivered in a customized application or a web browser so that everyone has access to information.

'People want a tool that, like a spreadsheet, allows them to flip information and to focus on aspects of the business, modeling on what's important to them,' says Gord Patton 'For many companies, the data is too big and they need something to turn it into information.' Nadile, Lisa, Data Browsing, Information Week, Nov 4, 1997.

Decision Cube's advanced features like, Drill Down, Pivot and Aggregation go beyond static grids or DataWindows to provide new decision support mechanisms. This means visualizing data in new ways and making better decisions. Collapsible summaries and a drag and drop interface integrate seamlessly with graphs to drive your business.

Figure The Business Insight Decision Cube and integrated 3D charts supports multi-dimensional analysis for better decision making.

Delphi 3 allows you to customize business critical applications with the Decision Cube's dynamic query creation, multi-dimensional data views, and dynamic charting. Decision Cube in conjunction with Delphi's multi-tier database capabilities allows you to build more sophisticated application in less time and with less coding than before.

Decision Cube is a complete set of visual components that can be visually customized. You can tap the full power of Decision Support analysis from the Delphi environment without complex programming. Also, you can add substantial power to your decision support applications with the object-oriented programming of Delphi.

B.        Integrated QuickReports -- faster and easier:

High-Speed, easy-to-use and powerful reporting are important for effective communication of data through-out the enterprise. Now, Quick Reports allows rapid development of complex reports for distribution over the Web or from within an application to disseminate information more effectively.

QuickReports is an integrated set of Delphi components that rapidly creates columnar, report-in-report, composite, master‑detail, and over 130 different mailing label reports. Printing, Previewing, and Page Orientation are invoked with simple object methods making it easy to incorporate reports into your client / server applications. QuickReports also makes it possible to preview reports in your application so that you can see the information as it would appear on paper. This allows you to look at the information in new ways. Or you can export your report to a variety of formats including text and HTML, so that you can easily distribute information to the Web.

Figure Business Insight includes seamlessly integrated QuickReports for rapid distribution of complex reports over the web or within an application.

Additionally, Quick Reports seamlessly integrates with TeeCharts to enhance your reports with sophisticated graphing capabilities and to give you insight into your business. Its unique multi-threaded architecture gives you added performance and flexibility to preview or print.

Quick Reports has been enhanced with an even easier, more intuitive and faster interface as well as many wizards to make it the easiest to use and most powerful report writer. For example, the new Report Wizard walks you through building simple, master-detail or label reports and the advanced expression evaluation wizard allows you to incorporate calculated fields with point and click ease.

C.        TeeCharts - integrated 3D charts:

Visualizing data is the two-way visual and interactive interface between people and their information resources. Comprehending large quantities of data in order to make business decisions is vital to the success of the organization. Business Insight - TeeCharts makes data patterns evident and brings data relationships into focus. Visualizing data as graphs with TeeCharts makes this easy. TeeCharts combines the speed of native Delphi controls with the flexibility of the Delphi RAD Client/Server and Web development environments to help create decision support systems.

TeeCharts are easy to use and easy to learn. Developers work with a Wizard to graphically display enterprise or Internet data with over eleven different styles. For example Line, Bar, Polar, Candle and other chart styles makes interpreting data faster which leads to better and faster decision making.

Figure Business Insight Easy to use TeeCharts provides over eleven different graphing styles to turn data into information

TeeCharts are object-oriented graphing controls that provide you with a framework to develop custom business applications. From large complex analyses to full drill-down capabilities, TeeCharts applications enable you to understand large volumes of static and real-time information lending insight into the decision making process.

IV.           Active Insight -- An Enterprise Component Foundry for maximum reusability

Delphi 3 is the Enterprise Component Foundry -- the highest-productivity application environment for creating high-speed industry-standard ActiveX components and COM objects. Delphi 3 ensures language interoperability with Delphi, C++, Java, Visual Basic, PowerBuilder, IntraBuilder, JavaScript, and other languages. Delphi uses ActiveX and RPC Server Objects in a multi-tier environment to provide re-usable and integrated business solutions.

Today, over 60% of Delphi developers are creating their own reusable components. Components can support COM interfaces or be automatically turned into ActiveXs so that they can be shared with other development teams thereby increasing their productivity through re-usability.

'[Delphi 3] includes an 'enterprise component foundry' that leverages ActiveX technology to build distributed applicationsCreating components, such as ActiveX controls, DLLs (dynamic link libraries), and Web-based Active Documents is now a one-step process, according to beta testers. 'It used to be a code-intensive process. Now, it's painless, and the components are native to Windows 95 or Windows NT, or Internet Explorer, so they don't require a run-time interpreter,. Levin, Rich, Information Week, November 1996

A.        One-Step ActiveX:

Development teams within a corporation use a variety of tools depending on their needs. They may use C++ Builder for power and control, or they may use Delphi for ease of use and productivity. They may use Visual Basic for Applications in their Microsoft Office products, or they may be maintaining legacy PowerBuilder applications. In any case, object-oriented reuse of components can significantly reduce development time and application maintenance. Delphi 3 creates enterprise-reusable, high-speed ActiveX controls to run in these development environments.

Delphi goes beyond Visual Basic's ability to create only form container style ActiveX Controls (i.e. ActiveForms) by creating machine-code compiled, fully object-oriented ActiveX controls which don't require large runtime DLLs for distribution. High speed ActiveX controls work seamlessly with high-speed development environments, like Borland C++ Builder, preferred in most corporations. By simply starting the ActiveX Wizard almost any Delphi component, you create ActiveX controls complete with TypeLibaries and Property Pages.

Figure 4. Delphi 3's easy to use Wizard provides One-Step ActiveX Control creation for reusable components throughout the enterprise.

Because Delphi is completely object oriented, unlike Visual Basic's object based paradigm, developers can use inheritance, polymorphism and encapsulation to create native machine code, stand-alone ActiveX controls with new properties, methods and events. For example, one can create a simple WinExec button that will launch a windows application:


TCommandButton = class(TSpeedButton)


FCommand: string;


Procedure Click; override;


Property Command: string read FCommand write FCommand;



Procedure TCommandButton.Click;


WinExec(PChar(FCommand), SW_SHOW);



After creating this new Component, the One-Step ActiveX Control Wizard automatically generates all the ActiveX Code, a Type Library and Property page for immediate use within almost any Windows development tool or application.

B.        Built-in COM Support:

Only Delphi integrates COM seamlessly into a rapid application development environment so that developers can easily and quickly create business objects, OLE Automation Servers and ActiveXs. COM is implemented as a native type in Delphi to maximize language interoperability and enterprise reusability. The native built in COM support also means full support for Microsoft system standards, such as ActiveXs, Active Documents, ActiveForms and Active Containers.

COM and Distributed COM (DCOM) are critical architectures for multi-tier client and server applications. The new COM classes in Delphi 3 fully implement COM and OLE standard interfaces. This enables developers to more easily create COM based client/server applications, such as OLE document servers and ActiveX controls, than other development tools such as PowerBuilder or Visual Basic. These tools are limited by their runtime interpreted languages, and lacking or limited support for OLE.

Figure 5. Delphi 3 has built in full COM and DCOM support for high-speed interoperability with other development languages.

COM interfaces are automatically garbage collected so that applications free all their memory requirements. This in turn increases application stability and automatically reduces the possibility of errors. Every COM interface in Delphi is automatically referenced counted in order to track how many times it is instantiated. While the reference count is non-zero the object remains in memory. Once the reference count reaches zero the interface implementation is automatically disposed of. [LD1] 

V.       Code Insight: Comprehensive Coding Wizards for Ease of Use

A.        Code Insight speeds the learning curve

Remembering the syntax of a statement; the methods, properties and events of a component; or the declarations in a procedure will no longer be a concern for Delphi 3 developers. New Code Insight provides the simplest mechanism for speeding the development of client/server applications and reducing the learning curve of Delphi. For example:

Figure Code Insight technologies increase developer productivity as well as making Delphi easier to use and easier to learn

Code Template Wizard: Delphi 3 provides standard code templates for statements such as If, FOR, WHILE and CASE so that programmatic syntax is always correct. In the editor, simply start a statement and Delphi 3 will complete it for you thereby reducing errors and speeding development. Delphi 3 will also allow the developer to add their own code templates so that the development environment is customized to your needs.

Code Completion Wizard: Delphi assists developers in the use of the Visual Component Library or their own components. As you type, Delphi 3 automatically provides the list of properties, methods, or events names for the given component. You no longer have to remember the methods or property names, or look up help. This saves valuable development time and helps reduce the learning curve of Delphi.

Code Parameter Wizard: The parameters for procedures, functions, methods, and events are now displayed in a Windows ToolTip as you code. Save valuable time by not having to navigate in the editor to where the declaration was first introduced. This reduces errors by making sure the parameters are passed in the correct order of the declaration

Tool Tip Expression Evaluation: The ToolTip expression evaluator allows the programmer to position the cursor over an object, variable, parameter, constant, or any other expression and see the assigned value in a Windows Tool Tip. This saves development time and gets robust applications to market more quickly.

DLL Debugging for robust code: Delphi 3 makes debugging even the most complex applications easier by allowing the developer to debug DLLs within the Delphi environment. The developer no longer has to use a separate debugging program to effectively create DLLs. By simply setting the host application and setting a break point in the DLL. You can easily debug DLLs hosted inside other applications or servers.

VI.           Multi-Tier Broker Architecture for scalability

'Multi-tier architectures are characterized by the separation of the user interface, business logic and data access logic. Many organizations are implementing multi-tier architectures for enterprise applications to realize the two key benefits.

Multi-tier architecture allows for business rules to be centrally located on a shared server, providing the potential for reusability.

Secondly, centrally locating business rules makes maintenance much easier and more cost effective. No longer does software need to be propagated out to every client workstation each time a business rule is changed.' Overstreet, Chip, Delphi Informant, Sept. 1996.

Delphi 3 delivers the only open, scalable, multi-tier architecture. Delphi 3 allows you to respond quickly to the emerging computing environments emerging from the Internet and enterprise. Delphi 3 allows you to partition applications, so you can centrally locate business logic for maintenance and reusability. It integrates legacy code with new code by offering language interoperability in COM. It integrates legacy data with new data through high speed SQL Links and access to Entera Intelligent Middleware. Delphi 3, thereby, leverages existing investments and utilizes your company's knowledge base more fully. Plus, Delphi 3 incorporates a thin client architecture reducing the complexity of development and ensuring, low-cost deployment, less configuration and maintenance, and a robust application environment.

Figure 7. Delphi 3 makes Multi-Tier development easy with new Broker Technologies

A.        Remote Data Broker for thin client database applications:

Currently RPC Servers and DCOM Objects are incapable of retaining the notion of data in a multi-tier development environment. Programmers spend valuable time encoding and decoding data for transmittal to and from the server and client. Programmers spend valuable time and resources displaying data and tracking user actions on the data (e.g. Inserts, modifies and deletes). With respect to performance, as well as client and server side data caching, etc., programmers concern themselves with reducing network bandwidth

Unique to Delphi is the Remote Data Broker. It allows customers to communicate data from in a multi-tier development environment while providing all the capabilities of a high-performance client/server application. In fact, due to decreased network traffic, performance may be significantly better.

Thin Client Configuration reduces maintenance costs: The architecture of the Remote Data Broker is such that it is no longer necessary to distribute and configure the Borland Database Engine on each client machine. Each client machine is enabled to communicate data to and from a Borland Database Engine or RPC Service on a centralized server. The Database Engine is centrally maintained and configured only once at the server instead of on every client. This significantly reduces maintenance and cost. No other rapid application development tool allows you to create zero configuration database applications

Centralized connection management reduces simultaneous database access fees: Because all connections to the database are centrally managed, the number of simultaneous connections to your data can be managed and reduced resulting in even further cost savings.

Briefcase database applications enable remote users: The client application can use all of Delphis data-aware controls upon retrieval of the result sets from the Remote Data Broker. The client application has the option to maintain the data in memory or store it to disk. Server connections don't need to be maintained thereby reducing unnecessary network traffic and reducing the dependency on the server. A brief-case model of working with data is perfect for applications where the users are on the road or disconnected from the database servers for extended periods of time.

For example, Sales Force automation applications typically need to download pertinent contact information, product inventories, and price data to the sales representative for use while he or she is on the road. The user modifies and inserts data as they conduct business just as if they were connected at the office. The salesperson is now able to respond to their customers more quickly and more responsively with more accurate information. After their business trip is concluded, they send the new orders to the server for consolidation with the centralized database for further processing.

To write a Sales Force automation application in today's development tools would require very large amounts of code. Great expertise about networks, database systems, configurations and leading edge client/server techniques would have to be learned and used to achieve this task. With Delphi 3, this is all automatic with the unique and flexible architecture of the Remote Data Broker.

Efficient use of the Network increases performance: The Remote Data Broker intelligently uses the network by giving the developer the ability to request only the data the application needs. The DataPackets sent to and from the client and server are optimized to send data, data validation rules and meta-data so that the client application is no longer dependent on network or the server. The developer is given further control to request a full result set or partial result sets. Only the modifications made to the data at the client are sent back to the server, not the entire result set. Smaller movements of data from client to server significantly reduce costly network bandwidth.

Transaction resolution closely coupled to reusable business rules for better efficiencies: Modifications to data at the client are automatically identified and maintained for processing at the server. The Borland Database Engine, centrally located on an application server, will automatically trap errors that occur due to transaction latencies, changed data values, invalid data, or other database server failures. It then reports back to the application server the exact nature of the problem. The developer can then resolve the transaction failures with predefined business rules on the server or send the appropriate error messages back to the client for further resolution. Centrally maintaining the database transactions and coupling them with centralized business rules helps more efficiently manage the business.

Figure 8. Only Delphi 3's Remote Data Broker reduces network traffic and, network loads, and centralizes transaction management.

Remote Data Broker Objects can maintained by the Business Object Broker for failover safety. The Remote Data Broker uses full object-orientation to create COM Objects or use RPC Services. To maintain these distributed objects in a business critical application, they have to be managed. With the Business Object Broker, Delphi allows you to create duplicate Remote Data Broker objects, shadow objects, so that if one object should be un-instatiable the other object will be available. This is fail over safety for a 24x7 application environment. Using OLEnterprise or DCOM you can put COM objects on an application server that implements load balancing, fail-over safety, security, and other essential services in a business-critical enterprise environment.

B.        Constraint Broker for data validation, consistency and integrity

Data validation and consistency are important to maintaining data integrity. Currently data integrity is maintained by a set of checks, constraints and validation rules applied at the client application, the database server or in a business rule in a multi-tier environment. Each location option has advantages and disadvantages.

Client: Validation rules applied at the client reduce network traffic because you don't have to go over the network to the server to see if the data is valid. However, client side validation requires costly maintenance as the rules are distributed among many clients.

Server: On the other hand, database server validations are centrally enforced, easily modified and applied automatically to all applications using the database server. However, server side validation requires that the client send all data over the network to the server for validation. This makes the application unresponsive to the user and costly in network bandwidth.

Business Rules: Business Rule validations have the advantage of being centrally maintained, easily changed, and more easily written than in RDBMs proprietary languages, but they still require network traffic. Many of these rules will duplicate complement the rules being applied at the database server instead of replace them.

Only Delphi 3's Active Dictionary and Constraint Broker solves the problem of managing and automatically propagating data validation rules from the server through to the client in order to reduce network traffic and enforce data integrity.

As the users of an application modify data, they are informed of invalid input with developer defined Custom Error Messages for quicker resolution. Delphi also allows the developer to add additional constraints that may be applicable only to this application along with default values from the server.

Figure Exclusive to Delphi 3, Constraint Broker technology automatically propagates server Constraints to the client to improve application responsiveness, enforce data integrity and reduce network traffic.

C.        Business Object Broker for FailOver Safety

Business critical applications need to be reliable and fast. In order to achieve this, developers can partition applications so that they provide redundancy to their business rules systems. Also, developers can dedicate high-speed resources to the processor intensive business rules in the application. Additionally, separating the business rules from both the database and the user interface enhances the reusability of business components from application to application.

Delphi 3's Business Object Broker provides object location transparency for any object: RPC Servers, COM Objects, Business Rules, or Remote Data Brokers. Instead of directly binding a client side system to a remote distributed object, the client binds to a distributed naming service which then locates and binds to the requested object on any available machine. The Business Broker automatically checks the availability of the object on the different machines so that the developer doesn't have to do so thereby guaranteeing that the business rules are available in a 24 hour, 7 day a week computing environment.

Figure 10. Delphi 3's Business Broker provides fail-over safety for business critical systems in a multi-tier enterprise environment

With the Entera AppMinder product, the developer can not only check for availability of an object on a server, but can poll for machine loads and then balance the system for optimum performance.

The Business Object Broker takes advantage of the true object-oriented nature of Delphi 3. The Business Object Broker can help provide 24 x 7 operations on Remote Data Broker Objects, Business Rule COM Servers and Entera RPC objects. This helps ensure that the critical parts of your business are always available.

D.        Scalable Database Engine Support

Delphi 3 provides the most scalable and fastest database access with high-speed native SQL Links Drivers, more integrated ODBC access, more native drivers for Microsoft Access and FoxPro and a new open and scalable architecture.

SQL Link native drivers provide the fastest way to connect to database servers by writing directly to Database Client Services. Delphi Client / Server Suite 3 incorporates new 32 bit high speed native drivers that offer even faster performance and more functionality. These drivers include: DB2, Informix, Oracle, Sybase, MS SQL Server, AS400, and InterBase The new SQL Links enables tools such as the SQL Monitor and SQL Explorer to assist the developer in creating and tuning applications.

Delphi 3 uses an open and scalable DataSet architecture in order to support multiple database engines. The developer is given complete control to provide the essential database services (e.g. caching, retrieval, language collating, heterogeneous access, generic cursor support) necessary for a specific application. Different database engines now have a formal way to produce result sets that work seamlessly with the over 20 powerful database visualization controls found in Delphi.

Figure 11. Delphi 3's open database architecture supports multiple database engines to leverage over twelve data-aware components.

The new virtualized TDataSet easily allows programmers to bind new data sources into the Delphi environment. This architecture is used to provide complete integration with Entera for integration with RPC database server objects. In a multi-tier environment, data sets can be provided by RPCs, or COM objects and in the future CORBA objects. The Entera Database Server Generator has the ability to develop and deploy database servers/objects for Oracle, Informix, DB2, Sybase, SQL Server, IMS, VSAM, or any other database that supports ODBC. By binding these objects into the virtualized TDataSet, the developer can create applications that use legacy-database systems along side existing applications

VII.          Packages: Leading Edge Compiler Technology

Packages are a unique leading-edge compiler technology that gives developers the ability to breakdown applications into separate, reusable compiled pieces without a slowdown in performance.

Packages turn the Delphi Visual Component Library, your own set of components, or any Delphi unit into a specialized Package DLL. Delphi 3 Packages, VCL30 and VCLDB30, encapsulate the entire component library so that programs no longer have to link the components into each executable. Encapsulation significantly reduces the size of executables, for example a 500K executable could easily become 15K. In turn, these executables are more easily distributed over the web and more easily configured on the client machine.

Using Packages requires no changes to the rapid application development within Delphi or to the construction of a Delphi project. Delphi offers the flexibility to use or not to use packages, depending on the requirements of application delivery and the overall goals of the organization.

Packages are accompanied by a supplementary DCP file that enables object-oriented class manipulations, such as Inheritance, Polymorphism, and Encapsulation, across DLL boundaries for maximum reusability.

Figure 12. Packages significantly reduce the size of executables for easy web deployment

Because the Visual Component Library also consists of packages, they can be configured to be used on a per project basis, thereby reducing the complexity of the environment and the associated learning curves. Packages increase the capabilities for team development by segregating the Delphi VCL from the business components developed in the corporation. The business components can be maintained discretely, versioned, easily updated, and quickly incorporated into new projects.

Conclusion: Only Delphi 3 Packaged applications are easily distributed and configured for a thin client multi-tier architecture without runtime interpreter DLLs.

VIII.        Web-Enabled Client/Server Applications

Delphi provides two mechanism to Web-Enable your client/server applications while using your existing Delphi skills.

WEB Broker for high speed dissemination of database information over the web. The Web Broker makes it easy to deliver database information as HTML to any browser on any platform.

ActiveForms & Active Web Deployment for zero-configuration, client/server applications. ActiveForms and Active Web Deployment use the web infrastructure to deliver ultra-thin client/server applications.

A.        WEB Broker: Client and Server Web Applications

Client/Server and Internet development benefit from high speed native code compilers, reusable componentry, scalable databases, multi-tier architecture and rapid application development to deliver an advantage in a dynamic business environment.

'Movement [of data and applications], componentry and distribution are all coming together to redefine our systemsThe Web, combined with other critical innovative technologies such as replication, messaging, component architecture (for example OLE, CORBA, Java and so on), and N-Tier (distributed) application capabilities, will change the world's IS architectures to be distributed in design (both data and applications), dynamic in movement, and component-based.' Pantaja, Mary, Client/Server Redefined, Database Programming and Design, October 1996, Vol 9 Number 10.

Delphi 3 includes Web Broker technology that introduces high throughput and high speed, server side web development for creating, managing and delivering data over the web. Web Broker includes four server side components, the WebBridge, and WebModules. These technologies will be discussed in detail below.

Figure Delphi 3 provides client and server solutions for the web.

WebServer Applications -- Web enabling client/server applications:

Due to its open architecture and support of system DLLs, Delphi 3 is the only high-productivity rapid application development environment that lets you create high-speed, high-throughput web-delivered data applications using your existing client/server knowledge.

WebServer applications DLL or Executable extensions to the Web Server. Create ISAPI/NSAPI DLLs, server interfaces from Microsoft and Netscape respectively, or CGI or WinCGI applications. With WebServer applications, you have complete control over a web sub-site without worrying about resource management. Web Sever applications also bridge to the high-speed transaction, and multi-tier capabilities of Delphi 3 so that you can easily scale your web applications to the large number of clients and large quantities of data.

Figure The extensible Object Repository contains WebServer Applications for creating, managing, and delivering corporate data over the web.

WebBridge: The WebBridge allows developers to program to a common API for both the Microsoft and NetScape Web Server APIs, NSAPI and ISAPI, which protects your code base from emerging and competing Internet standards. The WebServer application automatically handles communication to ISAPI and NSAPI so that the developer is isolated from the idiosyncrasies of each system. The developer can then concentrate on implementing a business solution regardless of the back-end web server.

Figure Delphi 3's WEB Insight leverages existing knowledge of client/server application design for creating WebServer applications.

WebModules: The WebModule acts as your WebServer's application information center by providing a designated central location for dispatching requests, defining specific URI (Uniform Resource Indicator) actions, and creating HTML pages. It combines these web-specific actions with data access and business rules in order to deliver high through-put data over the web without effort. The WebModule is a codeless and visual way of providing control over multiple requests coming into a web sub-site in order to provide client/server and web functionality.

Sessions: The Session handles simultaneous database requests by automatically creating new Borland Database Engine segments for each request. Borland designed the Borland Database Engine to handle multiple users through a single instantiation. When the Microsoft Internet Information Server (IIS) or NetScape Server processes call into the Borland Database engine on behalf of a number of browser clients, sessions are automatically created. The WebSession reduces server memory footprint and speeds web server application development by reducing configuration issues.

Web Dispatcher: The Web Dispatcher is the centralized request processing center. It allows the Delphi developer to produce web content using the same skill sets used in creating Client/Server applications. The WebDispatcher prioritizes requests and then dispatches each request to specific responders. These responders produce HTML text for specific data types.

HTML Producers: Delphi includes three different HTML Producer objects. They turn database information or programmatic information into HTML for delivery by the WebBridge.

Conclusion: Delphi is the only high-productivity rapid application development environment that creates, manages, and delivers data over the web. Delphi gives the developer the power to produce web delivered database applications by creating machine code DLLs that bridge both Microsoft and Netscape Internet standards while using your existing Delphi skills. Delphi Web Server applications also bridge to Delphi's high-speed, multi-tier development environment to scale to large volumes of users and large quantities of data.

B.        ActiveForms and Web Deployment

Delphi provides the easiest way to web-enable client/server applications that run on Windows Clients by turning any Delphi form into an ActiveForm. ActiveForms are ActiveX Controls that use the Delphi form as a container for other Delphi components. ActiveForms publish ActiveX property pages and type libraries for adding high-speed functionality to other development environments, for example Internet Explorer, Visual Basic or PowerBuilder. Or use these forms to deliver and configure applications over the Internet.

Figure Delphi uses the Web infrastructure for ActiveX delivery of ultra-thin, native code compiled client/server applications.

In combination, only Delphi's ActiveForms and Remote Data Broker help deliver ultra-thin, zero-configuration, multi-tier database application. Web Deployment automatically creates an HTML file that delivers an ActiveForm to the client along with all the files (packages, database files, etc.) necessary to run the application.

Figure Only Delphi 3's Web Deployment can deliver native code compiled, zero configuration ActiveForm client/server applications.

Support for web deployment is automatic and makes use of both Microsoft and Netscape browser support for CAB files. In addition, to facilitate efficient downloading, a single Delphi library or application can now be packaged into separate DLLs without compromising execution performance. Also, Code Signing is incorporated in order to enforce security. Using our standard VCL packages, a Delphi application or DCOM server can now be as small as 15K. When combined with Delphis new automatic web deployment support, an entire distributed application can be stored in a repository on a centralized server and deployed on multiple machines with a single click in a net browser. Each time the application is subsequently launched by a user, automatic version checking is performed and only those packages and components that have changed, if any, will be re-deployed. These high performance, native code applications can run in a browser or as standalone desktop applications.

No other development tool can take full advantage of the web while leveraging your client/server expertise.

Figure Delphi 3's creation of ActiveForms adds high-speed functionality to Internet Explorer, PowerBuilder, Microsoft Office and Visual Basic.

IX.     Comprehensive Client and Server Functionalities

Delphi Client / Server Suite 3 includes an integrated suite of tools for building high performance Client / Server applications with such extensive features as:

Object Oriented Database Application Architecture

Flexible Client / Server transaction models.

Centralized Object Repository for team development

SQL Monitor for SQL Testing and Tuning

SQL Explorer for integrated administration of database servers

Data Module Objects for separating business logic from visual data representation

Scaleable Database Dictionary for consistent use of extended field attributes

The Data Module, Scaleable Database Dictionary and Object Repository are technologies that become the framework of a unique Database Application Architecture. This architecture then becomes the basis for building high performance Client / Server applications.

A.        Data Module and Remote Data Module Objects

Delphi Client / Server Suite 3's Data Module and Remote DataModule Objects act as your applications information core by providing a designated central location for defining data access and business rules. The Data Module Object separates business logic from the GUI and acts as a codeless way to connect and manage business logic from a single location.

Figure Delphi Client / Server Suite 3's new Data Module and Remote Data Module Objects encapsulate Business Rules.

Business logic can be applied to Tables, Stored Procedures, Queries, and Providers by creating methods on Before and After events such as posts, deletes, inserts and edits. This allows you to create new business objects more easily.

Master Detail Data relationships are defined in a codeless manner in Delphi. The Developer can create Client / Server applications easily and quickly by visually setting properties on the Datasources or by using the Database Form Wizard.

Applications and forms can be visually linked to the Data Module to propagate business logic without writing extra code.

Data Modules are classes of objects that pertain to the interaction of data with the database server. Isolating all database operations in Client / Server application makes application maintenance simple.

B.        Scaleable Active Dictionary

The database dictionary stores and uses customized information about the contents of the data in your tables. The dictionary ties the familiar model of working with fields through the property inspector to a permanent storage facility. The data dictionary holds information about extended field attributes like min, max, default values, constraints, error messages and display preferences. Using the data dictionary has two advantages:

Consistency: common field attributes are centrally stored in the data dictionary and then retrieved at application design time. A developer can create extended field attribute domains and the team can appropriately apply them to fields.

Network Traffic Reduction: Delphi allows for data validation at the client or at the server. The data dictionary can maintain extended field attributes that perform client side data validation efficiently by reducing network traffic.

Figure The Scaleable Data Dictionary maintains consistency by storing attribute sets for Database Schema.

C.        Object Repository

Delphi Client / Server Suite 3's Object Repository stores and manages application objects: Forms, Data Modules, Experts, and DLLs. In essence, it centrally locates corporate assets so that they may be leveraged by the team to eliminate redundant development efforts. As objects proliferate, the repository increases in importance.

The Object Repository:

Supports team development practices by referencing objects on a network.

Is customizable so that developers can define their own logical groupings of objects to facilitate reuse.

Figure Object Repository centrally locates application objects and enhances team development.

D.        Visual Form Inheritance and Form Linking

Developing a corporate standard in applications is important. Ensuring that these standards are adhered to is more difficult. Visual Form Inheritance and Form Linking extends object oriented programming to a visual paradigm ensuring that corporate and programmatic standards are maintained from project to project. In conjunction with the Object Repository, these standards are centrally managed resulting in faster project turn-around time.

Visual Form Inheritance allows anyone to take advantage of object-oriented reusability and maintainability by providing a codeless way to use inheritance, encapsulation and polymorphism.

Figure Visual Form Inheritance simplifies Object Oriented reusability.

E.         SQL Monitor

Delphi Client / Server Suite 3 is the only RAD tool that integrates a native SQL monitor for testing, debugging and tuning SQL queries in Client / Server applications. This in turn increases developer productivity and application performance.

The SQL Monitor enables the developer to trace calls between the client and server. This information allows the developer to find problematic SQL statements and then optimize the SQL transactions. A series of trace options lets the developer customize the amount and type of information that is reported on. The SQL Monitor helps the developer know that the SQL in the application is being performed optimally, what is the SQL generated by the Borland Database Engine, if the Database Client Libraries are functioning properly, and if the database server is executing a run-away query. The additional capabilities to save and print the session log enables more thorough testing.

Figure Delphi Client / Server Suite 3 is the only RAD tool that integrates a native SQL monitor for testing, debugging and tuning SQL in Client / Server applications.

F.         SQL Explorer

The SQL Explorer provides the information center for your database management demands; it supports the creation and modification of tables, aliases, stored procedures, triggers and business rules through interactive SQL. This graphical tool is an integrated database schema and content management utility tailored to the needs of professional database developers.

The SQL Explorer, unique to Delphi, makes database administration easier and more intuitive than having to use a separate non-integrated tool. A simple to use graphical interface is a perfect way to represent the complex relationships that exist in a database server. The SQL Explorer presents schema information from Oracle, Sybase, InterBase, Informix, DB2, MS SQL Server and others. The developer can drag and drop fields, tables, and stored procedures onto the Delphi application form to build Client / Server database applications quickly. The developer can also issue SQL statements directed to multiple servers and multiple databases.

Figure The SQL Explorer is an integrated tool for administering SQL and PC Databases from within the Delphi Client / Server Suite 3 environment.

The SQL Explorer, also manages the Scaleable Database Dictionary. The simple to use interface enables the developer to easily define new domains of extended field attributes and then associate those to a field. The next time the field is used in an application, all the attributes are automatically applied.

G.        InterBase NT - Relational Database

Delphi Client / Server Suite 3 includes a four user InterBase NT developer license. Developers can create standalone client / server applications using a scaleable relational database. When the volume of data, or size of application grows, both the InterBase relational database and the Delphi application will scale accordingly.

InterBase is Borlands high performance, cross platform SQL Server. InterBase is available on over 15 operating systems, including: Windows 3.1, Windows 95, Windows NT, NetWare, SCO, Sun OS, Sun Solaris, HP-UX, IBM AIX, SGI IRIX, etc. InterBase is ANSI SQL 92 entry level conformant, supports server events for event driven programming, and has an exceptional concurrency model for multiuser access. InterBase offers record level locking and due to its Multi-Generational Architecture delivers superior performance because database read operations do not block database write operations.

Local InterBase, also available in Client / Server Suite 3, provides Delphi developers with their own single user ANSI 92 SQL conformant server for prototyping and development of true client/server applications on Windows 95 or Windows NT. Local InterBase has all of the same functionality as the multiuser versions of InterBase available for NT and Unix, including transaction control, stored procedures, triggers, and even event alerters, which enable event driven programming. This means that development can occur on a laptop while on the train, airplane, or at the customer site, and that the final database to be used can be changed when the application is ready to be deployed.

Using Delphi Client/Server Suite 3, developers can design, prototype, and test their Delphi/InterBase applications on one machine. InterBase offers an exceptional Windows 95 GUI interface including configurable property sheets, native 32 bit tools like the Server Manager and Interactive SQL tools, and the complete documentation in Windows 95 Help.

InterBase ensure that data is always available due to their excellent multiuser performance, high security, and fast recovery features. InterBase is used in the aeronautical industries by companies like Boeing and Lockheed for manufacturing, by the Money Store and many other banking institutions, and in financial trading centers like the Philadelphia, Boston, and Russian Stock Exchanges. The common thread among all these customers is the need for excellent multiuser performance, high security, and fast recovery when system failures occur.

X.       Conclusion

Borland has a comprehensive family of client/server and Internet development tools that offer developers the competitive advantage of an open, scalable architecture with high-performance and high-productivity. Within the family of tools, Delphi 3 is the highest productivity RAD client/server tool for Windows that seamlessly scales from the desktop to the enterprise.

By sharing common technologies across our product lines, Borland is able to deliver tools that are easy to learn and leverage your investment in training and code. For example, all of the Borland development tools are available in client/server versions which include high-performance SQL Links native drivers for connecting to corporate databases including Oracle, Sybase, Informix, Microsoft SQL Server, DB2 and InterBase as well as ODBC.

Shared technologies: Borland shared technologies reduce your development costs.

Common RAD WorkBench

Consistent, open development environments

Reusable component architectures and component libraries

High-performance native drivers to corporate databases

Advanced SQL tools for database management and performance monitoring

Award-winning debugger technology

Open, scalable architecture with Entera intelligent middleware

As application complexity has increased due to the demands of the enterprise and the Internet, Delphi has added significant functionality for a smooth transition. The Data Broker, Packages, OLEnterprise, Business Broker and Internet Enablement in Delphi 3 allow for thin client applications to be easily distributed, configured, and maintained, thereby reducing costs. Built in COM and ActiveX support allow for language interoperability so that you can leverage your existing investments. Access to Entera and the high-speed native SQL Links drivers allow you to integrate legacy data so that the company's knowledge base can be fully utilized. Open support for industry standards provides directory and security services crucial to business-critical applications. Delphi is the only scalable and open, multi-tier architecture that puts your business at the center of development.

Delphi continues to set the standard for high productivity and rapid development of high-performance client, server and multi-tier applications through the enterprise and across the Internet.

 [LD1]The inherent model for components in Delphi is the optimized Visual Component Library which get compiled into an executable to produces the fastest client/server applications. Delphi developers have the option of implementing interfaces on existing Delphi classes, thereby incurring the overhead of interfaces only when necessary.

Politica de confidentialitate | Termeni si conditii de utilizare



Vizualizari: 1448
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved