UnForm's power and flexibility can be enhanced by using it in conjunction with
VSI-FAX, the leading cross-platform
fax software solution. UnForm and VSI-FAX run on many of the same
platforms, and together are a powerful and unique solution for electronic form and report production and distribution.
Simple Integration
UnForm is designed to work as a filter, accepting standard text input from your
application's print runs, analyzing the text, and adding enhancements and process
control while sending the job out to a spooler, device, or VSI-FAX. Once UnForm
has control of the job, it can add graphical enhancements, manipulate the text,
change fonts, and more. In addition, it can generate multiple, unique copies and
route those copies to different devices (including VSI-FAX!)
If your application integrates with VSI-FAX as a spool device, UnForm can be
integrated in much the same way:
|uf90c -f <rulefile> | vfx -n<phonenumber> -F pcl
Note: if your version of VSI-FAX is lower than 5.0, then you may need
to add a -nohpgl option to the uf90c command line, in order to force pure
pcl5 output.
Advanced Integration Capabilities
If your application can print a fax number on each form, then UnForm can fax
individual forms, or sequential groups of forms, to that fax number by manipulating
the output device. It can simultaneously or selectively print hard copies as well.
UnForm can do this through its support for Business Basic code blocks that
execute while the job is processing.
For example, here is a sample of a code block that will automatically send the
output of a second invoice copy via vsifax, splitting the job up as the
fax number changes during printing:
precopy{
# get fax number from print stream (column 1, row 1, 12 bytes)
faxnum$=trim(get(1,1,12))
# copy 2 is either faxed or skipped
if copy=2 then if faxnum$>"" then output$=">vfx -F pcl -n "+faxnum$
if copy=2 then if faxnum$="" then skip=1
}
On Windows, UnForm can integrate with VSI-Fax by creating output files and then
executing vfx.exe (or vsifax.exe on client workstations) with the desired options.
The UnForm postdevice code block provides access to the output file after UnForm
has closed the device.
In this example, the output device for copy 2 is set to a sequential file whenever
the fax number for a page changes. When the output file changes, the postdevice
code block is executed, and UnForm executes the proper VSI-Fax command to fax
that file. Note that for a ProvideX installation, you should use the sys() function
or an invoke verb rather than scall().
precopy{
if copy=2 then faxnum$=trim(get(1,1,12))
if copy=2 and faxnum$<>lastfaxnum$ then \
counter=counter+1,\
output$=str(counter)+".pcl"
}
postcopy{
lastfaxnum$=faxnum$
}
postdevice{
if lastfaxnum$="" then return
# set up the vsifax command line
cmd$="vfx.exe -t tfn="+chr(34)+lastfaxnum$+chr(34)+" "+output$
x=scall(cmd$)
erase output$
}
If your application can't print the fax number on the pages, UnForm may still be able
to obtain the fax number via direct file access (ProvideX only), a
command line pipe on Unix, or ODBC on Windows.
The job management functions in UnForm can also be helpful in developing advanced
VSI-FAX integration, by executing sub-jobs using the jobexec() function to create
pcl work files of specific pages of a job, and then invoking the vfx command line
to fax the sub-job work file.
UnForm and CirrusPrint are registered trademarks of SDSI. General and
MailCall are trademarks of SDSI. Other product names
used herein may be trademarks or registered trademarks of their respective
owners.
SDSI uses Google analytics and conversion tracking on some site pages.
Site design by ZiMDesign.