Make Mine MAPPER #12 --------------------- by Rob Haeuser The Designer Workbench: GUI Glue for that "Seamless" Look --------------------------------------------------------------- The outlook was grim. Given the relatively light session coverage for MAPPER, it was naturally questionable as to whether or not to attend the USE, Inc. spring conference in Chicago, Illinois, April 22-26. However, rumors had been circulating about a new MAPPER interface and a series of demonstrations Unisys had scheduled. That sounded like it warranted personal observation to me. Fortunately, management agreed. The rumors were true! This conference may well go down in data processing history as the dawning of a new age in automation. Believe it or not, the goal of a "seamless" environment, in which the user basks in the data of bases unknown, has been achieved! The power of MAPPER has been firmly attached to the presentation skills of the industry's graphical user interface (GUI) standard, Microsoft Windows. What is this GUI glue? It's called the Designer Workbench (DW), a rather humble name for what may become one of the most important developments in software fare. This new interface was introduced by Unisys at USE Plus, an area of the conference set aside for vendor booths and demonstrations. Unisys set up a network consisting of a 2200/100 running MAPPER 36R1 and Linc II, a U6000/55 running MAPPER 4R2, a small A-series running who-knows-what, an OS/2 and a PC MAPPER mixed up in there somewhere, and probably some other pieces easily overlooked. All of this hardware was connected via TCP/IP. Two large color monitors stood side-by-side at the front of the demonstration area. A PC, complete with a mouse and touch- screen capabilities, was connected to one monitor, running a MAPPER application, while the other monitor graphically represented the network configuration and what was happening on it. As a request was made to obtain data, the network configuration monitor would show what data paths/hardware platforms had been accessed. This was the only way we could see that data had been derived from various external sources, because the PC running the application seemed, in a word, seamless. The application being executed also showed some of the functionality the Designer Workbench provides. A shoe (guess which brand) ordering system, complete with a picture of the alleged footwear, prompted a user to select among various styles and colors with the touch of the screen or the click of a mouse. A "credit check" was performed after all options had been specified, and the purchase was denied due to lack of funds! The amazing part was that selection buttons, menus, function bars, graphs, visual images, etc., were all handled in a consistent way, with no need to manually switch from one hardware platform to another, or even one screen to another. Windows does all the presentation, with direction from the Designer Workbench. But what really excites me is the fact that the display of this visually rich Windows environment is under my control as a run designer. I can make a button, pop up a menu, invoke a selection list, and ultimately fold all the data together, presenting it as a combination of text, graphics, and video imagery. How is all of this done, you ask? A number of run functions have been added to MAPPER level 36R1 and 4R2 to support the DW. In fact, I counted 18 of them on a handout excerpted from the new manual (see Figure 1). ---------------------------------------------------------------- Figure 1 -------- @BTN (button) @CLS (close) @DFC (default colors) @EDT (edit box) @FON (font) @HID (hide) @INP (input) @LST (list box) @MBX (message box) @MNU (menu bar) @PC (invoke a PC program) @PCR (PC read) @PCW (PC write) @PIC (picture) @SHW (show) @TXT (text box) @WIN (window) @WSF (workstation form) ---------------------------------------------------------------- I didn't include the syntax for each statement, but it is generally what we run designers are used to: fields, sub-fields, commas, spaces, and ticks. There will definitely be some new terminology to learn, such as "edit boxes" and "window handles", but after wrestling with "cabinet" and "drawer", anything is possible. As you read down the list you might notice a couple of really interesting functions. In fact, one function in particular sort of sews up the seam, tying in the final piece of the three-tiered hardware hierarchy, the PC. "Seamlessness" may have already been achieved elsewhere, but by who's definition? Masking what mainframe or database is providing the information is a major accomplishment, but what if I want to then take that data and manipulate it in some PC pack, such as Wordperfect, Lotus 1-2-3, Harvard Graphics, etc.? In fact, a degree of seamlessness has been achievable for some time. After all, with MAPPER's Relational Interface (MRI), Data Transfer Module (DTM), Remote Runs (@RRN), as well as third-party vendor software to access other file formats, it has been possible for years to front-end applications with MAPPER screens and built- in functions while using data from other sources. It is the PC element that has been missing from the formula. Sure, I could gather data from all over the place, but to make it available for a PC pack, I would have to download to the PC, usually via a run supplied from our emulator vendor, which would use the terminal as a buffer, tying it up in the process. But even after that, I would have to toggle out of the emulator, start up the PC pack, piddle around, get out of the PC pack, toggle back to the emulator, and maybe then upload the piddled data. Sheesh! The combination of @PCW/PCR (PC write and PC read) and @PC (start a PC program) appears to sew up this last seam. As I understand it, you should be able to gather data from every remote corner of your corporate databases, give them that mighty MAPPER massage, download the result to the PC, drop the user into a PC pack with arguments passed, such as filenames, options, etc., and then return to the driving application without the user knowing what the heck is going on. And then there was the part about toggling in and out of the emulator. Well, you can forget about that. DW has a UTS60 emulator built right in! Coming from Unisys, I would bet that it's the closest emulation of a real UTS60 around. Let's look briefly at some of the other new functions. The @PIC (picture) builds or changes a picture. This command is used to include imagery/graphics on a screen. Currently, three file types are supported: files with an extension of .MGL (MAPPER graphics format), .BMP (Windows Bitmap format), and .PCX (PC Paintbrush PCX file format). Then there's the @WSF function, which displays a workstation form. This function, as well as @PIC and others, utilize what is called the DW Repository. Each PC has it's own local Repository. When a request is made for a form, picture, edit list, etc., MAPPER first checks to see if the DW Repository already contains a current version of the requested data. If so, that image is used, and no data transfer between the host and the PC occurs. If the DW Repository is not current, a new copy is downloaded from the host, and then the application uses the updated version. All this is transparent to the user. It is also possible to make local changes to forms within the Repository. If a new copy is downloaded from the host, the local modifications are saved in a backup file. This allows personalized customization of forms while still maintaining the integrity of the application. The Repository concept is rather exciting to me because it seems to render the current definition of a LAN (Local Area Network) obsolete (something I have believed for years anyway). Our agency currently has in excess of 400 LANs with over 10,000 PCs tied to them. Whenever anything changes, we do what is called a "software down". This happens fairly often. When numerous changes are being implemented, I have heard horror stories of a boot taking in excess of 4 hours! Sounds like we could do without LANs to me. The ability of the DW to dynamically download only what it needs is impressive, to say the least. Even WAN (Wide Area Network) can be redefined. How about SAN (State-wide Area Network) or CAN (Country-wide Area Network), or my personal favorites, GAN (Global Area Network), PAN (Planetary Area Network), and CAN (Cosmic Area Network). Maybe the last two will have to wait for a few years... And just what does it take to run the DW? The software requirements are: MAPPER level 36R1 or 4R2, Designer Workbench, Microsoft Windows 3.0, MS-DOS 3.3 or higher, and for TCP/IP connectivity, Net-PC level 3.5 or FTP software and cards (the Future Connect product is required for MAPPER 4R2/DW workstations). As far as hardware goes, you need a Unisys PW2, IBM PC, or IBM-compatible PC using an Intel 386 (SX or DX), 486 (or higher) processor, 4 MB of extended memory, 40 MB hard drive, a floppy drive (5 1/4" at either 1.2 MB, 720K, or 360K, or a 3 1/2" at 720K), and an EGA, VGA, or VGA+ color monitor. In case I didn't mention it earlier (which I didn't), DW also supports Unisys' other two 4GLs, Linc and Ally. However, the demos I saw were strictly for MAPPER, and all release material seems to be posturing MAPPER as the leading/driving force behind DW. After all, they did call it DESIGNER Workbench. Ever heard 'em called Linc designers? Or Ally designers? Nah. I don't know why, but I keep wanting to call it the Run Designer Workbench... Unisys has come up with an industry coup in the Designer Workbench. An IBM acquaintance of mine said point blank that IBM is afraid of MAPPER, and is losing customers daily because of it. I can believe that. He wants Unisys to write MAPPER to run on their big mainframes. I can believe that, too. MAPPER is being positioned as Unisys' flagship software, as well it should be. Maybe now management will give MAPPER the credit that has been long overdue. Hopefully, we run designers will no longer be relegated to the "bail it out after nothing else works" bucket, while everybody else and their kid-brother programmers try forcing round applications into square canned code. We might actually get first crack at them again! Imagine that!!!