Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
tips:revmedia:v4i3a1 [2023/11/05 22:15] – created - external edit 127.0.0.1 | tips:revmedia:v4i3a1 [2024/06/19 20:20] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== The Programmer' | ||
+ | ^Published By^Date^Version^Knowledge Level^Keywords^ | ||
+ | |Sprezzatura Ltd|01 JUL 1992|2.12+|EXPERT|PX| | ||
+ | |||
+ | ==== Introduction. ==== | ||
+ | |||
+ | If you've ever had to produce an update diskette for a remote system and | ||
+ | found yourself struggling to remember which programs have been changed and | ||
+ | which indexes have been added, then PX could be the utility for you. It's | ||
+ | one of those "I must write one of these myself" | ||
+ | seem to find the time for. Now Harmacek Data Systems have done the work for | ||
+ | you with a utility which has been tried and tested in the field and proved | ||
+ | to be so useful that they' | ||
+ | (for a small cost, of course...) | ||
+ | |||
+ | ==== Product Description. ==== | ||
+ | |||
+ | The Programmer' | ||
+ | an AREV application. It has two main components: firstly, an MFS which is | ||
+ | placed on all files to be monitored (including dictionaries) which generates | ||
+ | audit records whenever a write or delete operation is encountered; | ||
+ | secondly, a suite of programs which allow a transmission file to be created | ||
+ | from the audit of changes. This file can then be sent via diskette or modem, | ||
+ | and is uploaded by another process at the remote site, applying the changes | ||
+ | automatically. During the upload process, indexing information can be | ||
+ | ignored simply by setting a command line flag if required. | ||
+ | |||
+ | Other features include the ability to report on transactions already held, | ||
+ | and to toggle the auditing MFS on and off. Since this is achieved using TCL | ||
+ | commands (e.g. PX SUSPEND) it can easily be interfaced with any R/Basic | ||
+ | programs. | ||
+ | |||
+ | ==== Installation and Use. ==== | ||
+ | |||
+ | PX comes on a single diskette, and it has a comprehensive user manual | ||
+ | provided (in fact, given its target market it's almost too comprehensive in | ||
+ | places). The manual is generally helpful and easy to follow, although | ||
+ | personally I would have put the large bold-type warning message about not | ||
+ | using the DOS copy command at the beginning instead of tucking it away on | ||
+ | the last page. | ||
+ | |||
+ | The installation is composed of two phases. Firstly, the software is loaded | ||
+ | via a simple collector window process. Since PX is designed to work across | ||
+ | accounts and applications the installation process defaults to the VERBS and | ||
+ | COMMANDS files, although this can be overridden if required. I found only | ||
+ | one glitch during this process when a W504 error message (The DICT.PX file | ||
+ | on the REVBOOT volume is not available...) appeared. After acknowledging the | ||
+ | message, the system recovered of its own accord and carried on to a | ||
+ | successful completion - or so it appeared. | ||
+ | |||
+ | The second installation phase is to apply the MFS to all the necessary files | ||
+ | in an application. N.B. PX does not itself order the MFS chain if other | ||
+ | MFS's are already present. The manual provides step by step instructions on | ||
+ | how this can be achieved, but it necessarily assumes that the user will know | ||
+ | the implications of ordering certain MFS's in certain ways. Again this | ||
+ | process needs to be repeated once for each application. A collector window | ||
+ | allows the user to select a volume and file list. Judicious use of a | ||
+ | pre-tagged multiple selection popup to highlight dictionary files and system | ||
+ | program files makes this process very straightforward indeed. However, | ||
+ | another annoying (and avoidable) glitch soon detracted from this friendly | ||
+ | feature - the help associated with the MFS window didn't work. Pressing F1 | ||
+ | leads to a " | ||
+ | analysis of the source code (yes, most of it is provided) soon identified | ||
+ | the offending line (CASE ARG[1,5] = " | ||
+ | it might be argued that a little more testing before release might have | ||
+ | avoided this one! Certainly on the fourth prompt where the offending error | ||
+ | (" | ||
+ | have a right to expect better after shelling out our hard earned shekels. | ||
+ | |||
+ | However, having said all this it must be emphasised that these are only | ||
+ | installation errors, and the actual package itself works like a dream. Once | ||
+ | it's installed you would never know it was there. The MFS quietly audits | ||
+ | entries, amendments and deletions to programs, templates, popups etc..., it | ||
+ | tracks new and amended dictionary items including symbolics, and picks up | ||
+ | changes to the indexing via the dictionary item flags. The audited | ||
+ | information is held in the PX file and can be examined at any time. | ||
+ | |||
+ | Transmission of data is achieved by the command line utility PX | ||
+ | (unfortunately there is no source code for this one). E.g. PX TO A: creates | ||
+ | transfer files, while PX FROM A: would import someone else's transfer files. | ||
+ | The manual suggests that this is very much a two way process - changes from | ||
+ | one site should be transmitted to a second site, then changes from the | ||
+ | second site should be transmitted back to the first site. While some people | ||
+ | doubtless work this way in practice, it would be very dangerous to attempt | ||
+ | this sort of update using PX as there is NO contention logic in place. | ||
+ | Instead of getting one unified application at the end you could easily end | ||
+ | up with a worse mishmash than you started with whenever the same record has | ||
+ | changed in different places! In practice it is better to make changes on | ||
+ | only the master system for distribution to remote sites, but, caveat user! | ||
+ | |||
+ | As PX currently stands (version 1.0) it must be installed on both master | ||
+ | and remote sites, which leads greatly to temptation to use it as a | ||
+ | two-way process. A nice feature would be for the PX TO process to create | ||
+ | its own upload program when it makes a transfer. This would mean that PX | ||
+ | would only ever have to be installed on the master site. Over to you Dave... | ||
+ | (Added in latest version - Ed) | ||
+ | |||
+ | Other PX command line options are to list current transactions, | ||
+ | suspend and resume auditing. One minor gripe - where such lists are | ||
+ | presented the report viewer is not used! It's just like being back in G2B | ||
+ | (much loved then, but not missed now), and I hope that a generally | ||
+ | excellent package isn't going to be judged too harshly on its failure to | ||
+ | provide a consistent AREV interface. | ||
+ | |||
+ | ==== Conclusion. ==== | ||
+ | |||
+ | The package overall should prove invaluable to the serious developer | ||
+ | responsible for maintaining distributed systems. The few blips found were | ||
+ | solely in the set-up and interface processes, which show some signs of | ||
+ | having been cobbled together quickly to get the in-house package onto the | ||
+ | market. They are, however, fortunately minor, and I know that they are | ||
+ | already being addressed for the next release. | ||
+ | |||
+ | If all you care about are changes to programs (BP, TEMPLATES, POPUPS etc.) | ||
+ | then you probably don't need PX; it is just as easy in practice to | ||
+ | transfer the entire program volume. (Unless you're one of those | ||
+ | unfortunates whose application was entirely developed in SYSPROG and | ||
+ | REVBOOT, in which case PX is more of a necessity than a luxury!) The real | ||
+ | strength of the package however, lies in its monitoring of changes to a | ||
+ | dictionary, allowing changes to symbolics to be traced effortlessly, | ||
+ | also making the remote maintenance of indexing a delight rather than a | ||
+ | chore. | ||
+ | |||
+ | Given a certain Mr. McAuley' | ||
+ | system enhancements (qui, moi? - Ed), suffice it to say that PX is likely to | ||
+ | become a valuable addition to the Sprezzatura software library ! | ||
+ | |||
+ | ==== Notes. ==== | ||
+ | |||
+ | PX has been tested in versions 1.16,2.03, 2.11 and 2.12 for DOS ONLY. Its | ||
+ | transfer process relies heavily on the OS suite of commands, and it is not | ||
+ | yet guaranteed for the OS/2 or UNIX versions of Advanced Revelation. | ||
+ | |||
+ | PX is available for $139 from Harmacek Database Systems, 11 Grant Road, | ||
+ | Winchester, MA 01890-1016. Telephone orders may be placed at (617) 721-1452, | ||
+ | FAX via (617) 721-4656, CIS [73750-1044]. MasterCard, VISA, and | ||
+ | corporate purchase orders are also accepted. | ||
+ | |||
+ | |||
+ | (Volume 4, Issue 3, Pages 4-6) |