Using Visual Basic for Rapid Development on the HP e3000

With an "off-the-shelf" e3000, a Windows 98/NT computer with Visual Basic 6.0 and some free software, it is possible to create a simple client-server application for any database in just a few minutes.

The HP e3000, with its built-in database, TurboIMAGE, has an installed base of between 70,000 and 100,000 computers. That makes it one of the most widely-used mid-range computer platforms for data processing. And it has made it necessary to open up the HP e3000 so that both host-based and client-server applications can access the same data.

Visual Basic is arguably the most popular Rapid Application Development (RAD) language for Microsoft Windows platforms. With an "off-the-shelf" HP e3000 and an "off-the-shelf" Windows 98/NT computer with Visual Basic 6.0 (or higher) and some free software, it is possible to create a simple client-server application for any database in just a few minutes. And you do not have to purchase any software other what comes with the base HP e3000, which must include a database (IMAGE or ALLBASE), and with any Intel-based client or server host (PC or server).

As a practical matter, for applications that use at least two tiers (two networked computers working together), whatever you can do with Visual Basic, you can do with Visual Basic and the HP e3000. In other words, for client-server and Web-based applications, where the HP e3000 serves as a host environment for servers (Web server, application server, database server, etc.), you can use the HP e3000 in applications solutions, just as you use a Windows server. Moreover, you can use the e3000 as a client host and run applications on a Windows-based server.

Components of Visual Basic

Visual Basic 6 is a very large application, including a number of technologies. Some of the most important are described below.

COM, OLE and Active/X COM (Component Object Model)is the foundation for most, if not all, of Microsoft's recent program-to-program interoperability solutions. In short, COM defines a number of rules that programs must obey in order to communicate with one another in a language-independent manner. Object Linking and Embedding (OLE) and Active/X are basically different names for the same thing. OLE is simply the older term. Active/X, an extremely complex group of features based on COM standards, makes it possible for two programs and/or applications that are both COM-compliant to interoperate even if they are written in different languages, or if they are executing on different computers that are networked together.

OLE/DB and ADOOLE/DB is an application of COM and Active/X technologies that allows any data source to be accessed regardless of the underlying database or file type. Microsoft, in delivering open database connectivity, first offered ODBC, assuming that the data was stored in a relational database. OLE/DB provides a similar capability for all data types, including relational databases, ISAM files, text files, Microsoft Exchange files or any other data source. Active Data Objects (ADO) provides a simplified way for Visual Basic programs to communicate with OLE/DB providers.

IIS, ASP and COM.IIS (Internet Information Server) is Microsoft’s Web server software for Windows NT. In addition to the HTML-based Web pages allowed by most Web servers, Microsoft has another type of page called an Active Server Page (ASP). ASPs can contain a combination of HTML and scripts. These scripts can take advantage of different built-in COM objects that enhance the capability of the scripting language and serve as a bridge to other, non-Web enabled programs. Moreover, ASPs are extensible, in that COM components that written in languages like Visual Basic can be called from scripts in Web pages.

The Key Is Middleware

In most cases, using the HP e3000 with Visual Basic is no more difficult than using Visual Basic with a native Windows 98/NT data source or application. When both the client host and the server host are properly configured for networking and interoperability (using the right middleware products), it is often difficult to tell which server is being used.

Middleware, software that enables cross-platform integration, is the key here. Middleware allows PC-based applications to browse objects, execute commands remotely, transfer files, access data using SQL queries and native IMAGE calls, and navigate files on the HP e3000 or SQL results locally. If you use Visual Basic components, it is possible to remotely control terminal-based applications that now run on the HP e3000 and have them interact with applications on the Windows platforms.

For our purposes, middleware is what allows an application running on a Windows-based computer to access programs and data on an HP e3000. The different types of middleware include desktop and data access.

Desktop access middleware comes in handy when it is desirable to control an existing HP e3000-based application from a Windows computer. In this case, a program on the desktop controls another program, such as a terminal emulator. The middleware enables interoperability between client user interfaces, including GUIs and existing applications. It allows new user interfaces to be added to an existing application with little or no code changes and provides a means to leverage back-end applications with GUIs and Internet front ends. WRQ Reflection, with its OLE automation server and Reflection Basic, is an example of this kind of middleware. Using Reflection and OLE automation, you can programmatically control any terminal session.

