The records in the BPI.FORM.PHANTOM.CONTROL file/directory can be arranged as the user sees fit using a tag=value param file format.
Tag Names |
Description |
key |
Key of phantom. Usually a word to describe the thread (e.g., LOC1) to define the phantom for Location 1 |
order |
This is a right justified numeric value that is used by the bpi.form.phantom.menu process to sort the phantom threads into right-justified ascending order when displayed in the menu. |
status |
Current status of the phantom (e.g. active) |
description |
A text description of the phantom |
account |
MultiValue account in which this phantom will run |
|
|
queuePath |
Path to the directory where queued documents will be placed by the app (directory to poll) and where this phantom thread should look for them |
archivePath |
Path where documents will be moved after processing. If not specified, document will be deleted and not moved to archive. |
ooServerAddress |
hostname or ip address of the OpenOffice server to be used for this thread. |
user |
unix username to be used when phantom communicates with OpenOffice server to issue ssh directives. |
remoteDefaultPrinter |
printer name on the OpenOffice server to which print jobs from this thread will be sent. |
remoteQueuePath |
the path on the remote OpenOffice server where it will find the document to be printed (the mount point and path on the OpenOffice server). Usually, this is a directory on the Linux OpenOffice Printer Server (LOOPS) under the /mnt directory. To this directory is mounted a CIFS/SAMBA share exposed on the MultiValue host. |
killSignal |
On release > 3.2 (Mar 2020) Now, you can specify a full path to a record such as
On all releases Item ID of a record in the CONTROL file. The phantom will check for the existence of this record during its polling cycle. Phantom will terminate if this record ID is found in CONTROL. (aka the Kill record) |
phantomWait |
If specified is the number of second the phantom will sleep when there are no records found in the queue before it will check the queue again. Note, as long as records are present, the phantom will not sleep again until zero records are found in the queue directory. Default is 5 seconds. 1/25/2018: on jBASE releases of BP Forms, you may optionally specify a unix/linux command to run instead of a numeric value for sleep. For example, "sleep 2" and it will invoke the unix sleep command rather than using the jBASE JBC SLEEP function. Using the *nix sleep command is preferred if your company routinely changes the system clock as it works more efficiently in these situations and prevents the phantom from sleeping for longer periods than specified. |
postProcess |
Implemented at release 4.2.1 (10/16/2025). A command that will be issued after the document has rendered, and before it is moved or deleted. You may use this to implement your own post processing hooks. You make use the tokens %formId% and %verbose% within the command, and these will be expanded properly for the rendered document. |
localTestPageDirective |
A unix command to issued on the MultiValue host to place a test document into the queue directory. Generally, you’ll copy a .odt file from the template directory to the queue directory and this will cause that document to print. |
remote TestPageDirective |
Not yet implemented |
switches |
-v{n} sets level of verbosity for log files where n is an optional integer indicating level of verbosity. -f causes the BPI.PHANTOM.CONTROL definition record to be re-read each time the phantom reaches the top of its loop. This allows the phantom to recognize changes made to the BPI.PHANTOM.CONTROL record while the phantom is running. If this switch is not set, then the phantom must be stopped and restarted to cause the phantom to re-read its BPI.PHANTOM.CONTROL record. |
Example BPI.FORM.PHANTOM.CONTROL record:
key=bpiform1
order=1
status=active
description=bpiform1 form print
account=MYACCOUNT
queuePath=/uddata/accts/BPIFORMS/bpi_forms/queue/bpiform1
archivePath=/uddata/accts/BPIFORMS/bpi_forms/archive/bpiform1/%filename%
ooServerAddress=192.168.001.001
user=bpiform1
remoteDefaultPrinter=Q0
remoteQueuePath=/mnt/prodserver.bpi_forms/queue/bpiform1
killSignal=/db/accts/BPIFORMS/BPI.CONTROL/KILL-FORMPHANTOM-%ident%
phantomWait=1
localTestPageDirective=!cp /uddata/accts/BPIFORMS/bpi_forms/templates/bluePrairieFormsTestPage.odt /uddata/accts/BPIFORMS/bpi_forms/queue/bpiform1/remotePrinter___bluePrairieFormsTestPage.odt
switches=-v1 -f
Note: Unless the -f switch is set, the phantom thread must be restarted (bounced) in order for changed parameters to take effect.