Managing Forms

A form is a sheet of paper on which information is printed in a predetermined format. Unlike plain paper stock, forms usually have text or graphics preprinted on them. Common examples of forms are company letterhead, invoices, blank checks, receipts, and labels.

The term form has two meanings: the physical medium (the paper) and the software that defines a form to the LP print service.

The LP print service allows you to control the use of forms. This section provides information about adding, changing, deleting, mounting, and limiting access to forms.

Adding, Changing, or Deleting Forms

When you add a form, you tell the LP print service to include the form in its list of available forms. You also have to supply the information required to describe or define the form. Although you can specify such definitions when you add the form, it helps to create the definitions first and save them in files. You can then change the form definition by editing the file.

Note

No form definitions are supplied with the LP print service.

To change a form, you must re-add the form with a different definition.

The LP print service imposes no limit on the number of forms you can define. However, you should delete forms that are no longer appropriate. Obsolete forms can result in unnecessary processing by the print service.

How to Add a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Add a form that is based on a form definition.

    # lpforms -f form-name -F /etc/lp/forms/
    form
    
    f

    Specifies the name you choose for the form

    F /etc/lp/forms/ form

    Specifies the name of the form definition.

    For more information, see the lpforms ( 1M ) man page.

    The form is added to the print server's /etc/lp/forms/ form-name /describe file.

  3. Verify that the form was added by checking the output of the following command:

    # lpforms -f form-name -l
    

Example 5.12. Adding a Form

The following example shows how to add the medical form that uses the medical.fmd form definition.

# lpforms -f medical -F /etc/lp/forms/medical.fmd

Before the form can be used, one or more printers must be given access to the form. For more information, see How to Limit Printer Access to a Form.

How to Delete a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Delete the form.

    # lpforms -f form-name -x
    
    f

    Is the form to be deleted.

    x

    Deletes the specified form

    The form is deleted from /etc/lp/forms/ form-name file.

    For more information, see the lpforms ( 1M ) man page.

  3. Verify that the form was deleted.

    # lpforms -f form-name -l
    

    You should receive an error indicating that a form by the specified name does not exist.

Example 5.13. Deleting a Form

The following example shows how to delete the medical form.

# lpforms -f medical -x

Mounting Forms

To print a form, you must load the paper in the printer and use a command to mount the form. This command notifies the LP print service that print requests submitted to the printer are to be printed using the form definition. If you use one printer for different types of printing, including forms, you should do the following:

  • Disable the printer before you load the paper and mount the form.

  • Re-enable the printer when the form is ready. Otherwise, the LP print service will continue to print files that do not need the form on the printer.

When you mount a form, ensure that it is aligned properly. If an alignment pattern has been defined for the form, you can request that the pattern print repeatedly after you have mounted the form. Let the pattern print repeatedly until you have adjusted the printer so the alignment is correct.

When you want to change or discontinue using a form on a printer, you must notify the LP print service by unmounting the form.

How to Unmount and Mount a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Stop accepting print requests on the printer on which you are unmounting the current form.

    # reject printer-name
    

    printer-name is the name of the printer on which you are unmounting a form.

    New print requests (which might not require the form) are not allowed to enter the printer's queue.

  3. Unmount the current form.

    # lpadmin -p printer-name -M -f none
    

    In this command, the variable printer-name is the same variable that is used in Step 2.

    The current form is deleted from the print server's /etc/lp/printers/ printer-name /configuration file.

  4. Remove the form paper from the printer.

  5. Load the new form paper for the next print request.

  6. Mount the form.

    # lpadmin -p printer-name -M -f form-name[-a -o filebreak]
    p

    Specifies the printer on which you are mounting a form.

    M

    Specifies the name of the form to be mounted.

    a o filebreak

    Optionally enables you to print a copy of the alignment pattern defined for the form, if this definition exists.

    p printer-name

    Printer on which you are mounting a form.

    M f form-name

    Name of the form to be mounted.

    The specified form is added in the print server's /etc/lp/printers/ printer-name /configuration file.

  7. Start accepting print requests on the printer.

    # accept printer-name
    

    The printer is ready to print the form you just mounted.

  8. Verify that the form has been mounted.

    # lpstat -p printer-name -l
    

    Otherwise, submit a print request that requires the new form and check the printer for output.