Data access middleware, the most commonly used middleware, allows applications to access data sources. In such cases, a TurboIMAGE database on an HP e3000 is remotely accessed from the Windows desktop. ODBC is used for this purpose. This kind of solution provides a data-oriented application programming interface (API) to make requests to read or update data from server-based data sources and uses either SQL syntax or a proprietary database gateway API. Examples of data access middleware include HP’s free ODBC/SE solution and products sold by M.B. Foster, Minisoft and Linkway.

Other types of middleware are discussed in detail in a presentation from Alvina Nishimoto on the HP Web site (//jazz.external.hp.com/papers/SolSymposium_00/middleware/index.htm).

Good News, Bad News

The Visual Basic world offers some of the best tools for enabling RAD. Most of these tools are reasonably priced, and some are free. But it’s also possible to create an application without purchasing any software at all other than what comes with the base HP e3000 (including IMAGE or ALLBASE) and with any Intel-based PC or server. For an example, visit www.xformix.com/vbexample. I created the application shown here in less than two minutes and without writing a single line of code.

Now for the bad news. To do client-server or Web development, regardless of which computer is used to host the servers, you must install and configure the required software and hardware. And that can be complicated, or at least time-consuming. In many cases, it’s more complicated than the development work itself.

How long installation and configuration take varies, depending on what has already been done to the computers you’ll use. For example, if the Windows computer is already networked with others, if Visual Basic is installed, and if ODBC and networking are already enabled on the HP e3000, it may take less than an hour to add another DBE (a database environment that is a collection of SQL tables attached to an existing TurboIMAGE database; these are needed for ODBC access using the free HP driver). On the other hand, if none of the work has been done and the task involves a number of patches and service packs, it can take 16 hours.

If you’ve never done it before, it’s a good idea to get help, whether that involves enlisting a paid consultant, a friend or a person at your firm.

–Charles H. Finley, Jr. is President of Transformix Computer Corporation, a software, consulting and systems integration company, specializing in leveraging software and data that operate in an HP e3000 environment either by migrating to another OS or by providing enhancements –client-server, Web access and other forms of operability.

CSY's Dave Wilde Shares His e3000 Vision

HP Professional sat down with Dave Wilde, recently appointed Research and Development manager in HP's Commercial Systems Division (CSY), to get an idea of the directions CSY is pursuing for the HP e3000. Wilde is no stranger to the HP e3000 and to MPE users. An HP employee since 1984 and a part of CSY since 1992, Wilde has for the last two years been a section manager in CSY, focusing on HP e3000 platforms, operating system kernel, network drivers and storage and high-availability products. The discussion focused on CSY’s priorities for the HP e3000 and the way those priorities are being met.

HP Pro: Thanks, Dave, for sitting down with us. Perhaps, you could start by identifying CSY’s top priorities for the HP e3000.

Wilde: I’d like to divide my answer into two parts when it comes to priorities – external, or customer-facing, priorities and internal priorities. On the external, or customer side, our priorities fall into three categories:

• Enabling continued growth of the overall platform and of our customers

•Supporting and facilitating the deployment of the HP e3000 in an e-commerce, Internet, intranet environment, and

• Continuing to improve the data center management capabilities of the platform

In the growth area, we’re working on new hardware platforms, which are always getting faster – higher I/O throughput, more bandwidth, more performance, etc. – and new network driver capabilities. Then, there’s the ability of the operating system and the database and related subsystems to scale in terms of OLTP performance – which also allows more users to connect to the system.

HP Pro: May we interrupt here to ask about the role of IA-64 in your growth strategy?

Wilde: Well, right now, I think we’re serving our customers best by continuing to support next-generation PA-RISC platforms … We have a very minimal, long lead-time architecture investigation staffed in the IA-64 area. I don’t think customers care whether the chip is PA-RISC or IA-64. They’re concerned about having platforms available, having the capacity, the scaling and the right support of peripherals on the platforms.

HP Pro: OK, that takes care of growth. What about e-enabling the HP e3000?

Wilde: In the overall area of e-commerce, Internet, middleware tools, etc., there are a lot of tools that customers need to interoperate with other platforms in order to Web-enable applications. We offer the Apache Web server and Java, for example. We’ve also been working with Channel Partners to offer specific middleware tools, like message queuing.

More recently, we’ve begun offering SSL on the platform, making sure that it is integrated with Apache. Other areas we’re looking into include single-on.

HP Pro: You mentioned new network driver capabilities and data center management as priorities.

Wilde: Yes, network drivers and continuing to support new platforms. One example is PCI (Peripheral Component Interconnect), a new backplane architecture. A lot of our network and I/O drivers for disk and tape devices need to be significantly re-engineered for that new environment. There’s a big benefit here – much higher I/O throughput. Also, this is an essential change, because next-generation platforms will support only PCI.

HP Pro: Continuing on, what are you doing in the area of data center management?

Wilde: In the area of data center management, we’re focusing on storage, enterprise management and high availability. We’re tracking the overall HP storage roadmap when it comes to disk and tape products, and we’re making sure we have up-to-date technologies in the area of disk arrays. We offer the AutoRAID disk array today, and we offer the XP256 disk array, as well as other arrays.

HP Pro: Fibre Channel is a hot topic for storage. What are you doing here?

Wilde: Actually, we have three Fibre Channel solutions: SCSI Fibre distance solutions that are shipping now; a SCSI Fibre solution shipping in the near term; and then, in the one-to-three-year time frame, a native Fibre Channel solution. With this offering, we basically go from a 3000 SCSI driver to a hardware box that actually maps onto Fibre Channel and then translates back to a SCSI device. It allows you to use Fibre Channel in the middle to expand the distance between SCSI connections – to have peripherals at a significant distance from the HP e3000. And, we’ll be offering a SCSI Fibre solution that will allow you to connect Fibre Channel devices to the HP e3000, again using a hardware solution. That means if you have a device that supports only Fibre Channel, you’ll soon be able to connect that to the HP e3000.

For enterprise system management, we’ve been beefing up our OpenView products, like IT/Operations [now called VantagePoint Operations]. We’re basically offering templates to make it easier to make the HP e3000 a managed node when you use OpenView IT/Operations.

And, for availability, we’re working with the HP OmniBack team to make sure the HP e3000 can be a managed node from a backup perspective, so you can back up an HP e3000 using OmniBack.

HP Pro: Let’s cover some of your internal priorities now.

Wilde: Internally, our big areas of focus are schedule accuracy, quality and efficiency.

We’re working on improving our schedule accuracy by doing a better job of setting expectations and then delivering on our commitments. On the efficiency side, we’ve always leveraged compiler technologies across HP-UX and MPE. Now, we’re doing more to leverage I/O drivers and some of the network driver technology. We’re more closely aligning the I/O subsystems within MPE and UNIX.

HP Pro: Are your efforts to e-enable the HP e3000 paying off? Are a significant number of users setting up their e3000s as Web servers?

Wilde: Recently, I’ve seen quite a bit more of this. A number of people are using the e3000 as a direct Web server. In the Smith-Gardner environment, for example, the e3000 is a very big part of an Internet e-commerce world. And traditional companies are using the e3000 for Web serving, as well as some of the really small dot-com companies that are growing very quickly. Some businesses have been exposing their e3000 data to the Internet – companies in the financial marketplace, for example, that offer their customers access to financial information in a read-only environment over the Web. Others are using the e3000 in an intranet environment, serving up information from, say, data warehouses.

HP Pro: As you continue to e-enable the e3000, what about new applications? Where will they come from?

Wilde: First, we want to make sure that Channel Partners who have been running their applications on the HP e3000 and have large successful businesses continue to be successful. Also, remember that these vendors started out as small HP Channel Partners – they didn’t start somewhere else and move to the e3000. That means our best opportunity is to identify vendors that may be small now but are growing very quickly and have a unique value add. It’s a better opportunity to grow seedlings you already have rather than try to transplant big trees.