ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MURAD: Multiple-User Rapid Applications Development(TM) A Demonstration of the dMILL All-Networks Productivity Kits for dBASE Dialects ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ SUMMARY ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The dMILL All-Networks Productivity Kits for dBASE Dialects permit you * to develop multiple-user applications * to enhance existing multiple-user applications * to convert single-user applications to multiple-user The Kits provide powerful software complemented by extensive tutorial information to give you the background knowledge you need to do network programming and to use the Kit's power tools in an enlightened fashion. The result is that you produce PUBLICATION-QUALITY multiple-user applications in EXTREMELY SMALL AMOUNTS OF TIME. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ THE TWO THINGS YOU *MUST* KNOW ABOUT THE KIT ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Here are two most important things to know about the Kit: 1. THE KIT WILL HELP YOU SOLVE One Hundred Percent OF THE NETWORK-Independent PROBLEMS YOU FACE IN MULTIPLE-USER PROGRAMMING: * Your application quality goes way UP! * Your development time goes way DOWN! * Your multi-user apps become way COOL! 2. YOUR SATIFACTION IS UNCONDITIONALLY GUARANTEED: * You must be DELIGHTED ÄÄ or your money back. * Your users must be THRILLED ÄÄ or your money back. * Your managers must be THOROUGHLY IMPRESSED ÄÄ or your money back. Reviewers and customers alike say the Kit is a TRULY EXTRAORDINARY PRODUCT. Let's find out why, OK? ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ KIT COMPONENTS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The dMILL All-Networks Productivity Kit for Clipper provides the infrastructure of a comprehensive development environment suitable for * an in-house programmer, * a consultant, or * a software publisher. It has many components: * a comprehensive multiple-user course with courseware. (This course is at the advanced undergraduate/beginning graduate level. Its prerequisite is a basic ÄÄ not necessarily advanced ÄÄ understanding of single-user Clipper programming.) * comprehensive step-by-step instructions for converting single-user applications to multiple-user or writing multiple-user applications from scratch. * implementation and quality control checklists. * portable source code libraries written in Summer '87 Clipper, Clipper 5.01, and Clipper 5.2. * programming tools and support utilities for design, analysis, debugging, maintenance, and operations. * an error reporting system to enable diagnosis of and recovery from error and warning conditions. * facilities for security, audit trails, and computing accounting charges. * free technical support via phone in North America and via CompuServe and fax worldwide. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ CRITICAL ACCLAIM ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Here are some excerpts from a review by Michael Britten of the dMILL All- Networks Productivity Kit 4.1 for Clipper in the May 1992 issue of Greg Lief's magazine "The Aquarium." (The current version is 4.5.) ****************************************************************************** The Equation Docusoftware = Tutorials + Techniques + Tools This one-of-a-kind product was developed by T. David Millican of Database Software Consultants in Austin, Texas. "Docusoftware," a trademark of the company, "designates products in which documentation and software receive equal attention during design and implementation." If this seems like one of those cool ideas that sounds better in a brochure than it turns out in real life, let me assure you that the esteemed Mr. Millican is up to the task. In fact, before I go through the usual litany of features, I want to say right now that the Kit is an excellent investment. I also wish to emphasize that it has much to offer for all skill levels. If you are about to code your first multi-user application from the ground up, or have been given the task to covert an existing system from single to multi-user, or even if you've been at LAN programming in Clipper for awhile, I consider The dMILL Network Kit indispensable. I can't imagine hand-coding a multi-user system without this tool by my side. ... Sitting down away from my computer and studying the tutorials was very satisfying. I experienced a lot of those "Eureka!" moments ... I depleted two of those yellow highlighting pens when I was studying this stuff. Maybe it should just be printed entirely in yellow. ... The routines in the current version are divided into four groups ... Resource Contention, Windowing Services, Semaphore Services, and Condition Reporting ... A robust error-handling system [writes] fatal error and warning information to .MEM files. To examine the screen saves, saved memvars, and other error reporting information, you select "Recover error and warning information" from the main menu of [a provided utility]. [The Kit's software] works like a champ! ... Even if you do not need the software component of the Kit now, you may one day, and I still can't speak highly enough of the educational value [of the Kit's tutorial component]. ... ALL IN ALL, THIS KIT IS A REMARKABLE ACHIEVEMENT BY A REMARKABLE PERSON. Michael Britten Clipper Aquarium May 1992 INTRODUCTION ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Welcome to a demonstration for the dMILL All-Networks Productivity Kits for dBASE dialects from Database Software Consultants. These Kits were written by Publisher and Chief Software Designer T. David Millican, who is the author of over two dozen dBASE-related articles and reviews, in addition to the standard text and reference, "dBASE Dialects Software Engineering" (from Van Nostrand Reinhold). The dMILL All-Networks Productivity Kits were developed as docusoftware(TM) according to the company slogan "World Class Tools for World Class Programmers." Docusoftware products give equal weight to documentation and software in design and implementation. Elegant software libraries are accompanied by extensive tutorials to support the informed and enlightened use of power tools which permits you to approach the theoretical limits of productivity! You can execute most of this demonstration program on a stand-alone PC running IBM PC-DOS or MS-DOS version 2.0 or higher. An extensive simulation of resource contention between two simulated network workstations is included so you can see how the software component of the Kits handles competition for resources between two network users. If you have access to an MS-DOS network, then you can exercise the multiple-user code in the demonstration program (choice "Demos" on the main menu and "Concurrent Demo" on the submenu) by executing it on two (or more) workstations. This demonstration begins by permitting you to browse the text file DemnInst.TXT, which contains the instructions for installing the demonstration program DemoMenu.EXE on a network. You can browse this file at the DOS prompt via the command "TextBrow DemnInst.TXT", using the TextBrow.COM utility included with the demo. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ INSTALLATION INSTRUCTIONS FOR A STAND-ALONE PC ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Here are installation instructions for a stand-alone PC or a workstation which executes the demo from its local (unshared) hard disk. 1. You must have DOS version 2.0 or higher and at least 250K free RAM. 2. Some demonstration functions require disk writes. We recommend that you do not remove the write-protection from the demo diskette (if you received this file on a diskette). Instead, we recommend one of two installation methods: (1) copy the diskette contents to another diskette or (2) copy the diskette contents to a hard disk. For example, if the diskette is in your A: drive and C: is your hard disk, you could execute the following commands at the DOS prompt: C: MD \KitDemo CD \KitDemo COPY A:*.* /V ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ HOW TO RUN THE DEMO ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ To execute the demo from a DOS prompt, enter RunDemo This runs a batch file which sets your network name to "DemoUser" and provides a value for the DOS environmental variable CLIPPER before executing DemoMenu.EXE. Alternatively, you can enter the following at the DOS level: SET NETNAME= DemoMenu For example, if your name is "Tom", code "SET NETNAME=Tom" with no blanks around the equal sign. If you receive the message "not enough memory" when you execute DemoMenu, you will have to free up more memory. The Clipper environmental variable is "branded" into the .EXE file by Blinker, so you cannot reset it at the DOS level with a "SET CLIPPER=" command. THE DEMO ON THE NETWORK ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ If you execute DemoMenu.EXE or RunDemo.BAT while logged onto the network, you may also wish to reset the control memvar which controls the source of the identification for the current user. The default value is to get this information from the DOS environmental variable NETNAME, but you may specify this information to be retrieved with Clipper's NetName() function. To do so, choose "Concurrent Demo" under demos. THE CONTROL MEMVARS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ There are over two dozen memvars used to control various aspects of the behavior of Kit routines. By altering the values of these memvars you can obtain many different learning benefits. The two biggest differences will come from using some or all of the TRACE FACILITIES and some or all of the SEMAPHORE FACILITIES. NETWORK INSTALLATION INSTRUCTIONS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Browse the text file DemnInst.TXT, which contains the network installation instructions. You can print this file with the DOS command "PRINT DemnInst.TXT" or print a side-by-side page view in landscape mode on HP LaserJet printers from the DOS prompt with "LaserPrn DemnInst.TXT" (using the LaserPrn.COM file provided with the demo). You can read DemnInst.TXT onscreen from the DOS prompt by entering "TextBrow DemnInst.TXT" (using the TextBrow.COM utility included with the demo). But the easiest way to read the instructions is to choose "Concurrent Demo" under "Demos"! ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ASSISTANCE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Call us at (512) 477-3423 or send e-mail to CompuServe 73667,56 if you need help in executing the demo. Note that the demo contains some of the services from DmUtil.EXE, the omnibus utility which is distributed with the Kit. DmUtil supports Kit users with a combination of courseware, design aids, and maintenance functions. For example, programmers use DmUtil to create and edit configuration files for individual users or groups of users. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ PARTIAL FILE LIST ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ RunDemo.BAT This batch file sets DOS environmental variable NETNAME and then executes DemoMenu.EXE. The CLIPPER variable is "branded" into DemoMenu.EXE and will be ignored if set. DemoMenu.EXE The executable code of the demo. DemoIntr.TXT An introduction to the dMILL All-Networks Productivity Kits and prerequisite network concepts. DemnInst.TXT Network installation instructions. Company.TXT Information about Database Software Consultants. Semaphor.DBF An empty semaphore table. DmCtrVar.MEM Control variables for Kit routines in DemoMenu. ReadMe.TXT This file. ReadMe.BAT A batch file to browse ReadMe.TXT. Order.FRM A form to use to order dMILL All-Networks Productivity Kits. TextBrow.COM A text browsing utility. LaserPrn.COM Prints two page images per sheet on HP LaserJet printers. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NOTE: Some of the files are marked with the "read-only" attribute. See the documentation for the MS-DOS ATTRIB command for more information on this file attribute. To delete the files from your hard disk, enter "ATTRIB -R *.*" followed by "DEL *.*". ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ PRODUCT HISTORY AND TECHNICAL REVIEWS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The first dMILL All-Networks Productivity Kit supported the Clipper dialect and was originally called "dCL-Net Library." You can read a sparkling review of this product on page 112 of the June issue of Data Based Advisor. Version 3.0 was the last version of the kit which was called "dCL-Net Library;" the name changed to dMILL Network Kit for Clipper with the release of version 4.0, and to the dMILL All-Networks Productivity Kit for Clipper at release 4.11. The May 1992 issue of Greg Lief's Clipper journal "Aquarium" contains a lengthy rave review of the Kit, which is called "INDISPENSABLE ... AN EXCELLENT VALUE ... FOR ALL SKILL LEVELS ... A REMARKABLE ACHIEVEMENT BY A REMARKABLE PERSON!" This review is stored on the demo diskette as Brit-Rev.TXT and can be accessed from the demo's menu. This product is endorsed by Buzzwords International for use with their product, dANALYST GOLD. There is more information in the tutorial. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ MESSAGES AND WINDOWS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The Kit uses a state-of-the-art windowing technology. You can control the colors and initial positions of message windows, and your users can move or hide these windows when they appear. The current demonstration uses this windowing technology. The windowing routines in versions 4.x are *IMPLEMENTED* and *DOCUMENTED* for general use. With these routines, a programmer can easily provide a state-of-the-art look to the portions of an application which display messages. This approach guarantees a consistent appearance of all the messages which a user might see. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DISTRIBUTION PERMISSION ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ You may distribute copies of this copyrighted demonstration diskette (or its files) to anyone without payment to Database Software Consultants as long as (1) you do not charge for the diskette beyond a shipping and handling fee and (2) you do not change the files on the diskette in any way. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÛßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßÛ Û The dMILL All-Networks Productivity Kit Û ÛÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÛ Û DON'T LOG ON WITHOUT IT!!! Û ÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