Example 5.14. Unmounting a Form

The following example shows the process of unmounting the currently mounted form on the printer luna.

# reject luna
destination "luna" will no longer accept requests
# lpadmin -p luna -M f none
# accept luna
destination "luna" now accepting requests

Example 5.15. Mounting a Form

The following example shows the process of mounting the medical form on the printer luna.

# reject luna
destination "luna" will no longer accept requests
# lpadmin -p luna -M f medical -a -o filebreak
# accept luna
destination "luna" now accepting requests

Tracking Forms

The LP print service helps you track which forms are mounted on each printer. The print service also notifies you when it cannot find a description it needs to print a form. You are responsible for creating form descriptions, and mounting and unmounting form paper in each printer. You complete this task either as part of setting up a printer or in response to alerts from the LP print service.

Users can specify the form on which they want a job to print. As superuser, you can mount a specific form, then tell the LP print service that the form is available and on which printer it is mounted. Users can submit print requests specifying a particular form. When the LP print service receives the request, it sends an alert message to root requesting that you mount the form.

Defining Alerts for Mounting Forms

You request alerts for mounting forms in the same way that you request other alerts from the LP print service. For general information about alerts, see Setting Up Printer Fault Alerts.

How to Set an Alert to Mount a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Set a request alert for mounting a form.

    # lpforms -f form-name -A alert [-Q requests] [-W minutes]
    f

    Specifies the form for which you want to set a request alert.

    A alert

    Specifies what kind of alert will occur when a form is requested. See Table 4–3 for detailed information about the valid values for alert. Some valid values are mail, write, and quiet. If you choose mail or write, a predefined alert message says to mount the specified form. The message includes names of one or more printers that have been set up to use the form.

    Q requests

    Specifies how many print requests that require the form must be in the queue to trigger an alert. If you don't specify this option, an alert occurs with just one print request in the queue.

    W minutes

    Specifies how often (in minutes) the alert will occur. If you don't specify this option, the alert is sent one time.

    The request alert is added to the print server's /etc/lp/forms/ form-name /alert.sh file.

  3. Verify that the alert has been added for the form.

    # lpforms -f form-name -A list
    

    Alternately, if you have set a low number of print requests to trigger the alert, submit print requests to meet the minimum requirement. Ensure that you receive an alert to mount the form.

Example 5.16. Setting an Alert to Mount a Form

This example shows how to set email alerts to occur every 5 minutes for the letterhead form when 10 print requests for letterhead reside in the print queue.

# lpforms -f letterhead -A mail -Q 10 -W 5

Example 5.17. Setting a Console Window Alert

This example shows how to set console window alerts to occur every 10 minutes for the letterhead form when 5 requests for letterheadreside in the print queue.

# lpforms -f letterhead -A write -Q 5 -W 10

Example 5.18. Setting up No Request Alerts

This example shows how to set no request alerts for the invoice form.

# lpforms -f invoice -A none

Checking Forms

When you have defined a form for the LP print service, you can check the form with either of two commands. Which command you choose depends on the type of information you want to check.

  • To show the attributes of the form, use the lpforms command. You can also redirect the output of the command into a file to save it for future reference.

  • To display the current status of the form, use the lpstat command. To protect potentially sensitive content, the alignment pattern is not shown.

If you are not sure about the name of an existing form, you can view the form names by listing the contents of the /etc/lp/forms directory.

How to View Information About a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Request information about a form.

    # lpforms -f form-name -l
    
    f

    Specifies the form for which you want to view information. Specify all for form-name to view information about all the available forms.

    l

    Lists the specified form.

    Information about the specified form or forms is displayed.

