Implementing Electronic Forms Solutions with
FORMagic/400 and FORMagic/400 PDF
Step-by-Step Technical Overview
(see User's Guide for complete details)
Note: These instructions apply specifically to FORMagic/400. They do not
apply exactly as written to FORMagic/400 PDF, but the approach is quite similar.
Step 1 - Design the form(s)
Design your form(s) with any PC-based product which can output to an HP-compatible laser printer. The design product can operate under any version of DOS, Windows, or OS/2.
We find that most of our customers are using some version of Word to create forms. Why? Because so many people already have it and know how to use it. Word also generates efficient forms and is easy to use. We are often amazed at how quickly our customers can generate very impressive forms with Word. But, again, FORMagic/400 allows you to use any product. If you can "place toner on the page" with it, FORMagic/400 can turn your forms into electronic overlays that can be used in programmed applications. And, you can use almost any and every feature of your package to make your forms.
If you need to incorporate logos, signatures, images, etc., they must be in a format (PCX, WMF, GIF, etc.) supported by your design product. Just use your designer to "import" them, place them on the page, and scale them as required. When doing this, they become an integral part of the form, just as lines and boxes, and lose their identity as separate images.
Just use any and all of the features provided by your design product to create the complete form needed for your application. Print the form and tweak it as needed until you are satisfied that it's complete.
A note about scanning - many people ask about scanning forms. FORMagic/400 will certainly let you use the scanning approach if you can print the scanned output to your laser printer as described above. But, we don't think you will be very happy with the results for three reasons:
- Scanned forms generally use image bitmaps. When you print the form, you will see a noticeable reduction in quality versus the original. Scanned forms will also use far more printer memory than "specifically designed" forms.
- Printers have two rated speeds - a text speed and a graphics speed. You seldom hear about the graphics speed rating, but you have seen it if you have ever printed a page of complex graphics. Generally, graphics speed is between 10 and 25% of the text speed. So, you can expect that every page using a scanned form will print very slowly.
- The time required to scan the form and "clean it up" may not be substantially less than using a good forms design product, such as Word, to design the form from scratch.
In any case, it always takes a little time to merge a form with print data. With average forms, created with an efficient designer, we seldom hear comments from our customers that print speed is unsatisfactory. Small logos and signatures do not generally cause a significant speed loss. So, we can give some general guidelines for achieving maximum print speed with electronic forms applications.
- Use a forms designer, such as Word, that produces "efficient" forms.
- Don't use too many graphical objects in your forms.
- Use faster printers.
- Use newer printers such as the LaserJet 4000 and above.
Most of our customers meet these guidelines without consciously doing anything special. We seldom hear of problems; and any degradation is generally acceptable or even unnoticed.
If you need very fast first page output from electronic forms applications, such as customer checkout documents, then you must optimize everything. By the time you run an application, create a spool file, send it to the printer, start the printer motor, feed a page, compose the print data, merge the form, and eject the page, many seconds will have elapsed. It's very difficult to do this in less than 20 seconds unless everything operates at top speed; omitting the form will only save a couple of seconds! And, Windows-based printer emulators will add even more to first page output times.
Step 2 - Print the form to a file
There are many ways to do this, but Word makes it very easy. Just print your form normally, but turn on the "print to file" option. When capturing the file, you must select a printer which uses a driver which is compatible with all of the printers you will be using with your application.
This may be difficult to do if you have a mixture of models from different manufacturers. But, the principles here are easy to understand. You cannot print a form created with a LaserJet 4 driver on a LaserJet II printer; the older printer simply does not support the commands used by the newer driver. You can create a form with a LaserJet II driver and print it on a LaserJet 4 printer; but the form will be significantly larger and less efficient than a form created with the newer LaserJet 4 driver. You can also have problems when crossing manufacturer lines with drivers and printers, even when they are both "compatible" with the same printer. For instance, forms created with a LaserJet 4 driver will sometimes print incorrectly on Lexmark printers.
Assuming you are not using older LaserJet II and III printers, the best rule is: use a LaserJet 4 (no suffixes) printer driver to capture the form. Why? Because it is highly compatible with almost all HP-compatible printers, and almost all companies use multiple types of printers. Or, they will eventually! It also creates very efficient forms. Of course, you can also use the latest printer driver which exactly matches the printer you will be using or one which is known to be compatible with all of your printers. Be sure to test the form on each printer type you will be using.
Never use the new PCL 6 drivers or PCL 5XL drivers - FORMagic/400 does not support them; and they will print garbage in place of the form. Instead, use the LaserJet 4 driver or a PCL 5e driver matched to your printer(s).
FORMagic/400 allows you to use any HP-compatible laser printer that provides full PCL 5e support in firmware. Many inexpensive laser printers implement much of their functionality in the Windows printer driver which, of course, is not used by the AS/400, so they will not work in all applications! They may, however, work with non-AS/400 applications. These printers include the HP 4L, 5L, 1000, 1100, P2015, and others.
Most inkjet and multi-function printers will not work because they implement only PCL 3, not the higher level functionality of PCL 5e needed for electronic forms applications.
The following printers are compatible with FORMagic/400:
- HP LaserJet models: 4, 4SI, 5, 5P, 5SI, 6, 6P, 1200, 1300, P3005; families: 2000, 4000, 5000, 8000.
- IBM: most Network and Infoprint models.
- Lexmark: all Optra S models.
- Others which are fully compatible with one of the above.
- See the latest compatibility information.
Step 3 - Convert the form into an overlay
Use the PC component of FORMagic/400 to convert the captured form "file" into an electronic forms overlay. This only takes a few seconds.
When creating the overlay, you must assign a name and number. The name will be used to manage the overlay within the AS/400. The number is used by the printer to merge the form with the data and can be anything between 1 and 9999. After conversion, you can optionally test the overlay from the PC to insure it is working properly.
Step 4 - Upload the overlay into the AS/400
This process copies the overlay into the AS/400 database so that it can be used directly from the AS/400 with your applications. It only takes a minute or so.
We use an FTP process built into the FORMagic/400 PC client or "shared folders" (aka, "mapped network drives") to upload forms. When using shared folders, you must be using a product such as Client Access or NetServer to make the drive connection with the AS/400.
If NetServer is active on the AS/400 and you have mapped a drive letter, the need for a shared folders product is totally eliminated. You can also use your own FTP client to do the transfer. We have fully automated the process with our FTP client and mapped drives, however, so we recommend using one of these approaches whenever possible.
Note regarding installation: FORMagic/400 is distributed as a single file. When the PC client is installed, the AS/400 component is also loaded into the PC client. Installation on the AS/400 is performed using one of the methods described for forms uploads. The PC connection is used only to upload new or changed forms and to install the AS/400 component and updates; it is not required to run electronic forms applications on the AS/400.
Step 5 - Test the form on the AS/400
FORMagic/400 provides an option for quickly testing uploaded forms to verify they are, in fact, good. We always recommend testing new or changed forms with this procedure; it only takes a minute or so.
The AS/400 component also provides a number of test and diagnostic tools for verifying the compatibility of your printers and emulators for use with FORMagic/400.
Step 6 - Modify your program to include a merge command
The base version of FORMagic/400 requires that you embed a 12-character merge command into the print stream wherever a form is to be merged onto the page. The command is constructed entirely of hex characters, which is unusual to many programmers. But, it is easy to do because all positions are always the same except for 4 bytes designating the overlay number. The User's Guide fully explains the merge command, and we provide sample programs illustrating the programming techniques.
Just place the merge command anywhere on the page; we have designed the overlay generation process such that its location doesn't matter. It is generally easiest to place it on a blank line, starting in position 1, and print it with normal spacing just as if you were printing a regular text literal. Don't let the hex confuse you; it is not hard to modify any program to insert a 12-character string somewhere (anywhere) on the page!
When the printer "sees" the command, it will merge the form with your data and print a blank line. The command itself will not be printed. There are several ways to place the command into the print stream:
- Modify your RPG, Cobol, or other HLL program.
- Modify an externally defined print file to place the hex string on the page as a literal or message constant.
- Use CPYSPLF to copy a spoolfile generated by an unchanged application to a database file. Write a very simple program to read this file, add the merge command, and print the file. This new spoolfile is then actually printed.
- Modify your CL program to insert the hex command in the PRTTXT parameter of the OVRPRTF command. This method is not always suitable because it will change the number of lines printed on the page. This may result in page overflow, causing the form to be pinted on a separate page instead of being merged with your data!
- Use the optional FORMagic/400 AutoMerge feature. It provides a command which can be called after your application completes to do the merge. No program changes are required except to call this command. If you can't make CL changes either, we provide sample programs and instructions for creating a background process to call the command.
All of these methods except AutoMerge require that you override your print file to include the RPLUNPRT(*NO) parameter. Otherwise, the hex command will be corrupted by spooling; and the merge will not work correctly.
Note that you can use appropriate logic to insert different forms on different pages, no forms on some pages, and even multiple forms on some pages, very easily. And, the AutoMerge feature supports many very complex merge scenarios.
Step 7 - Download the form(s) to the printer
Forms, like fonts, must be resident in the printer before they can be used in merge applications. We provide an interactive menu for downloading forms (great for testing and development), and a CL command for automating downloads. When a form is downloaded, no printing occurs, and no blank page is ejected. The only way to know a form is there is to test it or to watch the printer ready light blink a few times during the download. Average efficient forms download quickly, just a few seconds.
You do not have to download forms every time they are used; they will remain in the printer until something causes them to be removed:
- Power is lost or turned off for any reason.
- Using our remove command.
- In a shared printer environment, some Windows applications may issue commands which remove all downloaded forms and fonts. This occurs totally internally, so you don't know it has happened until you find your forms are missing! You can prevent this type of loss by turning the "resource save" function on, if your printer supports it.
If your application will use the same form throughout the day, you can simply download it during morning startup and leave it there. For infrequently used forms, such as monthly statements, you will probably want to download the forms in your CLP, call your application, then remove the forms to free printer memory.
If you are concerned about the possibility of "losing" overlays, just download them in the CL program which controls your application. Thus, they will be downloaded every time they are needed; they simply replace the overlay if it is already there. This seldom creates a performance issue, so many of our customers do it this way.
You can also consider adding flash or disk memory to your printer(s). With such non-volatile memory, forms are retained during a power loss; you never have to re-download a form unless it is changed. Our optional FlashMagic Non-Volatile Memory Manager provides facilities to download standard FORMagic/400 overlays into these types of memory devices.
What about memory usage? Most efficient overlays are only 20-50k in size. Most printers today come with 4MB or more of standard memory. About half of it is used by the printer's operating system, the balance is used by applications. The large memory is actually provided to accomodate Windows graphics applications; if you are only using the printer with text-oriented AS/400 applications, the larger memory is never used! So, there is generally a lot left for multiple forms.
If you have many large forms, older printers with less memory, or share the printer with PC applications, you might need to add more memory; but fortunately, it's very inexpensive today.
Each download creates a separate spool file which must be released to the printer before your application spoolfile. If you are using multiple forms (and/or fonts with our FontMagic/400 product), we provide a special command which allows you to download them all in one spoolfile. So, you never have to manage more than one extra spoolfile.
Step 8 - Run your job
Now, just run your job and enjoy the benefits of electronic forms technology.
Q & A
Wow. That sounds complicated! ===> Not at all. In about six pages, we have described the complete process in full detail. We didn't omit anything you will encounter in most applications. Of course, we didn't describe every button you will have to push or click, but the entire process is described above. Several of our customers who have tried highly advertised products tell us FORMagic/400 is far easier to use.
Okay, I'm convinced. But what kinds of problems might I encounter during startup. ===> That's a fair question and one we think systems professionals should always ask before any software is purchased. We try to support all environments, but that's very difficult to do today. There are just too many ways to assemble various hardware and software components from numerous manufacturers for us to guarantee that FORMagic/400 will work in every environment without any integration issues.
That's why we include several compatibility testing tools, offer FORMagic/400 on a "no risk except your time" basis, and provide comprehensive technical support prior to the sale. We can guarantee that we do not want you to purchase FORMagic/400 until your application is working and you are fully satisfied.
As for specific problems, here are the most common ones:
- Installation - you must have Client Access, Net Server, FTP, or a suitable alternative configured and operational to install the AS/400 component and upload forms. If you know how to use it and have proper authority, you will have few, if any, issues. Having one of more of these products is pretty much standard in AS/400 shops today. We assume you have one, and we assume you know how to use it. If you need help, we will be glad to help you to the extent we can; but we may have to refer you to IBM if complete setup is required.
- Programming - we assume you will place the 12-character merge command into your source properly. And, we assume you will not disrupt spacing within the page when you add the command. Of course, we can help if needed.
- Printers - we assume you know how to control your printer using various print file and OVRPRTF parameters. If you are not familiar with 3812-SCS printer capabilities, you will probably have to call us at least once.
- Emulator issues - Windows based emulators account for many of our tech support calls. We assume you have yours set up properly. Some emulators may place restrictions on the location of the merge command within the page. Finding a location may require trial and error. We will provide full support for all emulators, but it can be time consuming to find the secret for dealing with some of them.
How can you sell FORMagic/400 at such a low price? ===> We provide all the commonly needed features; but we don't offer those, such as field remapping, that only a few large companies need. We support only SCS printers, not AFP or IPDS models. You do have to spend a little more time with FORMagic/400 to add merge commands to your programs unless you have the AutoMerge feature. We don't provide a forms designer; doing so involves significant licensing expense, and we pass the savings back to you. We don't pay $10,000 for full page product ads. We don't offer toll free 7x24 support. We are a small company; but, like Avis, we try harder to offer solid products and great support.
With ANY Keowee Systems product,
you only risk your time to try it!