Example 5.19. Viewing Information About a Form

The following example shows how to display information about the medical form.

# lpforms -f medical -l
Page length: 62
Page width: 72
Number of pages: 2
Line pitch: 6
Character pitch: 12
Character set choice: pica
Ribbon color: black
Comment:
Medical claim form

The following example shows how to redirect the information about the medical form to a file. This command creates the form definition for the form. This command is useful if a form definition is removed unintentionally.

# lpforms -f medical -l > medical.fmd

How to View the Current Status of a Form

  1. Log in on the print server.

  2. Request information about the current status of a form.

    $ lpstat -f form-name
    

    The f option specifies the form for which you want to view the current status. Specify all for form-name to view the current status of all the forms.

    Information about the current status of the specified form or forms is displayed.

Example 5.20. Viewing the Current Status of a Form

This example shows how to display the status of the medical form.

$ lpstat -f medical
form medical is available to you

Limiting Access to Forms

You can control which printers and which users have access to some or all of the forms available on the network. For example, you might want only the people in the payroll or accounts payable department to be able to print check forms. In addition, you might want the check forms to be available only on certain printers.

For more information, see How to Limit User Access to a Form. To limit printer access to a form, see How to Limit Printer Access to a Form.

How to Limit User Access to a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Allow or deny users access to a form.

    # lpforms -f form-name -u allow:user-list | deny:user-list
    
    f

    Specifies the name of the form for which the allow user access lists or the deny user access list is being created.

    -u allow: user-list

    Represents users to be added to the allow user access list. Use a comma or a space to separate user login IDs. If you use spaces, enclose the list of IDs in quotation marks.

    Table 4–5 provides the valid values for user-list.

    -u deny: user-list

    Represents users to be added to the deny user access list. Use a comma or a space to separate user login IDs. If you use spaces, enclose the list of IDs in quotation marks. Table 4–5 provides the valid values for user-list.

    The specified users are added to the appropriate user access list for the specified form in one of the following files on the print server:

    • /etc/lp/forms/ form-name /allow

    • /etc/lp/forms/ form-name /deny

  3. Verify that the allow user access list and deny user access list are set up correctly.

    # lpforms -f form-name -l
    

Example 5.21. Allowing User Access to a Form

This example shows how to allow only the users nathan and marcia access to the check form.

# lpforms -f check -u allow:nathan,marcia

Example 5.22. Denying User Access to a Form

This example shows how to deny users jones and smith access to the dental form.

# lpforms -f dental -u deny:jones,smith

How to Limit Printer Access to a Form

  1. Log in as superuser, lp, or assume an equivalent role on the print server.

  2. Allow or deny use of forms on a printer.

    # lpadmin -p printer-name -f allow:form-list | deny:form-list
    
    p

    Specifies the name of the printer for which the allow forms list or deny forms list is being created.

    f allow: form-list

    Specifies the form name to be added to the allow list. Use a space or a comma to separate multiple form names. If you use spaces to separate form names, enclose the list of form names in quotation marks.

    f deny: form-list

    Is the form name to be added to the deny list. Use a space or a comma to separate multiple form names. If you use spaces to separate form names, enclose the list of form names in quotation marks.

    The specified form or forms are added to the allow forms list or the deny forms list in one of the following files on the print server:

    • /etc/lp/printers/ printer-name /form.allow

    • /etc/lp/printers/ printer-name /form.deny

  3. Verify that the allow forms list and the deny forms list are set up correctly.

    # lpstat -p printer-name -l
    

Example 5.23. Allowing Printer Access to a Form

This example shows how to allow the printer luna to access only the medical, dental, and check forms.

# lpadmin -p luna -f allow:medical,dental,check

Example 5.24. Limiting Printer Access to a Form

This example shows how to deny the printer luna from accessing the medical, dental, and check forms.

# lpadmin -p luna -f deny:"medical dental check"