Professional Documents
Culture Documents
Version 3.0.1
User Guide
2017May. All rights reserved. Version 3.0.1
Loftware, Loftware Spectrum, LLM, Loftware Label Design, Loftware Print Server, LPS, Loftware Connector, Global Marking
Solutions, I-Push, and I-Pull are all registered trademarks of Loftware, Inc. Loftware WebAccess, LWA, and Loftware Web Services
are trademarks of Loftware, Inc. SAP is a registered trademark of SAP AG in Germany and in several other countries. Oracle and
Java are registered trademarks of Oracle and/or its affiliates. All other marks are the property of their respective owners. Loftware
Spectrum contains barcode components licensed from IDAutomation.com, Inc. These products may only be used as part of and in
connection with Loftware Spectrum.
Welcome to LoftwareSpectrum 20
Documentation and Support 21
About the LoftwareSpectrum UserGuide 22
Open the SpectrumUserGuide 23
User Interface: Help 24
About Loftware Spectrum 25
Tabs 26
Buttons 28
Licensing, Warranty, and Support 29
Technical Support 30
Contact Loftware 31
Sales 32
Customer Account Management 33
Engineering Technical Support (ETS) 34
Professional Services Group 35
Technical Requirements for Spectrum3.0 37
Server Requirements for Spectrum3.0 39
Requirements for Loftware Spectrum Database Server with Existing Oracle
Database 40
Requirements for Loftware Spectrum Database Server with Embedded Database 41
Requirements for Loftware SpectrumApplicationServer 42
Requirements for Multi-Site Deployment 43
Server Performance Tips 44
Client Computer Requirements for Spectrum3.0 46
Requirements for Spectrum Client Computers 47
Requirements for SpectrumRemotePrint Agent Computers 49
Other Requirements for Integrations 50
Requirements for Oracle Applications Integration 51
Requirements for Integration for use with SAP Applications 52
Log in to Spectrum 53
Spectrum Root Folder 57
Change Your Password 58
Loftware Spectrum Tools 59
Designing Labels 60
Configuring the Design Workspace 61
Set User Preferences 62
Select Data to Display in Design 63
Context Sensitivity
When you click Help in Spectrum, the SpectrumUserGuide displays a topic about the section you
are viewing. For example, if you click help while you are in Design, the help for the Design
page is displayed. From these topics, you can follow links to complete tasks and to view
reference material.
Dynamic Help
When you click Help in Spectrum, a dynamic web-based version of the help is opened by
default. The dynamic help system is hosted on Loftware's website, and it gives you access to up-
to-the-minute content updates, additions, and corrections. For information about how an
administrator can configure Spectrum to use a static copy of the help system instead, see
"Change the Source of Spectrum Help" on page 772.
Help Version
At the bottom of each topic is a copyright statement that includes the version of Spectrum and
the revision of the help that you are viewing.
The example shown below would indicate that this topic is from the B (or second) revision of
the 1.0 version of SpectrumUserGuide.
Copyright 2012 Loftware, Inc. All rights reserved. Version 1.0 Rev B
Comments
Each topic contains an Ask the Doc Team link. Please send us your thoughts about what we got
right, what we got wrong, and where we need to expand our documentation.
After logging into Spectrum, you can use the Help buttons to open the SpectrumUserGuide.
l Click near the top of the Spectrum window in the title bar.
l Click the button in dialog boxes in Spectrum to display context sensitive help.
The following tools are available while viewing the Help for LoftwareSpectrum.
Contents
The Contents tab contains a list of the help topics available. Think of it as the Table of
Contents of a book.
Glossary
The Search field allows you to search all the content in the help system.
Tabs
General
l Spectrum Version
l Server Name
l Usage
l Operating System
l Server ID
License
l Spectrum Version
l Server Name
l Usage
l Contract
l Data Management
l Business Rules
l Web Service Integrations
l Multi-Site (if applicable)
l Device Seats
l File Drop Integrations
l Oracle Integrations
l Integrations for use with SAP ERP
Advanced
l Spectrum Version
l Server Name
l Usage
l Operating System
l Server ID
l Contract
l Server Version
l Server Build Number
l Client Version
l Client Build Number
l Flash Player Version
l Flash Player Debugger
l Java Home
l Java Runtime Version
l Java Vendor
l Java Classpath
l OS Name
l OS Version
l OS Architecture
Buttons
Button Description
Copy to Saves a copy of the information on all tabs, which can be pasted into an
Clipboard application such as a word processor.
OK Closes the About Loftware Spectrum dialog box.
Tip: You can check the version of LoftwareSpectrum and obtain information
about its components, the SpectrumApplicationServer, and your Spectrum
license (including the integrations allowed) by clicking in the Spectrum
title bar. You can save a copy of the information by clicking the Copy to
Clipboard button in the About Loftware Spectrum dialog box and pasting into
an application such as a word processor.
Technical Support
Software licenses purchased directly from Loftware include the first year of Technical Support.
This initial 12-month support period starts on the day the product is shipped and invoiced from
Loftware's factory. During this period, customers are eligible to receive unlimited telephone and
web-based support and access to software upgrades and enhancements.
Contact Loftware
Locations
US Office GmbH Office
Corporate Headquarters Rmerstrasse 39
249 Corporate Drive 78183 Hfingen
Portsmouth, NH 03801 Germany
Phone: +1-603-766-3630 Phone: +49 771-8978-4250
Fax: +1-603-766-3631 Fax: +49 771-8978-4251
UK Office Asia Office
Abbey House 31 Rochester Drive Level 24
Brooklands Business Park Singapore 138637
Wellington Way, Weybridge Phone +65-6808-8763
Surrey KT13 0TT Fax +65-6808-8779
Phone: +44 (0) 1932 268470
Sales
Loftware's Sales Department is available for product information, quotes, and placing orders.
Call between 8:00a.m. and 5:00p.m. (Eastern Time), Monday - Friday. Email and faxes are
received 24 hours a day.
Phone: +1-603-766-3630, Option 1
Fax: +1-603-766-3631
Email: sales@loftware.com
Loftware's Customer Account Management Department is available for product and license
information and placing orders. Call between 8:00a.m. and 5:00p.m. (Eastern Time), Monday -
Friday. Email and faxes are received 24 hours a day.
Phone: +1-603-766-3630, Option 2
Fax: +1-603-766-3631
Email for Customer Service: CustomerService@loftware.com
Email for Contracts Administration: contracts@loftware.com
If you are a Systems Analyst, Integrator, or an MIS, IS, or IT Director and your questions
specifically refer to integrating other applications or programs with Loftware, please contact one
of our System Analysts for a free telephone consultation. This is an extremely important and
invaluable service to those who are in the process of designing and developing labeling systems.
It is our desire to help you start your development process in the right direction. Email and faxes
are received 24 hours a day.
Phone: +1-603-766-3630 x209
Fax: +1-603-766-3631
Email: webanalyst@loftware.com
Server Requirements
All enterprise environments are unique. The server requirements necessary to fulfill your
organization's needs can be affected by the number of unique labels to be printed, the number of
devices to which labels will be printed, the relationship between the number of labels and the
number of devices, the complexity of your label templates, and other factors. Depending on
your organization's needs, you may able to use these recommendations as base guidelines.
Loftware's Professional Services Group can help you determine the server requirements
necessary to meet your exact business needs.
Database Server
You can configure and install Spectrum into your existing Oracle database, or you can use the
embedded database included with Spectrum.
l "Requirements for Loftware Spectrum Database Server with Existing Oracle Database"
on page 40
l "Requirements for Loftware Spectrum Database Server with Embedded Database" on
page 41
Note: For more information, see the LoftwareSpectrum Installation and Configuration
Guide.
Application Server
Whether you install the Spectrum database into your existing Oracle database or use the
embedded database, Loftware requires the SpectrumApplicationServer to be installed on a
dedicated server.
l "Requirements for Loftware SpectrumApplicationServer" on page 42
Tip: Spectrum can be configured with the application and embedded database on
the same computer. A combined server may be appropriate for proof of concept or
development environments, but it is not supported for production printing. You
must follow the Embedded Database Server requirements for a combined
application and embedded database server.
Device Requirements
LoftwareSpectrum supports printers from a variety of manufacturers. For a list of supported
printers, in Spectrum click Device Management, click Add Device, select a Family, and then
click Model to view the list of supported models. The printer models supported may vary with
the version of Spectrum.
Note: LoftwareSpectrum encodes print data using UTF-8. Ensure that your
device firmware supports UTF-8. Older devices may not support this encoding.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2A Spectrum Application Server and a Spectrum Database Server that are associated with each other by a Spectrum License.
These are the database server requirements for LoftwareSpectrum3.0 when it is used with a
new or existing Oracle database server.
Important! The storage for both the flash recovery area and the tablespace data
must be on a fault-tolerant system, such as SAN or NAS. The same is
recommended for all drives that hold the Spectrum applications and data.
Component Requirement
CPU 8 cores or better
Memory 32 GB RAM or more
Available disk space for 2 TB or more. Multiple factors can affect the amount of space
database required. Contact Loftware's Professional Services Group (PSG)
for assistance.
Available disk space for 2.5 TB or more
flash recovery
Oracle One of the following, as appropriate for the operating system:
l Oracle Database 12c
Constraints
The Loftware-supplied embedded database includes the following limits. If these limits are
exceeded, you must use the non-embedded database configuration. For more information, see
"Requirements for Loftware Spectrum Database Server with Existing Oracle Database" on page
40.
Component Maximum
Archive retention 12 months or less
period
Peak load 10 labels per second, summed across all distributed application
servers
Label throughput 1 million labels per month
Users 1500 users
Devices 1500 devices
Archive retention 50 million labels
Distributed servers 3 SpectrumApplicationServers, including the primary
If you are configuring a multi-site deployment1, the following are requirements for facility
sites.
l Each facility site can have only one SpectrumApplicationServer and one Spectrum
Database Server.
l Each facility site must use the Loftware-supplied embedded database.
l The name of the root folder in Spectrum must be the same at the headquarters site and at
each facility site associated with that headquarters.
l The headquarters and facility sites must be in the same WAN, but facilities are not
required to be able to communicate with each other.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
The following information may help you configure your Spectrum environment and your servers
to optimize their performance.
Configuring for High Availability with Distributed Services
If you are planning a Spectrum environment that will include more than one
SpectrumApplicationServer, it is recommended that you configure your environment to
support distributed services. In a Spectrum environment with distributed services, all
SpectrumApplicationServers are configured to interact as peers within the Spectrum
environment, all accessing the same Spectrum database.
In such an environment, you use distributed services to manage which server or servers are
providing Spectrum functionality at any time. In Spectrum, you can configure distributed
services for high availability or for failover only. It is recommended that you configure for high
availability of distributed services in Spectrum. This approach involves configuring Spectrum to
load balance those services that support load balancing so that they are run concurrently on
multiple SpectrumApplicationServers. Services that do not support load balancing should be
configured to fail over among SpectrumApplicationServers so that if one or more servers go
offline, a standby server or servers begin running the associated services to minimize any
interruption for users.
For information about how to install Spectrum to support distributed services, see the
LoftwareSpectrum Installation and Configuration Guide in More Documentation. For information
about configuring distributed services, see "High Availability with Distributed Services" on page
716.
For information about how to install Spectrum to support distributed services, see the
LoftwareSpectrum Installation and Configuration Guide. For information about configuring distributed
services, see the LoftwareSpectrum UserGuide.
Optimizing Performance
The following tips may help you to optimize the performance of your Spectrum configuration.
l Consult your database administrator for guidance about database tuning.
l The more memory that you have configured for the SpectrumApplicationServer, the
greater the number of devices, label templates, and users that it can support. For more
information, see the LoftwareSpectrum Installation and Configuration Guide.
l Increasing the amount of memory available to the database server typically improves
performance. If you can make significantly more memory available, you can dramatically
increase performance because all or a significant portion of the label and configuration
data can be cached in memory.
l The amount of space on the database server required for recent history data is typically
greater and more variable than the space required for label and configuration data.
However, if you can make the amount of memory required for recent history data
available on the database server, you can dramatically increase the performance of
reporting.
l Sufficient network bandwidth must be available to support your expected printing
throughput.
Each computer on which the LoftwareSpectrum3.0 client software will be run must be able
to connect to the SpectrumApplicationServer and has the following requirements.
Component Requirement
CPU 2.0GHz Dual Core or better
Memory One of the following
l 4GB RAM or more (64-bit operating system)
l Windows 10
l Windows 8.x
l Microsoft Edge
DNS name.
l If Windows Server is installed, ensure that the Role
LoftwareSpectrum3.0 supports remote printing, the act of printing a label to a device that
would not normally be accessible to Spectrum by using your LAN or by using a direct
connection to Spectrum. For example, printing using a device that is physically connected to a
computer outside of your WAN. The SpectrumRemotePrint solution includes a Remote Print
Agent that is installed on a remote computer. Each Remote Site computer on which
SpectrumRemotePrint will be run has the following requirements.
Component Requirement
CPU 2.0GHz Dual Core or better
Memory 4GB RAM or more
Operating system One of the following 64-bit operating systems:
l Microsoft client computer operating systems
l Windows 10
l Windows 8.x
l Microsoft Edge
l Oracle 11g
LoftwareSpectrum Integration for use with SAP Applications is an optional component that
extends the functionality of SAP applications, incorporating LoftwareSpectrum capabilities so
that users can print labels from SAP applications. Print requests initiated by users in SAP
applications are processed and printed by Spectrum, and Spectrum reports the status of each
request to the originating application. You can configure as many integrations as your Spectrum
license allows. If you are integrating Spectrum3.0 with SAP ERP, you must meet the following
requirements.
Component Requirement
License Spectrum license that includes Integration for use with SAP Applications
SAP ECC SAPECC 6.0 or later with the latest enhancements
SAP JCo SAP JCo (sapjco3.jar) 3.0.16 or later must be deployed to the
SpectrumApplicationServer. SAP JCo can be obtained from SAP
Marketplace. For more information, see "Preparing for Integration for Use
with SAP Applications" on page 1086.
Java Java Development Kit (JDK) version 1.8 must be installed on the SAP
Application Server for the Command Line Interpreter
Log in to Spectrum
To log in to Spectrum, use this procedure.
Note: Logging into Spectrum simultaneously as different users from the same
workstation is not supported.
1. Open Spectrum from a supported browser. The Login page is displayed.
Example
Enter the following in the address field of your browser, where spectrum-server
is the name of the server hosting Spectrum for your organization:
http://spectrum-server:8080/loftwarespectrum
Note: If opening Spectrum in Internet Explorer, use the fully-qualified
name of the server, such as www.example.com, rather than a short form of
the server name such as example. To permit the use of short names, in
Internet Explorer configure the Compatibility View Settings so that intranet
sites are not displayed in Compatibility View.
Important: Changing the root folder name after you have started using Spectrum
is not recommended.
Note: In a multi-site deployment, the name of the root folder must be the same at
the headquarters (HQ) and at each facility associated with that HQ.
Designing Labels
The topics in this section describe how to use LoftwareSpectrum to perform the following
tasks.
l Configure your Design workspace by using User Preferences.
l Design and develop label templates, forms, layouts, reusable objects, or applications by
using Design.
l Design and develop business rules by using the Configurator in Process Design.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
2A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
To change the source for data displayed in Design, use the following procedure.
1. In Design, click Options > Design Data.
2. Select one of the following:
n Default Value: The values specified in the Default Value property for each field
are used.
n Placeholder: The data used for each field is placeholder data 1 provided by
Spectrum.
n LiveData Set: If configured, values from a live data set2 obtained from a
Database data source, an Alternate data source, or a Date/Time data source are
used. You can also add data map entries to the data set manually.
Tip: If the Default Value property or the value from a live data set is empty or
contains only a space and that option is selected, then a placeholder value is
displayed in the Label view or Form view in Design. No visible indication of the
field is displayed when you preview or print in Design.
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
2A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
To add data map entries to a data set by querying a Database data source, an Alternate data
source, or a Date/Time data source, use the following procedure.
1. In Design, click the title bar of the Data Sources pane in the left column and the Data
Sets pane in the right column to expand those panes if they are collapsed.
2. In the Data Sources pane, click a Database data source, an Alternate data source, or a
Date/Time data source.
3. Click to query the selected data source and save the data to a live data set.
4. Click File > Save or click the Save button on the toolbar to save the label template
or reusable object.
Important! A data set is part of a label template or a reusable object. If you
do not save the label template or reusable object, the data set that you
created will be discarded.
In the Data Sets pane, a data map entry or data map entries is added using data retrieved by
querying the data source.
To add data map entries to a data set by importing data from an XML file or a CSV file, use the
following procedure.
1. In Design, click the title bar of the Data Sets pane in the right column to expand it if it
is collapsed.
2. In the Data Sets pane, click the item that should be the parent of the new data map
entries, such as the Live data set.
3. Click to open the Import Data dialog box.
4. In the Import Data dialog box, select whether you are importing data from an XMLfile
or a CSV file.
5. If you are importing data from a CSV file, specify the following information about the
source data.
a. Select whether the source data is tabular data or key/value pairs (data map entries).
b. For Text Qualifier, enter the character that can be used to enclose the data of
one cell in the source data. By default, this is a double quotation mark (").
6. Select the XML or CSV file to import, and then click OK.
7. Click File > Save or click the Save button on the toolbar to save the label template
or reusable object.
Important! A data set is part of a label template or a reusable object. If you
do not save the label template or reusable object, the data set that you
created will be discarded.
To manually add a data map entry 1 to a data set or to alter a data map entry in a data set, use
the following procedure.
1. In Design, click the title bar of the Data Sets pane in the right column to expand it if it
is collapsed.
2. To add a new data map entry to a data set, do the following.
a. In the Data Sets pane, click the item that should be the parent of the new data
map entry, such as the Live data set.
b. Click to create a new data map entry.
c. In the Add Entry dialog box, enter a name and a value for the data map entry, and
then click OK.
d. Repeat for any other data map entries to be added.
3. To delete a data map entry from a data set, do the following.
a. In the Data Sets pane, click the data map entry that you want to delete from the
data set.
b. Click to delete the selected data map entry and its children, if any.
c. Repeat for any other data map entries to be deleted.
4. To change a data map entry in a data set, do the following.
a. In the Data Sets pane, click the data map entry that you want to change.
b. Click to edit the data map entry.
c. In the Edit Entry dialog box, change the name and value as needed, and then
click OK.
d. Repeat for any other data map entries to be changed.
5. Click File > Save or click the Save button on the toolbar to save the label template
or reusable object.
Important! A data set is part of a label template or a reusable object. If you
do not save the label template or reusable object, the data set that you
created will be discarded.
1A name (key) and value pair in the data map for a job.
You can add a grid overlay to your Design workspace to aid in aligning fields.
l Click View > Grid. The grid appears on the label and form view. The grid setting field
and Set Grid button are displayed.
To change grid settings
Zoom
To change zoom level
From the Menu
1. Click View, and point to Zoom.
2. Select a zoom percentage from the list.
The Design view changes to the new zoom level.
From the Toolbar
General Preferences
Preference Description
Display The language used in the user interface of Spectrum. Options include the
Language following:
l English
l German
l French
l Spanish
l Simplified Chinese
l Traditional Chinese
l Portuguese (Brazilian)
l Japanese
Landing Page The page (top-level tab) that is displayed when you log in to Spectrum.
Home Folder Folder in Spectrum initially selected and expanded in the tree when
opening, saving, or printing.
Initial Label The label template or process that is initially loaded when you click Print.
Default Process The process used if users to whom this profile is applied do not select a
process when printing a label template from Print.
ReprintProcess The Reprint process used when users to whom this profile is applied click
Reprint in Status.
Change Display a dialog box that allows you to change your password for
Password Spectrum.
Label/Document Preferences
These preferences control what is initially selected in Design when you create a new label
template. However, even if these preferences are locked down, you can change what is displayed
for the current session by selecting options in Design.
Preference Description
Size The default size used when producing a label template.
Width The default horizontal span of the label template.
The unit of measure is as defined in Units under Design Preferences, or in
Design under Options > Units.
Height The default vertical span of the label template.
The unit of measure is as defined in Units under Design Preferences, or in
Design under Options > Units.
Shape The default appearance of the outside edge of the label canvas when you
create a new label template.
Orientation Sets the default direction objects are aligned on the label when you create a
new label template.
Document The default resolution in dots per inch for objects on the label.
DPI
Font The default font category to be used on the label.
Category TrueType
DPL1
IPL2
ZPL II3
Note: If Use Label Font Category is selected, the default
type of font is whatever type was most recently used by that
user when creating a label template or reusable object.
New Whether to display the Create Label dialog box when creating a new label
Document template.
Dialog Box If Bypass and use my preferences is selected and if Size (or Width and
Height), Shape, Orientation, Document DPI, and Font Category are
configured in your preferences, then the dialog box is not displayed.
Otherwise, the dialog box is displayed.
Design Preferences
These preferences control what is initially displayed in Design when a Document Designer
creates or edits a label template. However, even if these preferences are locked down, the
Document Designer can change what is displayed for the current session by selecting options in
Design.
Preference Description
View Whether to initially display the Label View, Form View, or both.
Units The default unit of measure to be used to position and size objects in label
templates. Options include inches, cm, and mm.
Grid Whether to initially display an overlay grid to assist Document Designers with
aligning objects. The dots or lines of the grid are not displayed in printed
labels or in the forms displayed to Data Providers. The type of grid can be
configured in Grid Settings.
Align to Whether to initially force the top left corner of each object to align with the
Grid nearest alignment overlay dot or intersection of lines. Whether the grid is
used can be configured in Grid.
Grid The type of alignment overlay. Options include Dot, Line, Dotted Line, and
Settings Dashed Line.
The dots or lines of the grid are not displayed in printed labels or in the forms
displayed to Data Providers. Whether the grid is used can be configured in
Grid.
Preference Description
Design What data to show in fields when displaying a label template or a reusable
Data object in Design. This option affects what is displayed in the Label view and
Form view in Design, as well as what is displayed when you preview or print
a label in Design. More specifically, this option affects what is displayed in
text fields, barcode fields, and variable image fields.
l Default Value: The values specified in the Default Value property
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
2A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Print Preferences
These preferences control the default options when printing from Print. However, even if these
options are locked down, you can change printing options for the current session on Print.
Preference Description
Default The device 1 used unless you select a different device at print time.
Device
Clear fields Whether to automatically reset all values entered in the form for on-demand
after print after printing occurs.
successful
print
Navigation Whether the Documents Tree is displayed in Print.
Panel Show: The tree is displayed, but you can click a control to hide it.
Hide: The tree is hidden, but you can click a control to display it.
Hide and Lock: The tree is hidden and you cannot display it.
Allow Print Whether the Preview button is displayed in Print.
Preview Note: To use Print Preview, a user should have a role with
Print permission for Documents, have Print permission for
Documents for folders containing label templates and images to
be previewed, and have Allow Print Preview selected in User
Preferences.
View Data Whether to allow a user to click the object title in Print and display the data
Map on map entries in a dialog box. For more information, see " View the Print Data"
PrintPage on page 505.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
Buttons
Button Effect
Save Save any changes that you have made to your preferences.
Cancel/Undo Discard any changes that you have made to your preferences.
Edits
Restore Reset all of your preferences to the default values specified in the user
Defaults profile applied to you. These default values can be changed in the user
profile by an administrator.
Note: You cannot import an object from an import (SER) file into a folder in
which an object with the same name already exists unless the folder is version-
controlled, the object in the folder is checked out to you, and the version
number of the object in the folder is less than the version number of the object
you are importing.
Recognizing version-controlled items
When you open a version-controlled object, the Version is displayed in the bar at the bottom
of the editing pane in Design or Process Design. A lock icon is also displayed in this bar if
the object is checked in. Also, in the File menu, the Version Control > Check In option is
available if the item is checked out, and the Version Control > Check Out option is
available if the item is checked in and you have the permissions needed to check out the
item.
Version-controlled folders are identified in console trees where they appear by the icon .
In a console tree, if a label template is checked out, it is identified by the icon . If
checked in, it is identified by the icon .
1The ability to maintain distinct versions of a label template or other item. An item is checked out to be modified, and checked in to
save a new version. After a version is checked in, that version cannot be changed.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2A Spectrum role with all permissions except those needed for role administration.
3Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
4A Spectrum role with all permissions except those needed for role administration.
If label templates that you create are typically copied from one folder to another,
it is recommended that you save layouts and label templates in separate folders
to prevent confusion. Administrators can copy all label templates and layouts in a
folder to a second folder. If associated layouts and label templates are mingled in
the same folder, when an administrator copies all items in the folder to a second
folder, label templates in the second folder still point to the layouts in the
original folder.
Note: A version-controlled layout must be published before it can be attached to a
label template.
Save a Copy
To create a copy of a version-controlled object that you can edit, click File > Save As, select
the folder where you want to save the new copy, change the name if desired, and then click OK.
Next Steps
If the object is ready to be used in production, you can "Publish a Version-Controlled Object"
on page 87.
1A Spectrum role with all permissions except those needed for role administration.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2In relation to media, the organization of labels specified by a layout. In relation to the Spectrum user interface, a top-level tab.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
You can use a label template to design a label for printed output.
To create a new label template, use this procedure.
1. In Design, click File > New > Label or click the button.
2. In the Create Label dialog box, configure the "Label Template Properties" on page 273.
Note: To view or configure the unit of measurement, in the menu bar
select Options > Units.
Tip: To configure a custom label template size, for the Size field select
Custom. Specify the dimensions of the label template in the Width and
Height fields.
3. Click OK. The Label and Form views are displayed.
Best Practice
Save your label template immediately after creation.
Save the Label Template
Create a Layout
You can use a layout to configure the organization of labels within a page (a sheet of stock or a
row of roll stock).
Note: Stock layouts are available in Document Templates\Stock Layouts.
To create a new layout, use this procedure.
1. In Design, click File > New > Layout or click the button. A new layout is
displayed.
2. In the Properties pane, configure the "Layout Properties" on page 282.
Tip: To configure a custom stock size, for the Stock Size field select
Custom. Specify the dimensions of the stock in the Width and Height
fields.
3. Click File > Save As.
4. In the Save As dialog box, select a folder in the document tree, and enter a name for the
layout.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
5. Click OK.
Best Practices
Save your layout immediately after creation.
If label templates that you create are typically copied from one folder to another, it
is recommended that you save layouts and label templates in separate folders to
prevent confusion. Administrators can copy all label templates and layouts in a
folder to a second folder. If associated layouts and label templates are mingled in the
same folder, when an administrator copies all items in the folder to a second folder,
label templates in the second folder still point to the layouts in the original folder.
Note: A version-controlled layout must be published before it can be attached to a
label template.
Create a Form
You can use a form to design a data entry user interface to use with your label templates.
To create a new form, use this procedure.
1. In Design, click File > New > Form or click the button. A blank form is displayed.
2. In the Properties pane, configure the "Form Properties" on page 284.
Note: To view or configure the unit of measurement, in the menu bar
select Options > Units.
Tip: To configure a custom form size, for the Size field select Custom.
Specify the dimensions of the form in the Width and Height fields.
3. Click File > Save As.
4. In the Save As dialog box, select a folder in the document tree, and enter a Name.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
5. Click OK.
Note: The first time you save a form to a version controlled folder, the form is
automatically checked out. When you are finished editing it, be sure to click File >
Check In to save and check in your version and make it available for others to
check out.
Best Practice
Save your form immediately after creation.
You can use a reusable object to include components for use in a form for data entry, a label for
printed output that, or both. After you create and save a reusable object, it is displayed in the
Library in Design so that it is available for use in label templates, forms, and reusable objects.
Note: Changes made to a reusable object are not reflected in copies already
incorporated into label templates, forms, or reusable objects. Also, after a reusable
object is incorporated into a label template or other object, the copy of the
reusable object in the label template or other object can be modified.
Tip: You can include any aspect of a label template or a form in a reusable object
except for Label Specific Options and Database data sources.
To create a new reusable object, use this procedure.
1. In Design, click File > New > Reusable Object or click the button.
2. In the Create Reusable Object dialog box, configure the "Label Template Properties"
on page 273 for the reusable object.
Note: To view or configure the unit of measurement, in the menu bar
select Options > Units.
Tip: To configure a custom label template size, for the Size field select
Custom. Specify the dimensions of the label template in the Width and
Height fields.
3. Click OK. The Label and Form views are displayed.
Best Practice
Save your reusable object immediately after creation. Always save reusable objects
in the Reusable Objects folder or a subfolder within it so that they can be
displayed in the Library and incorporated into label templates. If you want some
reusable objects to be version-controlled, create them in a version-controlled
subfolder of the Reusable Objects folder.
Save the Reusable Object
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
3. Click OK.
Note: The first time you save a reusable object to a version controlled folder, the
reusable object is automatically checked out. When you are finished editing it, be
sure to click File > Check In to save and check in your version and make it
available for others to check out.
To create a reusable object that includes existing fields from a label template, form, or another
reusable object, use this procedure.
1. Open the label template, form, or reusable object that contains the fields you want to
reuse.
2. Select the fields you want to include in the reusable object by holding the Shift key and
clicking the fields.
3. Right-click on one of the fields selected, and click Create Reusable Object.
4. In the Create Reusable Object dialog box, select the Reusable Objects folder or a
subfolder within it so that the reusable object can be displayed in the Library, and enter a
Name.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
5. Click OK. The reusable object that you created is added to the Library.
Note: Spectrum converts all image files to PNG, so you must give each
image that you import a name that is unique within the folder where it is
saved.
If the image is saved to a version-controlled folder, the image is automatically saved as a
published version to ensure that it can be printed by a Data Provider 1 with the Document
Printer role. It is not necessary to manually publish the image.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
You can export a label template, form, layout, image, reusable object, application, business rule,
or process to an import (SER) file that you can import into another instance of Loftware
Spectrum.
Example
You can import a label template, form, layout, image, reusable object, application, business rule,
or process into Loftware Spectrum if the object was previously exported to an import (SER) file.
For information about exporting to an import file, see "Export a Label Template or Other
Object" on page 98.
Tip: You can also import images that were not previously in Spectrum. For more
information, see "Import a New Image" on page 97.
To import a label template, form, layout, image, reusable object, application, business rule, or
process, use the following procedure.
1. Click Design.
2. Click File > Import.
3. In the Import dialog box, click Browse and select an import file.
4. In the Import Name field, you can specify what the name of the object will be in
Spectrum.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
5. For Import Location, select a folder in Spectrum where the object will be saved.
Important: When importing an image, it is recommended that you save it
to the Images\User Images folder. An image that will be used only as
part of a Variable Image may be saved to any folder in Spectrum. Otherwise,
for an image to be available to add to a label template, you must save it to
the Images\User Images folder, the Images\Stock Images folder, or a
subfolder of one of those folders.
Note: You cannot import an object from an import (SER) file into a folder
in which an object with the same name already exists unless the folder is
version-controlled, the object in the folder is checked out to you, and the
version number of the object in the folder is less than the version number
of the object you are importing.
Using Workflows
In LoftwareSpectrum, you can use workflows to track and manage the creation and
modification of label templates, while automating the approval and publishing process.
Depending on its configuration, a workflow can:
l Automatically select users to review or approve a label template
l Automatically email users when they need to review or approve a label template
l Allow users to see the current step of the workflow for a label template
workflow
l Use eSignature at any step
l Automatically publish a label template once the required users have approved
1. In Design, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select a label template and then click OK.
3. Click File > Workflow > View Current Step Details or click the View Current
1. In Design, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select a label template and then click OK.
3. Make changes to the label template as needed and save. If it is a version-controlled
object, see "Working in a Version-Controlled Environment " on page 79 for more
information.
4. Click File > Workflow > Start Workflow or click the Start Workflow button in
the toolbar.
5. In the Select a Workflow Template dialog box, select a workflow template and then
click OK.
Approving or rejecting an item in a workflow
If your Spectrum environment is using workflow, you may be responsible for reviewing and
approving a label template that someone else has edited.
To approve or reject a label template in a workflow, use this procedure.
1. In Design, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select a label template and then click OK.
3. Click File > Workflow and select a progression as appropriate. For example, select
Approve to approve the changes to the label template.
Note: The options or progressions available are dependent on the
workflow template and your permissions.
4. Depending on the workflow template, a dialog box for comments may display.
5. Depending on the workflow template, you may be required to add your electronic
signature.
Using eSignature
In Spectrum, you can use eSignature to electronically sign a label template in a workflow,
Workflow Sample
A workflow is a sequence of steps that a workflow template follows. Your Administrator can
create workflow templates in Process Design.
1. In Design, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select an object and then click OK.
3. In the right column, click the Tags title bar to expand the pane.
4. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from a device does not delete the tag category
from Spectrum. You can add a new tag to the device and select that
same category again.
5. Click File > Save or click the Save button in the toolbar.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
Value Purpose
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
1. In Design, click File > Open or and select the label template that you want to
associate with a layout.
2. If a lock is displayed in the tab showing the name, click File > Check Out.
3. Click the Label view, and click the label canvas to display the properties of the label.
4. In the Properties pane, for Layout browse to select a layout.
Note: Stock layouts are available in Document Templates\Stock
Layouts.
6. Click File > Save or to save the label template. When the label template is printed,
the printed labels are organized as indicated in the layout.
7. If the label template is version-controlled, click File > Check In to save and check in a
version that includes your changes and to make the label template available for others to
check out. After you check in a version, that version cannot be changed.
1An item that defines an organizational structure for printing multiple labels by using the same label template.
1. Click File > Save As, or click the Save button on the toolbar.
2. In the left pane of the Save As dialog box, click the folder in which you want to save the
object. You can double-click a folder to display subfolders.
Tip: You can add a new folder within the folder selected in the left pane by
clicking the Add Folder button.
3. In the Name box, enter a name for the object.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
4. Click OK.
Note: If an object is in a version-controlled folder , you should check in the
object when you are finished working on it so that it is available for other users to
edit. Checking in an object also saves the object, but merely saving or closing an
object does not check it in.
l Click File > Save, or click the Save button on the toolbar.
To save an object with a new name or in a new location, use this procedure.
1. Click File > Save As.
2. In the left pane of the Save As dialog box, click the folder in which you want to save the
object. You can double-click a folder to display subfolders.
Tip: You can add a new folder within the folder selected in the left pane by
clicking the Add Folder button.
3. In the Name box, enter a name for the object.
4. Click OK.
Best Practice
Click the Save button or File > Save frequently while designing objects.
To close the active label template, form, layout, reusable object, or application, use this
procedure.
1. Click File > Close or click the Close button on the toolbar. The active label
template, form, layout, reusable object, or application is closed.
2. If you have not saved the label template, form, layout, reusable object, or application
since a change, respond to the Close dialog box.
To close all open label templates, forms, layouts, reusable objects, or applications, use this
procedure.
1. Click File > Close All. All open label templates, forms, layouts, reusable objects, or
applications are closed.
2. If you have not saved a label template, form, layout, reusable object, or application since
a change, respond to the Close dialog box.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Migration Issues
If you are viewing a label template that was migrated from an LPS environment, you can
determine whether issues occurred during migration. If issues occurred, you can view
information about the issues and any changes that were necessary.
Review Migration Issues
To determine whether issues occurred during the migration of a label template, do the following.
1. In Design, click File > Open, select the label template that you want to review for
migration issues, and click OK.
2. In the Properties pane, review the value displayed for the Migration property.
n If the value is Successfully migrated, then no migration issues occurred for the
label template.
n If the value is Migrated with issues, then migration was performed but some
issues occurred and changes may have been necessary.
3. If the label template was migrated with issues, you can view information about the issues
and any changes that were necessary.
n To view a tool tip listing any migration issues for a particular field, in the
Properties pane click the flag icon for that field.
n To view a report of all migration issues for the label template, in the Migrated
property click the flag icon.
Tip: You can remove an individual icon by clicking the Clear Flag button, or
remove all of the icons and the report by clicking the Clear All Flags button.
You can configure how your label canvas in Spectrum is aligned in relation to objects in the label
template.
Note: To change the orientation of the label relative to the stock on which it will
be printed, see "Change the Print Rotation of a Label" on page 123.
In the Create Label dialog box, click Portrait or Landscape for the Orientation property.
The canvas changes shapes to match your selection.
When Editing an Existing Label Template
1. In Design, open a label template and then expand the Properties pane.
2. Click the Label view, and click the label canvas to display the properties of the label
template.
3. For Orientation, click Portrait or Landscape. The canvas shape changes.
Note: Objects on your label may move so that they stay on the label canvas.
To change the orientation of the label relative to the stock on which it will be printed, use this
procedure.
1. In Design, open a label template and then expand the Properties pane.
2. Click the Label view, and click the label canvas to display the properties of the label
template.
3. Select a value in degrees for Print Rotation.
Note: The appearance of the label in Spectrum is not changed. To change the
orientation of the label in Spectrum, see "Configure the Design Orientation of a
Label" on page 122.
Label Specific Options (LSOs) enable a Document Designer 1 to override device settings on a
per-label template, per-device model basis. For example, if devices are typically configured with
cutters turned off and a particular label template requires every label to be cut, then when
designing the label template you would create an LSO to override the default setting. LSOs
override device options, and device options override the settings on the device itself if Send
Device Options is enabled.
Tip: If available for the device, Send Device Options can be configured on the
Advanced tab in an LSO or in Device Management.
Each LSO that you create is associated with a specific label template and with a specific device
model or device family. If no LSOs are included in a label template, then the device options
configured in Device Management are used.
Best Practice
It is recommended that device options be configured in Device Management and
overridden by LSOs only where necessary.
To add a collection of Label Specific Options to a label template, use the following procedure.
1. In Design, open a label template.
2. In the right column of the Spectrum window, click the Label Specific Options title bar
to expand the pane.
3. In the Label Specific Options pane, click to open the Label Specific Options
dialog box.
4. For Family, select the family of the devices for which you want to override settings.
5. For Model, select the model of the devices for which you want to override settings.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
6. For each setting that you want to override, select the Override check box, and then
configure the option. (If there is more than one check box for the setting, the Override
check box is the first one following the option name.)
Tip: For information about specific device options, see " Device Driver
Options" on page 858.
Tip: If overriding the Paper Size or Paper Source option for a server
spooler device, you are not limited to selecting from the values displayed.
You can type in a custom value.
Note: Selecting the Print as Image property for a Barcode field overrides
the option for the relevant symbology on the Barcode Imaging tab for
both LSOs and device options, and the barcode is sent as an image.
Selecting Print as Image removes any potential device variation when
natively encoding the barcode data. If you have cleared Print as Image,
selecting Override in the LSO and selecting the relevant symbology also
causes barcodes to be generated by Spectrum and printed as an image.
7. Click OK to save the Label Specific Options collection.
8. Click File > Save or click on the toolbar to save the label template.
Important! An LSO is part of a label template. If you do not save the label
template, the LSO that you created will be discarded when you close the
label template.
To attach a data source to a field on the label or form, use one of the following methods:
l Drag the data source from the Data Sources pane to the field on the Label or Form
view.
l Enter the name of the data source in the Data Ref property of the field that you want to
display the data.
To position text fields, images, shapes, and barcodes in your label template, use the following
tools.
Tip: You can group fields together so that you can move and order them as a single
unit and configure some properties in common. However, fields within a group are
rotated, aligned, and distributed individually. If you copy and paste a group, the
fields are ungrouped when pasted.
To change the size of a circle, box, line, or the displayed size of an image, use one of the
following procedures.
Note: Resizing an image by using these procedures does not alter the image in the
Spectrum library.
Using Handles
1. Click a field to resize. Drag handles appear at the corners, sides, or ends.
2. If resizing an image in the Label view, for Resizing select Fit to Envelope.
3. Drag the handles to change the size.
Note: By default, images maintain proportionality when you change their sizes. To
disproportionately resize an image, clear the Lock Aspect Ratio check box in the
Properties pane.
Using Properties
1. Click a field to resize.
2. If resizing an image in the Label view, for Resizing select Fit to Envelope.
3. Open the Properties pane, and adjust the Width and Height properties.
Resize a Text Field
You can resize Fixed Text and Variable Text fields using the Chars Per Line and Font Size
properties.
1. Click a text field to resize.
2. Open the Properties pane, and adjust the Width and Height properties.
Rotate a Field
To freely rotate a field that permits it, do the following. This approach is not available for
barcodes or for groups of fields that include a barcode.
1. Click a field to rotate.
2. Move the mouse pointer outside one of the corners of the field. The pointer changes to
an arc with arrows on each end.
Note: Fields cannot be positioned off the label canvas. If you need to rotate a large
field, you may notice that the field is blocked by the edge of the canvas. You can
temporarily resize a field to rotate or reposition it.
Align Fields
You can position fields so their edges or centers are aligned with each other, or you can align a
single field relative to the label template. You can also align some types of fields within their
envelopes.
Tip: To move a field only horizontally or vertically from its current position, press
Shift while moving the field.
Tip: For a text field with only one line, you can display guidelines indicating the
top, text baseline 1, and bottom edge of text. To do so, click the text field, and in
the Properties pane, Font section, select the check box for Alignment Markers.
Align Fields with Each Other
To position fields so their edges or centers are aligned, use Align.
1. Select the fields to align. You can use one of the following methods to select multiple
fields.
n Click and drag over the fields. Envelopes appear around the fields selected.
n Press and hold the Shift key, and click fields.
1The conceptual line on which characters sit by default. Characters with a rounded bottom edge may extend slightly below the
baseline. Some characters (such as y) have descenders that extend significantly below the baseline. The baseline is not printed on
labels or displayed in forms, but is an alignment marker that can be viewed in Design.
2. Click Position > Align, and click one of the alignment options.
n Left
n Center
n Right
n Top
n Middle
n Bottom
Align a Field with the Label Template
To align a single field relative to the label template, use Align.
1. Select the field to align.
2. Click Position > Align, and click one of the alignment options.
n Left
n Center
n Right
n Top
n Middle
n Bottom
Align a Field with its Envelope
You can align a barcode, a variable image, or text within or relative to its envelope.
To align a field relative to its envelope, perform the following steps.
1. Select the field to align.
2. In the Properties pane, navigate to the section specific to the type of field, such as
Barcode, Image, or Font.
3. Click an option for Horizontal Alignment.
4. If available, click an option for Vertical Alignment.
Equally Distribute Fields
To separate multiple fields by an equal amount of space, use Distribute. You must select at least
three fields.
1. Select the fields to separate. You can use one of the following methods to select multiple
fields.
n Click and drag over the fields. An envelope appears around the fields selected.
n Press and hold the Shift key, and click fields.
2. Click Position > Distribute, and click one of the space options.
n Horizontally
n Vertically
To adjust the stacking order of overlapping fields, use Order. Within the Label view and within
the Form view, each field has a unique position in the stacking order.
1. Click a field for which you want to change the stacking order in relation to other fields in
the view.
2. Click Position > Order, and click one of the options.
n Bring to Front: Position forward of all other fields in the view. If this field
overlaps with others, this field appears in front of the other fields.
n Bring Forward: Move one step closer to the front of the view.
n Send to Back: Position underneath all of the other fields in the view. If this field
overlaps with others, this field appears behind the other fields.
n Send Backward: Move one step closer to the back of the view.
After adding a field, shape, image, or barcode to a label template, you may need to adjust the
properties of the field.
1. If the Properties pane is not visible in the right column, click the arrow at the top right
of Design.
2. Click the field, shape, image, or barcode in the label template or select it from the
Document Field drop down in the Properties pane. The properties of the field are
displayed in the Properties pane.
3. Change the properties of the field.
Tip: The option selected for Design Data controls what data is used in
fields when previewed, printed, or displayed in Design. Either default
data1, placeholder data2, or data from a live data set3 can be used. For
more information, see "Select Data to Display in Design" on page 63.
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Using Text
Fixed Text fields contain text that remains the same for all printed labels that use a particular
label template. For example, you can use Fixed Text fields for data such as company name or
address.
Variable Text fields and Text Box fields contain text that can vary among printed labels
produced using the same label template. For example, you can use Variable Text fields for data
such as customer name or part number. Text Box fields provide additional formatting options for
text that spans more than one line.
To add text that stays the same from label to label, use these procedures.
Add Fixed Text
1. From the Text list in the Library, click and drag Fixed Text to the Label or Form
view.
2. Double-click the Fixed Text field. The Edit Fixed Text dialog box is displayed.
3. Type the field text in the Enter Text field.
n Press Enter to add more lines to the field.
4. Click OK. The text is displayed in the label template.
Modify the Text in a Fixed Text Field
1. Double-click the Fixed Text field. The Edit Fixed Text dialog box is displayed.
2. Modify the text in the Enter Text field, and click OK.
The changed text is reflected in the Label view or the Form view, and in the Default Value
property in the Properties pane.
To add text that can vary from label to label, use these procedures.
Tip: For data that must fill a region of a specific size or for which you want to
control paragraph spacing, a Text Box field is recommended. For data that must be
restricted to a specific number of characters, a Variable Text field is recommended.
A Prompt appears on the Form view. A Data Entry data source is created.
Tip: The option selected for Design Data controls what data is used in fields
when previewed, printed, or displayed in Design. Either default data1,
placeholder data2, or data from a live data set3 can be used. For more
information, see "Select Data to Display in Design" on page 63.
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
To add a Text Box field to the Label view, use the following procedures.
Tip: For data that must fill a region of a specific size or for which you want to
control paragraph spacing, a Text Box field is recommended. For data that must be
restricted to a specific number of characters, a Variable Text field is recommended.
1. From the Text list in the Library, click and drag Text Box to the Label view.
2. Double click the Text Box field. The Edit Text Box Default Data dialog box is
displayed.
3. Type the default text for the Text Box field in the Enter Text field.
4. Click OK. The text is displayed in the label template.
Modify the Default Data for a Text Box
1. Double click the Text Box field. The Edit Text Box Default Data dialog box is
displayed.
2. Modify the text in the Enter Text field, and click OK.
The changed text is reflected in the Label view and in the Default Value property in the
Properties pane.
Tip: The option selected for Design Data controls what data is used in fields
when previewed, printed, or displayed in Design. Either default data1,
placeholder data2, or data from a live data set3 can be used. For more
information, see "Select Data to Display in Design" on page 63.
When configuring a Text Box field, the following is the behavior when data exceeds the length
of a line or the size of the Text Box.
Line wrapping in a Text Box
Data in a Text Box field automatically wraps at the end of each line if the text would
otherwise extend beyond the envelope of the field. When line wrapping occurs, the line
break is either at the end of a word or after a hyphen, en-dash, or em-dash. If a word is too
wide to fit in the field, a line break occurs within the word at the edge of the envelope.
When data exceeds the size of a Text Box
If the amount of data received for a Text Box field is more than fits, the Text Box Overrun
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Mode property controls how Spectrum responds. Text may overrun the Text Box and
continue until reaching the edge of the label, text may be truncated at the end of a word or
paragraph, or the print job may be failed. An administrator may configure this property
system-wide for Spectrum or for a specific device. You can override the system-wide and
device options by using Label Specific Options (LSOs). For more information, see "Override
Device Options with Label Specific Options" on page 125.
You can change the order in which prompts receive focus as a user enters information and
presses theTab key to move to the next prompt on the data entry form.
Alternatively, you can "Dynamically Manage the Tab Order of a Control" on page 176 or use a
"Focus Form Rule" on page 411. To manage whether the control is a tab stop, use the "Tab
Stop" on page 181 control property.
Note: By default, the first prompt that is added has a tab order value of 1, the
second prompt that is added has a tab order value of 2, and so on.
1. In the right column of the Spectrum window, expand the Field Tabbing Order pane.
2. Arrange the available fields by dragging them into the intended order.
The tabbing order is changed for users entering data in Print.
Text Properties
Text fields in a label template, a form, or a reusable objectsuch as Fixed Text, Variable Text,
and Text Boxhave the following properties.
Note: A Field Name, Data Ref, or Input Data Ref can include letters and
numbers. Additionally, the following characters are permitted but cannot begin the
name: hyphens, underscores, and periods.
Name and Data
Arrange
Top The distance from the top edge of the field to the top of All Fields
the label. The value is dependent on the unit of measure
for the label template.
Center X The distance from the middle of the field to the left edge All Fields
of the label. The value is dependent on the unit of
measure for the label template.
Center Y The distance from the middle of the field to the top of All Fields
the label. The value is dependent on the unit of measure
for the label template.
Width The distance from the left edge of the field to the right All Fields
edge of the field. The value is dependent on the unit of
measure for the label template. Chars Per Line, Max
Chars, and font formatting also impact this value.
For some properties, this property is automatically
configured and is read-only by default. For Fixed Text and
Variable Text, this property can be manually configured if
Auto Envelope is cleared.
1The conceptual line on which characters sit by default. Characters with a rounded bottom edge may extend slightly below the
baseline. Some characters (such as y) have descenders that extend significantly below the baseline. The baseline is not printed on
labels or displayed in forms, but is an alignment marker that can be viewed in Design.
Paragraph Vertical space preceding each paragraph within a Text Box Text Box
Before in lines of space. The height of a line of space is defined
by Line Spacing.
Paragraph After Vertical space following each paragraph within a Text Box Text Box
in lines of space. This spacing is in addition to any defined
by Line Spacing. The height of a line of space is defined
by Line Spacing.
Dynamic Font Whether to permit the point size for the text to increase Text Box
Sizing or decrease until the text reaches the envelope, or to
strictly adhere to the value specified by Font Size.
: The text size is specified by Font Size.
: The text size is automatically adjusted to allow the
text to more completely fill the Text Box field. The font
size is limited by Min Size, Max Size, and Maintain
Aspect Ratio.
Min Size If Dynamic Font Sizing is enabled, the smallest font size Text Box
that may be used. This value is in points.
Note: This property is available only if
Dynamic Font Sizing is selected.
1The conceptual line on which characters sit by default. Characters with a rounded bottom edge may extend slightly below the
baseline. Some characters (such as y) have descenders that extend significantly below the baseline. The baseline is not printed on
labels or displayed in forms, but is an alignment marker that can be viewed in Design.
specifications that can be applied to text fields. Format sources allow you to configure
formatting once, and then apply it to as many fields in the label template as needed. For more
information, see " Configuring Format Sources" on page 425.
Property Description Fields Where Available
Format Sources A list of format sources that are applied to the field. Fixed Text
To apply a format source to the field, expand the (Label view
Format Sources pane in the left column, and drag and only)
drop a format source onto a field in the Label view. Variable
To remove a format source from a field, click the field, Text
and in the Format Sources section of the Properties Text Box
pane select the name of a format source and click .
Using Controls
Controls such as Button1, Check Box2, Drop-Down List3, Device Selector 4,Folder
Selector 5, Label Selector 6, Radio Button Group7, Prompt8, User Selector 9, and Text Box
Prompt10 fields can be included in data entry forms to allow a Data Provider 11 to enter
information for use in printed labels. In addition to simple data entry, those controls as well as a
Table 12 control can be used to allow a Data Provider to run a data source query and select
information from a database, or to run a form rule or a business rule that performs complex
instructions.
When configuring controls such as drop-down lists and radio button groups that provide a list of
options from which to select, a Document Designer 13 can manually provide the option names
and values from which Data Providers can select. Alternatively, the available options can be
dynamically drawn from the data map14.
A Document Designer can dynamically manage the appearance of each control. You can manage
whether each control is displayed to or hidden from Data Providers. Also, you can manage
whether each control is enabled or disabled"grayed out" and not available for use.
Example
If a form in Design includes a Print Alternate Address check box, you can
configure the dynamic properties of the Check Box field so that it is displayed to a
Data Provider in Print only if an alternate address is available in the data map14.
1A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when clicked by a Data Provider.
2A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when the check box is selected or cleared by a Data Provider.
3A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
4A control field in a form or in the data entry view of a label template that allows a Data Provider to select a printer or other device. A
Device Selector is displayed as a browse button and the name of the selected device. Clicking the browse button opens a dialog
box from which a Data Provider can select a device. A control can also be used to run a data source query, a form rule, or a business
rule.
5A control field in a form or in the data entry view of a label template that allows a Data Provider to select a folder. A Folder Selector
is displayed as a browse button and the name of the selected folder. Clicking the browse button opens a dialog box from which a
Data Provider can select a folder. A control can also be used to run a data source query, a form rule, or a business rule.
6A control field in a form or in the data entry view of a label template that allows a Data Provider to select a label. A Label Selector is
displayed as a browse button and the name of the selected label. Clicking the browse button opens a dialog box from which a Data
Provider can select a label. A control can also be used to run a data source query, a form rule, or a business rule.
7A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
8A type of control or document field used to collect information from a Data Provider in the data entry view of a label template or in
a form. When a Data Provider submits data via a prompt, a data source query, a form rule, or a business rule may be run.
9A control field in a form or in the data entry view of a label template that allows a Data Provider to select a user. A User Selector is
displayed as a browse button and the name of the selected user. Clicking the browse button opens a dialog box from which a Data
Provider can select a user. A control can also be used to run a data source query, a form rule, or a business rule.
10A type of control or document field in the data entry view of a label template or in a form that can be used to allow a Data Provider
to retrieve lengthy data from a database and then manipulate the data retrieved.
11Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer.
A user acting as a Data Provider requires the Document Printer role or equivalent permissions.
12A control field in a form that systematically displays the results of a data source query, a form rule, or a business rule in columns
and rows.
13Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Tip: For most on-demand data entry, a Prompt field is recommended. However, a
Text Box Prompt field is appropriate for situations in which Data Providers are
expected to retrieve lengthy data from a database and then manipulate the data
retrieved.
Adding Controls
You can add the following control fields to a label template, a form, or a reusable object:
Tip: For most on-demand data entry, a Prompt field is recommended. However, a
Text Box Prompt field is appropriate for situations in which Data Providers are
expected to retrieve lengthy data from a database and then manipulate the data
retrieved.
Add a Button
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
Best Practice
Save the label template or form immediately after configuring a control.
Add a Check Box
To add a Check Box control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Check Box to the Form view of a
label template to or to a form.
2. In the Properties pane, enter a name for the check box in the Field Name property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
3. For the Default Value property, enter either true (selected) or false (cleared) for the
value that is returned by the check box by default.
4. For the Label Text property, enter text to be displayed next to the check box.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a Drop-Down List
To add a Drop-Down List control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Drop-Down List to the Form
view of a label template to or to a form.
2. In the Properties pane, enter a name for the drop-down list in the Field Name
property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
3. In the Name and Data section, configure the initial appearance of the drop-down list.
You can either display text with no associated value to prompt the Data Provider 1 to
make a selection, or you can specify an option that is selected by default.
n To display text to prompt the Data Provider to make a selection, enter text for the
Prompt.
Note: This text is not associated with an option value. Also, if you
specify a Default Value, then the Prompt is not displayed to Data
Providers.
n To display a default option as selected, for the Default Value enter an option
value from the list.
Tip: Enter the option value, not the corresponding option name.
4. Click the Option Values pane to expand it, and then indicate whether you will manually
enter the options for the drop-down list or whether you will provide a data ref pointing to
the names and values for the options.
n To manually type the option names and values for the drop-down list, click
Manual Entry. Click Add Value. In the dialog box, enter an option name for
Label, enter the corresponding value, and click Add. Repeat for each option. For
the last option in the list, click OK to enter the option and close the dialog box.
n To configure Spectrum to retrieve the option names and values from the datamap,
click From Data Map. For Data Ref, enter a reference to a data map entry 2.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a Device Selector
To add a Device Selector control to a data entry form, use this procedure.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2A name (key) and value pair in the data map for a job.
1. From the Controls list in the Library, click and drag Device Selector to the Form view
of a label template or to a form.
2. In the Properties pane, enter a name for the device selector in the Field Name
property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a Folder Selector
To add a Folder Selector control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Folder Selector to the Form view
of a label template or to a form.
2. In the Properties pane, enter a name for the folder selector in the Field Name
property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
To add a Label Selector control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Label Selector to the Form view
of a label template or to a form.
2. In the Properties pane, enter a name for the label selector in the Field Name property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a Radio Button Group
To add a Radio Button Group control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Radio Button Group to the Form
view of a label template to or to a form.
2. In the Properties pane, enter a name for the radio button group in the Field Name
property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
3. For the Default Value property, enter the option value for the radio button that is
initially selected by default.
Tip: Enter the option value, not the corresponding option name.
4. Click the Option Values pane to expand it, and then indicate whether you will manually
enter the options for the radio button group or whether you will provide a data ref
pointing to the names and values for the options.
n To manually type the option names and values for the radio button group, click
Manual Entry. Click Add Value. In the dialog box, enter an option name for
Label, enter the corresponding value, and click Add. Repeat for each option. For
the last option in the group, click OK to enter the option and close the dialog box.
n To configure Spectrum to retrieve the option names and values from the datamap,
click From Data Map. For Data Ref, enter a reference to a data map entry 1.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a Prompt
1A name (key) and value pair in the data map for a job.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Add a User Selector
To add a User Selector control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag User Selector to the Form view
of a label template or to a form.
2. In the Properties pane, enter a name for the user selector in the Field Name property.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Add a Table
You can use a Table control to display the results of a data source query, form rule, or business
rule in an application in Print. You can also add rules to the table and to specific columns to
change the styling based upon the data in a cell. For more information, see "Add a Table Rule"
on page 164.
To add a Table control to a data entry form, use this procedure.
1. From the Controls list in the Library, click and drag Table to the Form view of a label
template or to a form.
2. In the Properties pane, change the Field Name to a meaningful name.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
3. For the Source Data Ref field in the Table section, enter the location in the datamap
from which the columns obtain data.
Example
/MyData
4. For the ColumnCount property, modify the value to add or remove columns in the
table as needed.
Tip: If you want the number of columns in the table to be determined from
the data source, set the Column Count to 0.
5. Decide whether the envelope 1 of the table should automatically resize based on row
height and column width or if the envelope should be a fixed size, then do one of the
following:
Automatically resize the envelope of the table
a. In the Table section of theProperties pane, select the Auto Envelope check
box.
b. Adjust the values in the Row Height and Row Count fields as needed.
Set a fixed size for the envelope of the table
a. In the Table section of theProperties pane, clear the Auto Envelope check
box.
b. In the Arrange section, adjust the values in the Width and Height fields as
needed.
6. To add a search toolbar to the table, select Show Search.
7. To display the number of each row, select Show Row Numbers. Row numbers are
displayed in Print.
8. To modify the fill color of alternating rows, use Alternating Row Colors.
9. Click the Columns and Table Rules pane.
1In the Label view or Form view in Design, a blue box that outlines a field when the field is selected.
10. In the ColumnHeaders section, do the following for each column in the table:
Note:If yourColumn Count is 0, skip this step.
a. Select the row of the column you want to configure and then click Edit . The
Configure Properties dialog box for the column is displayed.
b. Under Header, enter text for the header Display Name or leave this field blank
to use the name as defined in the data source.
c. UnderColumn, enter the name of the column as defined in the data source for
the Column Name.
d. If desired, modify the column Width and any additional header and column
properties. For more information, see "Columns and Table Rules" on page 189.
11. If desired, configure rules for the table and for specific columns. For more information,
see "Add a Table Rule" on page 164.
12. To style the table using a business rule, in the Style Data Ref field, enter the location in
the datamap from which the columns obtain styling data, and then add a trigger on the
form to run the business rule with the onLoad event. For more information, see "Style a
Table" on page 165.
Note: Styles defined by a Style Data Ref override the styles configured in
the Columns and Table Rules pane.
13. View the populated and styled table in Print. For more information, see View a Table.
View a Table
A table is displayed in an application in Print. To view a table, perform the following steps:
1. If the table data is populated by a business rule, add a trigger on the form to run the
business rule with the onLoad event.
2. Open or create an application and add the form to the application.
3. In Print, open the application to view your table with data and styling as specified.
Note: If a table cell is editable, editing the cell modifies the data map entry
but does not modify the data in the data source.
4. If a column is sortable, you can click the column header to sort the table by that column
in ascending or descending order.
5. To change the displayed order of a columns, click and drag the column in the table.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
l "Select Data Source Queries and Rules to Run" on page 168
l "Configure the Running Order for Queries and Rules" on page 172
l "Dynamically Manage If a Control Is Displayed" on page 174
l "Dynamically Manage If a Control Is Enabled" on page 175
l "Dynamically Manage the Tab Order of a Control" on page 176
l " Associate the Control Output with a Field in a Label" on page 177
Best Practice
Save the label template or form immediately after configuring a control.
Configure Table Rules
You can use table rules to change the styling of rows in the table based upon the data in the row,
and you can use column rules to change the styling of cells in a specific column based upon the
data in the column. For example, if you want the rows that contain a specific date to stand out,
you can add a table rule to change the background color of the rows containing that date to
yellow. If you add a rule to both the table and a column that overlaps, the column rule overrides
the table rule for that cell.
Example
You add a table rule to change the background color of rows that contain January 1 in
the Date column to yellow.
Table Rule
Column Name Operator Value Set Style Style Value
Date Equals January 1 BackgroundColor yellow
You also add a rule on the Date column to change the background color of cells in
the column that contain January 1 to green.
Column Rule
Column Name Operator Value Set Style Style Value
Date Equals January 1 BackgroundColor green
Result
When the table is displayed in Print, the cells containingJanuary 1 in the Date
column are green because a column rule overrides a table rule, and the other cells in
the row are yellow from the table rule.
Date Item Quantity
January 1 12345 100
January 2 12346 100
Style a Table
You can style a table using the options in the Properties pane and by configuring the properties
for each column in the Columns and Table Rules pane. However, if you have several tables
inSpectrum and you want to quickly apply the same styles to multiple tables, you can define the
table styles using a business rule and then apply those styles to a table using the Style Data Ref
property.
Note: Styles defined by a Style Data Ref override those configured in the
Columns and Table Rules pane.
Styles can be defined using the following locations in the datamap. If the same style is defined
in both locations, the Style Data Ref is used. For property keys and values, see "Columns and
Table Rules" on page 189.
Property
Location in DataMap Example
Type
Table /{Style Data Ref}/{Key} /myTableStyle/alternatingItemColors
Table /{Table Name}/{Key} /Table001/alternatingItemColors
Columns /{Style Data Ref}/columns/{Key} /myTableStyle/columns/horizontalAlign
Columns /{Table Name}/columns/{Column /Table0001/columns/Date/horizontalAlign
Name}/{Key}
To style a table using a business rule, perform the following steps:
1. In Process Design, create and save a new business rule that adds the desired values (or
"styles")to the appropriate data map entries (or "properties"). For more information, see
"Create a Business Rule in Configurator" on page 440. For property keys and values, see
"Columns and Table Rules" on page 189.
Tip: To apply these styles to more than one table, use the /{Style Data
Ref}/{Key} and /{Style Data Ref}/columns/{Key} locations in the
datamap.
2. In Design, open the label template or form with the table and click the table.
3. In the Table section of the Properties pane, in the Style Data Ref property, enter the
location in the datamap from which the columns obtain styling data as defined in your
business rule.
Example
/myTableStyle
4. On the form, add a trigger to run the new styling business rule with the onLoad event.
For more information, see "Create a Trigger to Run a Rule" on page 297.
5. View the styled table in Print. For more information, see View a Table.
To add a Text Box Prompt field to a data entry form, use this procedure.
Tip: For most on-demand data entry, a Prompt field is recommended. However, a
Text Box Prompt field is appropriate for situations in which Data Providers are
expected to retrieve lengthy data from a database and then manipulate the data
retrieved.
1. From the Controls list in the Library, click and drag Text Box Prompt to the Form
view. A Form Prompt and a Text Box Prompt are added to the Form view of the label
template. A Data Entry data source is added to the label template.
2. In the Properties pane, enter a name for the Text Box Prompt in the Field Name
property. This is shared by the Form Prompt and the Text Box Prompt.
Note: A Field Name, Data Ref, or Input Data Ref can include letters
and numbers. Additionally, the following characters are permitted but
cannot begin the name: hyphens, underscores, and periods.
3. For the Prompt property, enter text to be displayed next to the Text Box Prompt field.
Configure Functionality
You can configure more functionality for the control, such as running data source queries or
rules, dynamically displaying or hiding the control, dynamically enabling or disabling the control,
and associating the control with data.
If you want data source queries, form rules, or business rules to run when a Data Provider 1
performs a particular action using a control, you must configure a trigger 2 for each data source
or rule.
Trigger
Control When the Trigger Event Occurs
Event
Button3 onClick A Data Provider clicks a button.
Check Box4 onChange A Data Provider selects or clears a check box,
changing its state.
Drop-Down List5 onChange A Data Provider changes which option is selected in
a drop-down list.
Device Selector 6 onChange A Data Provider changes which printer or other
device is selected and clicks OK in a Device
Selector dialog box.
Folder Selector 7 onChange A Data Provider changes which folder is selected and
clicks OK in a Folder Selector dialog box.
Label Selector 8 onChange A Data Provider changes which label is selected and
clicks OK in a Label Selector dialog box.
Radio Button onChange A Data Provider changes which option is selected in
Group9 a radio button group.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
3A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when clicked by a Data Provider.
4A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when the check box is selected or cleared by a Data Provider.
5A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
6A control field in a form or in the data entry view of a label template that allows a Data Provider to select a printer or other device. A
Device Selector is displayed as a browse button and the name of the selected device. Clicking the browse button opens a dialog
box from which a Data Provider can select a device. A control can also be used to run a data source query, a form rule, or a business
rule.
7A control field in a form or in the data entry view of a label template that allows a Data Provider to select a folder. A Folder Selector
is displayed as a browse button and the name of the selected folder. Clicking the browse button opens a dialog box from which a
Data Provider can select a folder. A control can also be used to run a data source query, a form rule, or a business rule.
8A control field in a form or in the data entry view of a label template that allows a Data Provider to select a label. A Label Selector is
displayed as a browse button and the name of the selected label. Clicking the browse button opens a dialog box from which a Data
Provider can select a label. A control can also be used to run a data source query, a form rule, or a business rule.
9A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
Trigger
Control When the Trigger Event Occurs
Event
Prompt1 onCommit A Data Provider submits text via a prompt.
Note: After an interactive user has
typed text into the field, clicking to
another field, tabbing to another field,
or pressing the Enter key submits the
text in the Prompt field to Spectrum.
User Selector 2 onChange A Data Provider changes which user is selected and
clicks OK in a User Selector dialog box.
Text Box Prompt3 onCommit A Data Provider submits text via a text box prompt.
Note: After an interactive user has
typed text into the field, clicking to
another field, tabbing to another field,
or pressing the Enter key submits the
text in the Text Box Prompt field to
Spectrum.
Note: For information about how to add a control, see "Adding Controls" on page
153.
1A type of control or document field used to collect information from a Data Provider in the data entry view of a label template or in
a form. When a Data Provider submits data via a prompt, a data source query, a form rule, or a business rule may be run.
2A control field in a form or in the data entry view of a label template that allows a Data Provider to select a user. A User Selector is
displayed as a browse button and the name of the selected user. Clicking the browse button opens a dialog box from which a Data
Provider can select a user. A control can also be used to run a data source query, a form rule, or a business rule.
3A type of control or document field in the data entry view of a label template or in a form that can be used to allow a Data Provider
to retrieve lengthy data from a database and then manipulate the data retrieved.
4A connection to a database that acts as a data source and can serve as the data ref for a document field. A Database data source
is associated with a Database data service.
5A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
8. Click OK.
9. Repeat for any additional business rules to run when the control is used by a Data
Provider.
If a control acts as a trigger source 1 for more than one data source or more than one rule and
the order in which the they are run is important, then you must configure values for trigger
priority 2 for these triggers. In that situation, you can assign different values for Trigger
Priority for these otherwise identical triggers, and the data source, form rule, or business rule
with the lower value for Trigger Priority is run first. For data sources, whether the type of data
source differs is not relevant.
Note: For information about how to select data source queries, form rules, and
business rules to be run when a control is used, see "Select Data Source Queries
and Rules to Run" on page 168.
Note: Trigger Priority values for data sources are not compared with Trigger
Priority values for form rules and business rules. Regardless of their Trigger
Priority values, all data sources are run before any form rules or business rules are
run.
To configure the order in which data source queries are run relative to each other and the order
in which rules are run relative to each other, do the following:
1. If the control acts as a trigger for more than one data source and the order in which the
they are run relative to each other is important, do the following to assign values for
trigger priority for these triggers.
a. In the Triggers section of the Properties pane, double-click a trigger in the
Data Sources box.
b. In the Select a Trigger dialog box, click Next twice.
c. In the list of triggers, enter a value for Trigger Priority for the data source. The
data source with the lower value for Trigger Priority is run first.
Tip: Trigger priorities are compared only if the triggers have the
same trigger source, trigger event, and trigger key (if any). For
example, if a data source has both a button and a prompt that act as
triggers, their Trigger Priority values are not compared to each
other.
d. Click OK.
e. Repeat for each data source for which a trigger is listed.
1A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
2The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
2. If the control acts as a trigger for more than one rule (regardless of whether they are form
rules or business rules) and the order in which the they are run relative to each other is
important, do the following to assign values for trigger priority for these triggers.
a. In the Triggers section of the Properties pane, double-click a trigger in the
Form Rules box.
b. For Priority, enter a value for trigger priority for the rule. The rule with the lower
value for trigger priority is run first.
c. Click OK.
d. Repeat for each form rule or business rule for which a trigger is listed.
You can use the value referred to by a data ref to manage whether the control is displayed to or
hidden from Data Providers. The control is displayed only if a comparison between the value
associated with a field and a specified value is evaluated as true.
Note:By default, a control with no dynamic properties is enabled and visible and is
a tab stop.
1. Click the Dynamic Properties pane.
2. Click Add to open the Configure Properties dialog box.
3. For Property, select Visible.
4. For Data Ref, select the field to use to manage whether the control is displayed.
5. For Operator, select how the value associated with the field should be compared to a
specified value.
6. If the Value property is displayed, enter the literal value to which the value associated
with the field should be compared.
7. Click OK.
Tip: The Value property must not include a data ref or the name of a data map
entry. If you want to use a variable to manage whether the control is displayed, you
can accomplish this by using a business rule that includes a conditional business
rule component. Configure the output of the business rule to be a value in the
data map1, and then use that value to manage whether the control is displayed.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
You can use the value referred to by a data ref to manage whether the control is enabled for Data
Providers to use. The control is enabled only if a comparison between the value associated with
a field and a specified value is evaluated as true. Otherwise, the control is displayed in a disabled
state"grayed out" and not available for use.
Note:By default, a control with no dynamic properties is enabled and visible and is
a tab stop.
1. Click the Dynamic Properties pane.
2. Click Add to open the Configure Properties dialog box.
3. For Property, select Enabled.
4. For Data Ref, select the field to use to manage whether the control is enabled.
5. For Operator, select how the value associated with the field should be compared to a
specified value.
6. If the Value property is displayed, enter the literal value to which the value associated
with the field should be compared.
7. Click OK.
Tip: The Value property must not include a data ref or the name of a data map
entry. If you want to use a variable to manage whether the control is enabled, you
can accomplish this by using a business rule that includes a conditional business
rule component. Configure the output of the business rule to be a value in the
data map1, and then use that value to manage whether the control is enabled.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
You can use the value referred to by a data ref to manage whether a control field is a tab stop,
and, if it is, manage the order in which the field receives focus when a Data Provider uses the
Tab key for navigating in the form. The field is not a tab stop if the Tab Order value is -1.
Alternatively, you can select or clear the "Tab Stop" on page 181 property, manually "Change
the Field Tabbing Order" on page 139, or use a "Focus Form Rule" on page 411.
Note: By default, a control with no dynamic properties is enabled and visible and
is a tab stop.
1. Click the Dynamic Properties pane.
2. Click Add to open the Configure Properties dialog box.
3. For Property, select Tab Order.
Note: If the Tab Order option is not displayed, click the Properties pane,
select theTab Stop property for the control, and then click Save.
4. For Data Ref, select the field to use to manage the tab order of the control.
5. Click OK.
Tip: If you want to use a variable to manage the tab order value of a control, you
can accomplish this by using a business rule. Configure the output of the business
rule to be a value in the data map1, and then use that value to manage the tab
order value.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
If the form containing the control is part of a label template, you can use a Data Entry data
source to associate the data provided via the control with a field in the Label view of a label
template. Data provided by using the control can be printed on a label. To do so, use this
procedure.
1. Expand the Data Sources pane.
2. Expand the Data Entry data sources.
3. Click and drag the listing for the control onto a Variable Text field or a Barcode field in
the Label view.
n : Displayed when the mouse pointer is over a field that can accept the data
source.
n : Displayed when the mouse pointer is not over a field that can accept the data
source.
The Variable Text or Barcode field is now configured to use the control as its source of data.
You can confirm this by clicking the Variable Text or Barcode field and noting that in the
Properties pane the Data Ref property contains the name of the control.
Important! After you assign a data source to a field, renaming the data source or
associated control breaks the connection between the variable field or barcode and
the data source. You must complete the association procedure again, or rename the
Data Ref property of the variable field or barcode to match the new name of the
data source.
Control Properties
The types of control fields available in Loftware Spectrum include Button1, Check Box2,
Drop-Down List3, Device Selector 4, Folder Selector 5, Label Selector 6, Radio Button
Group7, Prompt8, User Selector 9, Table 10, and Text Box Prompt11 fields. Control fields
can be used in a form, in the Form view of a label template, or the Form view of a reusable
object and have the following properties.
Name and Data
Note: A Field Name, Data Ref, or Input Data Ref can include letters and
numbers. Additionally, the following characters are permitted but cannot begin
the name: hyphens, underscores, and periods.
1A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when clicked by a Data Provider.
2A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when the check box is selected or cleared by a Data Provider.
3A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
4A control field in a form or in the data entry view of a label template that allows a Data Provider to select a printer or other device. A
Device Selector is displayed as a browse button and the name of the selected device. Clicking the browse button opens a dialog
box from which a Data Provider can select a device. A control can also be used to run a data source query, a form rule, or a business
rule.
5A control field in a form or in the data entry view of a label template that allows a Data Provider to select a folder. A Folder Selector
is displayed as a browse button and the name of the selected folder. Clicking the browse button opens a dialog box from which a
Data Provider can select a folder. A control can also be used to run a data source query, a form rule, or a business rule.
6A control field in a form or in the data entry view of a label template that allows a Data Provider to select a label. A Label Selector is
displayed as a browse button and the name of the selected label. Clicking the browse button opens a dialog box from which a Data
Provider can select a label. A control can also be used to run a data source query, a form rule, or a business rule.
7A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when a Data Provider changes which item is selected.
8A type of control or document field used to collect information from a Data Provider in the data entry view of a label template or in
a form. When a Data Provider submits data via a prompt, a data source query, a form rule, or a business rule may be run.
9A control field in a form or in the data entry view of a label template that allows a Data Provider to select a user. A User Selector is
displayed as a browse button and the name of the selected user. Clicking the browse button opens a dialog box from which a Data
Provider can select a user. A control can also be used to run a data source query, a form rule, or a business rule.
10A control field in a form that systematically displays the results of a data source query, a form rule, or a business rule in columns
and rows.
11A type of control or document field in the data entry view of a label template or in a form that can be used to allow a Data Provider
to retrieve lengthy data from a database and then manipulate the data retrieved.
1A value that is unknown. A null value is different from an empty string or a zero value.
l Alpha-Numeric
l Alpha-Only
l Code 39
l Code 93
l Full ASCII
l Hexadecimal
l Numeric-Only
l GS1
l GS1-128 Alpha-Numeric
l Uppercase Alpha-Numeric
l Uppercase Alpha-Only
Scan Only Whether data for the prompt can only be scanned in. Prompt
: Data can be entered by any means.
: Data for this prompt can be entered only by scanning.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Note: Rotating a field does not change the values of these properties. For
example, regardless of what the value for Rotation is, the Width refers to the
distance from the left edge of the field to the right edge of the field when
Rotation is set to 0.
Property Description Fields Where Available
Left The distance from the left edge of the field to the left All fields
edge of the label. The value is dependent on the unit of
measure for the label template.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Configure Properties
The following properties are displayed in the Configure Properties dialog box.
Property Description Values
Property A property of a control Enabled: Whether the control can be used
that can be turned on or by a Data Provider in Print. If a
off, such as whether the comparison between the value associated
control is enabled or with a field and a specified value is
whether the control is evaluated as true, then the control is
displayed to a Data displayed and can be used. If false, the
Provider 1 in Print. control is displayed in a disabled state and
cannot be used.
Visible: Whether the control is displayed
to a Data Provider in Print. If a
comparison between the value associated
with a field and a specified value is
evaluated as true, then the control is
displayed. If false, the control is not
displayed.
Tab Order: The order in which the
control receives focus when a Data
Provider uses the Tab key for navigating in
Print. The control is not a tab stop if the
Tab Order value is -1.
Data Ref The field used to manage The list of fields that exist in the form
whether the specified
property is turned on or
off.
Operator The operator used to Equals
compare the value Not Equal
referred to by the Data Greater Than
Ref to a specified value. Less Than
Is Empty
Is Not Empty
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Providers.
l Value: The option value, which is not displayed
to Data Providers.
l Add: Add the option to the list and clear the
For a table 1 in a label template or a form, the Column and Table Rules pane allows you to
add or remove columns in a table, configure properties and styles for the table, and add styling
1The view that is displayed to a user on the Print page that allows the user to enter information for a label. A Document Designer
can configure this view in the Form view on the Design page.
rules to the table and to specific columns. Additional table options can be found in
theProperties pane. For more information, see "Table" on page 185.
Note: Styles defined by a Style Data Ref override the styles configured on a
column.
Table Rules
You can use table rules to apply styling to rows that meet the specified criteria. Table rules are
implemented in order beginning with the rule at the top, and the last rule overrides previous
rules if applicable. Use the arrows to change the order in which the rules are
implemented. Table rules are overridden by rules for the column for that cell.
Property Description
Column Name The name of the column which the rule applies to.
Operator The rule operator. Options include Equals, Not Equals, Begins
With, Doesn't Begin With, Contains, Doesn'tContain, Is Empty, Is
Not Empty, Is Null, Is Not Null, Less Than, Less or Equal,
Greater Than, and Greater or Equal.
Value The data criteria. This field is case sensitive.
Set Style Which style to modify. Options include Background Color, Font
Color, Font Size, Font Style, Font Weight, and Text Decoration.
Style Value How the style is modified.
Header Properties
Header properties are overridden by those defined by a StyleData Ref.
Accepted
Property Description Key
Values
Display Name Content for the column String headerText
header. To use the name as
defined in the data source,
leave this field blank.
Header Background The column header #000000 headerBackgroundColor
Color background color. You can to
select a color or enter a #FFFFFF
hexadecimal RGB color value. (Default)
Header Height The vertical span of the 0 to 999 headerHeight
header row in pixels. (Default:
20)
Accepted
Property Description Key
Values
Header Horizontal The horizontal alignment of left headerHorizontalAlign
Align text in the column header cell. center
(Default)
right
Header Font Color Color of characters in the #000000 headerFontColor
column header. You can select (Default)
a color or enter a hexadecimal to
RGB color value. #FFFFFF
Header Font Size The size of type in the column 0 to 999 headerFontSize
header in points. (Default:
12)
Header Font Style Additional formatting for text normal headerFontStyle
in the column header. (Default)
italic
Header Font Weight Additional formatting for text normal headerFontWeight
in the column header. bold
(Default)
Header Opacity The opacity of the column 0 to 1 headerAlpha
header background color, (Default:
where 0 is transparent and 1 is .8)
solid.
Header Text Additional formatting for text none headerTextDecoration
Decoration in the column header. (Default)
underline
Column Properties
Column properties are overridden by those defined by a StyleData Ref.
Accepted
Property Description Key
Values
Column Name The name of the column in the data. String dataField
Editable Whether a Document Designer can true allowEditing
edit the contents of the column cells. false
(Default)
Accepted
Property Description Key
Values
Horizontal Align The horizontal alignment of text in the left horizontalAlign
column cells. (Default)
center
right
Padding Bottom The margin between the text and the 0 paddingBottom
bottom of the column cells. (Default)
to 999
Padding Left The margin between the text and the 0 paddingLeft
left edge of the column cells. (Default)
to 999
Padding Right The margin between the text and the 0 paddingRight
right edge of the column cells. (Default)
to 999
Padding Top The margin between the text and the 0 paddingTop
top of the column cells. (Default)
to 999
Renderer Whether the column cells display text checkbox renderer
or a check box. To allow a check box text
to be selected, Editable must also be (Default)
set to true for the column.
Resizable Whether a Document Designer can true resizable
adjust the column width. (Default)
false
Sortable Whether a DocumentDesigner can true sortable
sort the column cells. (Default)
false
Type The data type of values in the column. String datatype
(Default)
Number
Boolean
Text Decoration Additional formatting for text in the none textDecoration
column cells. (Default)
underline
Accepted
Property Description Key
Values
Vertical Align The vertical alignment of text in the top verticalAlign
column cells. middle
(Default)
bottom
Width The distance from the left edge of the 0 to 999 width
column to the right edge of the column (Default:
in pixels. 100)
Min Width The minimum width of the column in 0 to 999 minWidth
pixels. (Default:
20)
Word Wrap If text in a cell reaches the column true wordWrap
edge, whether to automatically move (Default)
the text to the next line. false
True: Text is moved to the next line if
it reaches the column edge. The Row
Height does not change.
False: Text is not moved to the next
line if it reaches the column edge and
does not display unless the column
width is increased.
Column Rules
You can use column rules to apply styling to cells in the selected column that meet the specified
criteria. Column rules are implemented in order beginning with the rule at the top, and the last
rule overrides previous rules if applicable. Use the arrows to change the order in which
the rules are implemented. Column rules override table rules for the cell. For more information,
see "Add a Table Rule" on page 164.
Property Description
Column Name The name of the column which the rule applies to.
Operator The rule operator. Options include Equals, Not Equals, Begins
With, Doesn't Begin With, Contains, Doesn'tContain, Is
Empty, Is Not Empty, Is Null, and Is Not Null.
Value The data criteria. This field is case sensitive.
Set Style Which style to modify. Options include Background Color, Font
Color, Font Size, Font Style, Font Weight, and Text
Decoration.
Style Value How the style is modified.
Example
The following column rule sets the background color to green for cells containing
January 1 in the Date column.
Colum- Style
Oper- Valu-
n Set Style Valu-
ator e
Name e
Date Equals Januar Backgrou green
y1 nd Color
Using Barcodes
Each barcode symbol has a unique set of properties that are used to define the symbol.
Add a Barcode
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
You can configure primary, secondary, and combined barcodes that comply with the UPN
specification for the Health Industry Bar Code (HIBC) Supplier Labeling Standard by using
LoftwareSpectrum. This standard is intended for use with products distributed in the
healthcare industry.
For more information about encoding HIBC barcodes, see the The Health Industry Bar Code
(HIBC) Supplier Labeling Standard listed in "External Links" on page 1645.
To add barcodes that comply with the HIBC standard to a label template, use the following
procedure.
1. Click Design and open a label template or create a new label template.
2. Add either a primary barcode and optionally a secondary barcode, or else a combined
barcode. The HIBC Supplier Labeling Standard considers a secondary barcode to be
optional. If using a 2D symbology, either use only a primary barcode or else use a
combined barcode.
For each barcode, do the following.
a. To create the barcode, in the Barcodes list in the Library, expand either Linear
or 2D.
b. Click one of the following symbologies and drag it to the Label pane: Code 128,
Code 39 (not Full ASCII), Aztec, DataMatrix, MicroPDF417, or QR Code.
c. In the Properties pane, change the Field Name to a meaningful name, such as
PrimaryBarcode, SecondaryBarcode, or CombinedBarcode.
d. Configure the Max Chars to meet or exceed the length of the data. In addition to
the data to be entered, you must allow space for the flag character and the check
character. For a Combined barcode, you must also allow space for a separator
character.
e. If using Code 39 or Code 128, set Check Digit to None so that you can
configure and use it separately.
f. If using Code 39 or Code 128, set Human Readable to None so that you can
configure it separately.
g. If using Code 39, for Ratio select 3.0:1.
h. Configure other fields as appropriate, leaving the Data Ref field blank.
3. Add a Variable Text field for the human readable text for each barcode. For each
barcode, do the following.
a. To create human readable text for the barcode, in the Text list in the Library,
click Variable Text, and drag it to the Label pane.
b. In the Properties pane, change the Field Name to a meaningful name, such as
PrimaryText, SecondaryText, or CombinedText.
c. Configure the Chars Per Line to meet or exceed the length of the data. In
addition to the to be data entered, you must allow space for the flag character,
check character, and two asterisks (denoting the beginning and end of the human
readable text). For a Combined barcode, you must also allow space for a separator
character.
d. Configure other fields as appropriate, leaving the Data Ref field blank.
4. For each input that you want to be entered by the Data Provider, create and configure a
Prompt (which will be automatically associated with a Data Entry data source and a Data
Ref). You do not need to create a Prompt for any component of the barcode data that is
static.
These inputs, defined by the HIBC standard, include some or all of the following.
Input Field Name
Labeler Identification Code LIC
Product or Catalog Number PCN
Unit of Measure Identifier UM
Reference Identifier RefId
Quantity Quantity
Expiration Date ExpDate
Lot/Batch or Serial Number Lot
For each input that you want to include, do the following.
a. To create a Prompt, in the Text list in the Library, click and drag a Prompt to
the Form pane. A Data Entry data source is created.
b. For each field in the Form pane, click the field to select it, and in the Properties
pane change the Field Name to a meaningful name and the Prompt to the text
that should be displayed to Data Providers. Either use the Field Names suggested
in the preceding table, or else change the Formulas in the following steps to
incorporate the Field Names that you chose.
c. Leave the Data Ref field blank.
d. Select an Entry Type and Character Mask for each input as appropriate.
e. Configure Chars Per Line for each input to meet or exceed the length of the data
to be entered.
5. Create Formula data sources to support each barcode. Leave the Data Ref field for the
Formula data source blank. For any component of the barcode data that is static, you can
replace the Data Ref shown in the formula below (such as {/Body/LIC}) with the
appropriate text enclosed in quotation marks (such as "A123").
Data
Description Source Formula
Name
Primary Pri_Base "+" + {/Body/LIC} + {/Body/PCN} + {/Body/UM}
barcode data
except for
check digit
Primary Pri_Check Mod43({/Pri_Base})
check digit
Secondary Sec_Base "+" + {/Body/RefId} + {/Body/Quantity} +
barcode data {/Body/ExpDate} + {/Body/Lot} + {/Pri_Check}
except for
check digit
Secondary Sec_Check Mod43({/Sec_Base})
check digit
Combined Com_ "+" + {/Body/LIC} + {/Body/PCN} + {/Body/UM}
barcode Base1 + "/"
data, part 1
Combined Com_ {/Body/RefId} + {/Body/Quantity} +
barcode Base2 {/Body/ExpDate} + {/Body/Lot}
data, part 2,
except for
check digit
Combined Com_ Mod43({/Com_Base1} + {/Com_Base2})
check digit Check
6. Create a Formula data source for each barcode. Leave the Data Ref field for the Formula
data source blank.
Data Source
Description Formula
Name
Primary barcode data Pri_Barcode {/Pri_Base} + {/Pri_Check}
Secondary barcode data Sec_Barcode {/Sec_Base} + {/Sec_Check}
Combined barcode data Com_Barcode {/Com_Base1} + {/Com_Base2} +
{/Com_Check}
7. For each barcode, click and drag the formula to be associated with that barcode, and drop
it onto that barcode in the Label pane. This populates the Data Ref field for the barcode.
8. Create a Formula data source for the human readable text for each barcode. These
formulas enclose the data in asterisks and replace any check digit that is a space with an
underscore, as specified by the HIBC standard. Leave the Data Ref field for the Formula
data source blank.
Data Source
Description Formula
Name
Human readable text Pri_Text "*" + {/Pri_Base} + ({/Pri_Check}.rtrim
for Primary barcode (" ")).rpad("_",1) + "*"
Human readable text Sec_Text "*" + {/Sec_Base} + ({/Sec_Check}.rtrim
for Secondary (" ")).rpad("_",1) + "*"
barcode
Human readable text, Com_Text1 "*" + {/Com_Base1}
line 1, for Combined
barcode
Human readable text, Com_Text2 {/Com_Base2} + ({/Com_Check}.rtrim("
line 2, for Combined ")).rpad("_",1) + "*"
barcode
9. For each barcode, click and drag the formula to be associated with the human readable
text, and drop it onto the appropriate Variable Text field in the Label pane. This
populates the Data Ref field for the human readable text.
If you need to configure barcodes for products in the healthcare industry that comply with the
UPN specification for the Health Industry Bar Code (HIBC) Supplier Labeling Standard but
need more flexibility than the basic HIBC barcode formats provide, the HIBC standard allows
you to use an alternative format defined in ISO/IEC 15434 with Data Identifiers (DIs). This
alternative format may be helpful if you want to include data not otherwise covered by the
HIBC standard or need to produce a small label for use on a small package.
For more information about encoding HIBC barcodes with DIs, see the The Health Industry Bar
Code (HIBC) Supplier Labeling Standard listed in "External Links" on page 1645.
To add barcodes that include DIs and comply with the HIBC standard, use the following
procedure. Because using DIs provides the flexibility to include custom inputs, you may use
different inputs than shown in this example. Including human readable text is optional according
to the standard.
1. Click Design and open a label template or create a new label template.
2. Add a barcode.
For each barcode, do the following.
a. To create the barcode, in the Barcodes list in the Library, expand 2D.
b. Click one of the following symbologies and drag it to the Label pane: Aztec,
DataMatrix, MicroPDF417, or QR Code.
c. In the Properties pane, change the Field Name to a meaningful name, such as
HIBC_Barcode.
d. Configure the Max Chars to meet or exceed the length of the data. In addition to
the data to be entered, you must allow space for the seven-character message
header, one-character data delimiters, DIs, and two-character message trailer.
Unlike a typical HIBC barcode, no flag character, check character, or separator
character is used.
e. Configure other fields as appropriate, leaving the Data Ref field blank.
3. If you want to include human readable text for the barcode, add a Variable Text field.
For each barcode, do the following.
a. To create human readable text for the barcode, in the Text list in the Library,
click Variable Text, and drag it to the Label pane.
b. In the Properties pane, change the Field Name to a meaningful name, such as
HumanReadText.
c. Configure the Chars Per Line to meet or exceed the length of the data. In
addition to the data to be entered, you must allow space for parentheses to enclose
each DI. The message header, data delimiters, and message trailer are omitted.
Unlike a typical HIBC barcode, no asterisks are used to enclose the human
readable text.
d. Configure other fields as appropriate, leaving the Data Ref field blank.
4. For each input that you want to be entered by the Data Provider, create and configure a
Prompt (which will be automatically associated with a Data Entry data source and a Data
Ref). You do not need to create a Prompt for any component of the barcode data that is
static.
This format gives you the flexibility to include standard HIBC inputs, custom inputs, or
both. The following inputs are used in this example, but you can include different
standard or custom inputs. If you always use the same Issuing Agency Code (IAC), then
you can incorporate it into your Formulas as a static value instead of creating a Prompt for
it.
Field
Input
Name
DI for the Issuing Agency Code, the Labeler Identification Code, and part PCNDI
number
Issuing Agency Code IAC
Labeler Identification Code for supplier LIC
Part number assigned by supplier PCN
DI for the first custom input Custom1DI
First custom input Custom1
DI for the second custom input Custom2DI
Second custom input Custom2
For each input that you want to include, do the following.
a. To create a Prompt, in the Text list in the Library, click and drag a Prompt to
the Form pane. A Data Entry data source is created.
b. For each field in the Form pane, click the field to select it, and in the Properties
pane change the Field Name to a meaningful name and the Prompt to the text
that should be displayed to Data Providers. Either use the Field Names suggested
in the preceding table, or else change the Formulas in the following steps to
incorporate the Field Names that you chose.
c. Leave the Data Ref field blank.
d. Select an Entry Type and Character Mask for each input as appropriate.
e. Configure Chars Per Line for each input to meet or exceed the length of the data
to be entered.
5. Create Formula data sources for the barcode. Leave the Data Ref field for the Formula
data source blank. For any component of the barcode data that is static, you can replace
the Data Ref shown in the formula below (such as {/Body/IAC}) with the appropriate
text enclosed in quotation marks (such as "RH"). If you are using different inputs than
shown in this example, you must change the barcode formula accordingly.
Data
Description Source Formula
Name
Message MsgHeader "[)>" + ASCII_RS() + "06" + ASCII_GS()
header
Message MsgTrailer ASCII_RS() + ASCII_EOT()
trailer
Barcode data BarcodeData {/MsgHeader} + {/Body/PCNDI} + {/Body/IAC} +
{/Body/LIC} + {/Body/PCN} + ASCII_GS() +
{/Body/Custom1DI} + {/Body/Custom1} + ASCII_
GS() + {/Body/Custom2DI} + {/Body/Custom2} +
{/MsgTrailer}
6. Click and drag the formula to be associated with the barcode, and drop it onto that
barcode in the Label pane. This populates the Data Ref field for the barcode.
7. If you are including human readable text for the barcode, create a Formula data source for
the human readable text. The message header, data delimiters, and message trailer are
omitted. Each DI is enclosed in parentheses. Leave the Data Ref field for the Formula
data source blank. If you are using different inputs than shown in this example, you must
change the formula accordingly.
Data Source
Description Formula
Name
Human readable text HumanReadData "(" + {/Body/PCNDI} + ")" +
for barcode {/Body/IAC} + {/Body/LIC} +
{/Body/PCN} + "(" +
{/Body/Custom1DI} + ")" +
{/Body/Custom1} + "(" +
{/Body/Custom2DI} + ")" +
{/Body/Custom2}
8. If you are including human readable text for the barcode, click and drag the formula to be
associated with the human readable text, and drop it onto the appropriate Variable Text
field in the Label pane. This populates the Data Ref field for the human readable text.
Common Properties
Barcode properties common to all symbologies
Symbology-Specific Properties
Note: To create a barcode that adheres to the Health Industry Bar Code (HIBC)
Supplier Labeling Standard, you can use Code 128, Code 39 (not Full ASCII),
Aztec, DataMatrix, MicroPDF417, or QR Code.
Linear
Symbology More Information
Code 39 Commonly used variable length symbology restricted to 43
characters. ISO/IEC 16388.
Code 39 Extended (Full ASCII) Code 39
Full ASCII
Code 93 Enhanced Code 39
Code 93 Extended (Full ASCII) Code 93
Full ASCII
Code 128 High density alphanumeric/numeric symbology. ISO/IEC
15417.
EAN-8 World-wide, GS1 approved symbology. ISO/IEC 15420.
EAN-13 World-wide, GS1 approved symbology. ISO/IEC 15420.
Interleaved Typically non-retail packaging. ISO/IEC 16390.
2 of 5
POSTNET There are no properties unique to a Postal Numeric Encoding
Technique (POSTNET) barcode.
The United States Postal Service (USPS) replaced POSTNET
with USPS Intelligent Mail in January 2013.
UPC-A Universal Product Code. ISO/IEC 15420.
UPC-E Zero-suppressed version of UPC-A
USPS The United States Postal Service (USPS) requires the use of a
Intelligent USPS Intelligent Mail barcode (IMb) to qualify for automation
Mail prices.
2D
Symbology More Information
Aztec ISO/IEC 24778
EAN/UPC
Barcodes using these symbologies are typically used on items to be scanned at point-of-sale.
Symbology
EAN-8
EAN-13
UPC-A
UPC-E
Composite
Composite barcodes have a 2D portion followed by a linear portion. In the barcode data, the 2D
portion appears first and is followed by a composite delimiter (|) and then the linear portion.
Within a Formula data source, the composite delimiter can be represented by the COMPDELIM
() function.
In addition to the Max Chars property, Spectrum also displays 2D Max Chars and Linear
Max Chars for composite barcodes. Otherwise, a composite barcode uses the same symbology
as the related type of linear barcode.
Symbology
EAN-8 Composite
EAN-13 Composite
GS1 DataBar Composite
GS1-128 Composite
UPC-A Composite
UPC-E Composite
Common Properties for Barcodes
Barcode fields in a label template all share the following properties. These properties relate to
the position on the label, the source of the data for the barcode, the symbology used, and the
formatting of the barcode. In addition to these common properties, a barcode may also have
properties specific to the symbology selected.
Note: For GS1-128 and GS1-128 Composite barcodes, the first two digits in the
data provided are assumed to be the application identifier, regardless of whether
they are enclosed in parentheses.
Note: A Field Name, Data Ref, or Input Data Ref can include letters and
numbers. Additionally, the following characters are permitted but cannot begin the
name: hyphens, underscores, and periods.
Tip: Properties for positioning a barcode relative to the envelope of that field are
listed in the Barcode section, while those for positioning a barcode relative to the
label are listed in the Arrange section.
Name and Data
Extension.
l GS1 DataBar: Affected by GS1
DataBar Type.
Symbology The type of barcode.
Horizontal Whether the barcode is left aligned, : Align to left edge of
Alignment horizontally centered, or right aligned within envelope
or relative to the envelope. : Align to horizontal
center of envelope
: Align to right edge of
envelope
Vertical Whether the barcode is aligned to the top : Align to top edge of
Alignment edge, vertical center, or bottom edge of the envelope
envelope. : Align to vertical center
of envelope
: Align to bottom edge of
envelope
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Code 39 Full ASCII is also known as Code 39 Extended (Ext).
Property Description Values
Bar The height of the bars in the barcode. Value is dependent
Height on the unit of
measure for the
label template.
1Device settings that can be sent to a printer or other device when a specific label template is used to print, overriding options
configured for the device in Device Management or in the operating system. LSOs can be configured in Design.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Code 93 Full ASCII is also known as Code 93 Extended (Ext).
Property Description Values
Bar The height of the bars in the barcode. Value is dependent
Height on the unit of
measure for the
label template.
Data Data entered in this field will be encoded in the barcode
Identifier but will not print in the human readable text field for the
barcode.
Data Identifiers are used to help the scanner identify the
field.
For Example
For an AIAG label, a barcode with a data
identifier of P contains a part number, a data
identifier of Q signifies a quantity field and a
data identifier of S signifies a serial number
field.
Human Whether a text representation of the barcode is printed. None
Readable The human readable text can be positioned anywhere on Free Floating
the label (free floating).
Line X- The width of the module (narrow bar) of the barcode. Thousandths of an
Dim The range of values available varies with the Document inch (mil) in fixed
DPI of the label template. increments
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Note: For GS1-128 and GS1-128 Composite barcodes, the first two digits in the
data provided are assumed to be the application identifier, regardless of whether
they are enclosed in parentheses.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Property Description Values
Cell The width of the barcode cell (module). The range of Thousandths of
Width values available varies with the Document DPI of the an inch (mil) in
label template. fixed increments
Cell Whether to round up, down, or to the nearest dpi Nearest
Width when printing to a device with a different resolution Up
Round from the resolution specified in the label template. Down
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Property Description Values
Cell The width of the barcode cell (module). The range Thousandths of an inch
Width of values available varies with the Document DPI of (mil) in fixed increments
the label template.
Cell Whether to round up, down, or to the nearest dpi Nearest
Width when printing to a device with a different resolution Up
Round from the resolution specified in the label template. Down
Symbol The number of rows and columns in the symbol. For Auto
Size more information, see the "Symbol Size" section Square Form: 10x10 to
following this table. 144x144
Note: This value limits Max Chars. Rectangular Form: 8x18
to 16x48
Error The level of error checking and correction employed ECC 0
Correction in the symbol. ECC 50
Note: The current DataMatrix standard ECC 80
requires the use of ECC 200. ECC 100
ECC 140
ECC 200 (recommended)
Square Form
Rectangular Form
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Note: Composite barcodes have a 2D portion followed by a linear portion. In the
barcode data, the 2D portion appears first and is followed by a composite delimiter
(|) and then the linear portion.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Property Description Values
Current When used with the structured append format, the position of the 0-8
Symbol symbol in a set.
Mode Modes 0 and 1 are part of the original MaxiCode specification and 0
are now considered obsolete. 1
Mode 2 is used for Domestic U.S. destinations. 2
Mode 3 is used for non U.S. destinations. 3
Mode 4 is free form data entry. 4
Mode 5, if supported by the device, is used for free form data entry 5
with Full Enhanced Error Correction. 6
Mode 6 is used for reader programming only.
Total When used with the structured append format, the total number of 0-8
Symbols the symbols in a set.
UPS Version 1: Implements an ANSI-compliant UPS MaxiCode format None
Compression for compressing data and increasing data storage. Version
None: No compression is performed on the data. The format of the 1
data is governed by original MaxiCode specifications and the
requirements of the printer command language.
MicroPDF417 Properties
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Tip: If the amount of data in a barcode exceeds the usable space, adjust the
Columns, the Security Level, or both.
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Property Description Values
Cell Width The width of the barcode cell Thousandths of an inch
(module). The range of values (mil) in fixed increments
available varies with the
Document DPI of the label
template.
Cell Width Round Whether to round up, down, or Nearest
to the nearest dpi when printing Up
to a device with a different Down
resolution from the resolution
specified in the label template.
Encoding Mode The type of information l Byte: 8-bit bytes
encoded in the symbol. (binary).
l Alpha: Uppercase
alphanumeric
characters and the
symbols $, %, *,
+, -, /, :, period,
and space.
l Numeric:
Numeric digits
15% error
correction.
l Q: Approximately
25% error
correction.
l H: Approximately
30% error
correction.
For more information about encoding QR Codes, see the QR Code entry listed in "External
Links" on page 1645.
UPC-A, UPC-E, and Composite Properties
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
Note: If using UPC-E, provide data on which zero suppression has already been
performed.
United States Postal Service (USPS) Intelligent Mail is a suite of barcode symbologies.
l For Intelligent Mail barcodes (IMb) for mailpieces (letters, cards, and flats), use the
USPS Intelligent Mail symbology.
l For Intelligent Mail Tray barcodes, use either Code 128 symbology with Start Code C or
Interleaved 2 of 5 symbology.
l For Intelligent Mail Container barcodes, use the GS1-128 symbology with Start Code C or
B.
l For Intelligent Mail Package barcodes (IMpb), use the GS1-128 symbology with Start
Code C.
The USPS Intelligent Mail barcode for mailpieces is a 4-state barcode that consists of 65 bars
that can encode up to 31 digits. The following information can be included:
l Barcode Identifier
l Service Type Identifier (STID)
l Serial Number
The USPS Intelligent Mail symbology in Spectrum supports all formats for Intelligent Mail
barcodes for mailpieces. Those formats include using a 6-digit Mailer Identifier, a 9-digit Mailer
Identifier, or the Origin IMb Tracing Intelligent Mail Barcode Format.
For more information about encoding USPS Intelligent Mail barcodes, see the USPS entry listed
in "External Links" on page 1645.
Using Images
Images can be used as background, to add brand information, or to help identify a product
associated with a label template.
Add an Image
You can add a Variable Image field to a label so that a specific image can be selected at print
time. The path to the actual image in Spectrum can be provided by entering data into a prompt,
by retrieving the path from a database, or by generating the path using a formula or script.
To add a placeholder for an image to a label so that the actual image can be selected at print time,
use this procedure.
1. From the Images list in the Library, drag Variable Image to the Label view. A
placeholder envelope appears for the image.
2. Expand the Data Sources pane and configure a data source to determine which of
several images should be displayed. The data source must return the full path to an image
in Library.
Note: If the image that you want to use is not listed in the Library, see
"Import a New Image" on page 97.
3. Drag the data source to the image placeholder in the Label view. In the Properties pane,
the data source name is displayed in the Data Ref property for the image.
4. To specify a default image to appear in case the data source does not return a value, click
next to the Default Value property, and then select an image file.
Note: If the data source returns a value, the Default Value will not be
displayed even if the value returned by the data source is not valid.
Tip: The option selected for Design Data controls what data is used in
fields when previewed, printed, or displayed in Design. Either default
data1, placeholder data2, or data from a live data set3 can be used. For
more information, see "Select Data to Display in Design" on page 63.
5. Configure other "Image Properties" on page 233.
Example: Using a Prompt and a Formula to Select an Image
Create a label template that allows a Data Provider 4 to enter a hazard code into a form and uses
a Formula data source to produce a label displaying an image based on the code entered.
1. In Design, create a label template, and add a Prompt to the Form view.
a. For Field Name, enter Hazard.
b. For Prompt, enter Hazard Classification (C, F, N, O, or T).
c. For Chars Per Line, select 1.
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
4Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Image Properties
Note: A Field Name, Data Ref, or Input Data Ref can include letters and
numbers. Additionally, the following characters are permitted but cannot begin the
name: hyphens, underscores, and periods.
Tip: Properties for positioning an image relative to the envelope of that field are
listed in the Image section, while those for positioning an image relative to the
label or the form are listed in the Arrange section.
Name and Data
Property Description
Field The identifier of the image in the label template, form, or reusable object.
Name
Data Ref Data Reference. The data source used to provide a path to an image in
Spectrum.
Tip: By default, Data Ref fields are case sensitive. If the label
template is intended for use with an SAP BC-XOM integration
or an SAP RFC integration, use only uppercase text in the Data
Ref field.
Default Path in Spectrum to a default image for the field. If the field is populated by a
Value Data Ref that returns a null value or has not yet received data, this value is
used.
Tip: For a variable image, browse to select an image.
Image
Property Description
Lock Whether to use the latest version of the image or a specific version of the
Version image.
If cleared, then the latest version of the image is used.
If selected, then the specified version of the image is used.
Note: This property is not available for variable images.
Lock Whether to make the proportions between the height and width of the
Aspect image fixed.
Ratio
Property Description
Resizing Whether the displayed size of the image can be changed. You can use this
Method option to display images used for variable image with consistent dimensions.
None: The displayed size of the image cannot be changed. For a variable
image that is larger than the envelope, the image extends beyond the
envelope when printed.
Fit to Envelope: The image can be resized either by dragging a handle or by
changing the Width and Height. For variable images, each image will be
displayed with the specified dimensions.
Note: This property is displayed only for images in Label
view. Changing the displayed size does not alter the original
image in the library.
Dither What dithering method to apply to the image when printed on a label or
Method displayed in a form. If the image has greater resolution or color depth than
the printer or display supports, dithering may provide a smoother
representation of the image. The original image is not altered.
None: The image is not dithered.
Floyd-Steinberg: Floyd-Steinberg dithering is applied to the image. If this
method is applied to a color image, the image is displayed in gray scale.
Ordered: Ordered dithering is applied to the image. If this method is
applied to a color image, the image is displayed in gray scale.
Horizontal Whether the image is left aligned, horizontally centered, or right aligned
Alignment within the envelope.
: Align to left edge of envelope.
: Align to horizontal center of envelope.
: Align to right edge of envelope.
Note: This property is available only for variable images.
Vertical Whether the image is aligned to the top edge, vertical center, or bottom
Alignment edge of the envelope.
: Align to top edge of envelope.
: Align to vertical center of envelope.
: Align to bottom edge of envelope.
Note: This property is available only for variable images.
Arrange
Property Description
Left The distance from the left edge of the image to the left edge of the label or
form. The value is dependent on the unit of measure for the label template.
Property Description
Top The distance from the top edge of the image to the top of the label or form.
The value is dependent on the unit of measure for the label template.
Center X The distance from the middle of the image to the left edge of the label or
form. The value is dependent on the unit of measure for the label template.
Center Y The distance from the middle of the image to the top of the label or form.
The value is dependent on the unit of measure for the label template.
Width The horizontal span of the image. The value is dependent on the unit of
measure for the label template.
Height The vertical span of the image. The value is dependent on the unit of
measure for the label template.
Rotation The angle of the image in relation to the printed label. The value is in
degrees.
Printing Whether the image appears on the printed label.
Field Note: This property is only displayed for images in Label view.
Lock If selected, no changes can be made to the properties of the field, and the
Field field cannot be moved or deleted. The order of the field relative to other
fields in the label template can be changed regardless of whether the field is
locked.
Note: This feature can be used to prevent accidental changes to
fields. It does not prevent other Document Designers from
unlocking a field.
Using Shapes
Shapes include lines, circles, and rectangles and can be used to separate sections of a label
template, or to emphasize information.
Add Shapes
From the Shapes list in the Library, click and drag Circle to the Label or Form view.
Add a Box
From the Shapes list in the Library, click and drag Box to the Label or Form view.
Add a Line
From the Shapes list in the Library, click and drag Line to the Label or Form view.
Shape Properties
Shapes in label templatessuch as Circles, Boxes, and Lineshave the following properties.
Note: A Field Name, Data Ref, or Input Data Ref can include letters and
numbers. Additionally, the following characters are permitted but cannot begin the
name: hyphens, underscores, and periods.
Name and Data
Shapes Where
Property Description
Available
Field The identifier of the shape in the label template, form, All
Name or reusable object.
Arrange
Shapes
Property Description Where
Available
Left The distance from the left edge of the shape to the left edge of the All
label. The value is dependent on the unit of measure for the label
template.
Top The distance from the top edge of the shape to the top of the All
label. The value is dependent on the unit of measure for the label
template.
Center X The distance from the middle of the shape to the left edge of the All
label. The value is dependent on the unit of measure for the label
template.
Center Y The distance from the middle of the shape to the top of the label. All
The value is dependent on the unit of measure for the label
template.
Width The horizontal span of the shape. The value is dependent on the Circle
unit of measure for the label template. Box
Height The vertical span of the shape. The value is dependent on the unit Circle
of measure for the label template. Box
Length The span of the line. Line
Rotation The angle of the shape in relation to the printed label. The value is All
in degrees.
Printing Whether the object appears on the printed label. All (Label
Field view
only)
Shapes
Property Description Where
Available
Lock If selected, no changes can be made to the properties of the field, All
Field and the field cannot be moved or deleted. The order of the field
relative to other fields in the label template can be changed
regardless of whether the field is locked.
Note: This feature can be used to prevent accidental
changes to fields. It does not prevent other
Document Designers from unlocking a field.
Appearance
Shapes
Property Description Where
Available
Thickness The width of the line. The value is dependent on the unit of Line
measure for the label template.
Border The thickness of the line that forms the shape. The value is Circle
dependent on the unit of measure for the label template. Box
Border The color of the line that forms the shape. You can select a Circle
Color color or enter a hexadecimal RGB color value. Box
Tip: To swap the Border Color and the Fill
Color, click .
Shapes
Property Description Where
Available
Fill Whether the specified Fill Color is used within the shape. Circle
No Fill: The area within the shape has a transparent Box
background and the Fill Color is not used.
Solid Fill: The area within the shape is the color specified by
Fill Color.
Note: If a reusable object is changed, label templates, forms, and reusable objects
to which it was added before the change was made are not affected.
Tip: For information about creating reusable objects, see "Create a Reusable
Object" on page 95.
By adding a reusable object to a label template, a form, or another reusable object, you can
include all of the components of a label template that are part of that reusable object.
Tip: For information about creating reusable objects, see "Create a Reusable
Object" on page 95.
Using Forms
You can configure a form to accept data entry from a Data Provider 1. A form is included as part
of a label template or a reusable object, but can also be created as a separate object.
You can configure the loading of a data entry form to act as a trigger for a query of a data service
associated with a Database data source or an Alternate data source.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
You can configure the loading of a data entry form to act as a trigger 1 to run a data source. A
Database data source 2 or an Alternate data source 3 associated with the data service must
already exist.
Tip: If you have not yet created the data source for which the loading of this form
should act as a trigger, you can select the trigger when you create the data source
instead. For more information, see "Create a Database Data Source" on page 309 or
"Create an Alternate Data Source" on page 318.
To configure the loading of a form to act as a trigger, use this procedure.
1. For a label template or a reusable object, if both the Label view and the Form view are
displayed, click the Form view.
2. In the Properties pane, expand the Triggers section and click Select a Trigger.
3. In the Data Source Selector dialog box, click the data source for which the loading of
the form should act as a trigger, and then click OK.
4. If the form acts as a trigger for more than one data source and the order in which the data
sources are run relative to each other is important, then you must configure values for
trigger priority 4 for these triggers. To assign trigger priorities, do the following:
a. In the Triggers section of the Properties pane, double-click a data source.
b. In the Database Data Source or Alternate Data Source dialog box, click Next
twice.
c. In the list of triggers, enter a value for Trigger Priority for the form. When these
triggers cause the data services to run, the data source with the lower value for
Trigger Priority is run first.
Tip: Trigger priorities are compared only if the triggers have the
same trigger source, trigger event, and trigger key (if any). For
example, if a data source has both a button and a prompt that act as
triggers, their Trigger Priority values are not compared to each
other.
d. Click OK.
e. Repeat for each data source listed in the Triggers section.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2A connection to a database that acts as a data source and can serve as the data ref for a document field. A Database data source
is associated with a Database data service.
3A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
4The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Design Page
Click Design at the top of the LoftwareSpectrum window to display options for creating and
configuring a label template, form, layout, reusable object, or application.
When a label template 1 or a reusable object is open, you can see both the Label view and
Form view of the label template. When a form that is not associated with a label template is
open, you see only a Form view.
l The Label view of a label template or reusable object shows the design for printed labels
produced from a label template and optionally allows you to associate a layout with the
label template.
Note: The impact of character-level formatting is not displayed in Design.
You can determine whether a Character-Level format source has been
applied to a text field by clicking the text field and viewing the Properties
pane. View the Format Sources section for a list of the format sources
applied to the text field. Also, the impact of character-level formatting is
displayed in Print when previewing a label.
The Form view of a label template, reusable object, or form shows the design for data
l
entry forms produced from a label template. If a user acting as a Data Provider 2 enters
data in Print, they do so by using the data entry form produced by a label template.
A layout3 has only one view, which shows the slots for labels on a page 4.
Document Object Name
The name of each label template or other object currently open in Design appears on a tab
above the label template. An asterisk next to the name indicates that the label template or other
object has unsaved changes. Also, you can move the mouse pointer over the tab to display the
file path of the object.
If the active label template, form, layout, reusable object, or application is version-controlled,
the version number of the version displayed is shown at the bottom of the editing pane as the
Version. A lock indicates that the label template or other object is version-controlled and that
you are viewing a checked-in version.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3An item that defines an organizational structure for printing multiple labels by using the same label template.
4In relation to media, the organization of labels specified by a layout. In relation to the Spectrum user interface, a top-level tab.
For more information, see "Working in a Version-Controlled Environment " on page 79.
Design Data
The source of data displayed in Design is shown at the bottom of the editing pane when a label
template or a layout is displayed. This option affects what is displayed in the Label view in
Design, as well as what is displayed when you preview or print a label in Design. More
specifically, this option affects what is displayed in text fields, barcode fields, and variable image
fields.
l Default Value: The values specified in the Default Value property for each field are
used.
l Placeholder: The data used for each field is placeholder data1 provided by Spectrum.
l Live Data Set: If configured, a snapshot of live data obtained from a Database data
source, an Alternate data source, or a Date/Time data source is used. You can also add
entries to the data set manually.
For more information, see "Select Data to Display in Design" on page 63.
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
Toolbar
Command Description
Icon
New Label Open the Create Label dialog box, which allows
you to create a label template and configure
properties for a printed label, such as the height
and width.
New Form Create and open a form that is not associated with a
label template.
New Create and open a layout.
Layout
New Image Import a new image into the Spectrum library so
that it can be used in label templates.
Note: An image that will be used
only as part of a Variable Image may
be saved to any folder in Spectrum.
Otherwise, for an image to be
available to add to a label template,
you must save it to the
Images\User Images folder, the
Images\Stock Images folder, or a
subfolder of one of those folders.
New Create and open a reusable object. As with a label
Reusable template, you can add fields to a reusable object
Object and save it. You can add content from a reusable
object to label templates, forms, or reusable
objects.
New Create and open an application in which you can
Application design a flow of work that transitions among
multiple forms.
Open Open the Open dialog box, which lets you select
an existing object to open.
Close Close the active object .
Toolbar
Command Description
Icon
Save As Open the Save As dialog box, which lets you save
the active object under a different name and in a
particular folder. The folder can be an existing
folder, or you can create a new folder.
The Add Folder button allows you to create a
subfolder in the selected folder. Clicking this
button displays the Add New Folder dialog box,
allowing you to enter a folder name and description
and to specify whether version control is turned on
or off for any object in the new folder.
Note: You cannot change the
Version Control setting after you
save the folder.
The new object is displayed in the editor.
Export Export an object to a separate file outside of
Spectrum.
Tip: You can use this capability to
transfer a label template from one
instance of Spectrum to another.
Import Import an object that was previously exported to a
separate file outside of Spectrum.
Design Print a sample label using the current label
Print template and the device connection displayed in
the menu bar.
Note: The icon button for this
command is displayed in the menu
bar and is near the rightmost edge of
the window.
Design Display a preview of the label generated by using
Preview the current label template. The preview is
displayed in a separate window.
Note: The icon button for this
command is displayed in the menu
bar and is near the rightmost edge of
the window.
Toolbar
Command Description
Icon
Version Save the current version of the object and make
Control > this the object available for publication or for
Check In others to check out. Checking in creates a version
that can no longer be altered.
Available only for an object that is in a version-
controlled folder and only to the user who checked
out or has taken control of the object .
Version Create a new, editable version of the object ,
Control > increment the minor version number. Other users
Check Out cannot change the object or view the version that
you have created until it is checked in.
Available only for an object that is in a version-
controlled folder and is checked in.
Version Undo any changes made since the object was most
Control > recently checked out, and then check it in. The
Undo checked out version is discarded and the version
Check Out number is decremented to that of the previous
version.
Available only for an object that is in a version-
controlled folder.
Version Check in and create a new published version of the
Control > object, incrementing the major version number and
Publish setting the minor version number to zero.
Available only for an object in a version-controlled
folder. Available only to users with Publish (PB)
permission for Documents.
Toolbar
Command Description
Icon
Version Delete the published version1 with the highest
Control > version number. The next latest version that
Undo remains may be a minor version.
Publish WARNING: If you have already
initiated a print job using the
published version or have used or
link to that version, you may get
unexpected results.
Available only for an object in a version-controlled
folder. Available only to users with Publish (PB)
permission for Documents and only if the current
version of the object is a published version.
Workflow Open the Select a Workflow Template dialog
>Start box, which allows you to select a workflow for
Workflow tracking and managing modifications to the label
template.
Workflow View the details of the current step of the
>View workflow that the label is in.
Current
StepDetails
Edit Menu Commands
Toolbar
Command Description
Icon
Undo Reverse the most recent action on a label template,
form, or reusable object.
Redo Reapply the previously undone action on a label
template, form, or reusable object.
Cut Remove a selected item from a label template,
form, or reusable object and place it into the
clipboard.
Copy Create a duplicate of a selected item and place it
into the clipboard.
Paste Place an item from the clipboard onto a selected
label template, form, or reusable object.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
Toolbar
Command Description
Icon
Delete Remove a selected element from a label template,
form, or reusable object.
Select All Select all fields in the current view (Label view or
Form view) so that you can cut, copy, paste, or
delete them.
View Menu Commands
Toolbar
Command Description Options
Icon
Label View Display the Label view in the full
window.
Form View Display the Form view in the full
window.
Split Changes the arrangement of the label Horizontally
Screen template, form, or reusable object Vertically
views displayed.
Grid Display an overlay grid on the label
template, form, or reusable object to
assist with aligning objects. The dots
or lines of the grid are not displayed in
printed labels or in the forms
displayed to Data Providers. The type
of grid can be configured under
Options > Grid Settings.
Zoom Change the magnification level at 200%
which the label template, form, or 150%
reusable object is displayed. 125%
100%
75%
50%
Position Menu Commands
Toolbar
Command Description
Icon
Align > Left For a selected object, align its left edge to
the left of the label template.
For two or more selected objects, line up
their left edges.
Toolbar
Command Description
Icon
Align > Center For a selected object, align its horizontal
center to the center of the label template.
For two or more selected objects, line up
their horizontal centers.
Align > Right For a selected object, align its right edge to
the right of the label template.
For two or more selected objects, line up
their right edges.
Align > Top For a selected object, align its top edge to
the top of the label template.
For two or more selected objects, line up
their top edges.
Align > Middle For a selected object, align its vertical
midpoint to the middle of the label template.
For two or more selected objects, line up
their vertical midpoints.
Align > Bottom For a selected object, align its bottom edge
to the bottom of the label template.
For two or more selected objects, line up
their bottom edges.
Distribute >
Horizontally
Distribute >
Vertically
Rotate >
Clockwise
Rotate >
Counterclockwise
Order > Bring
Forward
Order > Bring to
Front
Order > Send
Backward
Order > Send to
Back
Options Menu Commands
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
2A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Menu
Bar Command Description
Icon
View Job View information about your recent printing. The job
Status ID and time stamp are displayed in the menu bar as a
link. You can click the link to display additional
information in Status. This option is displayed only
if you recently printed a sample label in Design.
Browse Browse to select the device connection to use for
Devices previewing and printing labels from Design. A
device may be a physical printer, device queue, or
other target for output, such as an image file or a
PDF file.
Menu
Bar Command Description
Icon
Design Print a sample label using the current label template
Print and the device connection displayed in the menu bar.
Note: You must save the label template
before you can print.
1For each field, the value specified in the Default Value property for that field.
2For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
3A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
4For each field, the value specified in the Default Value property for that field.
5For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
6A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Library
Types of fields and objects that can be added to a label template or a reusable object are
displayed in the Library pane in the left column. When you click one of these items in the
library, an example of that type item is displayed in the preview box at the bottom of the pane.
Text
Name Description
FixedText Text that does not change for each printed label or each time
a form is displayed.
VariableText Text that may change for each printed label or each time a
form is displayed.
Text Box Text that may change for each printed label.
Controls
Name Description
Button A field in the Form that can allow Data Providers to select
information from a data source. For types of data sources that
accept a trigger 1, a button can be associated with the data source
so that an action is performed when a Data Provider clicks the
button.
Check A field in the Form that can allow Data Providers to select
Box information from a data source. For types of data sources that
accept a trigger 2, a check box can be associated with the data
source so that an action is performed if a Data Provider has
selected the check box.
Drop- A field in the Form that can allow Data Providers to select
Down information from a data source. For types of data sources that
List accept a trigger 3, a drop-down list can be associated with the data
source so that an action is performed if a Data Provider has
selected a particular item in the list.
Device A field in the Form that allows Data Providers to select a device to
Selector be used when printing.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
3A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
Name Description
Folder A field in the Form that allows Data Providers to select a folder.
Selector
Label A field in the Form that allows Data Providers to select a label.
Selector
Radio A field in the Form that can allow Data Providers to select
Button information from a data source. For types of data sources that
Group accept a trigger, a radio button group can be associated with the
data source so that an action is performed if a Data Provider has
selected a particular radio button.
Prompt Field in the Form that allows Data Providers to enter data. For
types of data sources that accept a trigger 1, a prompt can be
associated the data source so that an action is performed after a
Data Provider enters text into the prompt.
Tip: For most on-demand data entry, a Prompt field
is recommended. However, a Text Box Prompt field
is appropriate for situations in which Data Providers
are expected to retrieve lengthy data from a database
and then manipulate the data retrieved.
User A field in the Form that allows Data Providers to select a user.
Selector Example
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
Name Description
Text A field in the Form that allows Data Providers to enter data. For
Box types of data sources that accept a trigger 1, a Text Box Prompt
Prompt can be associated the data source so that an action is performed
after a Data Provider enters text into the prompt.
Tip: For most on-demand data entry, a Prompt field
is recommended. However, a Text Box Prompt field
is appropriate for situations in which Data Providers
are expected to retrieve lengthy data from a database
and then manipulate the data retrieved.
Shapes
You can add barcodes to labels. A list of the supported barcode symbology is displayed in
Spectrum.
Images
You can search the Library and view an example any type of field or object that you select.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2An item that can contain components of a label and a form so that you can incorporate them into labels and forms efficiently and
consistently.
Data Sources
The Data Sources pane is displayed in the left column when a label template, form, or reusable
object is displayed. It is initially collapsed near the bottom of the left column. Click the title bar
for Data Sources to expand the pane.
Use this pane to manage label data sources such as Data Entry, Database, Date/Time, Formula,
Increment/Decrement, and Script data sources. For more information, see "Configuring Label
Data Sources" on page 305.
Buttons in the Data Sources pane
1A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Format Sources
The Format Sources pane is displayed in the left column when a label template or a reusable
object is displayed. It is initially collapsed at the bottom of the left column. Click the title bar
for Format Sources to expand the pane.
Use this pane to manage Character-Level format sources, which allow you to format spans of
text within a Fixed Text object or a Variable Text object. For more information, see " Character-
Level Format Source Properties" on page 431.
Note: Character-level formatting is supported for TrueType fonts only. Also,
you cannot use a Character-Level format source to format the human readable text
associated with a barcode or to format fields in the data entry form of a label
template.
Buttons in the Format Sources pane
Form Rules
The Form Rules pane is displayed in the left column when a form or an application is displayed.
It is initially collapsed near the bottom of the left column. Click the title bar for Form Rules to
expand the pane.
Use this pane to manage form rules such as Electronic Signature, Job Request, Map Operations,
and Static form rules. For more information, see "Form Rules Reference" on page 405.
Buttons in the Form Rules pane
Properties
The Properties pane is displayed in the right column. If the right column is collapsed, click the
arrow button at the top of the column to expand it. If the Properties pane is collapsed, click the
Properties title bar to expand it.
Note: When a label template, form, or reusable object is displayed, the name of the
view (Label or Form) or the field you have selected appears near the top of the
Properties pane. You can select other fields by name from the drop-down list, or
you can click a field in the Label view or Form view to select it. When a layout is
displayed, all properties are always displayed in the Properties pane. When an
application is displayed, initially the application-level properties are displayed.
When you click a form within an application, the form-level properties are
displayed.
Use this pane to view and change the following:
l "Label Template Properties" on page 273
l "Form Properties" on page 284
Tip: If you are viewing a label template that was migrated from a Loftware Print
Server (LPS) environment, a flag icon is displayed in the Migrated property for
each field. You can click the icon to display information about any migration issues
related to that field. To display a report of all migration issues for the label
template, click the Label view and then click the icon in the Migrated property.
You can remove the icons by clicking the Clear All Flags button in the Migrated
property. Also, if LPS-Style Font Rendering was turned on when the label template
was migrated, then a notice to that effect is displayed in the Properties pane. For
more information, see "Work with a Migrated Label Template" on page 119.
The Field Tabbing Order pane is displayed in the right column when viewing a label template,
form, or reusable object. If the pane is collapsed, click the Field Tabbing Order title bar to
expand the pane.
Use this pane to rearrange the order of input fields for users printing labels on demand. For more
information, see "Change the Field Tabbing Order" on page 139.
The Label Specific Options pane or Layout Specific Options pane is displayed in the right
column when viewing a label template or a layout. If the pane is collapsed, click the Label
Specific Options title bar or Layout Specific Options title bar to expand the pane.
Use this pane to customize device-specific options for an individual label template or layout. For
situations in which a label may be printed to more than one family or model of device, you can
create multiple configurations of Label Specific Options.
Tip: To configure baseline device-specific options for all label templates, use Device
Management.
Note: Label Specific Options cannot be included in a reusable object, and the
Label Specific Options pane is not displayed when editing a reusable object.
Tags
The Tags pane is displayed in the right column when viewing an application, business rule, data
service, device group, facility, form, image, integration, label template, layout, process, remote
site, reusable object, user, or workflow template. If the pane is collapsed, click the Tags title
bar to expand the pane.
You can categorize an application, business rule, data service, device group, facility, form, image,
integration, label template, layout, process, remote site, reusable object, user, or workflow
template by assigning tags to it. Each tag has a category and a value. For a version-controlled
object, tags cannot be changed in a previously checked-in version.
Buttons in the Tags pane
Data Sets
The Data Sets pane is displayed in the right column when viewing a label template. If the pane
is collapsed, click the Data Sets title bar to expand the pane.
You can use a data set to store a snapshot of live data retrieved from a Database data source. You
can use this data to produce a more realistic view when designing a label template. You can also
manually alter data map entries in a data set.
Buttons in the Data Sets pane
1A name (key) and value pair in the data map for a job.
Top Bar
Name Description
Username Displays the user name with which you are logged on.
Help Open the SpectrumUserGuide.
About View the version of Spectrum that you are using.
Logout Close Spectrum and sign out.
The following are properties that describe a label template 1. They include the Label2
properties and the Form 3 properties. The Label properties and the Form properties for a label
template are configured independently. The Trigger properties are part of the Form properties.
Tip: If you are viewing a label template that was migrated from a Loftware Print
Server (LPS) environment, a flag icon is displayed in the Migrated property for
each field. You can click the icon to display information about any migration issues
related to that field. To display a report of all migration issues for the label
template, click the Label view and then click the icon in the Migrated property.
You can remove the icons by clicking the Clear All Flags button in the Migrated
property. Also, if LPS-Style Font Rendering was turned on when the label template
was migrated, then a notice to that effect is displayed in the Properties pane. For
more information, see "Work with a Migrated Label Template" on page 119.
Label Properties
Label properties affect printed labels produced by using the label template. These properties
can be configured in the Create Label dialog box when you create the label template. In an
existing label template, these properties can be displayed by clicking the Label tab at the
bottom of the window or clicking the label background to select the Label view, and can be
configured in the Properties pane.
Property Description Options Notes
Font The type of fonts to be used on the label. TrueType
Category DPL4
IPL5
ZPL II6
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2The output or part of the output from a job, either printed on physical media or stored in a digital file.
3The interface for data entry by a data provider. A form is a separate object in Spectrum, but it can be combined with a label
template so that the form serves as the Form view for the label template.
4Datamax-O'Neil Programming Language, a printer control language.
5Intermec Printer Language, a printer control language.
6Zebra Programming Language II, a printer control language.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
An event such as the clicking of a button or the submission of text input via a prompt can
serve as a trigger 1 to run a label data source, form rule, or business rule. The loading of a
form or an application can also serve as a trigger to run a rule.
When you configure a form, you can add or remove triggers that use the loading of that form
as a trigger source. Because triggers do not have names, in the Properties pane for a form, a
trigger is identified by the name of the data source for which the loading of the form acts as a
trigger.
Note: The Triggers section is displayed when the Form properties are
displayed.
Property Description Options
Data Sources A list of label data sources for which the loading of this form Select a
acts as a trigger to run the data source. This list can include Trigger
Alternate data sources and Database data sources.
To select a trigger, click Select a Trigger, select the data
source to be run when the form is loaded, and click OK.
To remove a trigger, select the data source that the trigger
runs, and click .
To edit the properties of a data source acting as a trigger,
double-click the name of the data source.
Important! If the form acts as a trigger for more
than one data source and the order in which the
data sources are queried relative to each other is
important, then you must configure priorities for
these triggers. For more information, see
"Configure a Form to Run a Data Source" on
page 244.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
Layout Properties
The following are properties that describe a layout1 and affect how any label template 2 to
which the layout is attached is printed. These properties can be configured on the Properties
pane when the layout is opened for editing.
Note: A version-controlled layout must be published before it can be attached to a
label template.
1An item that defines an organizational structure for printing multiple labels by using the same label template.
2A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
Form Properties
The following are properties that describe an on-screen data entry form. Unlike the properties
for a complete label template, they include only the Form 1 properties, of which the Trigger
properties are a subset. The properties of a form can be displayed by clicking the Form canvas
when editing a form or by clicking the icon for a form in an application, and they can be
configured in the Properties pane.
Note: For information about the properties of a form that are displayed when
editing an application, see " Form Properties in an Application" on page 302.
Form Properties
The following properties are displayed when editing a form but not when editing an
application.
Property Description Options Notes
Font The type of fonts to be used in the data TrueType This field is
Category entry form. read-only.
Size The dimensions of the data entry form inLetter This property
Design. Legal does not limit
A4 the dimensions
2x2 of the data
4x4 entry form
4x6 display area in
Custom Print.
Width The horizontal span of the form. If the Millimeters (up To view or
Size is set to Custom, you can manually to 356mm) configure the
configure this value. Centimeters (up unit of
to 36cm) measurement,
Inches (up to in the menu bar
14in) select Options
> Units.
Height The vertical span of the form. If the Size Millimeters (up To view or
is set to Custom, you can manually to 3810mm) configure the
configure this value. Centimeters (up unit of
to 381cm) measurement,
Inches (up to in the menu bar
150in) select Options
> Units.
1The interface for data entry by a data provider. A form is a separate object in Spectrum, but it can be combined with a label
template so that the form serves as the Form view for the label template.
Note: The Triggers section is displayed when the Form properties are
displayed.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
Stock Layouts
Although you can create your own layouts, the following stock layouts are provided in the
Document Templates\Stock Layouts folder in Spectrum. You can use a stock layout as is, or
if you are creating a custom layout you can use a stock layout as a starting point by opening the
stock layout in Design and clicking File > Save As.
Layout Stock Labels Labels
Label Size Notes
Name Size Across Down
4x4-2x2 4"4" 2"2" 2 labels 2 labels 4 labels per page.
4x4-3x3 4"4" 1"1" 3 labels 3 labels 9 labels per page.
8x11-1x2 8"11" 4-3/4"7- 1 label 2 labels 2 labels per page.
3/4" Compatible with Avery
#6876.
8x11-2x2 8"11" 3-3/4"4- 2 labels 2 labels 4 labels per page.
3/4" Compatible with Avery
#6878.
8x11-2x3 8"11" 3"3-3/4" 2 labels 3 labels 6 labels per page.
Compatible with Avery
#6874.
8x11-2x5 8"11" 2"4" 2 labels 5 labels 10 labels per page.
Compatible with Avery
#15563.
8x11-2x6 8"11" 1-1/4"3- 2 labels 6 labels 12 labels per page.
3/4" Compatible with Avery
#6879.
8x11-2x10 8"11" 1"4" 2 labels 10 labels 20 labels per page.
Compatible with Avery
#5161.
8x11-3x10 8"11" 1"2-5/8" 3 labels 10 labels 30 labels per page.
Compatible with Avery
#8860.
8x11-4x20 8"11" 0.5"1.75" 4 labels 20 labels 80 labels per page.
Compatible with Avery
#18167.
You can use Application Architect to create custom front-end interfaces that empower end users
to make the decisions necessary to print what they need without deviating from a standard
procedure. For example, you could provide a flow of interactive forms that allows a Data
Provider 3 working in Print to select whether to print a kitting list, a production label, or a
shipping label, and then provide the information necessary to print the specified type of
document.
When using Application Architect, you create an application that connects individual forms by
using transitions. In an application, a trigger 4 can be used to run a form rule 5 or a business
rule 6. In a form, a trigger can also be used to run a data source. For data in a form, you can
manually enter a value, or you can use a data map entry 7.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
2An object in Spectrum that binds together all of the components to be used when responding to a print request. Among other
items, those components may include a label template, layout, device, and a business rule to be used when processing a print
request. Processes are created in the Process Design page.
3Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
4A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
5An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
6A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
7A name (key) and value pair in the data map for a job.
Create an Application
Loftware Spectrum's Application Architect1 allows you to design complex, intelligent data
entry form experiences for Data Providers2. You can link individual forms together and
configure transitions that guide users from one form to another in response to their input or
other conditions.
Before You Begin: You should create the forms, business rules, and processes
that you intend to use with an application before you create the application. For
more information, see "Create a Form" on page 94 and "Designing Business Rules
with the Configurator" on page 437.
To create a new application, use this procedure.
1. In Design, click File > New > Application or click the New Application button
in the toolbar.
2. In the Forms pane, click the form that you want to be displayed to a Data Provider 3
when the application is initially loaded in Print, and then drag and drop the form into the
application.
3. Drag and drop additional forms into the application.
Note: You should not add more than one instance of a specific form to the
application.
4. Click the application canvas4 to display the properties of the application.
5. In the Properties pane, review the selection for Start Form and ensure that it is the
form that should initially be displayed when the application is loaded.
Best Practice
Save your application immediately after creation.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
4The background of an application on which you can add forms and transitions. Clicking the application canvas displays the
properties of the application.
Next Steps
If the application includes more than one form, you should create transitions to allow Data
Providers to navigate from one form to the next by performing an action. For more information,
see "Create a Transition Between Forms" on page 295.
If you want to cause a form rule or a business rule to run when an application or a particular form
is loaded, when a Data Provider performs an action, or when other circumstances occur, see
"Create a Trigger to Run a Rule" on page 297.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
2A name (key) and value pair in the data map for a job.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Whenever the trigger event occurs, the form rule or business rule is run.
Tip: For more information about triggers, see "Triggers in Design" on page 419.
Before You Begin: You should create the forms, business rules, and processes
that you intend to use with an application before you create the application. For
more information, see "Create a Form" on page 94 and "Designing Business Rules
with the Configurator" on page 437.
To configure a trigger in an application to run a rule, use this procedure.
1. In Design, open an application.
2. Configure the rule to run either when the application is loaded, when a specific form is
loaded, or when a control in a form is clicked, changed, or used to commit text in a
prompt.
n If you want a rule to run when the application is initially loaded, click the
application canvas5, and then in the Triggers section click Select a Trigger.
n If you want a rule to run when a specific form is initially loaded, click the form,
and then in the Properties pane click Select a Trigger. In the Select a Trigger
dialog box, the form is selected as the Trigger Source by default.
n If you want a rule to run when a control in a form is clicked or changed or when
text is committed to a prompt, click the form, and then in the Properties pane
click Select a Trigger. In the Select a Trigger dialog box, for Trigger Source
select a control to associate with the trigger.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
3Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
4A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
5The background of an application on which you can add forms and transitions. Clicking the application canvas displays the
properties of the application.
3. In the Select a Trigger dialog box, use the Trigger Type to specify whether you want
to run a form rule or a business rule.
n If you have selected Form Rule as the trigger type, select a form rule to be run
when the trigger event occurs.
n If you have selected Business Rule as the trigger type, click the browse button
and select a business rule to be run when the trigger event occurs. For Event
Name, enter the name of an event as specified in the XML of the business rule.
When the trigger event occurs, the business rule is run as if this event has
occurred.
4. Click OK.
n If the rule is configured to run when the application is loaded, then the trigger is
displayed in the Triggers list in the Properties pane if you click the application
canvas.
n If the rule is configured to run when a form is loaded, then the trigger is displayed
in the Triggers list in the Properties pane if you click the form.
n If the rule is configured to run when a control in a form is clicked, is changed, or
is used to commit text, then the trigger is displayed in the Triggers list in the
Properties pane if you click the form.
5. Click File > Save or click the Save button to save the application.
Application Properties
The following topics describe the properties of applications and forms when configuring an
application by using Loftware Spectrum's Application Architect1.
l "Application Properties" on page 300
l " Form Properties in an Application" on page 302
Note: For information about the properties of a form that are displayed when
editing a form, see "Form Properties" on page 284.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
Application Properties
The following are properties of an application created by using Loftware Spectrum's Application
Architect1.
Settings
Property Description Options
Start The form that is initially A list of forms that have been associated
Form displayed when the application with the application.
is run. Note: An application should
not include more than one
instance of a specific form.
Triggers
An event such as the clicking of a button or the submission of text input via a prompt can
serve as a trigger 2 to run a label data source, form rule, or business rule. The loading of a
form or an application can also serve as a trigger to run a rule.
When you configure an application, you can add or remove triggers that use the loading of
that application as a trigger source. Because triggers do not have names, in the Properties
pane for an application, a trigger is identified by the name of the rule for which the loading of
the application acts as a trigger.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
The following are properties that describe an on-screen data entry form. Unlike the properties
for a complete label template, they include only the Form 1 properties, of which the Trigger
properties are a subset. The properties of a form can be displayed by clicking the Form canvas
when editing a form or by clicking the icon for a form in an application, and they can be
configured in the Properties pane.
The following are the properties of a form that are displayed when viewing a form within an
application.
Note: For information about the properties of a form that are displayed when
editing a form, see "Form Properties" on page 284.
Triggers
An event such as the clicking of a button or the submission of text input via a prompt can
serve as a trigger 2 to run a label data source, form rule, or business rule. The loading of a
form or an application can also serve as a trigger to run a rule.
When you configure a form, you can add or remove triggers that use the loading of that form
as a trigger source. Because triggers do not have names, in the Properties pane for a form, a
trigger is identified by the name of the rule for which the loading of the form acts as a trigger.
1The interface for data entry by a data provider. A form is a separate object in Spectrum, but it can be combined with a label
template so that the form serves as the Form view for the label template.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
Events
Property Description Options
Events A list of events that cause the application to transition from :
the selected form to another form if one of the events Connect
occurs. If the trigger event occurs to the control serving as a Mode is
trigger source, then the application transitions to the next disabled,
form. so you
Note: Only controls that exist in the form are cannot add
included in the list of available trigger sources. transitions.
Only events appropriate to the selected trigger Click to
source are included in the list of available enable
trigger events. Connect
Mode.
Tip: If is displayed in the toolbar, then :
you are in Connect Mode and you can add a Connect
transition by clicking the form from which a Mode is
transition should begin and then the form to enabled,
which the transition should lead. so you can
For more information, see "Create a Transition Between add
Forms" on page 295. transitions.
Click to
disable
Connect
Mode.
:
Delete the
selected
transition.
Double-
click a
transition:
Configure
the
selected
transition.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
To use the data provided via a Data Entry data source, you can use that Data Entry data source
as a data ref in another field such as a Variable Text, Barcode, or Image field, or you can use it as
a data ref in a Formula data source.
To associate a Data Entry data source with a Variable Text field, use the following procedure.
1. Drag Variable Text from the Library to the Label view to create a Variable Text
field.
2. Expand the Data Sources pane, and expand the list of Data Entry data sources.
3. Drag a Data Entry data source to the Variable Text field. A green plus icon
appears when your pointer is over a field that can accept the data source. Alternatively,
you can enter the name of the Data Entry data source as the Data Ref property of a
Variable Text field. When the label is printed, that Variable Text field will display the data
received from the Data Entry data source.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
6. Edit the data service configuration. Depending on how the data service is configured, you
may be able to edit some of the configuration information or data service parameters that
were provided by the Data Service Administrator.
a. If text boxes are displayed, you can enter either static values or data refs using the
format ${<DataRef>}. After you begin typing in the field, a message may be
displayed about the type of data required until you finish entering a value or data
ref. For information about default parameters, see " Configuration Parameters for
JDBC Data Services" on page 1020.
b. If a Result Map is displayed, you can configure which columns are displayed to a
Data Provider 1. For more information, see " Configuration Parameters for JDBC
Data Services" on page 1020.
c. For Auto Select Single Row, specify how the data service should respond if only
a single row is returned by the SQL Query.
n If this option is selected, the Data Source Results dialog box is not
displayed and the data from the row is inserted into the form automatically.
n If this option is not selected, the Data Source Results dialog box is
displayed and the Data Provider must manually click the row to select it.
Note: If you select this option, it is recommended that you
include at least one Prompt field in the Form that is
populated by the results to provide confirmation to the Data
Provider that the query was executed.
d. When you have finished configuring the data service parameters, click Next.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
7. If the label template must support on-demand printing, click Add Trigger and configure
at least one trigger 1 that a Data Provider 2 can use to run the SQL Query on the
database. Repeat for additional triggers if needed.
Tip: If you have not yet created the field that should serve as the Trigger
Source 3, you can skip this step and select the trigger when you create the
field.
nTo query the data source when a button is clicked, for Trigger Source select the
name of a Button field and for Trigger Event select onClick.
n To query the data source after submitting data at a prompt, for Trigger Source
select the name of a Prompt field and for Trigger Event select onCommit.
n To query the data source when the form is loaded, for Trigger Source select
/Body and for Trigger Event select onLoad.
8. If the label template must support both on-demand printing and integrations, click Add
Trigger again.
Note: If the label template is not required to support on-demand printing,
then no trigger is needed.
a. For Trigger Source, select Do Not Run.
b. For Trigger Event, select Enqueue.
c. For Trigger Key, enter the name of a data map entry 4 that will manage whether
the data source should be run. It is recommended that this data map entry not be
used for any other purpose. The value of this data map entry does not affect how
it functions as a trigger key.
n When the trigger key exists in the datamap, the data source will not run.
This is appropriate when using the label template with an integration. This
is also appropriate if you need to prevent the data source from running in
some situations when using on-demand printing.
n When the trigger key does not exist in the datamap, the data source is run.
This is appropriate when using the label template for on-demand printing.
Important! For a File Drop integration, if the data map entry
specified for Trigger Key does not exist in the drop file, then the
data source is queried and the first row of data is automatically
returned. This occurs regardless of whether Auto Select First Row
and Auto Select Single Row Result are selected.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
4A name (key) and value pair in the data map for a job.
9. Assigning values for Trigger Priority 1 is necessary only if more than one data source in a
label template includes a trigger with the same trigger source, trigger event, and trigger
key (if any). In that situation, you can assign different values for Trigger Priority for
these otherwise identical triggers, and the data source with the lower value for Trigger
Priority is run first.
10. Click OK.
In the Data Sources pane, the Database section now lists the Database data source that you
created. Expand the Database data source to display the names of columns from the database
that you can use as data sources. You can drag a column data source onto a field in the Label
view such as a Variable Text or Barcode field to assign the data source as the data ref for that
field, or you can enter a data ref manually. You can create a formula and select the data refs for
the database columns for use in the formula.
Note: The format by which to refer to a database column data source is
/<DatabaseDataSourceName>/<ColumnName>.
Important! If you have not yet created at least one trigger for the data source, you
can do so by using the Triggers section in the Properties pane when you
configure a control, a form, or the Form view of a label template that will serve as
the Trigger Source 2. For more information, see "Adding Controls" on page 153,
"Label Template Properties" on page 273, or "Form Properties" on page 284.
1The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
2A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
To create a Formula data source, a Document Designer 1 can use the following procedure.
1. In Design, open an existing label template or create a new label template.
2. Expand the Data Sources pane.
3. Click Formula, and click . The Formula Data Source dialog box is displayed.
4. For Data Source Name, enter a name for the label data source.
Note: The name of a label data source can include letters and numbers.
Additionally, the following characters are permitted but cannot begin or end
the name: hyphens, underscores, and periods.
5. Create the formula in the Formula section using the available "Formula Data Source
Operations and Functions" on page 394.
Verify the Formula Syntax
Click Verify Formula to check the syntax of your formula. The results of the check appear in
the Verify Results field.
Note: The Verify Formula function only checks the syntax of your formula. It
does not check the validity of references or data.
Click the Clear Formula button to remove the text from the Formula field.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
You can create a Formula data source to manipulate data obtained via a Prompt in the Form view
and then display the result of the formula in a Variable Text field or a Barcode field in the Label
view. When creating the Formula data source, you select the Data Entry data source associated
with the Prompt as a data ref that you incorporate into the formula. After you have created the
Formula data source, you drag it onto the Variable Text field or Barcode field so that the
Formula data source serves as the data ref for that field. You can use the same Formula data
source as the data ref for multiple fields, such as a barcode and human readable text.
Best Practice
Giving your fields meaningful names makes it easier to work with formulas.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
7. If the label template must support on-demand printing, click Add Trigger and configure
at least one trigger 1 that a Data Provider 2 can use to run the data source. Repeat for
additional triggers if needed.
Tip: If you have not yet created the field that should serve as the Trigger
Source 3, you can skip this step and select the trigger when you create the
field.
nTo run the data source when a button is clicked, for Trigger Source select the
name of a Button field and for Trigger Event select onClick.
n To run the data source after submitting data at a prompt, for Trigger Source
select the name of a Prompt field and for Trigger Event select onCommit.
n To run the data source when the form is loaded, for Trigger Source select
/Body and for Trigger Event select onLoad.
8. If the label template must support both on-demand printing and integrations, click Add
Trigger again.
Note: If the label template is not required to support on-demand printing,
then no trigger is needed.
a. For Trigger Source, select Do Not Run.
b. For Trigger Event, select Enqueue.
c. For Trigger Key, enter the name of a data map entry 4 that will manage whether
the data source should be run. It is recommended that this data map entry not be
used for any other purpose. The value of this data map entry does not affect how
it functions as a trigger key.
n When the trigger key exists in the datamap, the data source will not run.
This is appropriate when using the label template with an integration. This
is also appropriate if you need to prevent the data source from running in
some situations when using on-demand printing.
n When the trigger key does not exist in the datamap, the data source is run.
This is appropriate when using the label template for on-demand printing.
Important! For a File Drop integration, if the data map entry
specified for Trigger Key does not exist in the drop file, then the
data source is queried and the first row of data is automatically
returned. This occurs regardless of whether Auto Select First Row
and Auto Select Single Row Result are selected.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
4A name (key) and value pair in the data map for a job.
9.
Assigning values for Trigger Priority 1 is necessary only if more than one data source in a
label template includes a trigger with the same trigger source, trigger event, and trigger
key (if any). In that situation, you can assign different values for Trigger Priority for
these otherwise identical triggers, and the data source with the lower value for Trigger
Priority is run first.
10. Click OK.
In the Data Sources pane, the Alternate section now lists the Alternate data source that you
created. You can drag an Alternate data source onto a field in the Label view such as a Variable
Text field to assign the data source as the data ref for that field, or you can enter a data ref
manually. You can create a formula and select the data refs for the Alternate data source for use
in the formula.
Important! If you have not yet created at least one trigger for the data source, you
can do so by using the Triggers section in the Properties pane when you
configure a control, a form, or the Form view of a label template that will serve as
the Trigger Source 2. For more information, see "Adding Controls" on page 153,
"Label Template Properties" on page 273, or "Form Properties" on page 284.
1The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
2A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
Using Scripts
A Script data source can be used to provide data for Variable Text, Text Box, Barcode, and
Variable Image fields.
Field Properties
You can change a field's characteristics such as font type, boldness, size, rotation, and visibility
based upon data included in the data stream, database fields on the label, or other data sources.
Example
A script can cause the font size of a field to change based on the number of
characters supplied for the field.
Math and Logic
A script can be used to perform if-then-else, mathematical, and Boolean logic on data elements
included in the data stream, database fields on the label, or other data sources.
Formula Functions
Use fields, operations, and functions also supported by the Formula data source.
Note: While the JavaScript environment provides some functionality similar to the
Formula data source, the syntax is different.
Considerations
l Because the value of a scripted field can depend on the values of other fields on the label,
you must first resolve the values of the script's dependencies.
l While Design allows different units of measure, Script data sources only support field
positions configured in inches.
l As a safeguard to protect against infinite looping, a script that has not finished running
after 10 seconds is terminated.
l Business rules can be used to perform the same tasks as Script data sources. Also, you
can incorporate scripts into business rules. For more information, see "Implementing
Business Logic" on page 1181.
Built-in Variables
A script includes contains the following standard variables.
l FORMAT: The label template containing all the fields that can be added to a canvas in
Design.
l MAP: The datamap, a repository for all data for use when responding to a print request.
l LOG: A class for logging information to the server log file.
Names to Avoid
There are a few functions and methods that are provided by default in scripts. Therefore, when
creating a script, these names should not be defined in the script.
l FORMAT
l MAP
l LOG
l context (A scripting engine object for internal use.)
l getField
Built-in Classes
The following classes are provided to all scripts. These classes allow you to manipulate the label
template fields and the data map entries, as well as to log information to the main Spectrum log
file.
l FORMAT
l MAP
l LOG
l FieldFormat: The standard field has a single format object that defines the location and
other details of the field on the label. A barcode field can have two formats, one for the
barcode and one for the human readable text.
MAP
The datamap is a repository for all data for use when responding to a print request. Each data
map entry is composed of a name (key) and a value. The datamap is referenced and
updated by all data sources. The datamap is then provided to the script for additional
modification.
The data in the datamap can be provided to the script in two ways.
l Method 1: A variable is added to the script and converted when the script is run. This
method provides the data as read only, and the method is resolved before the script runs.
This is the same method used with the Formula data source.
l Method 2: Retrieve the data from the datamap during the runtime of the script. The
datamap is able to be read and be written to at runtime, so you can change, add, or
remove any data map entry in the datamap.
LOG
The LOG variable is used to log messages to the Spectrum log. By default, the Spectrum log is
located in <SPECTRUM_HOME>\product\logs. This log is managed by using the same
mechanisms that are used for all logging on the SpectrumApplicationServer. The tag for the
logger is scriptLogger.
Script Example
LOG.debug("found key for value 1");
LOG.error(" an error occurred");
LOG.info("applying value");
LOG.warn(" an unexpected value was detected.");
To create a Script data source, a Document Designer 1 can use the following procedure.
1. In Design, open an existing label template or create a new label template.
2. Expand the Data Sources pane.
3. Click Script, and click . The Script Data Source dialog box is displayed.
4. Enter a name for the label data source in the Data Source Name field.
Note: The name of a label data source can include letters and numbers.
Additionally, the following characters are permitted but cannot begin or end
the name: hyphens, underscores, and periods.
5. Enter or paste your script in the Script field.
Enter Fields, Data References, and Database Columns
Use the Fields, Data Ref List, and Database Columns to enter fields and data references in a
script. Using these fields enters each reference with the proper syntax.
Verify the Script
To check the syntax of your script, click Verify Script.
If the syntax is correct, the Verify Results field displays Script verification completed
successfully.
If there are errors in the syntax, the Verify Results field displays the first error encountered.
For example, "Line 2: ReferenceError: x is not defined."
Clear the Script
To remove the current script from the Script field so that you can enter a different script, click
Clear Script.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Script Reference
There are script methods for accessing and managing label templates, fields, and datamap.
l "Script Methods for Label Templates (Formats)" on page 326
l "Script Methods for Fields" on page 327
l "Script Methods for Field Formats" on page 329
l "Script Methods for Shapes" on page 333
l "Script Methods for Images" on page 334
l "Script Methods for Text Fields" on page 335
l "Script Methods for Character-Level Formatting" on page 337
l "Script Methods for Barcodes" on page 347
l "Script Methods for Accessing the DataMap at Runtime" on page 343
Script Methods for Label Templates (Formats)
The following table describes the methods provided for label templates (formats).
Method Value Description
findField(String) Field Retrieve a field by using its fully-qualified name.
object Example
var field = FORMAT.findField
("/Body/Text0001");
field.setVisible=false;
findFields(String) A list Find a list of fields by using a set of criteria.
of field Operation Description
objects && Logical AND
|| Logical OR
!= Not equal
== Equal
~= Equal, ignoring case
Example
var fields = FORMAT.findFields
(type=='text');
var count = fields.size;
Example Criteria
(name=='t1' || type=='label') &&
visible!='false')
The following are the basic methods provided for all fields. Each type of field may have
additional methods provided.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set or move configure a
value for the property.
The following are basic methods provided for all field formats. Some field formats may have
additional methods.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set or move configure a
value for the property.
Method Value Description
getFormatType() String The type of the format.
Example
var type = fieldFormat.getFormatType
();
getTop() Int in The location of the top coordinate in 1/1000 of an inch at
1/1000 0 degrees rotation.
inch Example
var top = fieldFormat.getTop();
Return
Method Description Example
value
getFormatType() or "lineFormat" The type of field var type =
formatType line.type;
getThickness() or 1/1000 inch Retrieves the thickness of the line var t =
thickness line.thickness ;
setThickness(int) or n/a Sets the thickness of the line in 1/1000 of line.thickness
thickness an inch increments. = 500;
Circle Field
Method Return value Description Example
getType() or type "circle" The type of field var type = Circle.type;
Circle FieldFormat
Method Return value Description Example
getFormatType() or "circleFormat" The type of field var type = circle.type;
formatType
getThickness() or 1/1000 inch Retrieves the var t = circle.thickness ;
thickness thickness of the line
setThickness(int) or n/a Sets the thickness of circle.thickness = 500;
thickness the line in 1/1000 of
an inch increments.
isApplyBackgroundColor Boolean Retrieves the value var bc =
() specifying whether circle.applyBackgroundColor;
or applyBackgroundColor the background color
is applied or not.
setApplyBackgroundColor n/a Sets whether the circle.applyBackgroundColor
(boolean) background color = true;
or applyBackgroundColor should be applied or
not.
Script Methods for Images
Image Field
Return
Method Description Example
value
getType() or type "image" The type of the field var type = Image.type;
isMaintainAspectRatio() Boolean Retrieves the value for var ar =
or maintainAspectRatio specifying whether the image Image.maintainAspectRatio;
should maintain the aspect ratio
setMaintainAspectRatio none Sets whether to maintain aspect Image.maintainAspectRatio
(boolean) ratio or not. = false;
The following methods are provided for performing character-level formatting in fixed text and
variable text fields when using Script data sources. These methods are not supported in business
rules.
Note: Character-level formatting is supported for TrueType fonts only. Also,
you cannot use a Character-Level format source to format the human readable text
associated with a barcode or to format fields in the data entry form of a label
template.
Except where noted otherwise, each method returns a reference to the text field
being modified. This allows you to use a chaining approach. In this example, the
first eight characters are formatted with a strikethrough effect, an italic effect, and
gray text color.
var myField = getField("/Body/Text0001");
myField.addEffect("STRIKETHROUGH",0,7).addEffect("ITALIC",0,7)
.addStyle("FOREGROUND","#CCCCCC",0,7);
Tip: For more examples, see "Script Examples: Individually Format Characters
within a Field" on page 388.
Character Selection by Pattern
You can use literal text or use a regular expression as a pattern to specify text to which a style or
effect should be applied.
Important! Patterns for character-level formatting and for values returned from
data map entries are governed by the Java syntax for regular expressions.
Escape sequences are required for the following characters. Precede the character
with a backslash.
<>()[]{}|^-=+*$!?.\
By default, literal text within a pattern is case sensitive. You can make a pattern
case insensitive by beginning it with the special construct (?i). If you configure
both patterns and ranges in a Character-Level format source, ranges are resolved
before patterns.
For more information about Java syntax for regular expressions, see The Java
Tutorials: Regular Expressions on the Oracle website.
Methods Description
addEffect Apply the specified effect to characters in the text field that are specified
(effect, pattern) by the pattern.
Example
var field1=getField("/Body/Text0001");
field1.addEffect("BOLD","(?i)(Peanuts)");
field1.addEffect("BOLD","Warning");
field1.addEffect("ITALIC","Warning");
addStyle(style, Apply the specified style and value to characters in the text field that are
value, pattern) specified by the pattern.
Example
var field1=getField("/Body/Text0001");
field1.addStyle("FONT","Arial","Note");
getEffectsList Create a list of effects to be applied. You can add and remove items from
() the list by using add and delete methods for lists. Apply all effects in the
add(effect) list to characters in the text field specified by the pattern.
delete(effect) Example
addEffectMulti var field1=getField("/Body/Text0001");
(effects_list, var myList=field1.getEffectsList();
pattern)
myList.add("BOLD");
myList.add("ITALIC");
field1.addEffectMulti(myList,"Note");
Methods Description
getStyleMap() Create a map of effects and of styles and associated values. You can add
add(style,value) and remove items from the map by using add and delete methods for
delete(style) maps. For effects, specify an empty string as the value. Apply all of the
addStyleMulti styles and effects in the map to characters in the text field specified by the
(style_map, pattern.
pattern) Example
var field1=getField("/Body/Text0001");
var myStyleMap=field1.getStyleMap();
myStyleMap.add("FONT","Arial");
myStyleMap.add("SIZE","14");
myStyleMap.add("BOLD","");
field1.addStyleMulti(myStyleMap,"Note");
Character Selection by Range
You can use a numeric range of character positions within a text field to specify text to which a
style or effect should be applied.
Methods Description
addEffect Apply the specified effect to the text field beginning at the position
(effect, start, end) specified by start through the position specified by end.
Example
var field1=getField("/Body/Text0001");
field1.addEffect("BOLD",0,7);
addStyle(style, Apply the specified style and value to the text field beginning at the
value, start, end) position specified by start through the position specified by end.
Example
var field1=getField("/Body/Text0001");
field1.addStyle("SIZE","14",0,7);
getEffectsList Create a list of effects to be applied. You can add and remove items from
() the list by using add and delete methods for lists. Apply all effects in the
add(effect) list to the text field beginning at the position specified by start through the
delete(effect) position specified by end.
addEffectMulti Example
(effects_list, var field1=getField("/Body/Text0001");
start, end) var myList=field1.getEffectsList();
myList.add("ITALIC");
myList.add("STRIKETHROUGH");
field1.addEffectMulti(myList,0,7);
Methods Description
getStyleMap() Create a map of effects and of styles and associated values. You can add
add(style,value) and remove items from the map by using add and delete methods for
delete(style) maps. For effects, specify an empty string as the value. Apply all of the
addStyleMulti styles and effects to the text field beginning at the position specified by
(style_map, start, start through the position specified by end.
end) Example
var field1=getField("/Body/Text0001");
var myStyleMap=field1.getStyleMap();
myStyleMap.add("FONT","Arial");
myStyleMap.add("SIZE","14");
myStyleMap.add("BOLD","");
field1.addStyleMulti(myStyleMap,0,7);
Clearing Character-Level Formatting
You can remove character-level formatting from a text field.
Tip: To remove a style or an effect from a style map or an effects list, use delete
(style) or delete(effect).
Methods Description
clearStyles() Remove all styles and effects from the text field.
Example
var field1=getField("/Body/Text0001");
...
field1.clearStyles();
removeEffect(effect) Remove all occurrences of the specified effect from the text field.
Example
var field1=getField("/Body/Text0001");
field1.addEffect("ITALIC","Note");
...
field1.removeEffect("ITALIC");
removeStyle(style) Remove all occurrences of the specified style from the text field.
Example
var field1=getField("/Body/Text0001");
field1.addStyle("SIZE","14","Note");
...
field1.removeStyle("SIZE");
Arguments
The arguments used in the preceding methods include effects, styles, and other arguments.
Effects
Effects are string values and are not case sensitive.
Note: If multiple effects (such as BOLD and ITALIC) are applied to a the same
character, all of the effects are used.
Effect Description
BOLD Apply a bold, italic, strikethrough, subscript, superscript, or
ITALIC underline formatting effect to the text.
STRIKETHROUGH
SUBSCRIPT
SUPERSCRIPT
UNDERLINE
Styles and Values
Styles and values are string values. Styles are not case sensitive.
Note: If more than one value for a style (such as 12 and 14 for SIZE) is applied to
the same character, the last value applied is used.
"GRAY"
"#CCCCCC"
FONT Apply the specified font The name of the font.
to the text. Example
"Arial"
SIZE Apply the specified font The font size in points. Note that this is a
size to the text. string value.
Example
"12"
Other Arguments
The following is additional detail about the other arguments described in the methods for
character-level formatting. The argument names shown here are merely placeholders for
whatever variables you define.
The data available or generated when LoftwareSpectrum responds to a print request is stored
in a datamap. Each data map entry consists of a name (also called a key) and a value. You can use
a Script data source to access and alter data in the datamap after a print request is submitted but
before printing occurs. By using a Script data source to access the datamap, you can check for
the existence of a data map entry by using its fully-qualified name, retrieve the value of a data
map entry, change the value of a data map entry, and add new data map entries.
Note: The datamap can also be accessed and modified by using a business rule. If
a business rule and a Script data source both modify the datamap, the Script data
source is evaluated last.
You can access and modify data in the datamap by using the following methods:
Note: In the following methods, Name must be the fully-qualified name of a data
map entry, such as the name of a field or a data source. NewValue must be a text
string.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
Return
Method Description
Value
keyExists(Name) Boolean Determines whether the datamap contains is an entry for the
specified name.
l true: A data map entry with this name exists.
Example
var dataMapEntryExists = MAP.keyExists
("/Body/Text0001");
putValue(Name, NewValue)Adds a data map entry or updates the data map entry associated
with the specified name by changing the value of that data map
entry to the new value.
Example
MAP.putValue("/Body/Text0001", "New Field
Value");
getValue(Name) Node Retrieves the value of the specified data map entry interpreted
as a node value. Null is returned if the name does not exist.
Example
var nodeVal = MAP.getValue
("/Body/Text0001");
getNodeType() String If a data map entry has been retrieved by using getValue, this
method retrieves the data type of the data map entry.
Example
var nodeVal = MAP.getValue
("/Body/Text0001");
nodeVal.getNodeType();
getStringValue String Retrieves the value of the specified data map entry interpreted
(Name) as a string value. Null is returned if the name does not exist.
Example
var stringVal = MAP.getStringValue
("/Body/Text0001");
Return
Method Description
Value
getIntegerValue Integer Retrieves the value of the specified data map entry interpreted
(Name) as an integer value. Null is returned if the name does not exist.
Example
var integerVal = MAP.getIntegerValue
("/Body/Text0001");
getDoubleValue Double Retrieves the value of the specified data map entry interpreted
(Name) as a double-length integer value. Null is returned if the name
does not exist.
Example
var doubleVal = MAP.getDoubleValue
("/Body/Text0001");
getDateValue Date Retrieves the value of the specified data map entry interpreted
(Name) as a date value. Null is returned if the name does not exist.
This method is useful for taking a binary Date value from a
Database data source, and converting it to a human readable
date value. This method should only be called using a data
source name parameter that has the Date data type and has data
values that are binary.
By default, the returned date is in the following format:
EEE MMM dd hh:mm:ss z yyyy
The following is an example of a date using this format:
Mon Mar 26 00:00:00 EDT 2012
For more information, see "Date/Time Data Source Formats"
on page 391.
Example
var dateVal = MAP.getDateValue
("/Body/Text0001");
getBinaryValue Byte Retrieves the value of the specified data map entry interpreted
(Name) array as a byte array value. Null is returned if the name does not exist.
Example
var binaryVal = MAP.getBinaryValue
("/Body/Text0001");
Return
Method Description
Value
getBooleanValue Boolean Retrieves the value of the specified data map entry interpreted
(Name) as a Boolean value. Null is returned if the name does not exist.
Example
var booleanVal = MAP.getBooleanValue
("/Body/Text0001");
setValue If a data map entry has been retrieved by using getValue, this
(NewValue) method changes the value of the data map entry to the specified
value.
Example
var nodeVal = MAP.getValue
("/Body/Text0001");
nodeVal.setValue("New Field Value");
The following are the barcode symbologies supported by LoftwareSpectrum, linked to the
script methods available for each symbology.
Common Methods
EAN/UPC
Barcodes using these symbologies are typically used on items to be scanned at point-of-sale.
Symbology
EAN-8
EAN-13
UPC-A
UPC-E
Composite
Composite barcodes have a 2D portion followed by a linear portion. In the barcode data, the 2D
portion appears first and is followed by a composite delimiter (|) and then the linear portion.
Within a Formula data source, the composite delimiter can be represented by the COMPDELIM
() function.
In addition to the Max Chars property, Spectrum also displays 2D Max Chars and Linear
Max Chars for composite barcodes objects in Design. Otherwise, a composite barcode uses
the same symbology as the related type of linear barcode.
Symbology
EAN-8 Composite
EAN-13 Composite
GS1 DataBar Composite
GS1-128 Composite
UPC-A Composite
UPC-E Composite
Common Script Methods for Barcodes
The following methods are common to all barcode symbologies. For symbology-specific
methods, see "Script Methods for Barcodes" on page 347.
Barcode Field
Method Return value or type Description
getType() "barcode" Retrieve the type of field.
getBarcodeFormatProxy()FieldFormat Retrieve the barcode field format.
getFormatProxy() FieldFormat Retrieve the human readable field format.
getMaxLength() int Retrieve the maximum number of characters.
setMaxLength(int) Set the maximum number of characters.
getPadding() String Retrieve the padding style.
setPadding(String) Set the padding style to use. The following
values are accepted:
n Leading zeros
n Leading spaces
n Trailing spaces
n Center with spaces
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Code 39 Full ASCII is also known as Code 39 Extended (Ext).
Methods Description Values
getBarHeight() The height of the bars in the barcode. Thousandths
setBarHeight(long) of an inch
(mil)
getCheckDigit() Add an optional check digit to the barcode. None
setCheckDigit(String) The listed check digits are optional forms of Mod 43
getUserGeneratedCheckDigit the selected symbology (For Example: Code User Mod
() 39 or Code 39 with check). 43
Special purpose check digits can be added to
the barcode using the Formula data source.
Note: When a form that includes
a check digit is used, the Data
Provider 1 is not alerted if the
check digit fails.
getDataIdentifier() Data entered in this field will be encoded in
setDataIdentifier(String) the barcode but will not print in the human
readable text field for the barcode.
Data Identifiers are used to help the scanner
identify the field.
For Example
For an AIAG label, a barcode
with a data identifier of P
contains a part number, a data
identifier of Q signifies a
quantity field and a data
identifier of S signifies a serial
number field.
getHumanReadable() Whether a text representation of the barcode None
setHumanReadable(String) is printed. freeFloating
The human readable text can be positioned
anywhere on the label (free floating).
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Code 93 Full ASCII is also known as Code 93 Extended (Ext).
Methods Description Values
getBarHeight() The height of the bars in the barcode. Thousandths
setBarHeight(long) of an inch
(mil)
getDataIdentifier() Data entered in this field will be encoded in the barcode
setDataIdentifier but will not print in the human readable text field for the
(String) barcode.
Data Identifiers are used to help the scanner identify the
field.
For Example
For an AIAG label, a barcode with a data
identifier of P contains a part number, a
data identifier of Q signifies a quantity field
and a data identifier of S signifies a serial
number field.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Note: For GS1-128 and GS1-128 Composite barcodes, the first two digits in the
data provided are assumed to be the application identifier. Optionally, these digits
may be enclosed in parentheses.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Methods Description Values
getXdim() The width of the barcode cell (module). The Thousandths of an
setXdim(float) range of values available varies with the inch (mil)
Document DPI of the label template.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Methods Description Values
getCellWidth() The width of the barcode cell (module). Thousandths of an inch
setCellWidth(int) The range of values available varies with (mil)
the Document DPI of the label template.
getSymbolSize() The number of rows and columns in the Auto
setSymbolSize symbol. For more information, see the Square Form: 10x10 to
(String) "Symbol Size" section following this table. 144x144
Note: This value limits Max Rectangular Form: 8x18 to
Chars. 16x48
data ref points, and you cannot explicitly define the data type in Spectrum. If the data can be
alphanumeric or binary, you should reduce the value of Max Chars to the limit shown in the
following table to ensure that data incorporated into the symbol is not unexpectedly truncated.
Note: If you select Auto for the Symbol Size, the value of Max Chars is not
changed automatically. However, with Auto selected, you can configure Max Chars
to any value up to 3116, which is the number of numeric characters that can be
represented when using a Symbol Size of 144x144.
Square Form
Rectangular Form
The following properties are specific to this barcode symbology. Additionally, barcode fields
using this symbology have properties that are common to all barcode fields.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Methods Description Values
getBarHeight() The height of the bars in the barcode. Thousandths of
setBarHeight(long) an inch (mil)
getCheckDigit() Add an optional check digit to the None
setCheckDigit(String) barcode. Mod 10
getUserGeneratedCheckDigit The listed check digits are optional User Mod 10
() forms of the selected symbology. (Interleaved 2
Special purpose check digits can be of 5 only)
added to the barcode using the
Formula data source.
Note: Specifying a value
other than None
decreases Max Chars to
allow a character for the
check digit, which is not
counted toward the value
of Max Chars.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Methods Description Values
getCurrentSymbol When used with the structured append format, the position of 0-8
() the symbol in a set.
setCurrentSymbol
(int)
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Tip: If the amount of data in a barcode exceeds the usable space, adjust the
Columns, the Security Level, or both.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Methods Description Values
getCellWidth() The width of the barcode cell Thousandths of an inch
setCellWidth(int) (module). The range of values (mil)
available varies with the
Document DPI of the label
template.
getDataEncodingMode() The type of information l Byte: 8-bit bytes
Alphanumeric
characters and the
symbols $, %, *, +,
-, /, :, period,
comma, and space.
l Numeric: Numeric
digits
getErrorCorrection() The level of error checking l L: Approximately
15% error
correction.
l Q: Approximately
25% error
correction.
l H: Approximately
30% error
correction.
For more information about encoding QR Codes, see the QR Code entry listed in "External
Links" on page 1645.
UPC-A, UPC-E, and Composite Script Methods
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
Note: If using UPC-E, provide data on which zero suppression has already been
performed.
getXdim() The width of the module (narrow bar) of the barcode. Thousandths
setXdim(float) The range of values available varies with the Document of an inch
DPI of the label template. (mil)
USPS Intelligent Mail Methods
United States Postal Service (USPS) Intelligent Mail is a suite of barcode symbologies.
l For Intelligent Mail barcodes (IMb) for mailpieces (letters, cards, and flats), use the
USPS Intelligent Mail symbology.
l For Intelligent Mail Tray barcodes, use either Code 128 symbology with Start Code C or
Interleaved 2 of 5 symbology.
l For Intelligent Mail Container barcodes, use the GS1-128 symbology with Start Code C or
B.
l For Intelligent Mail Package barcodes (IMpb), use the GS1-128 symbology with Start
Code C.
The USPS Intelligent Mail barcode for mailpieces is a 4-state barcode that consists of 65 bars
that can encode up to 31 digits. The following information can be included:
l Barcode Identifier
l Service Type Identifier (STID)
l Mailer Identifier (MID)
l Serial Number
The USPS Intelligent Mail symbology in Spectrum supports all formats for Intelligent Mail
barcodes for mailpieces. Those formats include using a 6-digit Mailer Identifier, a 9-digit Mailer
Identifier, or the Origin IMb Tracing Intelligent Mail Barcode Format.
For more information about encoding USPS Intelligent Mail barcodes, see the USPS entry listed
in "External Links" on page 1645.
The following script methods are specific to this barcode symbology. Additionally, you can use
the "Common Script Methods for Barcodes" on page 350.
Tip: Script methods with names beginning with get or is retrieve the current value
for a property. Script methods with names beginning with set configure a value for
the property.
You can insert Lower ASCII characters into a script by using an escape sequence around the
hexadecimal value of the ASCII character. In this context, lower ASCII is the first 31 characters
of the ASCII character set.
Note: Loftware converts Upper ASCII characters, so they can be included in a
script without the escape sequence.
l Begin the escape sequence: #x
l End the escape sequence: ;
Script Examples
The following are examples of ways that you can use Script data sources.
l "Script Examples: Examine and Modify Data to be Used at Print Time" on page 375
l "Script Examples: Move Objects" on page 380
l "Script Examples: Search for Fields" on page 383
l "Script Examples: Change Rotation" on page 385
l "Script Examples: Turn Printing of Fields On or Off" on page 386
l "Script Examples: Calculate the Check Digit" on page 386
l "Script Examples: Change the Format of a Date" on page 387
l "Script Examples: Individually Format Characters within a Field" on page 388
Script Examples: Examine and Modify Data to be Used at Print Time
At print time, the data used for a field is usually pulled from the datamap (MAP). This is done
by getting the name (key) for the data map entry from the field (getFullyQualifiedKey) and then
doing a lookup in the datamap with this key to get the value. If the key does not exist, then the
default value is used. If you configure the data for the field explicitly by calling setData, then
what is configured will be used and the datamap and default data will not be checked.
Refer to the following sample fields and data for the examples that follow.
FORMAT
Field Name FQN Default data
Field1 Text0001 /Body/Text0001 Unset
Field2 Text0002 /Body/Text0002 "text2DefaultData"
Field3 Text0003 /groupedField Unset
Field4 Text0004 /groupedField Unset
Field5 Text0005 /groupedField Unset
MAP
Name (Key) Value
/Body/Text0001 "value1"
/groupedField" "value2"
Examine the Field Data Value to Print
The value to be used at print time for a field is based on conditions.
Field data has not been set and there is an entry in the datamap with the fully-qualified name of
the field will result in the value for the entry in the map to be used.
var field1 = getField("/Body/Text0001");
var dataToBePrintedForField1 =
field1.getPrintingValue(MAP);
Field data has not been set and no entry exists in the map for the fully-qualified name will result
in the default value for the field to be used.
var field1 = getField("/Body/Text0002");
var dataToBePrintedForField2 =
field1.getPrintingValue(MAP);
field1.setData("explicitValue");
var isSetNow = field1.isDataSet(); -- isSetNow will
return true, because the script data has been set.
field1.clearData()
var isSetAfterClear = field1.isDataSet(); --
isSetAfterClear will return false, because the script
data has been cleared.
field1.setData(null);
var isSetWithNull = field1.isDataSet(); -- isSetWithNull
will return true, because the script data has been set.
Override the field data for multiple fields with the same data reference
This example expects that there are a few fields on the label that have the same fully qualified
name. Refer to Text0003, Text0004, Text0005 in the example data above.
var field3 = getField("/Body/Text0003");
var fqn = field3.getFullyQualifiedName(); -- the FQN in
this case will be "/groupedField"
MAP.setValueForKey(fqn,"myglobalvalue");
var dataToBePrintedForField3 =
field3.getPrintingValue(MAP);
var dataToBePrintedForField4 =
field4.getPrintingValue(MAP);
var dataToBePrintedForField5 =
field5.getPrintingValue(MAP);
var dataToBePrintedForField2 =
field2.getPrintingValue(MAP);
l moveGroupFromTopLeft
Take care when using these calls where the human readable is not in close proximity to the
barcode as the call may have unintended consequences.
The standard move and rotate commands shown in the first examples will only move and rotate
the barcode itself.
Barcodes can only be rotated at 0, 90, 180, and 270 degrees. A barcode's human readable fields
can be rotated all 360 degrees.
Move a Field by its Center Position
The following example moves a box from its current position to centered at 3 inch by 3 inch on
the label.
var box = getField("/Body/Box0001");
box.moveFromCenter(3000,3000);
To move the box relative to its current position by some distance use the following:
var box = getField("/Body/Box0001");
box.moveFromCenter
(box.centerX+500,box.centerY+250);
This moves the box .5 inch to the right and .25 inch lower on the label from its current position.
Move and Rotate a Field by its Center Position
The following example moves a box from its current position to centered at 3 inch by 3 inch on
the label, and then rotates it to the 90 degree position. If it is already at 90 degrees then no
rotation will be applied.
var box = getField("/Body/Box0001");
box.moveFromCenter(3000,3000,90);
If you want to move it relative to its current position by some delta then do the following:
var box = getField("/Body/Box0001");
box.moveFromTopLeft
(box.rotatedTop+250,box.rotatedLeft+500);
This moves the box a half an inch to the right and a inch down the label from its current
position.
Note: The top/left coordinates are based on the bounding rectangle of the field.
This means that if the field is rotated at an "off-axis position (NOT one of 0, 90,
180 or 270) then the top/left position will be a point that is not on the object, but
a projection of the topmost and leftmost points of the object. For example,
consider an object rotated at 30 degrees where the leftmost corner is the
bottom/left corner and the topmost corner is the top/left corner.
Move and Rotate a Field by its Top/Left Corner Position
The following example moves a box from its current position to a position where its top left
coordinate will be at 3 by 3 on the label before rotation, and then it is rotated 90 degrees.
Unless the box is a square, the final top/left will not be at 3 by 3.
var bar1 = getField("/Body/Box0001");
bar1.moveFromTopLeft(3000,3000);
bar1.rotation=90;
To make the final top/left position of the box be 3 x 3, apply the rotation first.
var bar1 = getField("/Body/Box0001");
bar1.rotation=90;
bar1.moveFromTopLeft(3000,3000);
If you want to move it relative to its current position by some delta then do the following:
var bc = getField("/Body/Barcode0000")
bc.moveGroupFromCenter
(bc.groupCenterX+250,bc.groupCenterY+500);
var bc = getField("/Body/Barcode0000")
bc.moveGroupFromTopLeft(3000,3000);
If you want to move it relative to its current position by some delta then do the following:
var bc = getField("/Body/Barcode0000")
bc.moveGroupFromTopLeft
(bc.groupTop+250,bc.groupLeft+500);
or
bc.rotateGroup(90);
Case Sensitive
var barcode = FORMAT.findFields("type=='barcode'");
println("*** Barcode is "+barcode[0].name);
Case Insensitive
var barcode = FORMAT.findFields("type~='Barcode'");
println("***2 Barcode is "+barcode[0].name);
barcode = FORMAT.findFields("type~='BARCODE'");
println("***3 Barcode is "+barcode[0].name);
barcode = FORMAT.findFields("type~='BaRcOdE'");
println("***3 Barcode is "+barcode[0].name);
Search for fields of a specific type and name and make them invisible
var fields = FORMAT.findFields("(type=='label' ||
name=='text3') && visible=='true');
for(i=0;i<fields.length;i++){
var f = fields[i];
f.visible=false;
}";
Find all fields where the data has been set by calling setData()
var setFields = FORMAT.findFields("dataSet == 'true'");
var notSetFields = FORMAT.findFields("dataSet !=
'true'");
The variable FORMAT is available in the script. This is the top level object containing all the
fields in the label template. There is a field called rotation that allows you to change the rotation
of the label.
Note: The rotation needs to be set in 90-degree increments.
Script Example
var rotation=MAP.getStringValue
("/Body/Prompt0001");
if (rotation%90 == 0)
{
FORMAT.rotation=rotation;
}
This can be done either as a Formula or as a Label script. The example below shows it done as a
Label script. Map values are pulled to perform the calculation and then the field data member is
set at the end. This assumes that no other data source will be setting the data on this field at run
time.
Note: When a form that includes a check digit is used, the Data Provider 1 is not
alerted if the check digit fails.
To write this as a formula, remove the "var result" from the top, as it is already provided, and
return result at the bottom instead of modifying the field.
var result;
var input = new String;
var cf = ${/Body/Collection_Facility};
var cy = ${/Body/Collection_Year};
var sn = ${/Body/Seq_No};
input = cf +cy + sn;
println("cf ="+cf+" cy = "+cy+" sn = "+sn+" input =
"+input);
var ch,sum=0,charValue, isDigit, isUpperAlpha, count;
var
CharTable="0123456789ABCDEFGHIJKLMNOPQRS
TUVWXYZ*";
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
result = CharTable[charValue];
MAP. setValueForKey ("/Body/Check_
Character,result);
You can use a Script data source to convert a date value obtained from a database and processed
by LoftwareSpectrum into a human readable format suitable for printing.
For example, an Oracle database table can have a column of data type DATE. In Oracle SQLPlus
or SQL Developer, the values in this table column are displayed in a format of dd-MMM-yy.
However, when the table is used as a Database data source in LoftwareSpectrum, Spectrum
receives the date value in a special milliseconds format. By default, the Database data source
would return a value such as 13849236000000 at print time instead of a human readable date.
You can use a Script data source with MAP functions to convert the date from milliseconds
format to a human readable format appropriate for printing. In this example, the Database data
source column /DS_0001/DATE_COL is passed as a parameter to the MAP.getDateValue()
method. This method converts the milliseconds date value, such as 13849236000000, obtained
from the Database data source to a human readable format, such as Wed Nov 20 00:00:00 EST
2408.
Script Example
// Use the MAP function to change the date value from
milliseconds format to a human readable date format.
var dateVal = MAP.getDateValue("/DS_0001/DATE_
COL");
The following are some examples of configuring character-level formatting by using a Script data
source. Character-level formatting methods are not supported in business rules.
Important! Patterns for character-level formatting and for values returned from
data map entries are governed by the Java syntax for regular expressions.
Escape sequences are required for the following characters. Precede the character
with a backslash.
<>()[]{}|^-=+*$!?.\
By default, literal text within a pattern is case sensitive. You can make a pattern
case insensitive by beginning it with the special construct (?i). If you configure
both patterns and ranges in a Character-Level format source, ranges are resolved
before patterns.
For more information about Java syntax for regular expressions, see The Java
Tutorials: Regular Expressions on the Oracle website.
Example 1: Make all instances of an allergen name bold (case sensitivity)
You want all instances of the allergen name Peanuts within a text field to be bold,
regardless of case. You can accomplish this by using the following script in a Script
data source:
var field1=getField("/Body/Text0001");
field1.addEffect("BOLD","(?i)(peanuts)");
You want to format the first character in a field as bold, 16-point Letter Gothic
text. You can accomplish this by using the following script in a Script data source:
var field1=getField("/Body/Text0001");
var myStyleMap=field1.getStyleMap();
myStyleMap.add("FONT","Letter Gothic");
myStyleMap.add("SIZE","16");
myStyleMap.add("BOLD","");
field1.addStyleMulti(myStyleMap,0,0);
Tip: If you are associating a Date/Time data source with a variable text field,
ensure that the value of Max Chars (controlled by Chars Per Line and # Lines)
for the variable text field is great enough to accommodate the length of the
resulting data.
You can also include static text by enclosing it in single quotation marks. You can include
symbols such as a colon, slash, or hyphen without quotation marks.
In general, entering a single placeholder character produces a value including the minimum
number of characters required. Using repeated placeholder characters typically specifies the
minimum number of characters to use and may produce leading zeros in numeric values.
Tip: If you require a placeholder for the Julian day, Julian date, or ordinal date, use
D, which produces the day number of the year.
Number of
Placeholder Description placeholders
to use
a Period of day, such as AM or PM 1 or 2
D Day of year 1 or 3
d Day of month 1 or 2
E Day of week 1, 3, or 4
Note: Use one or three characters to produce a
three-character day abbreviation, or four
characters to produce the full name of the day.
F Day of week in month. For example, if referring to the second 1
Thursday in a month, the F placeholder would produce a
value of 2.
G Era, such as A.D. or B.C. 1
H Hour of day using 24-hour format (0-23) 1 or 2
h Hour of day using 12-hour format (1-12) 1 or 2
K Hour of day using 12-hour format(0-11) 1 or 2
k Hour of day using 24-hour format (1-24) 1 or 2
M Month of year 1, 2, 3, or 4
Note: Use one or two characters to produce the
month number, three characters to produce a
three-character abbreviation, or four characters
to produce the full name of the month.
m Minute of hour 1 or 2
S Millisecond of second 1 or 3
s Second of minute 1 or 2
u Day of week using numeric format (1-7), such as 1 1
(representing Monday).
W Week of month 1
w Week of year 1 or 2
Number of
Placeholder Description placeholders
to use
X ISO 8601 time zone, such as -04, -0400, or -04:00. 1, 2, or 3
Note: Use one character to produce a two-digit
time (hours only), two characters to produce a
four-digit time with no colon, or three
characters to produce a four-digit time including
a colon.
y Year 1, 2, or 4
Note: For a two-digit year, use two characters.
Otherwise, a four-digit year is displayed.
Z RFC 822 time zone, such as -0400. 1 or 5
z General time zone, such as Eastern Standard Time or EST. 1, 3, or 4
Note: Use one or three characters to produce a
three-character abbreviation, or four characters
to produce the full name of the time zone.
The following tables describe the operations and functions that you can use when creating
formulas.
In this table, input refers to a field name, data source, or data service parameter.
Tip: For string concatenation, use the + operator. Note that & is not a valid
concatenation operator.
l Occurrence: 1
l Direction: 0 (left
to right)
Length Returns the number of < {/Body/Text6}.length
characters in the string. input
>.length If Text6=A1BC2, then
the result is 5.
Property Description
Data Source Name The identifier assigned to the Inc/Dec data source.
Data Ref The data source used to populate a field with a value.
Definitions
Important: If the data source is populated from a Prompt, you should ensure
that the Max Length field of the data source and the Max Chars field of the
Prompt contain the same value. The Max Chars field is automatically
calculated based on the Chars Per Line and # Lines fields.
Tip: For these types of form rules, within each form rule you can create multiple
form rule entries. Each form rule entry allows you to configure one data map
entry 1 or data ref2.
Submitting Jobs
Rule Type Purpose Properties
Job Request Submit a job4 request or job preview request Job Request
to the SpectrumApplicationServer.
Note: This type of form rule is
available only in applications.
1A name (key) and value pair in the data map for a job.
2Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
3Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
4What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a Close Application form rule.
Value Description
Submit The application submits the workflow progression to the server.
Cancel The application cancels the current progression and remains in the
current step.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for an Electronic Signature form rule entry.
Important! Content in a form rule is case sensitive.
Value Description
Username Data Ref The username of the user.
Password Data Ref The password of the user generating the signature.
Domain Data Ref The domain of the user.
Action Data Ref The action being performed for this signature.
Entity Data Ref The fully qualified name to the object1 being signed.
Entity Type Data Ref The type of object being signed.
Workflow Instance Data The workflow instance ID.
Ref
Comments Data Ref The comments to attach to the signature.
Submit Status Whether the signature will have a Sign or Reject status.
Target Token Data Ref Where the token from a successful signature will be added to the
data map.
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a FileSelector form rule.
Export Export the contents of the Data Ref to the selected file.
Data Ref
A reference to the location in the datamap to import data to or to export data from.
File Filter
The type or types of files permitted to display in the dialog box for selection. If allowing
multiple file types, use a semicolon as a delimiter. If a file type is not specified, all file types are
permitted.
Example
*.xml;*.csv;*.txt;
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
Value Description
Text The file is XML,CSV, or TXT format.
Other The file is a PDF or an image such as PNG, GIF, JPG, BMP, or
PCX.
Character Encoding
The type of encoding to use when converting the file to text. The default character encoding is
UTF-8.
Note: This property is displayed only if Import is selected forOperation and
Text is selected for Type.
Post Selection Rule or Pre Selection Rule
If selected, you can configure a trigger to run a form rule 1 or a business rule 2 after (for
import) or before(for export) a Data Provider 3 selects a file to import or export.
For Trigger Type, select whether to run a Form Rule or a Business Rule after a file is
selected. If running a form rule, select the name of the form rule. If running a business rule,
select the business rule and enter an event name that is specified by the business rule.
1An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
2A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
3Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a Focus form rule.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a Hyperlink form rule.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a Job Request form rule.
Important! Content in a form rule is case sensitive.
Job Request Options
Whether to allow preview requests, print requests, or both.
Process
The name of the process4 to use for a job request.
Target Folder Data Ref
The name of the job target folder to add to the data map5. If a target folder is not specified, the
default job target folder is added.
JobID Data Ref
The name of the job ID to add to the data map.
1What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
2An object in Spectrum that binds together all of the components to be used when responding to a print request. Among other
items, those components may include a label template, layout, device, and a business rule to be used when processing a print
request. Processes are created in the Process Design page.
3Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
4An object in Spectrum that binds together all of the components to be used when responding to a print request. Among other
items, those components may include a label template, layout, device, and a business rule to be used when processing a print
request. Processes are created in the Process Design page.
5A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
1A name (key) and value pair in the data map for a job.
2A name (key) and value pair in the data map for a job.
value is STRING.
Value Description
STRING The value is a text string. Any number included is treated as text.
INTEGER The value is a signed integer value.
NUMBER The value has a signed decimal value.
BOOLEAN The value has a value of true or false.
BINARY The value is an array of bytes.
DATE The value is a time value expressed in Epoch time 1.
Merge Policy
For a form rule entry, always select the default value, mergeAll.
Action
For a form rule entry that can return a value, this property determines whether that value
remains in the datamap when the form rule entry finishes running and returns control to its
parent form rule. The default value is override.
Note: The impact of a form rule entry returning control to its parent is also
affected by Merge Policy.
Value Description
override When control is returned to the parent, the value produced by the form rule
entry is retained for the data map entry, replacing any previous value for the
data map entry.
notExists When control is returned to the parent, the value produced by the form rule
entry is retained for the data map entry only if a data map entry with that
name did not exist prior to the execution of this form rule entry. Otherwise,
the previous value for the data map entry is reinstated.
delete When control is returned to the parent, the data map entry is deleted from
the datamap.
append If the data map entry existed before the form rule entry was run, then when
control is returned to the parent the new value for the data map entry is
concatenated onto the end of the old value.
prepend If the data map entry existed before the form rule entry was run, then when
control is returned to the parent the new value for the data map entry is
concatenated onto the beginning of the old value.
1The number of seconds since 00:00:00 UTC on 1 January 1970, not including leap seconds.
Tip: If you require more complex behavior than is available using a Map
Operations form rule, consider using a business rule that includes a mapOperations
business rule component. For more information about business rules, see
"Implementing Business Logic" on page 1181.
Note: Each form rule must have a name by which it is identified, and this name
must be unique within the form in which it appears. This name can be modified in
the Data Ref field of the form rule and is displayed in the Form Rules pane after
the rule has been created. For form rules that have form rule entries, this name is
for the entire rule.
The following are the properties for a Message form rule.
Important! Content in a form rule is case sensitive.
Title Source
Whether the value in Title is literal or the reference to a data map entry.
Value Description
Literal The value in Title should be treated as a literal value and used in
its current form.
From Data Map The value in Title should be resolved to values in the datamap.
Title
The title for the pop-up dialog, or the reference to a data map entry that contains the title for the
pop-up dialog.
Message Source
Whether the value in Message is literal or the reference to a data map entry.
Value Description
Literal The value in Message should be treated as a literal value and used
in its current form.
From Data Map The value in Message should be resolved to values in the
datamap.
Message
The text for the pop-up dialog, or the reference to a data map entry that contains the text for the
pop-up dialog.
1A name (key) and value pair in the data map for a job.
2A name (key) and value pair in the data map for a job.
3The number of seconds since 00:00:00 UTC on 1 January 1970, not including leap seconds.
Triggers in Design
Loading a form, clicking a button, selecting an option from a drop-down list, or submitting text
via a prompt is an event that can serve as a trigger 1 to run a label data source 2, a form rule 3,
or a business rule 4.
In Design, you can configure triggers for Database data sources and Alternate data sources. You
can use either of the following approaches to select a trigger for a data source.
lWhile you are configuring a data source, you can configure triggers that can be used to
run the data source. This approach is convenient if you want to use an existing Button5
field, an existing Prompt6 field, a form 7, or the Form view8 of the label template as a
trigger source 9.
l While you are configuring a Button field, a Prompt field, a form, or the Form view of a
label template, you can configure that item to be a trigger source for a data source. This
approach is convenient if the data source was created before the trigger source existed, or
if you are not familiar with the name of the trigger source.
You can also configure triggers for form rules and business rules. You can use any of the
following approaches to select a trigger for a rule.
l While you are configuring an application, you can configure triggers that can be used to
run a rule. You can associate a trigger with the loading of the application or with the
loading of a specific form. This approach is convenient if you want to use an existing
form or the Form view of a label template as a trigger source.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2An item that specifies the origin of data used to fill variable fields in a label template. Types of label data sources are displayed in
the Data Sources pane in Design.
3An entry or a collection of entries that provides a form or an application with enhanced functionality. A form rule can add or change
data or print parameters, submit a print request, validate user credentials, open a label template, form, layout, image, reusable
object, or application in Design, open a URL in a web browser, or close an application. Form rules are similar to business rules, but
simpler to create. Form rules are created on the Design page and are specific to a particular application or form. Some form rules
are available only in applications.
4A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
5A type of control or document field in the data entry view of a label template or in a form that can be used to run a data source
query, a form rule, or a business rule when clicked by a Data Provider.
6A type of control or document field used to collect information from a Data Provider in the data entry view of a label template or in
a form. When a Data Provider submits data via a prompt, a data source query, a form rule, or a business rule may be run.
7The interface for data entry by a data provider. A form is a separate object in Spectrum, but it can be combined with a label
template so that the form serves as the Form view for the label template.
8The portion of a label template that includes any interface for data entry by a data provider. It can be configured in the Form view
in Design.
9A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
l While you are configuring a form, you can configure triggers that can be used to run a rule
or data source. This approach is convenient if you want to use an existing form or the
Form view of a label template as a trigger source. You can also use controls in the form,
such as Button fields and Prompt fields, as trigger sources.
l While you are configuring a control field in a form, you can configure triggers that can be
used to run a rule or data source. This approach is convenient if you want the click of a
button, the selection of an option, or the submission of text to act as the trigger to run a
form rule, business rule, or data source.
l If you design business rules by using the Configurator in Process Design, while you are
configuring a business rule you can configure triggers that can be used to run specific
component sets. For more information, see "Triggers in Configurator" on page 460.
l If you program business rules by using XML in Process Design, while you are
configuring a business rule you can configure triggers that can be used to run specific
business rule components. For more information, see "Triggers and Events" on page
1346.
In addition to being associated with a data source, form rule, or business rule, each trigger in
Design also has trigger source 1, trigger event2, trigger priority 3, and in some cases a
trigger type 4 or a trigger key 5. Triggers do not have names, so when viewing a list of triggers
associated with a particular data source, form rule, or business rule, they are differentiated by
trigger source. When viewing a list of triggers associated with a particular trigger source, they are
differentiated by data source or rule.
1A field that is used in conjunction with a trigger event to interactively run a data source, form rule, or business rule. For example, a
button that runs a query when clicked, a prompt that runs a query when submitted, or a form that runs a query when loaded.
2An event that is used in conjunction with a trigger source to run a data source, form rule, or business rule. For example, clicking a
button, entering text at a prompt, loading a form, or submitting a job.
3The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
4Whether the trigger is for a form rule, business rule, or a data source.
5The name of a data map entry used as part of a data source trigger that has a Do Not Run trigger source. If the trigger key exists
in the data map, then no trigger is permitted to run the data source. If the trigger key does not exist, then other triggers can run
the data source. In either case, the value of the data map entry is not relevant.
Trigger
Trigger
Source Description
Event
Type
Check Box onChange The onChange event occurs when the Check Box field
field specified as the Trigger Source is selected or cleared by an
interactive user in Print.
Drop- onChange The onChange event occurs when an interactive user in
Down List Print changes which option is selected in the Drop-Down
field List field that is specified as the Trigger Source.
Device onChange The onChange event occurs when an interactive user in
Selector Print selects a device by using the Device Selector field
field specified as the Trigger Source.
Folder onChange The onChange event occurs when an interactive user selects
Selector a folder by using the Folder Selector field specified as the
field Trigger Source.
Label onChange The onChange event occurs when an interactive user selects
Selector a label by using the Label Selector field specified as the
field Trigger Source.
Radio onChange The onChange event occurs when an interactive user in
Button Print changes which option is selected in the Radio Button
Group field Group field that is specified as the Trigger Source.
Prompt onCommit The onCommit event occurs when text entered in the
field Prompt field specified as the Trigger Source is submitted to
Spectrum by an interactive user in Print.
Note: After an interactive user has typed text
into the field, clicking to another field, tabbing
to another field, or pressing the Enter key
submits the text in the Prompt field to
Spectrum.
User onChange The onChange event occurs when an interactive user selects
Selector a user by using the User Selector field specified as the
field Trigger Source.
Trigger
Trigger
Source Description
Event
Type
Text Box onCommit The onCommit event occurs when text entered in the Text
Prompt Box Prompt field specified as the Trigger Source is
field submitted to Spectrum by an interactive user in Print.
Note: After an interactive user has typed text
into the field, clicking to another field, tabbing
to another field, or pressing the Enter key
submits the text in the Text Box Prompt field to
Spectrum.
Table field onDoubleClick The onDoubleClick event occurs when an interactive user in
Print double-clicks the Table field specified as the Trigger
Source.
Application onLoad The onLoad event occurs when the application specified as
the Trigger Source is loaded in Print for an interactive user.
Note: The onLoad event occurs when an
interactive user initially displays an application,
refreshes an application, or clears an application.
Form onLoad The onLoad event occurs when the form or Form view
(typically named /Body) specified as the Trigger Source is
loaded in Print for an interactive user.
Note: You cannot add form rules to the Form
view of a label template.
Trigger Trigger
Description
Source Event
Do Not Run
Label This type of trigger allows you to prevent a data source from being run
by any trigger if the data map entry 1 with the name specified as the
Trigger Key exists. If the trigger key does not exist, then other triggers
can be used to run the data source. The value of the data map entry does
not affect this behavior.
You should ensure that the trigger key exists when the data source is
run by an integration, and does not exist when the data source is run by
an interactive user. If the label template is not required to support both
on-demand printing and integrations, then this type of trigger source is
not necessary.
Important! For an integration, if the data map entry
specified for Trigger Key does not exist in the print
request, then the data source is queried and the first row
of data is automatically returned. This occurs regardless of
whether Auto Select First Row and Auto Select Single
Row Result are selected.
Trigger Priority
Assigning values for Trigger Priority is necessary only if more than one data source or rule
associated with a label template or a form includes a trigger with the same trigger source, trigger
event, and trigger key (if any). In that situation, you can assign different values for Trigger
Priority for these otherwise identical triggers, and the data source or rule with the lower value
for Trigger Priority is run first. For data sources, whether the type of data source differs has no
effect.
Trigger Priority values for data sources are not compared with Trigger Priority values for
form rules and business rules. Regardless of their Trigger Priority values, all data sources are
run before any rules are run.
For a form that is used in an application, Trigger Priority values of rules created at the
application level are not compared with Trigger Priority values of rules created at the form
level. All rules configured for the form at the application level are run before rules configured at
the form level.
Note: When viewing Form properties within an application, only form rules that
were created within the application are displayed. Although not displayed, form
rules that were created in the form are run when the form is used by an application.
1A name (key) and value pair in the data map for a job.
Trigger Priority values are only compared if trigger source, trigger event, and trigger key (if
any) are the same.
Tip: Trigger priorities can be set only while configuring data sources or rules, and
are not required to be unique.
Example
A label template includes a Database data source (DS_DB01) and an Alternate data
source (DS_Alt01). Each data source includes a trigger with a Trigger Source of
/Body and a Trigger Event of onLoad. Because you want the Database data
source to be queried before the Alternate data source, you set the Trigger
Priority for DS_DB01 to 10, and for DS_Alt01 to 20. Although each data source
may also have other triggers, their priorities are not compared with these triggers.
Best Practices
When assigning values for Trigger Priority, it is recommended that you avoid
using adjacent integers so that it is easier to add intermediate values if necessary. In
the preceding example, if you later discover that you need to add a third data
source and need to cause it to run after DS_DB01 but before DS_Alt01, you can
do so without having to change the existing trigger priorities. Also, for a particular
form or label template, it is recommended that you use unique integers for
Trigger Priority values that can be compared.
l Strikethrough
l Subscript
l Superscript
l Underline
l Font
l Font size
Tip: You can use a Script data source to configure character-level formatting
instead. For more information, see "Creating Script Data Sources" on page 321.
8. If you have included multiple patterns or multiple ranges and if the order of
implementation matters, arrange the items so that they are in the intended order of
implementation. The top item is implemented first. To change the order of
implementation, drag and drop an item within the list, or click a list heading to sort the
list.
Important! The order in which patterns or ranges are displayed determines
the order in which they are implemented. Sorting the list of patterns or
ranges changes the implementation order. If you configure both patterns
and ranges in a Character-Level format source, ranges are resolved before
patterns.
Note: If more than one value for a style (such as 12 and 14 for Font Size) is
applied to the same character, the last value applied is used. If multiple
effects (such as Bold and Italic) are applied to a the same character, all of
the effects are used.
Tip: You can include multiple styles and effects in each format source, and you can
apply multiple format sources to each text field. Also, you can apply a format
source to multiple text fields.
5. Add another item with the same range, but for Style/Effect select Font Size and enter
16.
6. Click OK.
7. In the Format Sources pane, click Character-Level to expand the list.
8. Drag and drop the format source (identified by the name that you entered as the Format
Name) onto each a Fixed Text or Variable Text field in the Label view to which you
want to apply this formatting.
Tip: You can use a Script data source to configure character-level formatting
instead. For more information, see "Creating Script Data Sources" on page 321.
General Data
Property Description
Format A name by which to identify the format source. The name that you enter is used
Name to identify the format source in the Format Sources pane and in the
Properties pane for text fields to which it is applied.
Note: The name of a format source can include letters and
numbers. Additionally, the following characters are permitted but
cannot begin or end the name: hyphens, underscores, and periods.
Patterns
You can use alphanumeric text without punctuation or use a regular expression (which can
include punctuation) to specify text to which a style or effect should be applied. For examples,
see " Examples of Character-Level Formatting" on page 429.
Property Description
Pattern/Regular A pattern that identifies the text to which a style or effect should be
Expression applied.
Important! Patterns for character-level formatting and for
values returned from data map entries are governed by the
Java syntax for regular expressions.
Escape sequences are required for the following characters.
Precede the character with a backslash.
<>()[]{}|^-=+*$!?.\
By default, literal text within a pattern is case sensitive. You
can make a pattern case insensitive by beginning it with the
special construct (?i). If you configure both patterns and
ranges in a Character-Level format source, ranges are
resolved before patterns.
For more information about Java syntax for regular
expressions, see The Java Tutorials: Regular Expressions on
the Oracle website.
Ranges
You can use a numeric range of character positions within a text field to specify text to which a
style or effect should be applied. For examples, see " Examples of Character-Level Formatting"
on page 429.
Property Description
Start The position of the first character to which the style or effect should be applied.
Important! The first position in a text field is 1. In languages that
are read left to right, this is the leftmost position. In languages that
are read right to left, this is the rightmost position.
End The position of the last character to which the style or effect should be applied.
Tip: To apply formatting from the start of the range to the end of
the text field, enter a number that is greater than or equal to the
value of Max Chars for the text field.
For the text specified by a pattern, regular expression, or range, you can configure a style or an
effect to be applied. For styles, you must provide the value to be implemented.
Style/Effect Description Value
Bold Apply a bold, italic, strikethrough, Not used.
Italic subscript, superscript, or underline
Strikethrough formatting effect to the text.
Subscript
Superscript
Underline
Background Apply the specified fill color. The RGB color in hexadecimal
Color format, or any of the following
color names:
BLACK
BLUE
CYAN
GRAY
DARK_GRAY
LIGHT_GRAY
GREEN
MAGENTA
ORANGE
Foreground Apply the specified text color. PINK
Color RED
WHITE
YELLOW
Note: Color
names are not case
sensitive.
Examples
GRAY
#CCCCCC
Font Apply the specified font to the text. The name of the font.
Example
Arial
12
Note: To create or edit business rules, you must have the permissions necessary to
view Process Design. Contact an administrator to request access if necessary. If
you are an administrator, see "Configuring Access for Processes and Business
Rules" on page 1186.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
You can use the examples of business rules provided in this guide as a starting point for creating
a business rule to meet your needs. For more information, see "Examples of BusinessRules
Using Configurator" on page 450.
If you need to incorporate different functionality than what is shown in the examples, refer to
the Configurator Reference for information about creating and configuring component sets. For
more information, see "Business Rule Configurator Reference" on page 459.
When you are ready to create a business rule in Spectrum, see "Create a Business Rule in
Configurator" on page 440.
Use a Process
If you have created a business rule or if you want to override the label template, layout, or
device to be used when processing a print request, a Spectrum administrator can create a process
to run the business rule or to specify overriding values.
Note: If the process is intended to be run by a Data Provider in Print rather than
by using an integration, then either an administrator must ensure that the process
specifies a label template to be used or else you must ensure that the business rule
run by the process specifies a label template to be used.
Use an Integration
Unless the process that runs your business rule is intended to be run only by a Data Provider 1
in Print, a Spectrum administrator must use an integration to route print requests initiated by
users in Oracle, SAP applications, or other applications so that they are processed and printed
using Spectrum.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
1A collection of component sets or business rule components that can be used to incorporate logic or to add, change, or remove
data or print parameters after a print request is submitted but before printing occurs. Business rules are similar to form rules, but
provide more robust functionality. Business rules are created on the Process Design page and can be designed using the
Configurator or programmed using XML.
Each business rule created in the Configurator view is composed of one or more component
sets. Each component set consists of a trigger 1 and one or more component blocks. When a
process2 runs a business rule, a particular component set within it is run when the event that
serves as its trigger occurs. For example, if the trigger for a component set is Job Submission,
then that component set is run if and when a job is submitted.
Each component set can contain component blocks, each of which performs an action. For
example, a Get First Row block can retrieve a row from the result of a query of a JDBC data
service and save it to the data map3.
You can use a reusable rule 4 to add a commonly-used component set to a business rule. For
information about creating reusable rules, see "Create a Reusable Rule" on page 446.
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2An object in Spectrum that binds together all of the components to be used when responding to a print request. Among other
items, those components may include a label template, layout, device, and a business rule to be used when processing a print
request. Processes are created in the Process Design page.
3A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
4A special type of business rule from which a component set can be copied into a business rule. After a component set is added to a
business rule in this manner, it can be edited as a normal part of the business rule. Editing a reusable rule does not alter business
rules into which a component set from the reusable rule has already been added.
Within each component set, the component blocks are run in the order in which they are
displayed in Configurator. You can drag and drop component blocks to rearrange their order.
Note: If you require that a business rule have additional capabilities or flexibility
beyond what is possible by using Configurator, a programmer can use XML to
develop a business rule. For more information, see "Implementing Business Logic"
on page 1181.
6. Rename the trigger of any component set that is triggered by a Custom event by
performing the following steps.
Tip: The name of a Custom trigger must match the name of a Custom event
so that an occurrence of the event can cause the component set to run.
Alternatively, you can run a Custom component set without an occurrence
of the Custom event by using a Run Another Component Set or Run
Another Business Rule block.
a. Double-click the component set (identified by trigger name) to display the Block
Details view.
b. In the Block Details view, click the name of the trigger, enter an appropriate
event, and press Enter to update the name of the trigger.
c. Click to return to the Business Rule Summary.
d. Repeat for each component set that is triggered by a Custom event.
7. Create component blocks that perform actions within a component set by performing the
following steps.
a. Select a component set and click in the toolbar, or double-click a component
set, to display the BlockDetails view.
b. If you want to add the component blocks from a reusable rule, expand Reusable
Rules in the Library pane and drag a reusable rule onto the canvas. If the reusable
rule contains more than one component set, you are prompted to select one.
Tip: You can modify the copy of the reusable rule in your business
rule as needed.
c. If you want to add a new component block, from the Library pane, drag a
component block representing an action to perform to the Block Details view.
Tip: For information about each type of component block and its
properties, see "Component Blocks" on page 463.
d. In the Block Details view, configure the properties of the new component block.
Best Practice: It is suggested that you click File > Save or click the
button in the toolbar to save the business rule after adding each
component block.
e. Drag and configure any additional component blocks needed to perform actions
for the component set. The component blocks within a component set run in
order beginning with the one at the top. You can drag and drop the component
blocks in Block Details view to change the order in which they run.
Tip: To delete a component block, select the component block, and
then click the button in the toolbar.
1In a business rule designed in Configurator, an ordered collection of component blocks that is run when a particular trigger event
occurs.
1In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
2In a business rule designed in Configurator, an ordered collection of component blocks that is run when a particular trigger event
occurs.
You can use a business rule to determine which label template to use when processing a print
request. The business rule can create a request for a particular label template based on data in the
print request. For example, you can convert a request for a generic shipping label to a region-
specific shipping label. This approach is sometimes referred to as label template substitution or
label substitution.
Important! Content in a business rule is case sensitive.
Tip: If you always want to use the same label template when a particular simple
process is run, you can specify the path to that label template in the Document
field for the process. You do not need to use a business rule unless you also want
to implement business logic.
The following is the block detail view of a component set in a business rule that changes the
shipping label template selected based on the region specified for the job. The label templates
are in the /Example/Label Templates/ folder. The label template named Shipping001 is
intended for use in the Americas region, Shipping002 is for use in Europe, and Shipping003 is
for use in Asia Pacific. The region name must be specified as part of the print request. This
business rule can be run by a simple process.
Note: The value for the data ref named Region must be provided either by a
JDBC data service that establishes a connection to a database, by an integration, or
by another business rule.
You can use a business rule to perform print attribute substitution, changing values for print
attributes such as the device name, job name, Quantity, and Duplicates based on business logic
or on an existing request-level attribute. A request-level attribute is a default attribute for a label
template in the print request. If the label template does not define an attribute and there is no
lookup, then the request attribute is used.
Important! Content in a business rule is case sensitive.
Tip: If you always want to use the same value for a print attribute when a particular
simple process is run, you can specify the value for that print attribute in the field
for it in the process. You do not need to use a business rule unless you also want
to implement business logic.
The following is the block detail view of a component set in a business rule that changes the
label quantity (number of times to print a label using the same data) to 2 for a specific shipping
label template. This business rule can be run by a simple process.
Note: The value for the Label Template data ref must be provided either by a
JDBC data service that establishes a connection to a database, by an integration, or
by another business rule.
You can use a business rule to perform data lookup, retrieving and incorporating information
that was not available in the original print request. For example, you could compute a product
number based on a serial number or retrieve an origin and other values based on a lot number.
Important! Content in a business rule is case sensitive.
The following example queries a database table and selects a label template based on a Customer
ID. In this example, the following query is used:
SELECT SHIPPING_LABEL FROM LW_INFO.SHIPPING_XREF WHERE CUSTOMER_
ID=${/Body/CUST_ID}
Note: This business rule requires the existence of a JDBC data service that
establishes a connection to a database. In the data service, Is Parameter is
selected for the SQL Query. For more information, see " Managing Data Services"
on page 979.
You can use a business rule to cause one print request to generate additional print requests that
use the same label template or other label templates. This can be useful for situations in which a
set of related printed labels is required for each job, such as a bill of lading for a shipment and a
label for each item in the shipment.
Important! Content in a business rule is case sensitive.
Important! The following example is a special type of business rule called a Job
Source. This business rule must be run by using a generator process in which the
path to this business rule is entered in the Job Source field.
The following is the block detail view of a component set in a business rule that generates four
labels from a single print request. The path to the label template is /Example/Shipping001
and the path to the device used is /Example/Printer009.
Note: This business rule requires the existence of a JDBC data service that
establishes a connection to a database.
Note: If you require that a business rule have additional capabilities or flexibility
beyond what is possible by using Configurator, a programmer can use XML to
develop a business rule. For more information, see "Implementing Business Logic"
on page 1181.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Triggers in Configurator
In a business rule created in Configurator 1, a trigger 2 is the part of a component set that
controls if and when the component blocks in that component set are run. Each trigger is
associated with an event, and the component blocks in a component set are run only when the
event specified by the trigger occurs.
Note: In the Business Rule Summary for a particular business rule, the name of
each trigger must be unique.
Trigger Event or
Purpose
Type
Job Submission A Job Submission trigger causes the component set to run during
the job submission phase, before the job is queued for printing.
This event occurs for each job in a stacked job. As a best practice,
it is recommended that you use this type of event to run database
or other process intensive component sets.
Job Printing A Job Printing trigger causes the component set to run when a job
is removed from the queue to be printed.
Label Printing A Label Printing trigger causes either the component set or the
data sources defined in Design to run before each label is printed.
Which of those approaches is used is controlled by the process
that runs this business rule. The former approach is effective only
if the print job detail3 is not processed by the device.
Best Practice
In most cases, it is recommended that you use the
Label Printing trigger to run Format Date/Time
component blocks.
Error An Error trigger causes the component set to run when an error
occurs during the processing of any component set in the business
rule.
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
2A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
3A single request to use a label template to print to a specific destination. Depending on the values for Quantity, Duplicates, and
Pages, a print job detail may generate multiple labels.
Trigger Event or
Purpose
Type
Custom A Custom trigger causes the component set to run when the
Custom event specified by the trigger occurs.
Custom events typically occur due to the action of a component
block or a business rule component. Some examples of Custom
events include when a condition is true, when a condition is false,
when a row of data from a database is processed, when an iteration
of a repeating action occurs, or when an error occurs.
Important! Before a Custom trigger can function,
either a component block or a programmer must
define the associated Custom event in the business
rule. The exception to this approach is that you can
use a Run Another Component Set block or a Run
Another Business Rule block to run a component set
that has a Custom trigger even if no associated
Custom event exists.
The following types of component blocks define Custom events.
If you use one of these event names as the name of a Custom
trigger, then the component set associated with the Custom trigger
runs when the event occurs.
Component
Event
Block
Conditional trueConditionEvent: An event that occurs if
True/False the component block is evaluated as true.
falseConditionEvent: An event that occurs if
the component block is evaluated as false.
Repeat for dsChild: An event that occurs when a row of
All Rows data from a database is processed.
Fixed dsChild: An event that occurs once per
Repeat iteration.
All ErrorHandler: An event that occurs when an
error occurs during the processing of a
component set in a business rule that includes
an Error trigger.
Note: If you require that a business rule have additional capabilities or flexibility
beyond what is possible by using Configurator, a programmer can use XML to
develop a business rule. For more information, see "Implementing Business Logic"
on page 1181.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Component Blocks
You can use a component block to add or change data in the datamap, to incorporate
conditional logic, or to implement branching. The following tables summarize the purpose of
each type of component block that you can use when creating a business rule in the
Configurator view in LoftwareSpectrum.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Print Blocks
Block Type Purpose
Print Generate a print job using the specified process.
1A name (key) and value pair in the data map for a job.
Other Blocks
Block Type Purpose
Format Date/Time Format the value of a data map entry as a date or time.
Run Data Map Script Make changes to the datamap by using JavaScript.
Run Another Component Run another component set in this business rule, regardless of
Set whether the associated event has occurred.
Run Another Business Run a component set from another business rule, regardless of
Rule whether the associated event has occurred.
Configure Test Data Add sample data to the datamap for use when designing and
testing the business rule.
Log Data Write a message to the User Event Log.
Advanced Blocks
Block Type Purpose
Conditional True/False Run different component blocks depending on whether the
value of a print job property or a data map entry is equivalent to
a specified value.
Fixed Repeat Run selected component blocks a specified number of times.
Note: If you require that a business rule have additional capabilities or flexibility
beyond what is possible by using Configurator, a programmer can use XML to
develop a business rule. For more information, see "Implementing Business Logic"
on page 1181.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
In a business rule designed in the Configurator, you can add a Conditional component block to
only perform an action if the result of a logical expression combining multiple conditions is true.
Each condition is a comparison of the value of a data map entry 1 to a specified value or is an
evaluation of the state of a data map entry. The result of each condition is true or false.
The results of the conditions are combined using either logical AND or OR operations. If AND
operations are used, then the rule action is performed only if all of the conditions are true. If OR
operations are used, then the rule action is performed if any of the conditions are true.
1A name (key) and value pair in the data map for a job.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Rule Criteria
The rule criteria determine whether the rule action is performed.
Tip: You can add or remove conditions from the logical expression by clicking
or .
Property Description
Logical If the rule criteria include more than one condition, how to combine the results
Operator of the conditions to produce a result of true or false.
l AND: Combine the results of the conditions using logical AND
operations. The rule action is performed only if all of the conditions are
true.
l OR: Combine the results of the conditions using logical OR operations.
Property Description
Data Ref A print job property or the name of a data map entry to be evaluated or
to Test compared to a value. If the data map entry does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Operator The operator to use when evaluating or comparing the data ref and the value for
a condition.
l Equals
l Not Equal
l Less Than
l Greater Than
l Is Missing
l Is Not Missing
l Is Empty
l Is Not Empty
Value to The literal value to compare to the value of a print job property or data map
Test entry.
Note: For some operators, no box is displayed for the Value
property because it is not necessary to specify a value.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Rule Action
The rule action is performed only if the conditions specified by the rule criteria produce a result
of true.
Property Description
Data Ref A print job property or the name of a data map entry to be assigned a value if the
to Set conditions produce a result of true. If the data map entry does not already exist,
it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Value to The new value of the print job property or data map entry.
Set
Data Map Block: Conditional List
In a business rule designed in the Configurator, you can add a Conditional List component block
to perform an action only if the value of a print job property or a data map entry 10 is equal to
one of a list of specified values. The action to be performed is to set a property of the print job
or the name of a data map entry to a specified value.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
10A name (key) and value pair in the data map for a job.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Rule Criteria
The rule criteria determine whether the rule action is performed.
Property Description
Data Ref to Test A property of the print job or the name of a data map entry to be
compared to a value. If the data map entry does not already exist, it is
created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Values
If the Data Ref to Test has a value equivalent to any Value to Test in the Conditional List
component block, then the Data Ref to Set is set to the Value to Set when the business rule is
run.
Tip: You can add or remove values from the list by clicking or .
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Property Description
Value to Test The literal value to compare to the print job property or data map entry
specified as the Data Ref to Test.
Value to Set The new value of the print job property or data map entry specified as
the Data Ref to Set.
Rule Action
The rule action is performed only if the Data Ref to Test has a value equivalent to a Value to
Test.
Property Description
Data Ref to Set A print job property or the name of a data map entry to be assigned a
value if the conditions produce a result of true. If the data map entry
does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
In a business rule designed in the Configurator, you can add a Conditional True/False
component block to run different component blocks depending on whether the value of a print
job property or a data map entry is equivalent to a specified value.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Rule Criteria
Property Description
Data Ref to Test A print job property or the name of a data map entry to be compared
to the Value to Test. If the data map entry does not already exist, it is
created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Value to Test A value to be compared to the Data Ref to Test.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Rule Actions
Property Description
Rule Action if The list of component blocks to be run if it is true that the Data Ref
True to Test and the Value to Test are equivalent.
Rule Action if The list of component blocks to be run if the Data Ref to Test and
False the Value to Test are not equivalent.
Other Block: Configure Test Data
In a business rule designed in the Configurator, you can add a Configure Test Data component
block to add sample data to the datamap for use when designing and testing the business rule.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
The following commands are available for adding and modifying test data.
Command Description
Add a data map entry 1 to the test data as a child of the data map entry or
namespace selected.
Delete the selected data map entry or namespace from the test data.
Change a data map entry or namespace in the test data.
Import test data from a CSV file or an XML file.
In a business rule designed in the Configurator, you can add a Delete component block to
remove a print job property or a data map entry 2 from the data map3.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
1A name (key) and value pair in the data map for a job.
2A name (key) and value pair in the data map for a job.
3A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
Property Description
Data Ref A print job property or the name of a data map entry to be removed from the
datamap.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
In a business rule designed in the Configurator, you can add a Fixed Repeat component block to
run selected component blocks a specified number of times.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Direction Whether to increment or decrement the value of the counter.
Start Value The initial value of the counter.
End Value The value at which to cease incrementing or decrementing the counter.
Step The value by which to increment or decrement the counter.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Property Description
Rule Action The list of component blocks to be run when each time the counter is
incremented or decremented.
Other Block: Format Date/Time
In a business rule designed in the Configurator, you can add a Format Date/Time component
block to format the value of a data map entry as a date or time.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Data Ref The name of a data map entry containing the data to be formatted as a date
or time. If the data map entry does not already exist, it is created.
It is recommended that you select Manually Entered1 and specify a data
map entry.
Format The date/time format to apply to the data. You can select one of the
formats listed, or select Custom and enter placeholder characters to
specify a format.
For a description of the formats and the placeholders for use in custom
formats, see "Date/Time Data Source Formats" on page 391.
Days to Add Number of days by which to increment the value specified by the data.
Data Service Block: Get First Row
In a business rule designed in the Configurator, you can add a Get First Row component block
to retrieve the first row in the result of a query of a JDBC data service and add the data to the
data map2.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Data Service The fully-qualified path to an existing data service in Spectrum.
1A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
2A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
Property Description
Use Parameters? Whether to add parameters for use in the data service.
Note: This functionality is comparable to editing the data
service in Data Services and adding parameters.
However, the parameters exist only when this business
rule is used to run the data service.
Property Description
Parameter Value A print job property or the name of a data map entry to be used in the
data service. Also, whether to interpret it as a literal value or as a data
map entry. If the data map entry does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Property Description
Data Ref A property of the print job or the name of a data map entry where the
row of data will be saved to the datamap. If the data map entry does
not already exist, it is created.
Tip: Unless the query is designed to retrieve a value
appropriate for one of the items in the following list, it is
recommended that you select Manually Entered and
enter the name of a data map entry where the row of data
can be saved.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Built-in Parameters
The following built-in parameters exist for JDBC data services.
Parameter Description
batchSize Batch Size. The maximum number of rows returned by the query. You can
specify up to 1000 rows.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Parameter Description
password Database Password. The password associated with the user name used when
establishing a connection to the database.
query SQL Query. The SQL query that the data service runs on the database. The
query can be entered as part of the data service or can be passed as a parameter
from a Database data source used in the label.
url JDBC Connection URL. The connection string for the database used for this
data service. For information about the format, see " JDBC Connection URL
Formats" on page 1026.
username Database Username. The user name used when establishing a connection to
the database.
Other Block: Log Data
In a business rule designed in the Configurator, you can add a Log Data component block to
write a message to the User Event Log.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Comment A message to be written to the User Event Log.
Tip: If the comment includes the name of the data map entry
selected for Data Ref, then the current value of the data map
entry is included in the message when it is written to the log.
Property Description
Data Ref A property of the print job or the name of a data map entry for which the
current value is included in the comment. If the data map entry does not already
exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
In a business rule designed in the Configurator, you can add a Prepend/Append component
block to concatenate text onto the beginning or the end of the value of a data map entry 10.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
10A name (key) and value pair in the data map for a job.
Property Description
Data Ref A print job property or the name of a data map entry to be altered. If the data
map entry does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Operation Whether to concatenate text onto the beginning or the end of the data map
entry referred to by Data Ref. If a print job property is selected for Data Ref,
then the text is concatenated onto the data map entry for that print job
property. If the data map entry does not exist, it is set to the value specified.
l Prepend: The text specified is concatenated onto the beginning of the
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
In a business rule designed in the Configurator, you can add a Print component block to
generate a print job using the specified process. You can provide data to the process.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Process The fully-qualified path to a process in Spectrum.
Commands
The following commands are available for adding and modifying the data set to provide to the
process.
Tip: You can use a live data set1 to store a snapshot of live data retrieved from a
Database data source. You can use this data to produce a more realistic view when
designing a label template or a business rule. You can also manually alter data map
entries in a data set.
Button Command Description
Add Data Create a new data map entry 2 in the data set as a child of
Map Entry the selected data map entry or namespace.
Delete Data Delete the selected data map entry or namespace from the
Map Entry data set.
Edit Data Change the selected data map entry or namespace in the data
Map Entry set.
Import Data Import data from an XML file or a CSV file into the data set.
In a business rule designed in the Configurator, you can add a Repeat for All Rows component
block to perform actions in relation to each row in the result of a query of a JDBC data service.
You can specify a list of component blocks to be run each time a row is processed.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
1A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
2A name (key) and value pair in the data map for a job.
Property Description
Data Service The fully-qualified path to an existing data service in Spectrum.
Use Parameters? Whether to add parameters for use in the data service.
Note: This functionality is comparable to editing the data
service in Data Services and adding parameters.
However, the parameters exist only when this business
rule is used to run the data service.
Property Description
Parameter Value A print job property or the name of a data map entry to be used in the
data service. Also, whether to interpret it as a literal value or as a data
map entry. If the data map entry does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Rule Action The list of component blocks to be run when a row returned by the
data service is processed.
Built-in Parameters
The following built-in parameters exist for JDBC data services.
Parameter Description
batchSize Batch Size. The maximum number of rows returned by the query. You can
specify up to 1000 rows.
password Database Password. The password associated with the user name used when
establishing a connection to the database.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Parameter Description
query SQL Query. The SQL query that the data service runs on the database. The
query can be entered as part of the data service or can be passed as a parameter
from a Database data source used in the label.
url JDBC Connection URL. The connection string for the database used for this
data service. For information about the format, see " JDBC Connection URL
Formats" on page 1026.
username Database Username. The user name used when establishing a connection to
the database.
Other Block: Run Another Business Rule
In a business rule designed in the Configurator, you can add a Run Another Business Rule
component block to load content from one component set in another business rule into the this
business rule.
Important! Unlike a reusable rule, a Run Another Business Rule component block
provides a reference to a component set in another business rule. If the source
component set in the other business rule is changed, that change impacts the
business rule that contains the Run Another Business Rule component block.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Business Rule The fully-qualified path to the business rule from which to load content.
Trigger The case-sensitive XML name of a Custom event in the business rule from
which to load content. The component set associated with this trigger is
run after the Run Another Business Rule component block is processed.
Note: The Run Another Business Rule component block
allows you to load content from only one component set in
the other business rule. You must select the component set
by specifying the XML name of its trigger event.
In a business rule designed in the Configurator, you can add a Run Another Component Set
component block to load content from another component set in this business rule into this
component set.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Trigger The name of the trigger for the component set from which to load
content. The trigger must already exist in this business rule.
Other Block: Run Data Map Script
In a business rule designed in the Configurator, you can add a Run Data Map Script component
block to make changes to the datamap by using JavaScript. A Data Map Script can alter values in
the datamap or add a value to the datamap, but it does not return a value.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
Property Description
Data Map Script A script written in JavaScript that can alter values in the datamap or
add a value to the datamap.
Tip: For information about script methods for accessing
the datamap, see "Script Methods for Accessing the
DataMap at Runtime" on page 343. For script methods
for retrieving or configuring barcode properties, see
"Barcode Properties and Script Methods" on page 1486.
In a business rule designed in the Configurator, you can add an Update component block to set
the value of a print job property or a data map entry 1 to a static value or to a dynamic value
(another data map entry), creating the data map entry if it does not already exist.
Tip: Before you can add a component block to a business rule, you must create a
component set by specifying a trigger that controls when component blocks in the
component set are run.
1A name (key) and value pair in the data map for a job.
Property Description
Data Ref A property of the print job or the name of a data map entry to be assigned a
value. If the data map entry does not already exist, it is created.
You can select from the following for a data ref.
l Label Template
1
l Printer
2
l Quantity of Labels
3
l Number of Duplicates
4
l PrinterTray
5
l Pages of Labels
6
l Job Name
7
l Job Detail Name
8
l Manually Entered
9
Value The new value of the property or data map entry and whether to interpret it as a
literal value or as a data map entry.
1A digital representation of a label that can be combined with variable data and used by print jobs to generate print job details.
2A physical printer, print queue, or other target for output, such as an image file or a PDF file.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
6The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
7What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
8A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
9A property that allows a Document Designer or administrator to type in the value for a property rather than select it from a list.
For a data ref, value must be the fully-qualified name of a data map entry.
Reusable Rules
Reusable rules that have been saved to the Reusable Rules folder or one of its subfolders are
displayed in the Library under Reusable Rules. Document Designers who create business
rules in the Configurator 1 can use a reusable rule to add a commonly-needed component set to
business rules.
Note: Changes made to a reusable rule are not reflected in copies already
incorporated into business rules. Also, after a reusable rule is incorporated into a
business rule, the copy of the reusable rule in the business rule can be modified.
For information about incorporating a component set from a reusable rule into a business rule,
see "Create a Business Rule in Configurator" on page 440.
For information about creating a reusable rule, see "Create a Reusable Rule" on page 446.
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Toolbar
Command Description
Icon
New Business Create a new business rule.
Rule
New Workflow Create a new workflow template.
Template
Open Open an existing process, business rule, or workflow template.
Close Close the current process, business rule, or workflow template.
Close All Close all processes, business rules, and workflow templates that
you have open in Process Design.
Save Save the displayed process, business rule, or workflow template.
Save As Save a copy of the displayed process, business rule, or workflow
template under a different name.
Refresh Update the displayed data.
Other Commands
The following commands are available from the toolbar in Process Design.
Toolbar
Command Description
Icon
Delete Trigger or Delete the selected component set (identified by
Delete Block its trigger) or the selected component block.
Tip: This command is available only
if you are editing a business rule in
the Configurator view and have
selected a component set or a
component block.
Toolbar
Command Description
Icon
View Details Display the Block Details view of the selected
component set.
Tip: This command is available only
if you are editing a business rule in
the Configurator view and have
selected a component set in the
Business Rule Summary.
Navigation Tree
By default, the Navigation tree is hidden. You can display it by clicking the arrow button along
the left edge of the Process Design page. You can double-click an existing process, business
rule, or workflow template to open it. You can right-click a process, business rule, or workflow
template to move or delete it.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
A business rule is a collection of component sets or business rule components that can be used
to incorporate logic or to add, change, or remove data or print parameters after a print request is
submitted but before printing occurs. Business rules are similar to form rules, but provide more
robust functionality. Business rules can be designed using the Configurator or programmed using
XML.
The following sections and panes are displayed when a business rule is created or opened in
Process Design.
Library
When editing a business rule in the Configurator, a list of triggers, component blocks, and
reusable rules that can be dragged and dropped into the business rule is displayed.
For more information about the different types of triggers and component blocks and about
reusable rules, see "Business Rule Configurator Reference" on page 459.
Configurator
The Configurator is a graphical interface for configuring a business rule by creating component
sets, each containing component blocks that are run when a particular trigger event occurs.
Business Rule Summary
The Business Rule Summary is a canvas onto which you can drag triggers for component sets.
For information about each type of event that can serve as a trigger, see "Triggers in
Configurator" on page 460.
Tip: The name of a Custom trigger must match the name of a Custom event.
Block Details
The Block Details view is a canvas onto which you can drag component blocks or reusable rules
to be included in a component set. You can drag and drop component blocks to indicate the
order in which they should run.
XML
The XML section allows you to view and edit the XML of business rule components, including
the triggers that govern when they run.
Example
You could create a business rule that includes logic to route print requests to
specific devices depending on the data associated with the print request. For
example, if some print requests include a color version of a logo and some include
only a black and white version of a logo, then a business rule could route the print
request that included the color logo to a color device.
Commands
Command Description
Enable XML Editor By default, the XML Editor is disabled when you create a business
rule, and you can configure the business rule by using the
Configurator. If you enable the XML Editor, the Configurator can
no longer be used to modify the business rule, and you must use
the XML Editor instead.
Note: This command is displayed only if the
business rule was created by using Configurator and
the XML Editor has not been enabled.
Format XML Neaten the indentation and spacing of the XML of the business
rule.
Note: This command is displayed only if the XML
Editor has been enabled for the business rule or if
the business rule was created prior to Spectrum 3.0.
Validate Business Rule Perform validation of the business rule syntax and formatting.
Note: This command is displayed only if the XML
Editor has been enabled for the business rule or if
the business rule was created prior to Spectrum 3.0.
Test Business Rule Specify trigger events and run the business rule to test it. No
process is used.
Important! When you test a business rule, that
business rule is run and can affect the Spectrum
environment. For example, testing a business rule
that is designed to alter a label template, to change a
value in a database, to submit a job, or to cancel a job
actually performs those actions.
Properties Pane
The Properties pane allows you to name and describe the business rule. You can also view
information about when and by whom the business rule was created and most recently modified.
Tags Pane
Add or change the tags assigned to the business rule.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
The topics in this section describe how to use LoftwareSpectrum to perform the following
tasks.
l Configure your printing preferences by using User Preferences.
l Print labels on-demand by using Print. You can also print labels by using File Drop,
Oracle, SAP ERP, or other applications.
l View and manage the status of print jobs, device queues, and devices1 by using Status.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
General Preferences
Preference Description
Display The language used in the user interface of Spectrum. Options include the
Language following:
l English
l German
l French
l Spanish
l Simplified Chinese
l Traditional Chinese
l Portuguese (Brazilian)
l Japanese
Landing Page The page (top-level tab) that is displayed when you log in to Spectrum.
Home Folder Folder in Spectrum initially selected and expanded in the tree when
opening or printing.
Initial Label The label template or process that is initially loaded when you click Print.
Default Process The process used if users to whom this profile is applied do not select a
process when printing a label template from Print.
ReprintProcess The Reprint process used when users to whom this profile is applied click
Reprint in Status.
Change Display a dialog box that allows you to change your password for
Password Spectrum.
Print Preferences
These preferences control the default options when printing from Print. However, even if these
options are locked down, you can change printing options for the current session on Print.
Preference Description
Default The device 1 used unless you select a different device at print time.
Device
Clear fields Whether to automatically reset all values entered in the form for on-demand
after print after printing occurs.
successful
print
Navigation Whether the Documents Tree is displayed in Print.
Panel Show: The tree is displayed, but you can click a control to hide it.
Hide: The tree is hidden, but you can click a control to display it.
Hide and Lock: The tree is hidden and you cannot display it.
Allow Print Whether the Preview button is displayed in Print.
Preview Note: To use Print Preview, a user should have a role with
Print permission for Documents, have Print permission for
Documents for folders containing label templates and images to
be previewed, and have Allow Print Preview selected in User
Preferences.
View Data Whether to allow a user to click the object title in Print and display the data
Map on map entries in a dialog box. For more information, see " View the Print Data"
PrintPage on page 505.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
Buttons
Button Effect
Save Save any changes that you have made to your preferences.
Cancel/Undo Discard any changes that you have made to your preferences.
Edits
Restore Reset all of your preferences to the default values specified in the user
Defaults profile applied to you. These default values can be changed in the user
profile by an administrator.
Printing Labels
You can use LoftwareSpectrum to print labels on demand or to print labels by using SAP
integration, Oracle integration, or File Drop integration. You can print to local or remote devices
configured in Spectrum. You can also print a label to multiple destinations using processes and
business rules.
When printing on demand, you open a label template to be printed or select a process, and then
enter data for the label. You specify the number of labels to print (Quantity 1), the number of
times to reprint each label (Duplicates2), and the number of copies of each layout to print
(Pages3).
When you preview or print a label, you must specify a device. Depending on your user profile,
you may be able to configure your user preferences to specify a Default Device so that you can
bypass device selection at the time of printing.
1The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
2The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
3The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
Example 4: Labels with Unique Input Data Using Quantity and a Layout
You want to print name labels. You have 18 names for which you want to print
one label each, and you have stock on which you can print 12 labels per sheet. This
requires only one label template that is associated with a layout. When printing the
labels, select Quantity: 18, Duplicates: 0, Pages: 1. Enter a name in the input field,
and then click Print. The Current Label number and the number of labels queued
are incremented. Repeat for each name. After you have entered all 18 names into
the queue, click Eject to eject the last page after printing because it is only
partially filled.
Tip: You can set a default device in User Preferences under Print
Preferences. For more information, see " Set User Preferences" on page
62.
4. Enter the Quantity 1 of labels and any Duplicates2 to print.
5. If the Pages3 field is displayed, enter the number times to print the content for each
layout.
6. If the label template is version-controlled, by default the most recent version to which
you have access is displayed. If you have the necessary permissions, you can enter a
specific Document Version that you want to print and click Load Version to display it.
7. Enter data as required for the label template in the input fields.
Tip: You can click Preview to see an approximation of what the label will
look like. The percentage displayed is the zoom level for the preview image.
You can adjust the zoom level by clicking the arrows or the Fit to Window
button.
8. Click Print. If a layout is associated with the label template, repeat for each printed label.
Tip: Instead of clicking Print, you can press the F9 key to print the label to
the default device if one is configured.
The View PDF button allows you to see the PDF file, if the selected job was printed to
a PDF device and if the PDF file is stored in the default location.
The Recent Job Requests field allows you to view the status of the print job and to
reprint recent job requests.
1The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
2The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
3The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
Reprint Labels
You can reprint a recently printed job or range of labels within the job. You can specify the range
of labels within the job, the quantity, and the device to use.
To reprint a job or a portion of a recently printed job, use the following procedure.
1. In Print, for Recent Job Requests select the job to be reprinted.
2. Click View Job Status.
3. In the Jobs section of Status, click the listing for the job in the table.
4. Click Reprint.
5. In the Reprint dialog box, select an option for Reprint Scope to indicate whether to
reprint all labels in the job or only a range of labels and the quantity.
6. For Device, select the device to be used for reprinting the labels. This can be a different
device than was used to print the original job.
7. Click Print.
Note: The Reprint button is displayed only when you print a job in Print and
then click View Status to view the status of the job in Status. To use this
command, you must have Reprint permission for the relevant objects.
To view the data map entries for an object during on-demand printing, use this procedure.
1. Click Print.
2. In the Documents tree, select the label template, application or process. Any input
fields for the label are displayed.
3. At the top of the Print page, click the icon or title. The Print Data dialog box is
displayed containing the keys and values of the data map entries.
Note: If the icon is not displayed, click User Preferences and under
Print Preferences, select the check box for View Data Map on Print
Page. For more information, see " User Preferences Page (Printing)" on
page 497.
4. To copy the data map entries, right-click in the Print Data dialog box and select Copy
For Data Set.
Note: The keys and values in the Print Data dialog box will refresh
automatically.
Print Page
Click Print at the top of the LoftwareSpectrum window to display options for on-demand
printing of labels.
Documents Tree
The following options are displayed only if a layout is associated with the label template.
Option Description
Layout View the name of the layout attached to the label template. You cannot change
which layout is attached on Print.
Disable Whether the layout that is attached to the label template is used during printing.
Layout : The layout is used during printing.
: The layout is not used during printing.
Option Description
Start The label for which form data is displayed.
Label
or
Current
Label
Queued The number of labels for which data has been entered out of the total number of
labels on one page. The number of labels on a page is specified by the layout.
Auto Whether to automatically eject the page from the device after printing. After the
Eject page is ejected, printing of any queued labels continues.
: The current page is not ejected until the Eject button is clicked.
: The current page is automatically ejected after being printed.
Eject Manually eject the page from the device.
Clear Delete any queued labels without printing them.
Other Buttons
Command Description
Print Send the data currently in the form to the device or the queue. If entering data
for a series of labels managed by a layout, the form is reset to receive input for
the next label.
Clear Remove the data entered into a form.
Refresh Reload the selected label and clear any data in the input fields.
Preview Display a preview of the label in a separate window. The following controls
are displayed in the Print Preview for Loftware Spectrum window.
l Print: Send the data currently in the form to the device or the queue,
l Fit to Window: Scale the preview image to fit within the Loftware
preview image. You can adjust the zoom level by clicking the arrows
for the field or the Fit to Window button.
Job Status
Option Description
Recent Displays the job ID and time stamp for recent print requests.
Job
Requests
View For the job selected, display the status in Status.
Job
Status
View For the job selected, display the PDF file in a new window or in a new tab of the
PDF web browser.
Note: This option is available only if the selected job was printed
to a PDF device. The PDF file is displayed only if it is stored in
the default location. For more information, see " Create a Print-to-
PDF Device Connection" on page 799.
Important: A user must have Read and Queue permissions for Device Groups to
view and perform actions on the device queue.
Tip: If you require more complex behavior than is available in Status, you can use
business rules and processes to perform actions on print jobs in a device queue.
For more information, see "Implementing Business Logic" on page 1181.
l Cancel, error, move, or release a specific print job or jobs in a device queue
Currently, there is a one-to-one relationship between a device queue and a logical device.
Important: A user must have Read and Queue permissions for Device Groups to
view and perform actions on the device queue.
You can use the Queue Status component in the Dashboard section of Status to see the
number of queues in each status. To see the status of a specific device queue, use the following
procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page. For more information, see " Search Device Queues" on page 527. The status of a
device queue is displayed in the Status column.
Note: The data in Status is not dynamically updated. To update the data,
click Refresh .
To see the details of a device queue, including the sequence of print jobs in the queue, use the
following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Double-click a device name, or click a device name to select the row and then click View
Details . The Queue Detail page is displayed for the device.
To start, stop, or pause a device queue, you must first lock and control the device queue to
prevent other users from modifying the queue simultaneously. You can lock and start, stop, or
pause a device queue from the Queues Summary page or the Queue Detail page. To start,
stop, or pause a device queue, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock.
Note: If you have administrative permissions and the device queue is
locked by another user, see " Take Control of a Device Queue" on page
528.
5. To view the sequence of print jobs in the queue, double-click a device name, or click a
device name to select the row and then click View Details . The Queue Detail page
is displayed for the device.
6. Click Start , Stop , or Pause . For more information, see " Queues" on page
542.
You can use the Find field to quickly locate each print job detail on the Queue Detail page that
contains specific text or numbers in the Job ID, Job Name, Submitter, or Submitted Date
columns. To find a print job detail in a device queue, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Double-click a device name, or click a device name to select the row and then click View
Details . The Queue Detail page is displayed for the device.
5. In the Find field, type all or part of a word or number to locate, and then click the
Next button. The first row that contains the text or number is highlighted.
6. Click the Previous or Next button to highlight the previous or next job detail in
the queue that contains the text.
You can cancel and remove a specific print job or jobs in a device queue. Alternatively, you can
set a print job or jobs to an error status and enter a reason for the error. For more information,
see " Set a Print Job to an Error Status" on page 522. If you want to cancel the job currently
running on a particular device, see " Cancel the Current Job on a Device" on page 536.
Important: To cancel a print job in a device queue, a user must have Read and
Queue permissions for Device Groups and Read and Delete permissions for Jobs.
To cancel a specific job or jobs in a queue, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock .
print job or jobs will be removed from the device queue when you click Refresh.
You can set a specific print job or jobs in a device queue to an error status, enter a reason for the
error if desired, and remove the job or jobs from the queue. This is useful if you want remove a
print job from a device queue but you want to be able to search for the print job in the future
and see a record of why it was not printed. Alternatively, you can cancel a specific print job or
jobs in a device queue without adding an error reason. For more information, see " Cancel a
Print Job" on page 521.
To set a print job or jobs to an error status, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock .
jobs will be removed from the device queue when you click Refresh .
Tip: The Error Reason is displayed in the Information pane of the Jobs
section. For more information, see " View an Error Reason" on page 523.
For a manually errored print job in Spectrum, you can view the reason for the error if one was
entered by the user. To change the status of a print to errored, see " Set a Print Job to an Error
Status" on page 522. To view an error reason, use the following procedure.
1. Click Status.
2. Click Jobs. The Job Search page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter print job records.
4. Click the View By drop-down list and select Job Details, and then click Search .A
list of print job details is displayed, filtered by the criteria that you entered.
Note: Search results are not dynamically updated. To refresh the search
6. If the Information pane in the right column is collapsed, click the arrow to expand the
pane. The Job and Job Detail information for the selected job detail is displayed.
7. The Error Reason is displayed in the Job Detail information. If an ellipsis is displayed,
point to the icon to display the full text.
You can move a print job or jobs from one device queue to another specified device queue. The
print job or jobs will be added to the end of the specified device queue.
Important: To move a print job in a device queue to another device queue, a user
must have Read and Queue permissions for both Device Groups and Read and
Write permissions for Jobs.
To move a print job or jobs, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock .
In a stopped or paused device queue, you can use Release to immediately print a specific
print job or multiple specific print jobs in the queue. Alternatively, you can add a marker to a
device queue to release many sequential print jobs from the beginning of the device queue to a
specified point in the queue. For more information, see " Add a Marker to a Queue" on page
526.
To release a specific print job or multiple specific print jobs in a device queue, use the following
procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock.
print job or jobs will be removed from the device queue when you click Refresh .
Note: Multiple print jobs that are released at the same time will be
processed in the order they are received.
In a stopped or paused device queue, you can add a marker to a device queue to release many
sequential print jobs from the beginning of the device queue to a specified point (the marker) in
the queue. Alternatively, you can use Release to immediately print a selected print job or
multiple selected print jobs in the queue. For more information, see " Release a Print Job" on
page 525.
To add a marker to a device queue, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. Click a device name to select the row, and then click Lock.
8. In the Job Actions toolbar, click Add Marker . A marker row is added below the
selected row.
Note: A device queue can only have one marker at a time.
9. To immediately print the print jobs above the marker row, click Run to Marker . The
status of the print job or jobs is changed to Released. The print job or jobs will be
You can search for device queues with specific characteristics. To search for device queues, use
the following procedure.
1. Click Status.
2. Click Queues.
3. In the Search Criteria pane, enter criteria by which to filter the device queues:
n To search for by full or partial device name, enter text in the Name field and then
click Search .
n To filter the list by Status, Lock Status, or Device Status, select the criteria
from the drop-down list.
A list of device queues is displayed, filtered by the criteria that you entered.
If you have administrative permissions and a device queue is locked by another user, you may
take control of the device queue in order to start, stop, or pause the queue or manage the print
jobs in the queue. You can see which user has locked a device queue at the top of the Queue
Detail page. To take control of a device queue, use the following procedure.
1. Click Status.
2. Click Queues. The Queues Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Queues Summary
page.
4. To see which user has locked the device queue, double-click a device name, or click a
device name to select the row and then click View Details . The Queue Detail page
is displayed for the device with a user name in the Locked by field.
5. Do one of the following:
click Refresh .
5. To see basic information about a job, click the job and then click the arrow to expand
the Information pane in the right column.
6. To see additional information about a job, double-click the job or click the job and then
click Inspect. The Job Inspector is displayed.
To search the database of print job records for print jobs with specific characteristics, use this
procedure.
1. Click Status.
2. ClickJobs.
4. In the Search Criteria pane, enter criteria by which to filter the database of print job
records. For more information, see " Jobs" on page 547.
Tip: Filtering by Successes and Failures
You can limit the jobs displayed to include only those that included successes, did not
include successes, included failures, or did not include failures. To filter the list of jobs
based on whether successes and failures did or did not occur, configure the three-
position check boxes.
Successes/
Description
Failures
Show jobs regardless of the value of this property.
Show jobs for which the value is true.
For Successes, this indicates that the job included successes.
For Failures, this indicates that the job included failures.
Show jobs for which the value is false.
For Successes, this indicates that the job did not include successes.
For Failures, this indicates that the job did not include failures.
Tip: Filtering by Status
You can search for jobs with a particular status. You must select each status that you want
to include in your search.
n To select adjacent statuses in the list, click the first status that you want to select,
press the Shift key, and click the last status that you want to select.
n To select non-adjacent statuses, press the Ctrl key and click each status that you
want to include.
n To de-select a status, press the Ctrl key and click the status.
Tip: Filtering by Date and Time
You can limit the jobs displayed to include only those that were last modified within a
specific time range, before a specific time, or after a specific time.
n To view all jobs that were last modified within a time range, enter that range in the
From and To fields.
n To view all jobs that were last modified after a specific time, enter the time in the
From field. Leave the To field blank.
n To view all jobs that were last modified before a specific time, enter the time in
the To field. Leave the From field blank.
click Refresh .
7. To save these search criteria for future use, in the text box above theSearch Criteria
pane, enter a name for this search and then click to save the configuration.
8. To download these search results to a comma-delimited text file that can be viewed in
most spreadsheet applications, click , specify a file name and location, and then click
Save.
1A folder in Spectrum that contains status information about print jobs. For print jobs performed via an integration, you can specify
the job target folder. For on-demand print jobs, the default Job Target folder is used.
click Refresh .
4. To view on-demand status information, click a device name and then click
DetailedStatus .
5. To send a command to a device, click a device name and then click the Select a
Command for theDevice drop-down list. The available commands are displayed for the
selected device. Select a command and then click Send Command to Device.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
Search Devices
To search for devices with specific characteristics, use the following procedure.
1. Click Status.
2. Click Devices.
3. In the Search Criteria pane, enter criteria by which to filter the devices:
n To search by full or partial device name, enter text in the Name field and then
click Search .
n To filter the list by Device Status, Family, or Model, select the criteria from the
drop-down list.
A list of devices is displayed, filtered by the criteria that you entered.
4. To download these search results to a comma-delimited text file that can be viewed in
most spreadsheet applications, click , specify a file name and location, and then click
Save.
For each TCP/IP device configured in Spectrum, you can easily go to the device's web interface
from the Devices section of Status , if supported by the device.
To view a device web page, use the following procedure.
1. Click Status.
2. Click Devices. The Devices Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Devices Summary
page. For more information, see " Search Devices" on page 534.
4. Click a device name, and then click View DeviceWebPage . The device's web
interface is displayed in a new browser tab.
You can cancel the job currently running on a particular device. If you want to cancel a specific
print job or jobs in a device queue, see " Cancel a Print Job" on page 521. To cancel the job
currently running on a device, use the following procedure.
1. Click Status.
2. Click Devices. The Devices Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Devices Summary
page. For more information, see " Search Devices" on page 534.
If supported by a device, you can send a command to the device to be run by the device from
the Devices section of Status. This allows direct control of the device from theSpectrum
interface. For example, a Zebra device may support the following list of commands:Reset,
Pause, Resume, Cancel, Cancel All, Offline, and Print Configuration Label.
To send a command to a device, use the following procedure.
1. Click Status.
2. Click Devices. The Devices Summary page is displayed.
3. In the Search Criteria pane, enter criteria by which to filter the Devices Summary
page. For more information, see " Search Devices" on page 534.
4. Click a device name.
5. Click the Select a Command for theDevice drop-down list and select a command.
Status Page
Click Status at the top of the Spectrum window to view and manage the status of device
queues, print jobs, devices, and facilities in the following sections:
l " Dashboard" on page 540
l " Queues" on page 542
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Dashboard
You can use the Dashboard section in Status to view a summary of the status of devices,
queues, and recent print jobs.
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Device Status
The Device Status component displays the number of devices in each status. You can double-
click a status in the chart to view the Devices section filtered to the selected status. For more
information, see " Devices" on page 556.
Device Status Description
UP The device is online.
DOWN The device is unreachable and possibly offline.
UNKNOWN The status of the device is unknown.
ERRORED A failure has occurred.
Queue Status
The Queue Status component displays the number of queues in each status. You can double-
click a status in the chart to view the Queues section filtered to the selected status. For more
information, see " Queues" on page 542.
Queue Status Description
Started The device is accepting new jobs and sending jobs to the printer.
Stopped The device is not accepting new jobs and not sending jobs to the printer.
Paused The device is accepting new jobs but not sending jobs to the printer.
Print Job Statistics
The Statistics component displays the quantity of print jobs with a status of Success, Failure,
or Success withError for the last hour and last day. For more information, see " Jobs" on page
547.
Last 10 Failed Jobs
The Last 10 Failed Jobs component displays the job ID, State, and Name of the last ten print
jobs with an Errored status. You can double-click a job in the table to view the Jobs section
filtered to the selected JobID. For more information, see " Jobs" on page 547.
Last 10 Jobs
The Last 10 Jobs component displays the job ID, State, and Name of the last ten print jobs.
You can double-click a job in the table to view the Jobs section filtered to the selected Job ID.
For more information, see " Jobs" on page 547.
Queues
You can use the Queues section in Status to control a device queue and manage print jobs in
the device queue. Currently, there is a one-to-one relationship between a device queue and a
logical device.
Search Criteria
You can enter search criteria to filter the list of device queues displayed by:
l Name, including partial word matching
l Status
l Lockstatus
l Device status
Queues Summary
The Queues Summary page displays device queues and statuses in Spectrum.
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Toolbar
The following commands are available from the toolbar on the Queues Summary page.
Note: A command may be unavailable depending on your permissions, the device
permissions, or the device queue status.
Toolbar
Command Description
Icon
View Details Open the Queue Detail page for the selected device queue.
Start Start the selected device queue. New jobs are accepted and sent
to the device. If a marker is in the queue, it is removed.
Available only if the queue is locked and the status of the queue
is stopped or paused.
Stop Stop the selected device queue. New jobs are not accepted or
sent to the device.
Available only if the queue is locked and the status of the queue
is started or paused.
Pause Pause the selected device queue. New jobs are accepted but not
sent to the device.
Available only if the queue is locked and the status of the queue
is started or stopped.
Toolbar
Command Description
Icon
Lock Lock the selected device queue to start, stop, or pause the queue
and prevent other users from modifying the queue.
Available only if the selected queue is not locked.
Unlock Unlock the selected device queue.
Available only if the queue is locked by the current user.
Take Control Take control of the selected device queue.
Available only if you have administrative permissions and the
queue is locked by another user.
Open Job Open a new Job Details Search tab in the Jobs section filtered
Search for to the device.
Queue
Properties
The following properties of device queues can be viewed on the Queues Summary page.
Tip: You can click a table header to sort the table by that column. You can also
click, drag, and drop a table header within the table to change the order in which
the columns are displayed.
Property Description
Name The device connection used to print the print jobs in this queue. This may refer
to a physical printer or other target for output, such as an image file or a PDF
file.
Status Whether the device queue is started, stopped, or paused.
Started: The device is accepting new jobs and sending jobs to the device.
Stopped: The device is not accepting new jobs and not sending jobs to the
device.
Paused: The device is accepting new jobs, but not sending jobs to the device.
Last The date and time when the device queue was most recently changed.
Updated
Device Whether the device associated with this queue is online or unreachable.
Status Up: The device is online.
Down: The device is unreachable and possibly offline.
Unknown: The status of the device is unknown.
Errored: A failure has occurred.
Queue Detail
The Queue Detail page displays the print jobs in a specific device queue.
Queue Properties
The following properties of a device queue can be viewed on the Queue Detail page.
Property Description
Name The device connection used to print the print jobs in this queue. This may refer
to a physical printer or other target for output, such as an image file or a PDF
file.
Status Whether the device queue is started, stopped, or paused.
Started: The device is accepting new jobs and sending jobs to the device.
Stopped: The device is not accepting new jobs and not sending jobs to the
device.
Paused: The device is accepting new jobs, but not sending jobs to the device.
Device Whether the device associated with this queue is online or unreachable.
Status Up: The device is online.
Down: The device is unreachable and possibly offline.
Unknown: The status of the device is unknown.
Errored: A failure has occurred.
Job The total number of unique print jobs currently assigned to the device queue.
Count
Locked The user name of the person who locked the device queue, if applicable.
by
Queue Actions Toolbar
The following commands are available from the Queue Actions toolbar on the Queue Detail
page.
Toolbar
Command Description
Icon
Start Start the device queue. New jobs are accepted and sent
to the device. If a marker is in the queue, it is removed.
Available only if the queue is locked and the status of
the queue is stopped or paused.
Stop Stop the device queue. New jobs are not accepted or
sent to the device.
Available only if the queue is locked and the status of
the queue is started or paused.
Pause Pause the device queue. New jobs are accepted but not
sent to the device.
Available only if the queue is locked and the status of
the queue is started or stopped.
Toolbar
Command Description
Icon
Lock Lock the device queue to start, stop, or pause the queue
and prevent other users from modifying the queue.
Available only if the selected queue is not locked.
Unlock Unlock the device queue.
Available only if the queue is locked by the current user.
Take Control Take control of the device queue.
Available only if you have administrative permissions
and the queue is locked by another user.
Open Job Search for Open a new Job Details Search tab in the Jobs section
Queue filtered to the device.
Job Actions Toolbar
The following commands are available from the Job Actions toolbar on the Queue Detail page.
Note: The Job Actions commands are available only if the device queue is locked
by the current user and the status of queue is stopped or paused.
Toolbar
Command Description
Icon
Cancel Cancel and remove the selected job or jobs from the device queue.
Error Set the selected job or jobs to an error status, add a reason if desired,
and remove the job or jobs from the queue. This is useful if you
want remove a print job from a device queue but you want to be able
to search for the print job in the future and see a record of why it
was not printed.
Move Move the selected job or jobs to a different specified device queue.
The job or jobs are added to the end of the specified device queue.
Release Release the selected job or jobs to the device for immediate printing.
Add Add a marker in the device queue after the selected job. This is
Marker useful if you want to release many sequential print jobs from the
beginning of a device queue to a specified point in the queue. A
queue can only have one marker at a time. A marker is automatically
removed from a queue when the user who added the marker has
logged out.
Run to Release the jobs in the device queue from the beginning of the
Marker queue to the marker.
Toolbar
Command Description
Icon
Remove Remove the marker in the device queue.
Marker
Find
You can use the Find field to quickly locate a print job detail on the Queue Detail page that
contains specific text or numbers in the Job ID, Job Name, Submitter, or Submitted Date
columns.
In the Find field, type all or part of a word or number to locate, and then click the Previous
or Next button to highlight the first or last row that contains the text. Click Previous or
Next again to highlight the previous or next row that contains the text.
Queue Detail Properties
The following are the properties of print jobs1 in the device queue.
Property Description
Select the check box to perform a job action on the print job. To select
all the print jobs in the queue, select the check box in the header row.
Status The status of the print job. See Status When Viewing by Jobs.
Order The order the job is processed in the device queue.
Job ID A unique identifier for the print job. Click a job ID to view the
JobDetails Search page of the Jobs section.
Job Name An identifier for a print job provided by the integration that initiated the
job. On-demand print jobs and previews do not have job names.
Job Detail The number of print job details in this device queue for the print job.
Count
Submitter The user name of the person who submitted the print job or the user
account used to submit the job. For a print job submitted via an
integration, this is the Run As user for the integration.
SubmittedDate The date and time when the print job was submitted to the device
queue.
1What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
Jobs
You can use the Jobs section in Status to view the status of print jobs and search for print jobs
with specific characteristics.
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Search Criteria
Toolbar
The following commands are available above the SearchCriteria pane.
Toolbar
Command Description
Icon
New Search Open a new job search tab.
Save Search Save the search that is currently displayed and for which the name
appears in the text box adjacent to this button. You can change the
name of this search by typing a different name in the text box.
Delete the Close and delete the current search.
Currently
Selected
Search
Search Criteria Tips
You can enter search criteria to filter the list of jobs1 or job details2 displayed. You can limit
the jobs or job details displayed to only those with specific IDs, names, or statuses, submitted
by a particular user, for a particular label template, or assigned to a particular target device. You
can also limit the jobs or job details based on when they were last modified, whether they
included successes, or whether they included failures.
Click Search to display the list of jobs or job details filtered by the entered criteria.
1What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
2A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
You can limit the jobs displayed to include only those that included successes, did not include
successes, included failures, or did not include failures. To filter the list of jobs based on
whether successes and failures did or did not occur, configure the three-position check boxes.
Successes/
Description
Failures
Show jobs regardless of the value of this property.
Show jobs for which the value is true.
For Successes, this indicates that the job included successes.
For Failures, this indicates that the job included failures.
Show jobs for which the value is false.
For Successes, this indicates that the job did not include successes.
For Failures, this indicates that the job did not include failures.
Status
You can search for jobs with a particular status. You must select each status that you want to
include in your search.
l To select adjacent statuses in the list, click the first status that you want to select, press
the Shift key, and click the last status that you want to select.
l To select non-adjacent statuses, press the Ctrl key and click each status that you want to
include.
l To de-select a status, press the Ctrl key and click the status.
Date Range
You can limit the jobs displayed to include only those that were last modified within a specific
time range, before a specific time, or after a specific time.
l To view all jobs that were last modified within a time range, enter that range in the From
and To fields.
l To view all jobs that were last modified after a specific time, enter the time in the From
field. Leave the To field blank.
l To view all jobs that were last modified before a specific time, enter the time in the To
field. Leave the From field blank.
Job Search
Toolbar
The following commands are available from the toolbar on the Job Search page.
Command Effect
Open Job Open a new Job Details Search tab filtered to the selected Job ID.
Search
Reprint Reprint a recently printed job or range of labels within the job. A dialog box
allows you specify the range of labels within the job, the quantity, and the
device to use.
Note: To use this command, you must have Reprint permission
for the relevant objects. Object-based and role-based Reprint
permissions are required.
Inspect If a job is selected, display Job Inspector information about any errors and
about the data processed.
Download the search results for the current search to a comma-delimited text
file (CSV). You can view this file in a spreadsheet application such as
Microsoft Excel.
Cancel Cancel the job currently running on the device.
Job
Properties
The following are the properties of print jobs1 . These properties are displayed in the results of
searches, and you can search for specific jobs based on most of these criteria.
Tip: You can click a table header to sort the table by that column. You can also
click, drag, and drop a table header within the table to change the order in which
the columns are displayed.
1What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
Property Description
Status Indicates the current state of a job:
Toolbar
The following commands are available from the toolbar on the Job DetailsSearch page.
Command Effect
Open Job Open a new Job Details Search tab filtered to the selected Job ID.
Search This command is available only when a row is selected.
Inspect If a job is selected, display Job Inspector information about any errors and
about the data processed.
Download the search results for the current search to a comma-delimited text
file (CSV). You can view this file in a spreadsheet application such as
Microsoft Excel.
Properties
The following are the properties of print job details1. These properties are displayed in the
results of searches, and you can search for specific job details based on most of these criteria.
Tip: You can click a table header to sort the table by that column. You can also
click, drag, and drop a table header within the table to change the order in which
the columns are displayed.
Property Description
Status Indicates the current state of a job detail:
1A digital representation of a label generated by a print job. Job details can be altered during the print job by using Formula data
sources, Script data sources, and business rules.
Property Description
Location The name of the facility from which the print job was submitted. The
value is local if the print job was submitted by headquarters.
Note: This property is displayed only if you have a multi-
site license for Spectrum and you are logged on to the
headquarters site.
Submitter The user name of the person who submitted a print job or the user
account used to submit the job. For a print job submitted via an
integration, this is the Run As user for the integration.
SubmittedDate The date and time when a print job was submitted to the device queue.
Modified Date The date and time when a print job was most recently changed.
Status When Viewing by Job Details
The following are the possible values for Status that can be displayed for a job detail when you
view search results by Job Details. In the Search Criteria, these are the available values for
Status when viewing by Job Details.
Job Detail Status Description
Submitted The print job has been posted, but is not yet in the device queue.
Queued The print job is in the device queue.
Paused The print job has been halted but may be continued.
Printing The print job is being printed.
Completed The print job finished successfully.
Errored An error occurred.
Canceled The print job has been halted and cannot be continued.
Completed Errored An error occurred after this job detail was completed, but before the
entire job was completed.
Errored Completed An error occurred before this job detail was sent to the device. The
job may or may not have been printed.
Printing Errored The print job is being printed, but an error has occurred. After the
print job is complete, its status changes to Errored Completed.
Web Printing The print job has been submitted to SpectrumRemotePrint. The
SpectrumRemotePrint client must be connected for the job to be
forwarded to the local device.
WebPrintRequested The print job has been submitted to SpectrumRemotePrint. The
SpectrumRemotePrint client accepted the job, but has not printed
to the local device.
Information
The Information pane is displayed in the right column. If the right column is collapsed, click
the arrow button in the middle of the page to expand it.
Job Properties
When a print job is selected, the following Job properties display in the Information pane.
Property Description
ID A unique identifier for the print job.
Job DetailID A unique identifier for the print job detail provided by the integration
that initiated the job. On-demand print jobs and previews do not have
job detail IDs.
Name An identifier for the print job provided by the integration that initiated
the job. On-demand print jobs and previews do not have job names.
Action Whether the print job is a test print.
RUN: The print job is not a test print.
TEST RUN: The print job is a test print.
Status The current state of the print job. See Status When Viewing by Jobs.
Target Folder The folder that contains status information about the print job.
BatchCount The number of batches of print jobs created for the job.
Process Count The number of processes created for the job.
Audit Level The Audit Mask set on the print job during the printing process. The
Audit Mask is whether to save data from the label, the print stream, an
image of the label, a PDF of the label, or the data from the label in XML
format to an audit table in Spectrum.
Note: The Audit Level of the print job can be defined
during the printing process and may be different from the
Audit Mask on the job process.
ClientCode A unique identifier for the print job provided by the client that generated
the job.
Created By The user name of the person who submitted the print job or the user
account used to submit the job. For a print job submitted via an
integration, this is the Run As user for the integration.
Created On The date and time when the print job was submitted to the device queue.
Modified By The user name of the user who most recently made changes to the print
job.
Modified On The date and time when the print job was most recently changed.
Successes Whether successes have occurred during processing.
Failures Whether failures have occurred during processing.
Property Description
Error Code The error code value for the reason the job failed. This is an internal
identifier, but may help with problem resolution.
Data Click View to display the Job Data dialog box.
ProcessingTime The job processing time in milliseconds. One second is equivalent to
(ms) 1000ms.
Job Detail Properties
In addition to the Job properties, the following properties display in the Information pane
when a print job detail is selected.
Property Description
Status The current state of the job detail. See Status When Viewing by Job Details.
Name An identifier for a job detail provided by the integration that initiated the job.
On-demand print jobs and previews do not have job detail names.
Device The device that received and processed the print job.
Group
Batch The unique identifier of the print job batch that the print job detail belongs to.
Priority The number of the job detail in the device queue.
The number of the order the job detail is processed in the device queue.
Quantity The number of labels printed by the job detail.
Copies The number of copies printed by the job detail.
Created The user name of the person who submitted the job detail or the user account
By used to submit the job detail. For a print job submitted via an integration, this is
the Run As user for the integration.
Created The date and time when a print job was submitted to the device queue.
On
Modified The user name of the user who most recently made changes to the job detail.
By
Modified The date and time when the print job detail was most recently changed.
On
Data Click View to display the Process Data dialog box.
Error The reason provided by a user for changing the status of the print job to
Reason Errored, if applicable. Point to the icon to display the full text.
Devices
You can use the Devices section in Status to view and manage the status of devices and search
for a specific device.
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Search Criteria
You can enter search criteria to filter the list of devices displayed by:
l Name, including partial word matching
l Device Status
l Family
l Model
Devices Summary
The Devices Summary page displays a list of devices and statuses in Spectrum.
Toolbar
The following commands are available from the toolbar on the Devices Summary page.
Note: A command may be unavailable depending on your permissions, the device
permissions, or the device queue status.
Toolbar
Command Description
Icon
Detailed View details of the status for the selected device and populate the
Status Detailed Status column for the selected device.
View Device Open the selected device in Device Management.
Configuration Available only if you have the appropriate permissions.
View Device If supported by the TCP/IP device, open a new browser tab with
Web Page the device's web interface.
Cancel Cancel the job currently running on the device.
Current Job
Download Download the search results for the current search to a comma-
Results delimited text file (CSV). You can view this file in a spreadsheet
application such as Microsoft Excel.
Select a Command Select a command from the available actions returned from the
for theDevice device driver, if supported by the device.
Toolbar
Command Description
Icon
Send Send the selected command to the device.
Command
toDevice
Properties
The following properties of devices can be viewed on the Devices Summary page.
Tip: You can click a table header to sort the table by that column. You can also
click, drag, and drop a table header within the table to change the order in which
the columns are displayed.
Property Description
Status Indicates the current status of the device:
Facilities
If your Spectrum license and your permissions permit, you can use the Facilities section in
Status to view the status of the connection between headquarters and facilities.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Note: The data in Status is not dynamically updated. To update the data, click
Refresh .
Facilities Summary
The following properties of facilities can be viewed on the Facilities Summary page.
Tip: You can click a table header to sort the table by that column. You can also
click, drag, and drop a table header within the table to change the order in which
the columns are displayed.
Property Description
Name The unique ID of the facility.
Facility Whether the facility is connected to headquarters.
Connected
Facility The date and time when the connected status of the facility most recently
Last changed.
Updated
HQ Whether headquarters is connected to the facility.
Connected
HQ Last The date and time when the connected status of the headquarters most
Updated recently changed.
Status Last The date and time when this data was most recently synced. For more
Updated information, see "Configuring and Managing a Multi-Site Deployment" on page
624.
The topics in this section describe how to perform the following tasks.
l Configure and administer user access by using Access Control.
l Manage a version-controlled environment, allowing users to retain multiple versions of
objects and to roll back to a previous version if necessary.
l Administer options for high availability using distributed services, multi-site deployment,
authentication, font management, tag management, and other system-wide settings by
using System Management.
l Configure user profiles by using User Preferences.
l Manage device connections by using Device Management.
l Configure data services such as database connections by using Data Services.
l Integrate Spectrum with Oracle, SAP ERP, and other applications by using Integration
Management.
l Design processes to implement business logic by using Process Design.
l Access and manage customer-specific cross reference tables from within Spectrum.
Authenticating Users
Spectrum has the concept of local and domain users. Local users are assigned a password by the
administrator within the Spectrum system. Domain users are configured in Spectrum, but their
passwords are stored in an LDAP or Federated Single Sign-On system.
If you use an LDAP or Single Sign-On system, Spectrum can use that system to authenticate the
user. In both cases a user must be created in Spectrum, and the user names must be an exact
match. For more information, see "Configuring Authentication" on page 743.
Configuring Access
At a basic level you perform the following tasks when configuring security in Spectrum.
l Create a folder structure that makes sense for your organization. When creating each
folder, decide whether you want to have version control1 for objects in that folder.
l Review the built-in roles and the permissions for role-based access control that they
provide. If necessary, alter the permissions for the built-in roles or create additional roles.
l Create groups.
l Create users.
l Assign roles to groups or users.
l Assign group membership to users.
l Configure ACLs for folders. Ensure that the objects on which a role must act allow the
action to be performed. For example, this can include allowing access to a folder, label
template, device, data service, integration, or process.
1The ability to maintain distinct versions of a label template or other item. An item is checked out to be modified, and checked in to
save a new version. After a version is checked in, that version cannot be changed.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
contained.
Note: Any object access permission for the root folder in Spectrum that is
configured as Inherited (a clear check box ) is denied.
Additionally, a device inherits object access permissions and role-based permissions from the
device group that is its parent. It is recommended that you configure permissions at the level
of a device group rather than at the level of a device.
The object access permissions that a user receives for a specific object can be directly
assigned to that user, inherited from a group in which the user has membership, inherited
from the Default Permissions for the object, or inherited from a folder.
The role-based permissions that a user receives for a type of object can be inherited from a
group to which the role was assigned or inherited from a role. These permissions cannot be
directly assigned to a user.
Order of evaluation limits inheritance
When a user attempts to perform an action on an object, Spectrum evaluates the permissions
available for that user in order. Spectrum begins by evaluating any object access permissions
explicitly configured for the user or any group in which the user has membership. If no
explicit value is found for the permission, Spectrum also evaluates the Default Permissions
available for all users. If object access permission is granted, then Spectrum evaluates the
role-based permission available to the user. If role-based permission for the action is also
granted, then the user can perform the action.
The following flowchart describes the order in which Spectrum searches for a permission and
the circumstances under which it stops searching for permission.
role for any user acting as a Document Designer 1 and another role for a user acting as a
Data Provider 2. By using a role, you can assign a re-usable and centrally-configurable
collection of permissions to users and groups.
A user must have a role to be able to perform actions in Spectrum. Although it is possible to
assign a role directly to a user, it is recommended that you assign roles to groups and then
assign users to each group (or assign groups to each user). Each user inherits the role-based
permissions of any group in which the user is a member.
Tip: If you have a small organization and do not want to limit access for any
users, you can assign all users the Local Admin role and grant all object access
permissions for all types of objects to the root folder.
Visual indication of complex inheritance is limited
For a group, the Roles tab displays each role assigned to the group and the Users tab
displays users who are members of that group and therefore inherit those roles. However, for
a user the Groups tab displays the group in which the user has membership, but the Roles
tab does not display roles that are assigned to the user due to group membership. The Roles
tab for the user displays only roles that are directly assigned to the user, not those that are
inherited.
When you create a folder within a folder and configure an object access permission of the
child folder as inherited, the child folder inherits that permission from the parent folder.
However, the Folder Access tab of the child folder indicates only that the permission is
Inherited , not what the inherited value of the permission is.
Note: Any object access permission for the root folder in Spectrum that is
configured as Inherited is denied.
Note: For some special roles and user accounts, such as the ROLE_
ADMINISTRATOR role and the SuperAdmin user, some granted permissions may
not be displayed.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
groups.
l Limit the number of roles assigned to a user to prevent conflicting permissions.
WARNING: Do not delete the built-in Job Target folder in the root folder. You
can rename this folder if desired.
Important: Do not delete or rename the built-in Images and Reusable Objects
folders in the root folder.
Important: After installing Spectrum and before you create any objects, you
should rename the root folder (initially named Default) to something relevant to
your organization. In a multi-site deployment2, the name of the root folder must
be the same at the headquarters (HQ) and at each facility associated with that HQ.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
If you have not already created a folder or folders in which to store user accounts and groups,
you should do so. This approach allows you to assign basic access permissions to all users or all
groups by assigning permissions to the folders.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
To create a folder in which to store user accounts, use the following procedure.
1. In Access Control, click an existing folder, and then click Add Folder.
2. On the Folder Info tab, enter a Folder Name, such as User Accounts, and a
Description, and then click Save Folder. An additional tab is displayed.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are
limited to 255 characters.
3. Click the Folder Access tab. For any user account created in this folder, the Users row
allows you to manage who can view the user name in reports and dialog boxes in
Spectrum and who can make changes to the user account.
4. In the Default Permissions table, select Read permission for Users.
5. Click Save Folder.
Create a Folder for Groups
If you have not already created the group to which you want to assign a user, you should do so.
In a particular group, you might include each Document Designer 1 who works on a particular
product so that you can limit access to labels by product, or each Data Provider 2 associated
with a particular office so that you can configure an appropriate default device.
To create a group and assign a role that grants role-based permissions3 to users who are
members of that group to perform actions on some types of objects, use the following
procedure.
1. In Access Control, click the folder that you created for storing groups, and click Add
Group.
2. On the Group Info tab, enter a Group Name and a Description, and then click Save
Group. Additional tabs are displayed.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are
limited to 255 characters.
3. Click the Group Access tab. This tab allows you to manage who can view the group
name, make changes to the group, or delete the group.
4. In the Default Permissions table, select the Read check box to grant Read access for
Groups. This allows the name of the group to be displayed to all users.
5. Click the Roles tab.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
6. From the Roles tree, drag a role to the Role Membership table to assign it to all
members of the group. As a best practice, it is recommended that you minimize the
number of roles that you assign to a group or to a user to ensure that you do not assign
conflicting permissions.
n To create a group for users responsible for designing and editing label templates
and layouts, assign the Document Designer role. By default, the following pages
are displayed to users with this role:
Design, Print, Status, and User Preferences.
Note: If you want Document Designers to be able to delete label
templates, layouts, images, and folders, you must edit the Document
Designer role to add access to Access Control.
n To create a group for users responsible for providing data to be printed on labels,
either interactively through forms or by using an automated source, assign the
Document Printer role. Users with this role are referred to as Data Providers. By
default, the following pages are displayed to users with this role:
Print, Status, and User Preferences.
Note: To use Print Preview, a user should have a role with Print
permission for Documents, have Print permission for Documents for
folders containing label templates and images to be previewed, and
have Allow Print Preview selected in User Preferences.
n To create a group for users responsible for administering Spectrum, assign the
LocalAdmin role. This role includes most administrator permissions as well as all
of the permissions for a Document Designer and a Data Provider. By default, all
pages are displayed to users with this role.
n To create a group for users responsible for configuring roles, configuring access
for users with the Local Admin role, and administering Spectrum, assign the
LocalAdmin role and the ROLE_ADMINISTRATOR role. This combination
of roles provides permissions similar to that of the SuperAdmin user.
n To create a group for user accounts that act as the Run As users for integrations,
assign the Integration role. Such user accounts are typically not logged onto by an
interactive Spectrum user.
Note: To grant role-based permissions to users, you must assign a role. To
ensure that users have necessary permissions, it is recommended that you
use the built-in roles provided with Spectrum as they are. However, you can
create new roles or modify the built-in roles as needed if you have the Local
Admin and ROLE_ADMINISTRATOR roles or are using the SuperAdmin
user account.
7. Click Save Group.
Note: You can assign existing users to a group on the Users tab for the Group or
on the Groups tab for the User, whichever is convenient. Both tabs will show that
the user is a member of the group.
If you have not already created a folder to serve as a work area for users in this group, you
should do so. Merely granting a user role-based permissions for some types of objects does not
allow that user to access folders and other objects unless those folders and objects also grant the
user access.
Note: Although you can grant access to objects individually, it is typically more
efficient to grant access to the folder containing the objects so that objects
currently in the folder and objects created in the folder in the future can inherit
permissions for that type of object from the folder.
To provide a group of users with access to a work area, use the following procedure to create a
folder in Spectrum and grant object access permissions1 at the folder level.
1. In Access Control, click an existing folder, and then click Add Folder to create a folder
to serve as a work area.
2. On the Folder Info tab, enter a Folder Name and a Description.
3. If any version-controlled objects will be stored in this folder, consider turning on
Version Control.
Important: You cannot change the Version Control setting after you save
the folder.
4. Click Save Folder. An additional tab is displayed.
1Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
5. Click the Folder Access tab. For any type of objects that you want to allow in this
folder, grant appropriate access to that type of object for any groups of users whom you
want to act on the objects.
Note: If there are permissions to use objects in this folder that you want to
make available to all users who access this folder, configure those
permissions in the Default Permissions table. However, the user can only
perform the action if the user also has the corresponding role-based
permission.
Note: To use Print Preview, a user should have a role with Print permission
for Documents, have Print permission for Documents for folders containing
label templates and images to be previewed, and have Allow Print Preview
selected in User Preferences.
Example: Access for Document Designers
If you want to allow Document Designers to create and edit label templates and
layouts in this folder, from the Users and Groups tree drag a group that you created
for Document Designers to the User/Group table. A permissions table is displayed
for that group. In the table, grant at least the following permissions. You do not have
to explicitly grant a permission if it is inherited from the folder's parent folder.
Desig
Rea Writ Creat Delet Admi Lis Pri Publis Repri Queu
Type n
d e e e n t nt h nt e
Print
Folders
Users
Groups
Roles
Documen
ts
Device
Groups
Servers
Jobs
Processes
Integratio
ns
Data
Services
Desig
Rea Writ Creat Delet Admi Lis Pri Publis Repri Queu
Type n
d e e e n t nt h nt e
Print
User
Profiles
Remote
Sites
Facility
Example: Access for Data Providers
If you want to allow Data Providers to enter data for and print labels in this folder,
from the Users and Groups tree drag a group that you created for Data Providers to
the User/Group table. A permissions table is displayed for that group. In the table,
grant at least the following permissions. You do not have to explicitly grant a
permission if it is inherited from the folder's parent folder.
Desig
Rea Writ Creat Delet Admi Lis Pri Publis Repri Queu
Type n
d e e e n t nt h nt e
Print
Folders
Users
Groups
Roles
Documen
ts
Device
Groups
Servers
Jobs
Processes
Integratio
ns
Data
Services
User
Profiles
Remote
Sites
Desig
Rea Writ Creat Delet Admi Lis Pri Publis Repri Queu
Type n
d e e e n t nt h nt e
Print
Facility
Example: Access for Run As Users for Integrations
If you want to allow Run As users for integrations to run integrations, processes, and
business rules that are saved in this folder, from the Users and Groups tree drag a
group that you created for these users to the User/Group table. A permissions table
is displayed for that group. You do not have to explicitly grant a permission if it is
inherited from the folder's parent folder.
Note: If the process or business rule associated with an integration
performs actions that require additional permissions, you must ensure
that those permissions are granted to the Run As user.
Desig
Rea Writ Creat Delet Admi Lis Pri Publis Repri Queu
Type n
d e e e n t nt h nt e
Print
Folders
Users
Groups
Roles
Documen
ts
Device
Groups
Servers
Jobs
Processes
Integratio
ns
Data
Services
User
Profiles
Remote
Sites
Facility
Note: For a job target folder, the Run As user requires different
permissions. For more information, see " Configure a Job Target Folder"
on page 1045.
6. Click Save Folder.
After you have created groups and assigned roles to those groups, you can assign group
memberships to users.
To create a user account and assign a group membership to that user, use the following
procedure.
1. In Access Control, click the folder that you created for storing user accounts, and click
Add User.
2. On the User Info tab, enter a User Name and other user-specific information, and then
click Save User. Additional tabs are displayed.
Note: A User Name can include letters and numbers. Additionally, the
following characters are permitted but cannot begin or end the name:
hyphens, underscores, and periods.
Note: Because the user account inherits the Read permission for Users that
you configured at the folder level, it is not necessary to configure
permissions on the User Access tab.
3. Click the Groups tab.
4. From the Groups tree, drag the name of a group that you created to the Group
Membership table to give the user membership in that group.
Note: You can assign existing users to a group on the Users tab for the
Group or on the Groups tab for the User, whichever is convenient. Both
tabs will show that the user is a member of the group.
5. Click Save User.
Note: For ease of management, it is recommended that you assign roles to groups
rather than directly to each user. If a role is assigned to a group, users who are
members of that group inherit the permissions provided by that role. However, the
role is displayed only on the Roles tab for the group, not on the Roles tab for the
user.
1The ability to maintain distinct versions of a label template or other item. An item is checked out to be modified, and checked in to
save a new version. After a version is checked in, that version cannot be changed.
Considerations
Objects that you create in a folder inherit permissions from that folder. As noted above, a
subfolder does not inherit the Version Control setting of the parent folder.
Best Practices
To simplify maintenance, it is recommended that you configure the Access Control List (ACL)
for each folder and allow objects within the folder to inherit the ACL of the folder.
Existing objects can be moved to new folders in Spectrum. You can also use Save As in Design
to copy an existing label template, layout, or image to another folder.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
Consider keeping label templates, forms, layouts, images, reusable objects, applications, business
rules, and workflow templates within separate folders and configuring the Access Control List at
the folder level. You can create version-controlled subfolders within the Reusable Objects
folder to permit the creation of version-controlled reusable objects.
Provide Document Designers with Read permission for Documents in the Reusable Objects
folder, the Images folder, and their subfolders so that Document Designers can view and use
the reusable objects and images in those folders.
WARNING: Do not delete the built-in Job Target folder in the root folder. You
can rename this folder if desired.
WARNING: Do not delete, rename, or move the built-in Images and Reusable
Objects folders in the root folder.
Create a Folder
If you have the necessary permissions, you can add a folder and configure permissions in Access
Control.
1. Click Access Control.
2. In the Access Control pane, click the folder under which you want to create the new
folder.
3. Click Add Folder. The Folder Info tab is displayed, and the folder appears in the
Access Control tree.
4. Enter a Folder Name. Folder names are case sensitive.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are
limited to 255 characters.
5. Enter a Description of the folder.
6. Specify whether Version Control will be turned on for objects saved in the folder.
Note: You cannot change the Version Control setting after you save the
folder for the first time.
7. Click Save.
The Folder Access tab is displayed. You can now configure access permissions for this folder.
Configure Access to a Folder
To manage access to the folder, use the Folder Access tab.
1. Click the Folder Access tab.
2. Define the Access Control List (Default Permissions).
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
3. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 2.
4. Click Save.
You may be able to create folders when you are saving new labels, layouts, or images or renaming
labels or layouts.
To create a folder while saving a label or layout, use the following procedure.
1. Click Design, and create a new label or layout or open an existing label or layout.
2. Click File > Save As, or, if you are creating a new label or layout, click the Save icon
on the toolbar.
3. Click the folder in which you want to create a new folder.
4. Click Add Folder. The Add New Folder dialog box is displayed.
a. Enter a Folder Name. Folder names are case sensitive.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses,
square brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-
colons, and tildes. Additionally, the following characters are permitted but cannot
begin or end the name: spaces, double quotes, single quotes, hyphens,
underscores, periods, and grave accents. For letters, the case that you specify is
displayed, but case is ignored when Spectrum interprets a name.
b. Enter a Folder Description.
c. Specify whether Version Control will be turned on for objects saved in the
folder.
Note: You cannot change the Version Control setting after you
save the folder for the first time.
d. Click Save.
5. To save the label or layout in the new folder, click the new folder.
6. Enter a name for the label or layout in the Name field.
7. Click OK.
Note: If you need to grant access and permissions to other users, you (or a user
with Access Control permissions) must use Access Control to modify the
properties of the folder. By default, objects created in the new folder are accessible
only to the user creating the folder.
Configuring Roles
Roles are sets of permissions that can be assigned to users or groups. The permissions enable
users or groups to perform specific functions within LoftwareSpectrum.
Note: Spectrum includes several pre-configured roles that you can use to grant
access to users and groups. You can use these roles as they are, or modify them to
suit your needs. For more information, see " Role Permissions" on page 684.
You can create roles to match the various business and job functions of your users. To create
roles, you assign appropriate permissions.
You then assign users and groups to the roles you define. In this way, permissions are not
assigned directly to users which can simplify user management.
Role names are case sensitive.
The Access Control List (ACL) of a role determines which actions can be performed on the role
itself.
Exceptions
The ACL is also used to set exceptions to the default access permissions. An exception can be
used to specify a certain user or group that needs different access to a role than most other users.
For example, you could allow all users to read roles, but only certain users to create them.
Permissions
An object in Spectrum is an item on which you can perform an action. To define a role, you
select objects and then grant or deny permissions to those objects.
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
Best Practices
Configure permissions for roles, assign roles to groups, and add users to the group.
Note: Although a user inherits the roles of a group in which the user has
membership, those roles are displayed only on the Roles tab for the group, not on
the Roles tab for the user or the Users tab for the role.
To create a new role or modify an existing role, use the following procedures.
Note: When creating or modifying a user or a group, you can use the Roles tab to
add or remove roles for that user or group. Although a user inherits the roles of a
group in which the user has membership, those roles are displayed only on the
Roles tab for the group, not on the Roles tab for the user or the Users tab for the
role.
To configure information about the role, use the Role Info tab.
1. Enter a Role Name. Role names are case sensitive.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
2. Enter a role Description.
3. Click Save.
Manage Access to the Role
To control who can do what to this role, use the Role Access tab.
To assign permissions to a role, use the Permissions tab. These are the actions that a user with
the role can perform.
1. Click an existing role, or create a new role.
2. Click the Permissions tab.
3. In the Page access management section, select the pages in the Spectrum user
interface that should be displayed to users with this role.
Note: If multiple roles are assigned to a user, any tab displayed for any of
the roles is displayed for the user.
4. If you are a user who has the ROLE_ADMINISTRATOR role, select the Do not allow
Local Administrator to assign this role to other users check box if desired.
5. In the Permissions Management section, select a type of object1 from the Select
Entity field, and click Add Permissions. The object is added to the Entity table, and
the available permissions are displayed in the Permission table that follows the Entity
table.
6. Click Grant or Deny.
7. In the Permissions table, select the appropriate permissions for the object.
8. Click Save.
Best Practices
If you are using folders to store objects, be sure to grant at least the Read
permission for folders.
Assign the Role to Groups
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
Considerations
Best Practices
Configure permissions for roles, assign roles to groups, and add users to the group.
Note: Although a user inherits the roles of a group in which the user has
membership, those roles are displayed only on the Roles tab for the group, not on
the Roles tab for the user or the Users tab for the role.
To control who can do what to the group, use the Group Access tab.
1. Click the Group Access tab.
2. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
3. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 2.
4. Click Save.
Assign Roles to the Group
Considerations
Best Practices
Configure permissions for roles, assign roles to groups, and add users to the group.
Important: It is recommended that you grant Read permission for Users to all
users. If a user does not have Read permission for Users, User - Access Denied is
displayed in place of the user name in Status and elsewhere in Spectrum.
Note: Although a user inherits the roles of a group in which the user has
membership, those roles are displayed only on the Roles tab for the group, not on
the Roles tab for the user or the Users tab for the role.
To create a new user or modify an existing user, use the following procedures.
Create or Modify a User
To control who can do what to this user account, use the User Access tab .
1. Click an existing user, or create a new user.
2. Click the User Access tab.
3. Define the default permissions for viewing or configuring the user.
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
Assign Group Memberships to the User
To change the password for the SuperAdmin user account, use this procedure.
Note: You cannot change the user name of the SuperAdmin user.
1. Log in to Spectrum using the user name SuperAdmin and the administrator password
that you were provided.
2. Click Access Control, and expand the Default folder.
3. Click the SuperAdmin user.
4. On the User Info tab, click Change Password. The Change Password dialog box is
displayed.
5. Enter a new password, and clear Force Change.
6. Click OK to save.
7. Click Logout, and then log in with the new password.
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
The Access Control List associated with the root folder can be used to define the base
permissions for your Spectrum instance 1.
Important: After installing Spectrum and before you create any objects, you
should rename the root folder (initially named Default) to something relevant to
your organization. In a multi-site deployment2, the name of the root folder must
be the same at the headquarters (HQ) and at each facility associated with that HQ.
1A Spectrum Application Server and a Spectrum Database Server that are associated with each other by a Spectrum License.
2A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
Best Practices
To simplify maintenance, it is recommended that you configure the Access Control List (ACL)
for each folder and allow objects within the folder to inherit the ACL of the folder.
To configure the default or root Access Control List (ACL), use this procedure.
1. Click Access Control.
2. Click the root folder, and click Folder Access. The Access Control List Management
for the folder is displayed.
3. Define the Access Control List (Default Permissions table):
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission, clear the check box to change the permission to
inherited .
4. Configure any exceptions to the Default Permissions:
a. To add a user or group as an exception, drag the user or group from the Users
and Groups tree at the right of the window to the User/Group table.
b. To change an exception, in the User/Group table, click the user or group.
c. In the Permissions table for the user or group, configure the Access Control List
for the user or group as in step 3.
5. Click Save.
Best Practices
Consider keeping label templates, forms, layouts, images, reusable objects, applications, business
rules, and workflow templates within separate folders and configuring the Access Control List at
the folder level.
When a label template, form, layout, image, reusable object, application, business rule, or
workflow template is created, its access control permissions are set to inherited. You can restrict
access to label templates, forms, layouts, images, reusable objects, applications, business rules,
and workflow templates by defining the Access Control List for the folder where they are saved.
Important: It is recommended that you assign Read permission for Documents to
all label templates, forms, layouts, images, reusable objects, applications, business
rules, and workflow templates.
Tip: For more about managing access to business rules and related objects, see
"Configuring Access for Processes and Business Rules" on page 1186.
To manage who can modify information about or delete a specific label template, form, layout,
image, reusable object, application, business rule, or workflow template, use the following
procedure to configure default permissions for accessing the label template, form, layout, image,
reusable object, application, business rule, or workflow template.
Note: Consider keeping label templates, forms, layouts, images, reusable objects,
applications, business rules, and workflow templates within separate folders and
configuring the Access Control List at the folder level. Always save reusable
objects in the Reusable Objects folder or a subfolder within it so that they can be
displayed in the Library in Design, and ensure that Document Designers have
Read permission for Documents for those folders.
Tip: For more about managing access to business rules and related objects, see
"Configuring Access for Processes and Business Rules" on page 1186.
1. Click Access Control.
2. Click the label template, form, layout, image, reusable object, application, business rule,
or workflow template, and click Document Access.
3. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
To manage who can view, change, or delete a specific device and view or change a device queue,
use the following procedure to configure default permissions for the device group.
Note: Consider keeping all device groups and devices within a folder and
configuring the Access Control List at the folder level.
1. Click Access Control
2. In the Access Control pane, expand the root folder, and then click the device group.
3. Click Device Group Access tab.
4. In the Device Groups row, define the default permissions for access to the device
group:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
Important: See "Configuring Device Queue Access" on page 612.
5. Configure any exceptions to the default permissions:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's permissions as in step 4.
6. Click Save Device.
Configuring Device Queue Access
Users with the appropriate permissions can start, stop, or pause a device queue, and cancel,
move, or release a specific print job or jobs in a queue. Use the following procedure to allow
users to view and perform actions on device queues.
1. For each applicable role, grant QUEUE (Q) permissions for Device Groups:
a. In Access Control , click a role, and then click Permissions. The Page access
management for the role is displayed.
b. In the Permissions Management section, click the Device Groups object with
the Grant action.
c. In the Grant table below, grant QUEUE (Q) permissions.
d. Click Save Role.
2. To allow a user or group to cancel print jobs in a device queue, grant Delete permissions
for Jobs on the Job Target folder ACL for each applicable user or group:
a. In Access Control, click the Job Target folder, and then click Folder Access.
The Access Control List Management for the folder is displayed.
b. Click or add the applicable user or group to the User/Group table.
c. In the Permissions table below, grant Delete permissions for Jobs.
d. Click Save Folder.
3. To allow a user or group to move print jobs from one device queue to another device
queue, grant Write permissions for Jobs on the Job Target folder ACL for each
applicable user or group:
a. In Access Control, click the Job Target folder, and then click Folder Access.
The Access Control List Management for the folder is displayed.
b. Click or add the applicable user or group to the User/Group table.
c. In the Permissions table below, grant Write permissions for Jobs.
d. Click Save Folder.
To manage who can view, change, or delete a specific process, use the following procedure to
configure default permissions for accessing the process.
Note: Consider keeping processes within a single folder and configuring the
Access Control List at the folder level.
1. Click Access Control.
2. Click the process, and click Process Access.
3. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
To manage who can view, change, or delete a specific integration, use the following procedure
to configure default permissions for accessing the integration.
Note: Consider keeping integrations within a single folder and configuring the
Access Control List at the folder level.
1. Click Access Control.
2. Click the integration, and click Integration Access.
3. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
To manage who can view, change, or delete a specific data service, use the following procedure
to configure default permissions for accessing the data service.
Note: Consider keeping data services within a single folder and configuring the
Access Control List at the folder level.
1. Click Access Control.
2. Click the data service, and click Data Service Access.
3. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
To manage who can view a specific SpectrumApplicationServer and who can manage
distributed services1, use the following procedure to configure default permissions for
accessing the SpectrumApplicationServer. For more information about environments with
multiple SpectrumApplicationServers, see "High Availability with Distributed Services" on
page 716.
Important! In an environment with distributed services, to permit a user to
perform administrative tasks related to services you must assign Read and Write
permissions for Servers. These permissions must be assigned for each server in
Access Control. Examples of administrative tasks related to services include
creating a data service, a device connection, or an integration. Core services can
only be configured by the SuperAdmin user.
1. Click Access Control.
2. Click the SpectrumApplicationServer, and click Server Access.
3. Define the Access Control List:
n To grant a permission, click once to change it to granted .
n To deny a permission, click twice to change it to denied .
n To inherit the default permission from the folder containing this object, clear the
check box to change the permission to inherited .
4. Configure any exceptions to the Access Control List:
a. Drag users or groups from the Users and Groups tree at the right of the window
to the User/Group table.
b. Define the exception's Access Control List as in step 3.
5. Click Save.
1Core services necessary to support essential Spectrum functionality. Additionally, device connections, data services, and
integrations also function as services if your Spectrum environment is configured to support distributed services. In a Spectrum
environment with distributed services, multiple Spectrum Application Servers are configured to interact as peers within the
Spectrum environment, all accessing the same Spectrum database.
Remove a SpectrumApplicationServer
6. If you are logged into Spectrum from the primary SpectrumApplicationServer, log
out and then log back into Spectrum. The SpectrumApplicationServer that you
specified has been removed from the Spectrum environment and is no longer
displayed in Access Control.
Tip: It is recommended that you install the Spectrum application and database at
each facility site before you create the facility object in Spectrum. Each facility site
can have only one SpectrumApplicationServer and one Spectrum Database
Server. Each facility site includes a Loftware-supplied embedded database. The
name of the root folder in Spectrum must be the same at the headquarters site and
at each facility site associated with that headquarters. The headquarters and facility
sites must be in the same WAN, but facilities are not required to be able to
communicate with each other.
Approaches
You can use either of the following approaches when configuring a multi-site deployment. The
primary difference between these approaches is whether printing is normally processed by
facilities or by the headquarters, and therefore whether a Data Provider 5 logs into a facility or
the headquarters to print.
Note: In a multi-site deployment6 of Spectrum, device connections can be
created only at headquarters. They can be replicated to facilities by using
synchronization, and they can be changed at facilities if allowed by the
configuration.
1A Spectrum Application Server and a Spectrum Database Server that are associated with each other by a Spectrum License.
2A geographical location, such as the location of a Spectrum instance or a remote computer.
3The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
4An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
5Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
6A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
connectivity with the headquarters is lost, label templates and other objects can be
modified at facilities until connectivity with headquarters is restored.
l An Administrator configures devices by logging into the headquarters, and configures
data services and integrations by logging into either headquarters or facilities. Devices are
configured at the headquarters, and connection information is entered for the facility. If
connectivity with the headquarters is lost, an administrator can modify data services and
devices at facilities until connectivity with headquarters is restored.
If objects are modified at a facility when connectivity with headquarters is lost, those changes
are not automatically replicated to headquarters. To replicate such changes to headquarters, you
can either make the changes at headquarters manually, or you can export objects from a facility
and import the objects to headquarters.
Processing Print Jobs at Headquarters
You can configure a multi-site deployment of Spectrum so that you can primarily manage
devices, label templates, and other objects from a headquarters, and process print jobs via the
headquarters to ensure that the most current job transaction data and device connectivity status
is maintained at the headquarters. Objects in a synchronized folder are replicated from the
headquarters to facilities. Workflows occur at the headquarters. Job data is generated at the
headquarters.
If a multi-site deployment is configured to process print jobs at headquarters, users typically do
the following:
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
connectivity with the headquarters is lost, label templates and other objects can be
modified at facilities until connectivity with headquarters is restored.
l An Administrator configures devices, data services, and integrations by logging into the
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Objects are replicated only from headquarters to facilities. If objects are created or altered at a
facility, they may be replaced or deleted during synchronization to provide the facility with the
most current configuration of objects from headquarters. However, to reduce the chance of
extensive accidental deletion, folders that are replicated from headquarters to facilities and are
later deleted from headquarters are not automatically deleted from facilities. Folders can be
manually deleted at facility sites.
If you do not want objects from headquarters to replace objects in some folders at the facility,
you can restrict which folders and which types of objects are synchronized if you have the
necessary permissions. You can also disable synchronization for an individual object, either at
the headquarters or at a facility.
Tip: In most cases, disabling synchronization for an object at a facility prevents
headquarters from synchronizing that object at that facility. However, if the object
is moved or renamed at the headquarters, then the object at the facility is likewise
moved or renamed, but is not otherwise altered. Also, if there is a conflict (not just
a difference) between the headquarters and a facility, the object configuration from
headquarters overrides that of the object at the facility as required to resolve the
conflict.
By default, built-in folders and built-in objects are not replicated. Also, facilities, Remote Sites,
and LDAP authentication information are not replicated.
If objects are modified at a facility when connectivity with headquarters is lost, those changes
are not automatically replicated to headquarters. To replicate such changes to headquarters, you
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
3An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
can either make the changes at headquarters manually, or you can export objects from a facility
and import the objects to headquarters.
Transaction Sync Replicates Transactional Data
Transactional data is replicated from facility to headquarters only. If you have configured a
facility so that printing is normally processed at the headquarters, there may not be much
transactional data produced at the facility.
Differences between Scheduled Sync and Manual Sync
When a scheduled sync occurs, only objects or transactional data that have changed since the
previous sync are replicated. When you manually initiate a sync, all specified objects or
transactional data are replicated, regardless of whether there have been any changes since the
previous synchronization.
Tip: It is recommended that you install the Spectrum application and database at
each facility site before you create the facility object in Spectrum. Each facility site
can have only one SpectrumApplicationServer and one Spectrum Database
Server. Each facility site includes a Loftware-supplied embedded database. The
name of the root folder in Spectrum must be the same at the headquarters site and
at each facility site associated with that headquarters. The headquarters and facility
sites must be in the same WAN, but facilities are not required to be able to
communicate with each other.
1An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
2A Spectrum Application Server and a Spectrum Database Server that are associated with each other by a Spectrum License.
3A geographical location, such as the location of a Spectrum instance or a remote computer.
4The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
b. For Facility Location, enter a description of the physical location of the facility.
The Facility Location is a comment intended to assist administrators and is not
used by Spectrum to identify or connect to the facility.
c. For Facility URL, enter the URL of the SpectrumApplicationServer at the
facility. Do not include the path to Spectrum within the
SpectrumApplicationServer.
Examples
The following example includes a typical non-secured access port.
http://<SpectrumHQ_Address>:8080
The following example includes a typical secured access port.
https://<SpectrumHQ_Address>:8443
d. If a load balancer manages the SpectrumApplicationServer for the facility, then
for Facility Response URL enter at the URL to connect to the load balancer that
manages the facility. If the facility is not managed by a load balancer, leave this box
blank. Use the same format as for the Facility URL.
e. For Print From HQ, indicate whether print jobs originating from the facility
should be processed by a SpectrumApplicationServer at the headquarters or at
the facility. If this check box is selected, then print jobs from the facility are
normally processed at the headquarters associated with this facility. If the facility
is unable to connect to the headquarters, then device queues at the headquarters
are stopped and the corresponding device queues at the facility are started so that
print jobs can be processed at the facility site.
f. Click Save Facility. The Facility Access, Facility Configuration, Facility
Sync, and Tags tabs are displayed.
3. To modify an existing facility, in the Access Control tree, click the facility.
a. Make any changes needed.
b. Click Save Facility.
In a multi-site deployment1 of Spectrum, you can specify which folders in Spectrum at the
headquarters (HQ)2 site should be replicated to a particular facility 3 site. You can either
begin with a specific facility and configure which folders should be replicated to it, or you can
begin with a folder and configure which facilities to replicate it to. For each folder, you can also
limit which types of objects are replicated. You can also configure whether a specific object is
replicated.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
To select folders to replicate to a specific facility, perform the following steps for each folder to
be replicated:
1. Click Access Control and navigate to the facility for which you want to configure
synchronization.
2. Click the Facility Configuration tab.
3. In the Configuration Sync box, click .
4. In the Select a Folder to Sync dialog box, select the highest level folder that you want
to replicate to the facility, and then click OK.
5. In the table, ensure that the folder you added is selected, and then click .
6. In the Select Object Types to Sync dialog box, select the types of objects that you
want to be replicate to the facility, and then click OK.
7. In the Recurse column, select the check box if you want objects in subfolders to be
synchronized. Otherwise, clear the check box.
8. In the Active column, ensure that the check box is selected to allow synchronization to
occur.
9. Click Save Facility.
Select Facilities to Sync with a Folder
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
3An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
To select facilities to which to replicate a specific folder, perform the following steps for each
facility to be replicated:
1. Click Access Control and navigate to the folder for which you want to configure
synchronization.
2. Click the Folder Sync tab.
3. In the Configuration Sync box, click .
4. In the Select a Facility to Sync dialog box, select a facility that you want to replicate the
folder to, and then click OK.
5. In the table, ensure that the facility you added is selected, and then click .
6. In the Select Object Types to Sync dialog box, select the types of objects that you
want to be synchronized with the facility, and then click OK.
7. In the Recurse column, select the check box if you want objects in subfolders to be
synchronized. Otherwise, clear the check box.
8. In the Active column, ensure that the check box is selected to allow synchronization to
occur.
9. Click Save Folder.
Customize Whether to Sync an Object
In general, it is recommended that you manage whether objects are synchronized at the level of a
folder, and then limit the types of objects synchronized as needed. However, it is possible to
manage synchronization for an individual object separately.
To manage whether an individual object can be synchronized, perform the following steps:
1. Click Access Control and navigate to the object for which you want to configure
synchronization.
2. Configure whether the objected can be synchronized.
n To allow the object to be synchronized, select the Synchronize check box.
n To prevent the object from being synchronized, clear the Synchronize check
box.
3. Click Save for the object.
Note: Even if you have selected the Synchronize check box, the object is
synchronized only if you have synchronized the folder in which the object exists.
Next Steps
You can schedule periodic replication of objects from headquarters to a facility, and periodic
replication of transactional data used for auditing from the facility to headquarters. Alternatively,
you can configure the synchronization for a facility to occur only when started manually. For
more information, see " Schedule Synchronization for a Facility" on page 633.
In a multi-site deployment of Spectrum, you can schedule periodic replication of objects from
headquarters (HQ)1 to a facility 2, and periodic replication of transactional data used for
auditing from the facility to headquarters. Alternatively, you can configure the synchronization
for a facility to occur only when started manually.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
You can either schedule periodic replication of objects from headquarters to a facility, or
configure replication to occur only if started manually.
To schedule replication of objects, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to configure
synchronization.
2. Click the Facility Configuration tab.
3. In the Configuration Sync box, specify the frequency for replication of objects.
Tip: If you want synchronization to occur only when explicitly started,
select Manual Only. If you want to configure a more complex schedule
than daily or every so many hours, select Cron Expression and enter a cron
expression for the schedule.
4. Click Save Facility to save and implement the schedule.
Schedule Synchronization of Transactional Data to Headquarters
You can either schedule periodic replication of transactional data used for auditing from the
facility to headquarters, or configure replication to occur only if started manually.
To schedule replication of transactional data, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to configure
synchronization.
2. Click the Facility Configuration tab.
1The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
2An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
3. In the Transaction Sync box, specify the frequency for replication of transactional data.
Tip: If you want synchronization to occur only when explicitly started,
select Manual Only. If you want to configure a more complex schedule
than daily or every so many hours, select Cron Expression and enter a cron
expression for the schedule.
4. Click Save Facility to save and implement the schedule.
Next Steps
You can specify which folders and objects may be synchronized. For more information, see "
Select Objects to Sync" on page 631.
In a multi-site deployment of Spectrum, you can manually initiate the replication of objects from
headquarters (HQ)1 to a facility 2, and the replication of transactional data used for auditing
from the facility to headquarters.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Synchronize Objects
1The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
2An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
You can manually initiate replication of transactional data used for auditing from the facility to
headquarters.
To initiate the replication of transactional data, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to configure
synchronization.
2. Click the Facility Sync tab.
3. In the Transaction Sync box, click Sync Now.
Tip: To stop a synchronization that is in progress from continuing, you can
click Abort Sync.
4. Review the result in the table. To view additional detail, click .
In a multi-site deployment1 of Spectrum, you can review the results of replication of objects
from headquarters (HQ)2 to a facility 3, and the results of replication of transactional data
used for auditing from the facility to headquarters.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Tip: You can review the results of synchronization in Access Control. However,
you can also review the results via System Management, allowing you to
delegate the responsibility for managing a multi-site deployment to users who do
not have access to Access Control.
You can review the results of replication of objects from headquarters to a facility.
To review the results, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to configure
synchronization.
2. Click the Facility Sync tab.
3. In the Configuration Sync box, review the table. There is a row with a unique Sync ID
for each time that synchronization is performed. The Status column indicates the current
status of each synchronization effort. The Trigger column indicates whether the
synchronization be scheduled or initiated manually.
4. To view additional detail, click .
Review the Synchronization of Transactional Data
You can review the results of replication of transactional data4 from the facility to
headquarters.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
3An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
4In a multi-site deployment of Spectrum, information about recent synchronizations that can be used for auditing. During a
transaction sync, this data can be replicated from a facility to headquarters.
Stop Synchronization
You can cancel a specific synchronization while it is in progress or turn off all future
synchronization.
Alternatively, you can turn off synchronization for a specific object, a type of object, or a folder,
or you can turn off all synchronization with a specific facility. You can do so either at the
headquarters or at a facility. For more information, see " Select Objects to Sync" on page 631.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
A synchronization takes effect on each object individually. You can cancel a synchronization
that is in progress, preventing any more objects from being synchronized. However, canceling a
synchronization does not undo the effects on objects already processed during that
synchronization.
To cancel a specific synchronization while it is in progress, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to cancel a
synchronization.
2. Click the Facility Sync tab.
3. In the table in the Configuration Sync box or the Transaction Sync box, click Abort
Sync.
4. Review the result in the table. To view additional detail, click .
Turn Off Transaction Synchronization for a Facility
You can turn off the replication of transactional data1 from a specific facility to headquarters.
To turn off synchronization of transactional data for a facility, perform the following steps:
1. Click Access Control and navigate to the facility for which you want to turn off
transaction synchronization.
2. Click the Facility Configuration tab.
3. In the table in the Transaction Sync box, click Disabled.
Turn Off Synchronization for All Facilities
To turn off synchronization for all facilities, perform the following steps:
1. Log on to the headquarters.
2. Click System Management. The Service Management pane is displayed.
1In a multi-site deployment of Spectrum, information about recent synchronizations that can be used for auditing. During a
transaction sync, this data can be replicated from a facility to headquarters.
3. To turn off all synchronization of objects to all facilities, click Entity Sync Services, and
click Stop Service.
4. To turn off all synchronization of transaction data from all facilities, click Transaction
Sync Services, and click Stop Service.
If your Spectrum license and your permissions permit, you can create a facility 1 object in
Spectrum to manage a facility site.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
When you click a facility in Access Control, the following tabs unique to facilities are available
in addition to the typical tabs for managing access and tags.
Facility Info
l Stopped
1An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
Property Description
Status Whether the facility service is online or unreachable.
This property is displayed only after the facility has been created.
The status can have the following values:
l Service Up: The service is online.
Property Description
Print From Whether print jobs originating from the facility should be processed by a
HQ SpectrumApplicationServer at the headquarters or at the facility.
This property can have the following values:
: Print jobs from the facility are processed at the facility site.
: Print jobs from the facility are normally processed at the headquarters
associated with this facility. If the facility is unable to connect to the
headquarters, then device queues at the headquarters are stopped and the
corresponding device queues at the facility are started so that print jobs
can be processed at the facility site. After connectivity is restored and
any print jobs already in device queues at the facility finish printing,
device queues at the facility are stopped and those at the headquarters are
started.
Created and Lists the date the facility was created or modified and the user who
Modified created or modified the facility.
These properties are displayed only after the facility has been created.
Facility Configuration
Controls to perform the following tasks are displayed on the Facility Configuration tab for a
facility:
lSchedule the replication of objects from headquarters to facility
l Specify folders and types of objects to be replicated from headquarters to facility
l Schedule the replication of transactional data used for auditing from the facility to
headquarters
For more information about what objects and transactional data are synchronized, see " What
Items Are Synchronized" on page 627.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Note: Controls for initiating, canceling, and viewing the status of synchronization
are available on the Facility Sync tab.
Property Description
Facility The path to the facility in Spectrum followed by the unique ID of the
Name facility.
Property Description
Configuration When to replicate synchronized objects from headquarters to the
Sync facility.
(frequency) The following options are available for scheduling synchronization:
l Manual Only
l Cron Expression
l Remove Folder
Transaction When to replicate transactional data used for auditing from the facility
Sync to headquarters.
The following options are available for scheduling synchronization:
l Disabled
l Manual Only
l
Every day at <time>
l Every <hours> hours
l Cron Expression
Facility Sync
The following controls are used to manage synchronization between the facility and the
headquarters with which it is associated. These controls are displayed on the Facility Sync tab
in Access Control when a facility is selected.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Property Description
Configuration Controls for initiating and canceling the replication of synchronized
Sync objects from headquarters to the facility, and information reported
about recent synchronizations.
Note: A synchronization takes effect on each object
individually. You can cancel a synchronization that is in
progress, preventing any more objects from being
synchronized. However, canceling a synchronization does
not undo the effects on objects already processed during
that synchronization.
The following commands are available:
l View History Details
l Refresh History
l Sync Now
l Abort Sync
l Sync Date
l Status
l Trigger
l Refresh History
l Sync Now
l Abort Sync
l Sync Date
l Status
l Trigger
1In a multi-site deployment of Spectrum, information about recent synchronizations that can be used for auditing. During a
transaction sync, this data can be replicated from a facility to headquarters.
Categorize an Object
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
Note: If a label template or other object is version controlled, you must check it
out before you can assign tags or change which tags are assigned. Each version of
the object can have different tags applied. However, you cannot change the tags
applied in a previous version of an object.
Tip: Each tag category has a name, and a static tag category has a list of associated
values. You can manage tag categories in System Management. For more
information, see "Tag Management" on page 766.
To categorize an object with tags in Access Control, use this procedure.
1. In Access Control, click a taggable object from the Access Control pane in the left
column.
2. Click the Tags tab, or for a version-controlled object that you have checked out, click
the Version Info tab.
3. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from an object does not delete the tag category
from Spectrum. You can add a new tag to the object and specify that
same category again.
4. Click Save for the object.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
Delete an Object
You can delete an object in Spectrum in Access Control. You must have the Delete permission
for an object to delete it.
Important: Access in Spectrum requires both role-based permissions1 and object access
permissions2. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
To delete an object in Access Control, use this procedure.
1. In the Access Control tree, click the object that you want to delete.
2. Perform one of the following actions:
n At the bottom of the window, click the Delete button.
n Right-click the object and select Delete.
Notes:
n A folder can only be deleted if you have Delete permissions
for every object in the folder and its subfolders.
n If you attempt to delete a folder and it is not removed, the
folder may contain other folders or objects for which you do
not have List or Delete permissions.
3. When prompted, click Yes to delete the object.
The object is removed from your Spectrum environment.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Create a Link
You can create hard links, relative links, and fully-qualified links within your Spectrum
environment.
Tip: You can configure the permissions and tags for a link differently from those
for the target of the link.
To create a link to a folder or other object, use the following procedure:
1. Click Access Control, then navigate to the folder in which you want to create a link, and
click Create Link.
2. In the dialog box, select the target to which the link should point.
3. If the target of the link is a folder, specify whether the link is a hard link, a relative link,
or a fully-qualified link.
n Hard Link: This type of link is ID-based and will not break if the target of the
link is moved or renamed. To select this link type, leave the Hard Link check
box selected.
n Relative Link: This type of link is based on a relative path and will break if the
target of the link is moved or renamed. To select this link type, clear the Hard
Link check box and select the Relative check box.
n Fully-Qualified Link: This type of link is based on a fully-qualified path and will
break if the target of the link is moved or renamed. To select this link type, clear
both the Hard Link check box and the Relative check box.
4. Click OK.
5. On the Info tab, change the Link Name if needed. The name cannot be the same as
another object in the same folder.
6. Enter a description.
7. Click Save Link.
8. On the Access tab, change the object access permissions1 if needed. It is
recommended that you configure object access permissions at the folder level.
9. If the Tags tab is displayed, change the tags assigned to the link if needed.
10. If you have made changes on the Access tab or Tags tab, click Save Link.
1Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Manage access to the folders, users, groups, roles, devices, data services, processes, integrations,
label templates, forms, layouts, images, reusable objects, applications, business rules, and
workflow templates in LoftwareSpectrum.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
Folder
User
Group
Role
Device group
Facility
Remote Site
Label template
Form
Application
Reusable object
Layout
Image
Data service
Integration
Process
Business rule
Workflow Template
Server
JVM Process
Version-Controlled Objects
All objects within a folder with version control are version controlled, except objects of a type
for which version control is not supported. A version-controlled object may be displayed as an
icon showing a stack of the type of object. If the object is checked out, a lock icon is displayed.
Folder without version control
Folder with version control
Label template without version control
Label template with version control, checked in
Label template with version control, checked out
Links
A link is displayed as an icon that includes chain links combined with the icon for the type of
object to which the link points.
Image
Link to an image
Tip: You can configure the permissions and tags for a link differently from the
those for the target of the link.
Access Tab
The Access tab is used to configure who can access the object1 (entity) selected. The name of
this tab changes depending on the type of object selected.
Example
If a label template is selected, the tab is named Label Access. You configure
options on this tab to manage who can view, change, delete, or print by using the
label template.
Figure A.9: Access Control List for a label template named Product Label.
Permission Check Boxes
On each Access Control List are groups of check boxes for controlling access permissions. Each
check box has three states.
The permission is granted.
The permission is denied.
The permission is inherited from the folder containing the object.
User/Group Table
This table is used to define exceptions to the default permissions defined in the Access Control
List. An exception may be for a user or a group. For example, you may want to exclude all but
one user in a group from being able to delete a label template.
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
Types of Objects
When you create an object in Spectrum by clicking one of the Add buttons or when you click an
existing object, tabs and buttons with options and commands specific to that type of object are
displayed. Depending on your permissions and the object's permissions, some tabs and options
may be hidden. During the creation of an object, some tabs may not be displayed until you have
completed required fields and saved the object the first time.
Important: Access in Spectrum requires both role-based permissions1 and object access
permissions2. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
Best Practice
It is recommended that you configure permissions for roles, assign roles to groups,
and add users to the group.
Note: Although a user inherits the roles of a group in which the user has
membership, those roles are displayed only on the Roles tab for the group, not on
the Roles tab for the user or the Users tab for the role.
The following types of objects can be created and managed in Access Control.
Folder
Create, modify, or delete a folder in Spectrum. Additionally, you can copy the contents of the
folder to another folder. If you are logged onto a headquarters in a multi-site deployment of
Spectrum, you can select facilities to which the folder should be replicated.
Folder Info
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
Folder Access
Create an Access Control List (ACL) to manage who can view, change, or delete the folder.
Important: The options on this tab control who can configure this folder, not
what objects within this can access.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Folder Sync
If you are logged onto a headquarters in a multi-site deployment of Spectrum, select facilities
to which the folder should be replicated. You can specify that only certain types of objects be
replicated, specify whether objects in subfolders of this folder should be replicated, and
enable or disable replication of this folder to each facility.
For more information, see " Select Objects to Sync" on page 631.
Buttons
Add <Object>
Create a new link or a new object in the folder. You can create a link to an object in
Spectrum or create a subfolder, user, role, group, or facility.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled.
Some options are displayed only if you are logged on to the headquarters site.
Delete Folder
Remove the folder. To delete a folder and its contents, see " Delete an Object" on page 648.
WARNING: Do not delete the built-in Job Target folder in the root folder.
You can rename this folder if desired.
Role
Create, modify, or delete a role in Spectrum.
Role Info
Create an Access Control List to manage who can view, change, or delete the role.
Important: This ACL controls who can configure this role, not what users who
have this role can do. To give a user permissions to perform actions, it is
recommended that you use the Groups tab to assign this role to a group in
which the user has membership.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Permissions
Control what users to whom this role is assigned can see and do within Spectrum.
Page Access Management
Manage which pages in Spectrum are displayed to users to whom the role is assigned. If one
role provides a user with access to a page and another role does not, the page is displayed for
the user.
Note: To allow a LocalAdmin to assign the role and to manage page access, the
Do not allow LocalAdministrator to assign this role to other users check
box must be cleared. This option is displayed only to users with the ROLE_
ADMINISTRATOR role and the SuperAdmin user.
Permissions Management
Manage which permissions are granted or denied to users to whom the role is assigned.
Groups
Manage the group memberships assigned to the role. You can add the role to a group by
dragging the group from the Groups tree to the table. If a user is a member of a group to
which a role is assigned, then that user receives the permissions associated with that role.
Users
Manage the users to which the role is assigned. You can assign the role to a user by dragging
the user from the Users tree to the table.
Button
Delete Role
Remove the role. Users who inherited permissions from this role either because it was
directly assigned or because they were members of a group to which the role was assigned
lose those permissions.
Group
Create, modify, or delete a group in Spectrum.
Group Info
Create and modify the data that describes the group. You can apply a profile.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Group Access
Create an Access Control List to manage who can view, change, or delete the group.
Important: This ACL controls who can configure this group, not what
members of this group can access. To give members of this group permissions
to perform actions, use the Roles tab to add a role to which permissions have
been assigned.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Roles
Manage the roles assigned to the group. You can assign a role to the group by dragging the
role from the Roles tree to the table.
Users
Manage the users who have membership in the group. You can add a user to the group by
dragging the user from the Users tree to the table.
Button
Delete Group
Remove the group. This option is only available if no users are members of the group. Users
who inherited permissions and any default profile provided by the group lose those
permissions and settings when they are removed from the group.
User
Create, modify, or delete a user in Spectrum.
Important: It is recommended that you grant Read permission for Users to all
users. If a user does not have Read permission for Users, User-
AccessDenied is displayed in place of the user name in Status and elsewhere
in Spectrum.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
User Info
Create and modify the data that describes the user. You can apply a profile and specify
whether the user account is a local account or a domain account.
Note: A User Name can include letters and numbers. Additionally, the
following characters are permitted but cannot begin or end the name: hyphens,
underscores, and periods.
User Access
Create an Access Control List to manage who can view, change, or delete the user.
Important: The options on this tab control who can configure this user, not
what this user can access. To give this user permissions to perform actions, it is
recommended that you use the Groups tab to make the user a member of a
group to which a role has been assigned.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Groups
Manage the group memberships assigned to the user. You can add the user to a group by
dragging the group from the Groups tree to the table.
Roles
Manage the roles assigned to the user. You can assign a role to the user by dragging the role
from the Roles tree to the table.
Tags
Buttons
Delete User
Remove the Spectrum user account.
WARNING: Do not delete the jvmAdmin user. If the license for the
Spectrum instance has the Multi-Site property enabled, do not delete the
MultiSiteAdmin user.
Facility
Create, modify, or delete a facility 1 in Spectrum. For more information about facilities, see
"Configuring and Managing a Multi-Site Deployment" on page 624.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled.
Some options are displayed only if you are logged on to the headquarters site.
Tip: It is recommended that you install the Spectrum application and database
at each facility site before you create the facility object in Spectrum. Each
facility site can have only one SpectrumApplicationServer and one Spectrum
Database Server. Each facility site can use either an Oracle database or the
Loftware-supplied embedded database.
Facility Info
1An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
Configure the connection to a facility site and whether print jobs originating from the facility
are processed by a SpectrumApplicationServer at the headquarters site or at the facility site.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
For more information, see "Facility Info" on page 641.
Facility Access
Create an Access Control List to manage who can view, change, or delete the facility.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Facility Configuration
l Schedule the replication of transactional data used for auditing from the facility to
headquarters
For more information, see "Facility Configuration" on page 643.
Facility Sync
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Button
Delete Facility
Remove the facility object from the Spectrum environment. This does not uninstall the
Spectrum application or database from the facility site.
Start Facility
Start the service associated with the facility. This option is displayed only if the service is
stopped.
Stop Facility
Stop the service associated with the facility. This option is displayed only if the service is not
stopped.
The following types of objects can be managed, but not created, in Access Control.
Application
Modify information about or delete an application in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates.
Application Info
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Application Access
Create an Access Control List to manage who can view, change, or delete the form.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the form is in
a folder for which version control is turned on.
Version Info
Manage the revision history for the application and add or change tags assigned to the current
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the application is in a folder for which version control is turned on.
Tags
Add or change the tags assigned to the application. This tab is displayed only if the
application is in a folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Buttons
Delete Application
Remove the application from the Spectrum library.
Business Rule
Modify information about or delete a business rule.
Note: You cannot create business rules from Access Control.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Business Rule Access
Create an Access Control List to manage who can view, change, or delete the business rule.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Version Info
Manage the revision history for the application and add or change tags assigned to the current
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the application is in a folder for which version control is turned on.
Tags
Button
Delete Business Rule
Remove the business rule.
Data Service
Create an Access Control List to manage who can view, change, or delete the data service.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Tags
Button
Delete Data Service
Remove the data service.
Device
Modify information about or delete a device.
Note: You cannot create devices in Access Control, and devices are not
displayed in the AccessControl tree. However, the device group that contains
each device is displayed in the AccessControl tree.
Each device inherits the permissions of the device group that is its parent. You configure
permissions for devices at the device group level on the Device Group Access tab or by
configuring DeviceGroups permissions at the folder level on the FolderAccess tab, and at
the role level on the Permissions tab. You cannot separately configure the permissions for
an individual device, but you can separately configure the permissions for its device group.
It is recommended that you configure permissions for device groups, but do not configure
permissions for devices.
Device Group
Modify information about or delete a device group.
Create an Access Control List to manage who can view, change, or delete the device group
and view or change the device queue.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Tags
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Button
Stop Device Group
Stop the device group service. (Available only if the device group is running.)
Start Device Group
Start the device group service. (Available only if the device group is stopped.)
Form
Modify information about or delete a form in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates.
Form Info
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Form Access
Create an Access Control List to manage who can view, change, or delete the form.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the form is in
a folder for which version control is turned on.
Version Info
Manage the revision history for the form and add or change tags assigned to the current
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the form is in a folder for which version control is turned on.
Tags
Add or change the tags assigned to the form. This tab is displayed only if the form is in a
folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Buttons
Delete Form
Remove the form from the Spectrum library.
Image
Modify information about or delete an image in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, layouts, and images.
Note: All images intended to be available for use in Design should be saved to
the built-in Images folder or a subfolder. Otherwise, they will not appear in
the Library.
Image Info
Create an Access Control List to manage who can view, change, or delete the image.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the image is
in a folder for which version control is turned on.
Version Info
Manage the revision history for the image and add or change tags assigned to the current
version. Tags cannot be changed in a previous version. This tab is displayed only if the image
is in a folder for which version control is turned on.
Tags
Add or change the tags assigned to the image. This tab is displayed only if the image is in a
folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Button
Delete Image
Remove the image from the Spectrum library.
Integration
Modify information about or delete an integration.
Note: You cannot create integrations from Access Control.
Integration Info
Create an Access Control List to manage who can view, change, or delete the integration.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Tags
Button
Delete Integration
Remove the integration.
Job
Create an Access Control List to manage who can view, change, or delete the server process.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Label Template
Modify information about or delete a label template in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates.
Label Info
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Label Access
Create an Access Control List to manage who can view, change, or delete the label template.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the label
template is in a folder for which version control is turned on.
Version Info
Manage the revision history for the label template and add or change tags assigned to the
current checked-out version. Tags cannot be changed in a previously checked-in version.
This tab is displayed only if the label template is in a folder for which version control is
turned on.
Tags
Add or change the tags assigned to the label template. This tab is displayed only if the label
template is in a folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Buttons
Delete Label
Remove the label template from the Spectrum library.
Layout
Modify information about or delete a layout in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates.
Layout Info
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Layout Access
Create an Access Control List to manage who can view, change, or delete the layout.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the layout is
in a folder for which version control is turned on.
Version Info
Manage the revision history for the layout and add or change tags assigned to the current
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the layout is in a folder for which version control is turned on.
Tags
Add or change the tags assigned to the layout. This tab is displayed only if the layout is in a
folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Button
Delete Layout
Remove the layout from the Spectrum library.
Process
Modify information about or delete a process.
Note: You cannot create processes in Access Control.
Process Info
Create an Access Control List to manage who can view, change, or delete the process.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Version Info
Manage the revision history for the application and add or change tags assigned to the current
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the application is in a folder for which version control is turned on.
Tags
Button
Delete Process
Remove the process.
Remote Site
Modify information about or delete a Remote Site 1.
Note: You cannot create Remote Sites from Access Control.
Create an Access Control List to manage who can view, change, or delete the Remote Site.
User/Group Table
1An object in Spectrum that represents the location of a remote computer. The Remote Print Agent must be installed on the
remote computer so that it can communicate with the Spectrum Application Server and make devices at that location available in
Spectrum. Each Remote Site can communicate with only one Spectrum Application Server.
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Tags
Button
Delete Remote Site
Remove the Remote Site.
Reusable Object
Modify information about or delete a reusable object in Spectrum.
Important: It is recommended that you grant Read permission for Documents
to all label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates.
Note: All reusable objects intended to be available for use in Design should be
saved to the built-in Reusable Objects folder or a subfolder. Otherwise, they
will not appear in the Library.
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
In a multi-site deployment of Spectrum, you can turn synchronization for this object on or
off individually. For more information, see " Select Objects to Sync" on page 631.
Reusable Object Access
Create an Access Control List to manage who can view, change, or delete the reusable object.
Note: All label templates, forms, layouts, images, reusable objects, applications,
business rules, and workflow templates are managed by using access
permissions for Documents.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
DefaultPermissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
Note: The Publish permission for Documents is displayed only if the reusable
object is in a folder for which version control is turned on.
Version Info
Manage the revision history for the reusable object and add or change tags assigned to the
checked-out version. Tags cannot be changed in a previously checked-in version. This tab is
displayed only if the reusable object is in a folder for which version control is turned on.
Tags
Add or change the tags assigned to the reusable object. This tab is displayed only if the
reusable object is in a folder for which version control is turned off.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process, remote site,
reusable object, user, or workflow template. For a version-controlled object, tags cannot be
changed in a previously checked-in version.
Tip: You can create a tag category or change the list of values associated with a
tag category in System Management. For more information, see "Tag
Management" on page 766.
Buttons
Server Info
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
Optionally, you may enter the expected IPAddress and DNS Alias of the server. If you
enter a value in both fields, the DNS Alias value will be checked first. This can be useful in
a Spectrum environment configured to use distributed services or for users who might access
Spectrum through a VPN. If the DNS Alias does not match or no value was entered, then
the IP Address value will be checked.
Server Access
Create an Access Control List to manage who can view, change, or delete the
SpectrumApplicationServer from the Spectrum environment.
Important! In an environment with distributed services, to permit a user to
perform administrative tasks related to services you must assign Read and Write
permissions for Servers. These permissions must be assigned for each server in
Access Control. Examples of administrative tasks related to services include
creating a data service, a device connection, or an integration. Core services can
only be configured by the SuperAdmin user.
User/Group Table
A list of the users and groups that are exceptions to the default permissions described in the
Default Permissions table. You can add a user or group to the ACL by dragging a user or
group from the Users and Groups tree.
The object access permissions1 that a user is granted or denied in Access Control Lists
(ACLs) can be directly assigned to that user, inherited from a group in which the user has
membership, or inherited from the Default Permissions for the object.
Important: Access in Spectrum requires both role-based permissions2 and object access
permissions3. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
In Spectrum, object access permissions are specific to a type of object. For example, instead of a
generic Create permission, there is a separate Create permission for each type of object, such as
Create permission for Folders, Create permission for Users, Create permission for Documents,
and Create permission for Data Services. Users assigned particular role may be granted Create
permission for Documents, but denied Create permission for Integrations.
The following permissions exist in Spectrum. All of these permissions can be configured for a
folder and inherited by objects within the folder. Alternatively, the permissions that are relevant
to a specific object can be configured for that object.
Permissions
Permission Code Description
Read R The permission to see an object.
Note: When configuring a user, it is recommended that
you grant Read permission for Users to all users so that
the user name of the user can be displayed to other users
where appropriate in Spectrum.
1Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
2Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
3Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
3When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
4When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
Permissions for the following types of objects can be configured at the folder level and inherited
by all objects in the folder. Although configuring object access permissions at the folder level is
recommended, you can also configure object access permissions for a specific object.
Types of Objects (Entities)
Object Permissions
Description
(Entity) Available
Folders Containers used to organize objects. R, W, C, D,
A, L
Users People accessing the Spectrum environment. R, W, C, D,
Note: When configuring a user, it is A
recommended that you grant Read permission for
Users to all users so that the user name of the user
can be displayed to other users where appropriate
in Spectrum.
Groups Collections of users. R, W, C, D,
A
Roles Collections of permissions that can be associated with users or R, W, C, D,
groups. A
Documents Objects such as label templates, forms, layouts, images, R, W, C, D,
reusable objects, applications, business rules, and workflow A, PR, T,
templates. PB, RP
Note: Publish permission for Documents is
available only for a folder or a version-controlled
object.
Object Permissions
Description
(Entity) Available
Device Collections of connections to one or more physical devices. R, W, C, D,
Groups Note: A device group can contain only one A, PR, T,
device connection. RP, Q
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Object Permissions
Description
(Entity) Available
Data Connections to databases that can be used to retrieve data from R, W, C, D,
Services databases. A, PR, T
Note: To use a data service when designing a
label or to print a label that includes a Database
data source, a user must have a role that provides
Read and Print permissions for Data Services for
the data service.
User Collections of preferences, typically controlling what is initially R, W, C, D,
Profiles displayed to a user on various pages in Spectrum. A
Remote Connections to computers that have access to devices that are R, W, C, D,
Sites not directly accessible by a SpectrumApplicationServer. A
Facility Connections to and configuration for Spectrum installations R, W, C, D,
that are managed by a headquarters. Each facility is associated A
with a Spectrum license for which Usage is set to Facility.
Note: Facilities and other functionality related to
multi-site deployment are available only if your
Spectrum license has the Multi-Site property
enabled. Some options are displayed only if you
are logged on to the headquarters site.
Role Permissions
In Spectrum, role-based permissions are specific to the type of object. For example, instead of a
generic Create permission, there is a separate Create permission for each type of object, such as
Create permission for Folders, Create permission for Users, Create permission for Documents,
and Create permission for Data Services. Users assigned particular role may be granted Create
permission for Documents, but denied Create permission for Integrations.
Important: Access in Spectrum requires both role-based permissions1 and object access
permissions2. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
The following roles are installed with LoftwareSpectrum. You can create additional roles or
make changes to the built-in roles.
Built-in Roles
Role Description
Document Designer This role is granted the permissions needed to create labels and
layouts and import images. Permissions include Read for everything
except Groups, Roles, and Tag Categories; Create for Documents,
Folders, and Jobs; Write and Delete for Documents and Folders; and
Print and Design Print permissions for Documents, Data Services,
Device Groups, Jobs, and Processes; and Print permission for JVM
Processes.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Role Description
Document Printer
This role is granted the permissions needed to act as a Data
Provider 1 so that the user can read and print labels and other
documents. Permissions include Read for everything except Groups,
Roles, and Tag Categories; Create permission for Jobs; and Print
permission for Documents, Data Services, Jobs, Device Groups, and
Processes.
Integration This role or equivalent permissions are required by any user account
that is selected as the Run As user for an integration. Such accounts
are typically not interactive. Permissions include Create for Jobs and
Read for Data Services, Device Groups, Documents, Folders,
Integrations, ModelStatus (AutoRefresh), and Users. Also, Print
permission for Data Services, Documents, Device Groups,
Integrations, Jobs, and Processes.
Local Admin This role is granted all permissions except for those needed for role
administration, for reprinting, and for deleting servers and server
processes in a distributed services environment. The LocalAdmin
role includes the permissions necessary to act as a Data Service
Administrator 2.
JVM_ This role or its equivalent is required by the jvmAdmin user for
MANAGEMENT internal product management. You do not need to assign it to any
users.
MULTISITE_ This role or its equivalent is required by the MultiSiteAdmin user for
MANAGEMENT internal product management of multi-site deployments of Spectrum.
You do not need to assign it to any users.
ROLE_ This role is granted only the permissions needed to create, modify,
ADMINISTRATOR and delete other roles. It cannot be altered, and its permissions are
not displayed. You can assign this role to a user who already has the
Local Admin role to enable that user to modify roles and configure
the Do not allow Local Administrator to assign this role to other
users check box on the Permissions tab for a role.
Note: Only the SuperAdmin user can remove this role
from a user.
The following permissions exist in Spectrum, but not all of these permissions are available for all
types of objects.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
Permissions
Permission Code Description
Read R The permission to see an object.
Note: When configuring a user, it is recommended that
you grant Read permission for Users to all users so that
the user name of the user can be displayed to other users
where appropriate in Spectrum.
Write W The permission to save changes to an object.
Tip: Document Designers who import label templates,
forms, layouts, reusable objects, or applications should
have Create permission for Documents and Write
permission for Documents. Create permission is required
for importing into a folder where an object of the same
name does not exist. Write permission is required for
importing into a folder where an object of the same name
already exists.
Create C The permission to add an object.
Tip: Document Designers who import label templates,
forms, layouts, reusable objects, or applications should
have Create permission for Documents and Write
permission for Documents. Create permission is required
for importing into a folder where an object of the same
name does not exist. Write permission is required for
importing into a folder where an object of the same name
already exists.
Delete D The permission to remove an object.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
Object Permissions
Description
(Entity) Available
Documents Objects such as label templates, forms, layouts, images, R, W, C, D,
reusable objects, applications, business rules, and workflow A, PR, T,
templates. PB, RP
Note: Publish permission for Documents is
available only for a folder or a version-
controlled object.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Object Permissions
Description
(Entity) Available
JVM Processes The server processes associated with a R, W, D, A,
SpectrumApplicationServer in a Spectrum environment PR
configured to use distributed services. A server can contain
a server process. Each server process inherits the
permissions of the server that is its parent.
ModelStatus Real-time updates to objects in Spectrum so that if multiple R, A
(AutoRefresh) users are logged on and one user makes a change to an
object, that change is visible to all users. Otherwise, changes
would not be visible to other users until the next time each
user logs into Spectrum or performs an action such as
clicking a Refresh button or re-opening a label.
Important: In most situations, you should
assign Read permission for ModelStatus
(AutoRefresh) to all users as a role-based
permission. Unlike most permissions, there are
no object access permissions for ModelStatus
(AutoRefresh).
Devices Physical devices used to print labels. R, W, C, D,
Note: It is recommended that you configure A, PR, T, RP
permissions for device groups, but do not
configure permissions for devices. Each device
inherits the permissions of the device group
that is its parent. You configure permissions
for devices at the device group level on the
Device Group Access tab or by configuring
Device Groups permissions at the folder level
on the Folder Access tab, and at the role level
on the Permissions tab. You cannot separately
configure the permissions for an individual
device, but you can separately configure the
permissions for its device group.
Device Collections of connections to one or more physical devices. R, W, C, D,
Groups Note: A device group can contain only one A, PR, T,
device connection. RP, Q
Object Permissions
Description
(Entity) Available
Processes Collections of label templates, layouts, devices, and jobs. R, W, C, D,
Note: A single process contains a single job. A, PR, T
When defining a role for a Data Provider 1,
you must assign the Read and Print
permissions for Processes.
Remote Sites Connections to computers that have access to devices that R, W, C, D,
are not directly accessible by a SpectrumApplicationServer. A
Facility Connections to and configuration for Spectrum installations R, W, C, D,
that are managed by a headquarters. Each facility is A
associated with a Spectrum license for which Usage is set
to Facility.
Note: Facilities and other functionality related
to multi-site deployment are available only if
your Spectrum license has the Multi-Site
property enabled. Some options are displayed
only if you are logged on to the headquarters
site.
Roles Collections of permissions that can be associated with users R, W, C, D,
or groups. A
Servers A SpectrumApplicationServer in a Spectrum environment R, W, C, D,
configured to use distributed services. A server contains a A, PR
server process, also called a JVM process.
Tag Categories Tag category names and the list of values associated with R, W, C, D
each name.
Important! Tag Categories permissions are
required for managing tag categories in System
Management. Assigning a tag to an object
requires permissions for that object, but does
not require Tag Categories permissions.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Object Permissions
Description
(Entity) Available
Users People accessing the Spectrum environment. R, W, C, D,
Note: When configuring a user, it is A
recommended that you grant Read permission
for Users to all users so that the user name of
the user can be displayed to other users where
appropriate in Spectrum.
User Profiles Collections of preferences, typically controlling what is R, W, C, D,
initially displayed to a user on various pages in Spectrum. A
User Info
Allowed Val-
Property Description Notes
ues
Local Whether the user account is internal to Yes/No
Account LoftwareSpectrum or a domain
account. If selected, the user account is
not a domain account.
Domain The name of the network domain on Text This option is
which a user is verified. available only if
Local Account
is cleared.
Must Whether the user must create a new Yes/No This option is
Change password the next time he or she logs in. available only if
Password Local Account
is selected.
Password Enter an initial password for the user. Alphanumeric The password
characters cannot begin or
Spaces end with a
The space, hyphen,
characters ( ) [ period, or
] & + - _ ~ , ; underscore.
. This option is
only available
during user
account creation
and only if
Local Account
is selected.
Allowed Val-
Property Description Notes
ues
Change Enter a new password for user and Alphanumeric The password
Password specify whether the user is required to characters cannot begin or
change the password the next time he or Spaces end with a
she logs in. The space, hyphen,
characters ( ) [ period, or
] & + - _ ~ , ; underscore.
. The Change
Password
button is
available only
after the
account is
created and only
if Local
Account is
selected.
Apply Whether to apply a user profile and, if so, Default
Profile which user profile. User profiles allow No Profile
you to customize what is initially <Custom
displayed to the user, which device is the Profile>
default, and default characteristics of
new labels. Profiles can be configured in
User Preferences.
Note: Only one profile can
be applied to a user at a
time.
Allowed Val-
Property Description Notes
ues
Created and Lists the date the user was created or User names These
Modified modified and the user who created or and dates properties are
modified the user. displayed only
after the user
has been
created.
Group Info
Allowed
Property Description Notes
Values
Created and Lists the date the group was created or modified User names These
Modified and the user who created or modified the group. and dates properties
are
displayed
only after
the group
has been
created.
Version Info
The following information and commands are available on the Version Info tab. The Version
Info tab is displayed only when an object that can be version controlled is in a folder for which
Version Control is On.
Version control is available for label templates, forms, layouts, images, reusable objects,
applications, business rules, processes, and workflows.
Status and Filter Properties
Version Table
Property Description
Version The version number of this version of the object.
Update For a checked-in object, the Version Control Comment entered by the
Description user who checked in this version of it.
For a checked-out object, the message "Checked Out to <UserName>."
Modified By The user name of the user who saved this version of the object.
Modification For a checked-in object, date and time when it was checked in.
Date For a checked-out object, date and time when it was checked out.
Tags Pane
The tags assigned to the selected version of the object. Each tag is listed using a format of
Category [Value]. For more about using tags, see "Categorize a Label Template or Other Object"
on page 105.
Right-Click Menu
These commands are displayed when you right-click the current version in the version table and
are applied to the selected version. This menu is not available for images.
Command Description Notes
Check In Save the current version of the Available only if the object is checked out
object and make the object and only to the user who checked it out or
available for publication or for to a user who has taken control of it.
others to check out.
Check Out Create a new, editable version of Available only if the object is checked in.
the object, increment the minor
version number, and prevent
others from changing the object
until it is checked in.
Undo Undo any changes made since the Available only if the object is checked
Check Out object was most recently checked out. If you are not the user who checked
out, and then check it in. it out, you must Take Control before you
can undo the check out.
Publish For promotion to production, Available only to users with Publish(PB)
create a new version of the object, permission for Documents. This
incrementing the major version command does not copy the object to a
number and setting the minor production folder.
version number to zero.
Undo Delete the published version (a Available only to users with Publish(PB)
Publish version for which the minor permission for Documents and only if the
version is zero) with the highest current version of the object is a
version number. published version.
Take If the user who checked out an Available only to users with Admin (A)
Control object is unavailable to check it in, permission for Documents. Any changes
change it to checked out to you saved by the user who checked out the
instead. object are retained. Changes that were not
saved are discarded.
Button Commands
Regardless of the version selected, these commands are applied to the entire object.
Command Description Notes
Delete Delete the object, including all versions. If you are using Available only
Document separate instances for development and production, the other if an object is
instance is not affected. selected.
Delete Delete the image, including all versions. If you are using Available only
Image separate instances for development and production, the other if an image is
instance is not affected. selected.
1The ability to maintain distinct versions of a label template or other item. An item is checked out to be modified, and checked in to
save a new version. After a version is checked in, that version cannot be changed.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Note: By default, users who have only the Document Designer 1 role do not
have Publish permission for Documents and must request that a Local Admin2
publish label templates to the production area.
Granting the permissions needed to support version control
By default, the Local Admin3 role is granted all role-based permissions related to version
control and is the only role that is granted Publish permission for Documents. The
Document Designer 4 role is granted the permissions needed to create, save, check in,
check out, and undo check out, as well as the permissions necessary to view and print
current and previous published versions and minor versions. The Document Printer 5 role
(intended for a Data Provider 6) is granted the permissions needed to print the most recently
published version. For more information, see "Version-Control Actions and Permissions" on
page 710.
Recognizing version-controlled items
Version-controlled folders are identified in console trees where they appear by the icon .
In a console tree, if a label template is checked out, it is identified by the icon . If
checked in, it is identified by the icon .
In Access Control, any version-controlled objectincludes a VersionInfo tab. For any
folder, the Folder Info tab displays the Version Control status of the folder.
Understanding version numbers
A major.minor numbering scheme is used to differentiate between published versions (major
versions) and minor versions of an object. Images have only published versions. Layouts
must be published before they are available for attachment to a label template.
The first time that an object is checked out, the Version is 0.1. The minor version is
incremented each time that a user checks out the object. Merely saving a version-controlled
object does not change its version.
When an object is published, its major version number is incremented and its minor version
number is set to zero. For example, if you have a label template with a version of 1.3,
publishing that label template creates a version 2.0.
Printing and version control
By default, the latest available version of a version-controlled object is selected when a user
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A Spectrum role with all permissions except those needed for role administration.
3A Spectrum role with all permissions except those needed for role administration.
4Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
5Person or process that acts as a Data Provider, entering data into a form or other data entry view for a document that was
configured by a Document Designer. Also a default role in Spectrum.
6Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
prints an object. However, the versions available for the user to print can be limited by the
user's permissions. If the user has Design Print permissions for Documents and for Device
Groups and Write permission for Documents (both as role-based permissions and object
access permissions), then the user can print any published version1 or minor version except
a version that is checked out to another user. Otherwise, the user can print only the latest
published version.
A Data Provider 2 typically has only the permissions necessary to view and print published
versions. For a Data Provider, the latest version is the latest published version.
If you are maintaining separate development and production areas, you can ensure that minor
versions of objects in the production folder are not printed by denying Design Print
permissions to the production folder.
Checking in a version
A checked-in version cannot be altered. The most recently published version3 can be rolled
back and deleted if no minor version has been checked in after that published version. If the
most recently published version is immediately preceded by other published versions, they
can also be rolled back and deleted. Other than those exceptions, although an entire object
can be deleted, individual versions of it cannot be deleted separately.
Checking out before making changes
As an administrator, before you can change the name or description of a version-controlled
object, you must check it out. Afterward, you must check in the object so that other users
can make changes to it.
Before a user begins making changes to a version-controlled object, the user should check it
out so that he or she will be able to save and check in changes when finished. Checking out
an object also prevents other users from making changes to it at the same time. If a user does
not check out a version-controlled object before changing it, that user must save his or her
changes to a new object to retain them. Otherwise, the changes will be discarded when the
object is checked out.
Note: Each version of an object can have different tags applied.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
Force a Check In
If you have Admin and Write permissions for Documents, you can take control of a version-
controlled object that someone else has checked out and check it in.
1. Click Access Control, and select the object in the Access Control tree.
2. Click the Version Info tab. In the version table, the Update Description of the latest
version contains an automated message indicating who checked out this version.
3. Right-click the most recent version and then click Take Control. The object is now
checked out to you, and the user name in the Update Description message changes to
your user name. (The user name listed in Modified By still lists the user who most
recently made changes to the object.)
4. Determine whether you want to retain changes that the previous user saved but did not
check in.
n To retain any changes that the previous user saved but did not check in, right-
click the most recent version again and click Check In.
n To discard any changes that the previous user did not check in, right-click the
most recent version again and click Undo Check Out.
5. In the Version Control Comment dialog box, enter a description of this version so that
you or another administrator can identify it if it should become necessary to roll back to
this version later, and then click OK.
The object is checked in, and the version table lists you as the user who modified this version.
If you need to roll back a published version1 of an object and if no minor versions were
checked in after the published version, use the following procedure. To avoid disruption, this
approach should only be used if no print jobs using the most recent version are active.
Note: This procedure deletes the version that it rolls back.
1. Click Access Control, and select the object in the Access Control tree.
2. Click the Version Info tab.
3. In the version table, right-click the most recent version and then click Undo Publish.
The most recently published version is deleted from the history and the version number
is rolled back to the previous version.
Note: In most cases, the most recent remaining version after you roll back is not a
published version. Because a user with only the Data Provider 2 role does not
have Design Print and Write permissions for Documents, any Data Provider who
attempts to print the label will print the latest published version, disregarding
unpublished versions with later version numbers.
1When version control is used, a version for which the minor version number is zero. Users with some permissions can print only the
latest published version.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
If you maintain separate development and production areas, you may never need to roll back to a
specific version in your production area. However, if you want to roll back to any previous
version of an object without deleting any versions, you can use the following procedure. You
must first use Access Control to identify the last good version, and then use Design to check
in a previous version. You can only use this procedure for a label template, form, layout,
reusable object, or application.
Identify the Last Good Version
If you are not sure to which version you need to roll back, you must review information about
previous versions so that you can identify the last good version.
To review information about previous versions, use the following procedure.
1. Click Access Control, and select the label in the Access Control tree.
2. Click the Version Info tab, and review the information about each version.
3. If you require additional information about an object to confirm which is the last good
version, note which version numbers you want to review.
a. Click Design or Process Design.
b. Click File > Open or , select an object, select the Version Number that
you want to review, and then click OK.
c. When you are finished reviewing the object, click File > Close or click .
Note: You cannot have more than one version of an object open in
at the same time.
d. Repeat for any other versions that you want to review.
e. Click Access Control. The Version Info tab for the object that you selected is
displayed.
4. Note the version number of the version to which you want to roll back.
Check in a Previous Version
To check in a previous version of an object so that it becomes the current version, use the
following procedure.
Note: This procedure does not delete any version of the label.
1. Click Design or Process Design.
2. Click File > Open or , select the object, and click OK to select the latest version of
the object.
a. Click File > Check Out.
b. Click File > Close or .
3. Click File > Open or , select the object, enter the Version Number of the version
to which you want to roll back, and then click OK.
4. Click File > Save As, navigate to the location of the object that you checked out, select
the object, and then click OK.
Important: Although the object name is populated in the Name field, you
must navigate to the location of the existing object. Otherwise, you will
create a new object in the root folder.
5. In the Replace Document dialog box, click OK. The version number displayed is
changed to the latest minor version number, which was created when you checked out
the object.
6. Click File > Check In.
7. In the Version Control Comment dialog box, enter a description of this version so that
you or another administrator can identify it, and then click OK.
The following commands and permissions are useful when interacting with version controlled
label templates, forms, images, reusable objects, layouts, and business rules.
Built-In
Roles
Command or Action Permissions Required
with the Per-
missions
Save the first time Create permission for Local Admin
Documents Document
Designer
Save after the first time Write permission for Local Admin
Documents Document
Designer
Save As Create permission for Local Admin
Documents Document
Write permission for Designer
Documents
Export an object Read permission for Local Admin
Documents Document
Designer
Import if an object of the same name does not Create permission for Local Admin
already exist in the folder Documents Document
Designer
Import if an object of the same name already Write permission for Local Admin
exists in the folder Documents Document
Designer
Check In Write permission for Local Admin
Documents Document
Designer
Check Out Write permission for Local Admin
Documents Document
Designer
Undo Check Out Write permission for Local Admin
Documents Document
Designer
Built-In
Roles
Command or Action Permissions Required
with the Per-
missions
Publish Publish permission for Local Admin
Documents
Write permission for
Documents
Undo Publish Publish permission for Local Admin
Documents
Take Control Write permission for Local Admin
Documents
Admin permission for
Documents
Print the latest published version Print permission for Local Admin
Documents Document
Print permission for Device Designer
Groups Document
Printer
Print any version Design Print permission for Local Admin
Documents Document
Write permission for Designer
Documents
Design Print permission for
Device Groups
Print permission for Device
Groups
The following commands and permissions are useful when interacting with version controlled
processes.
Built-In Roles
Command or Action Permissions Required with the Per-
missions
Save the first time Create permission for Processes Local Admin
Save after the first time Write permission for Processes Local Admin
Save As Create permission for Processes Local Admin
Write permission for Processes
Check In Write permission for Processes Local Admin
Check Out Write permission for Processes Local Admin
Undo Check Out Write permission for Processes Local Admin
Publish Publish permission for Processes Local Admin
Write permission for Processes
Undo Publish Publish permission for Processes Local Admin
Take Control Write permission for Processes Local Admin
Admin permission for Processes
Print the latest published Print permission for Processes Local Admin
version Print permission for Device Document Designer
Groups Document Printer
Types of Services
Load
Service
Description Balancing
Name
Supported
Device This service allows you to install new device drivers in Yes
Driver Spectrum.
Service
Device This service provides support for devices, device Yes
Management connections, and integration services. This service is
Service necessary for device management, device configuration,
device discovery, and integration management.
Document This service supports the creation and management of label Yes
Management templates, forms, layouts, images, reusable objects,
Service applications, business rules, and workflow templates, as well
as data services, processes, and device connections.
Load
Service
Description Balancing
Name
Supported
Entity Sync This service synchronizes objects between the headquarters Yes
Service and facilities in a multi-site deployment of Spectrum. Objects
are synchronized only if they are configured for
synchronization.
Important! This service should be started on all
SpectrumApplicationServers that are part of a
multi-site deployment.
Font This service ensures that the fonts are updated on each Yes
Management SpectrumApplicationServer. For information about managing (required)
Service fonts, see "Managing Fonts" on page 758.
Important! The Font Management Service
should be activated and started on all
SpectrumApplicationServers to ensure
consistent fonts.
Job This service processes all incoming print requests and print Yes
Management actions within Spectrum. It works with the individual devices
Service to ensure proper job processing to completion.
Multi-Site This service supports multi-site deployment of Spectrum. Yes
Management Important! This service should be started on all
Service SpectrumApplicationServers that are part of a
multi-site deployment.
Notification This service supports messaging within Spectrum. This Yes
Management service is necessary for messaging related to ModelStatus
Service (AutoRefresh), job status, and notification.
Remote Site This service supports the creation and management of Yes
Service Remote Site objects.
System This service provides resource loading, application server No
Management management, access control, license management, and access
Service for the client computer to the core system language and font
resources. This service is running on all
SpectrumApplicationServers and cannot be de-activated.
System This service provides essential monitoring services that due No
Monitor to their nature can only run on a single
Service SpectrumApplicationServer in a distributed services
environment at any given time.
Load
Service
Description Balancing
Name
Supported
Transaction This service synchronizes transactions between the Yes
Sync headquarters and facilities in a multi-site deployment of
Service Spectrum.
Important! This service should be started on all
SpectrumApplicationServers that are part of a
multi-site deployment.
Web Service This service provides a SOAP Web Service end point for Yes
client computers to access printing functionality. This service
supports Web Services integrations, not SOAP Web Service
data services.
Workflow This service supports the creation and management of Yes
Management workflows.
Service
Other Services
Other types of services, such as data services, device group services, and integration services,
are displayed within the tree in the Service Management pane in System Management.
For ease of management, each service is also displayed in Data Services, Device
Management, or Integration Management as appropriate. Each data service, device
connection, or integration includes a Service Management pane with the same options that
can be found in System Management.
Important! In a Spectrum environment with distributed services, whenever
you add a new device, data service, or integration, you must ensure that the
service is activated and started on at least one SpectrumApplicationServer to
make it available.
Note: All services support failover. The following table indicates which
services also support load balancing.
Load
Type of Service Description Balancing
Supported
Data Service This is a data service. When a data service is added to a Yes
distributed services environment, it becomes available
to all SpectrumApplicationServers. You do not need
to start it on all servers to make it accessible to all
servers.
Data services do not necessarily need to connect to the
Spectrum database.
For information about managing data services in Data
Services, see " Managing Data Services" on page 979.
Device This is a device service, which can be managed at the No
GroupService device group level. When a device connection is added
to a distributed services environment, it becomes
available to all SpectrumApplicationServers. You do
not need to start it on all servers to make it accessible
to all servers.
Important! When you add a new device
connection to the Spectrum environment,
you must start the service on at least one
SpectrumApplicationServer for the
device to be available.
Device group services do not need to connect to the
Spectrum database.
For information about managing device connections in Device
Management, see " Managing Devices" on page 794.
Load
Type of Service Description Balancing
Supported
IntegrationService This is an integration service. When an integration is No
added to a distributed services environment, it
becomes available to all SpectrumApplicationServers.
You do not need to start it on all servers to make it
accessible to all servers.
Integrations do not need to connect to the Spectrum
database.
Tip: Web Services integrations are
managed by using the core service named
Web Service and are not listed as
integration services in the Service
Management pane.
For information about managing integrations in Integration
Management, see "Integrating with Other
Applications" on page 1042.
In a Spectrum environment using distributed services, you can configure for high availability of
distributed services in Spectrum. To use this approach, you configure Spectrum to load balance
most services so that they are run simultaneously on multiple SpectrumApplicationServers.
You also configure services to be able to fail over among SpectrumApplicationServers so that if
one or more servers go offline, a standby server or servers begin running the associated services
to minimize any interruption for users.
Best Practice
It is recommended that you load balance all services that support load balancing,
and that you load balance these services among all of your
SpectrumApplicationServers. For services that only support failover, you should
have a second SpectrumApplicationServer in Ready state, standing by as a backup
for the first server.
Important! In a Spectrum environment with distributed services, all
SpectrumApplicationServers that are online must be accessible to each client
computer.
Important! The Font Management Service should be activated and started on all
SpectrumApplicationServers to ensure consistent fonts.
Although you can load balance services among all of your servers, depending on your
environment and the capabilities of your servers, you also have the potential to optimize specific
servers for specific tasks. For example, you can configure one or more servers to primarily
support device group services.
To configure for high availability, use the following procedure to configure each service.
Note: Some options may not be available for some services.
1. Click System Management, and expand the Service Management pane if necessary.
Note: The Service Management pane is primarily relevant if your
Spectrum environment includes two or more SpectrumApplicationServers
installed as a distributed environment. For information about how to create
a distributed Spectrum environment, see the LoftwareSpectrum Installation and
Configuration Guide.
2. For each service with the Load Balanced Target property, select the number of
SpectrumApplicationServers on which the service should run concurrently.
Best Practice: Load Balancing
Select All so that you load balance the service among all
SpectrumApplicationServers. This approach typically prevents any
noticeable disruption to users if a server goes offline.
Alternative Practice: Failover
If you want to use one or more servers as standby servers in case of the need
to fail over from another server, select a number less than the maximum
available. If a server goes offline, this approach may cause a brief disruption
to users.
3. In the Instance Configurations table, select Activate for each
SpectrumApplicationServer on which the service should have the potential to run,
regardless of whether the service is expected to run on that server under ordinary
circumstances or only if another server fails.
Best Practice
For each service in which the Activate column is displayed, activate the
service on all SpectrumApplicationServers.
4. For each service in which the Load Balanced Target property does not exist or in
which you have configured it to be a value other than All, configure the Priority for each
server. For any server that you are load balancing and any server that should run the
service under ordinary circumstances, set the Priority to 1. For each server that should
act as a standby server and run the service only if another server goes offline, set the
Priority to 2 or greater.
Example: How Priority Affects Failover and Restoration
If you have multiple standby servers, you can use the priority to control
which server acts as the failover target for each service. The order proceeds
from the lowest number to the highest number. That is, if a Priority 1
server fails and servers with Priority 2 and Priority 3 are available, then the
server with Priority 2 will be used if it is running. If the server with
Priority 2 fails, then the server with Priority 3 will be used.
When the server with Priority1 comes back online, the service will
automatically stop running on the Priority3 server and start running on the
Priority1 server. If you do not want the service to automatically switch
servers when a failed server is restored, set the Priority for the service to 1
on all servers.
In a Spectrum environment using distributed services, you can configure Spectrum to load
balance data services and most core services among all SpectrumApplicationServers. This
approach typically prevents any noticeable interruption for users if a server goes offline.
Important! In a Spectrum environment with distributed services, all
SpectrumApplicationServers that are online must be accessible to each client
computer.
Tip: To prevent disruptions for users, it is recommended that you configure your
Spectrum environment for high availability (load balancing with failover) rather
than load balancing alone. For more information, see "Configure for High
Availability" on page 723.
Although you can load balance services among all of your servers, depending on your
environment and the capabilities of your servers, you also have the potential to optimize specific
servers for specific tasks. For example, you can configure one or more servers to primarily
support device group services.
To configure a service to be load balanced among all SpectrumApplicationServers, use the
following procedure.
1. Click System Management, and in the Service Management pane click the core
service or data service that you want to manage.
Note: The Service Management pane is primarily relevant if your
Spectrum environment includes two or more SpectrumApplicationServers
installed as a distributed environment. For information about how to create
a distributed Spectrum environment, see the LoftwareSpectrum Installation and
Configuration Guide.
2. If the Load Balanced Target field is displayed, select All to indicate that all
SpectrumApplicationServers in the distributed environment for which the service is
activated should run the service concurrently.
Note: If the Load Balanced Target field is not displayed, then the
service does not support load balancing. For information about configuring
a service for failover instead, see "Configure for Failover" on page 726.
3. In the Instance Configurations table, select Activate for each
SpectrumApplicationServer.
Important! The Font Management Service should be activated and started
on all SpectrumApplicationServers to ensure consistent fonts.
In a Spectrum environment using distributed services, you can configure for failover of services
from one SpectrumApplicationServer to another. However, if you configure a service to run on
only one SpectrumApplicationServer but to fail over to another if that server goes offline, then
users may experience a noticeable interruption during failover.
Important! In a Spectrum environment with distributed services, all
SpectrumApplicationServers that are online must be accessible to each client
computer.
Tip: To prevent disruptions for users, it is recommended that you configure your
Spectrum environment for high availability (load balancing with failover) rather
than simple failover. For more information, see "Configure for High Availability"
on page 723.
To configure a service to run on one SpectrumApplicationServer and fail over to another
SpectrumApplicationServer if the first one is incapacitated, use the following procedure.
1. Click System Management, and in the Service Management pane click the core
service, device group service, data service, or integration service that you want to
manage.
Note: The Service Management pane is primarily relevant if your
Spectrum environment includes two or more SpectrumApplicationServers
installed as a distributed environment. For information about how to create
a distributed Spectrum environment, see the LoftwareSpectrum Installation and
Configuration Guide.
2. If the Load Balanced Target field is displayed, select a number to indicate how many
SpectrumApplicationServers should run the service concurrently.
Tip: To use one or more servers as standby servers in case of the need to
fail over from another server, select a number less than the maximum
available.
3. In the Instance Configurations table, select Activate for each
SpectrumApplicationServer on which the service should have the potential to run,
regardless of whether the service is expected to run on that server under ordinary
circumstances or only if another server fails.
Important! The Font Management Service should be activated and started
on all SpectrumApplicationServers to ensure consistent fonts.
4. For the Priority for each SpectrumApplicationServer, select the order in which the
service should fail over from one SpectrumApplicationServer to another. The order
proceeds from the lowest number to the highest number.
Tip: To configure one SpectrumApplicationServer to act as a standby
server for another, set the Priority for each service on the standby server to
a greater number than on the server that ordinarily runs the service.
Example: How Priority Affects Failover and Restoration
If you have multiple standby servers, you can use the priority to control
which server acts as the failover target for each service. The order proceeds
from the lowest number to the highest number. That is, if a Priority 1
server fails and servers with Priority 2 and Priority 3 are available, then the
server with Priority 2 will be used if it is running. If the server with
Priority 2 fails, then the server with Priority 3 will be used.
When the server with Priority1 comes back online, the service will
automatically stop running on the Priority3 server and start running on the
Priority1 server. If you do not want the service to automatically switch
servers when a failed server is restored, set the Priority for the service to 1
on all servers.
You can configure whether core services, data services, integrations, and device connections are
automatically enabled on existing Secondary SpectrumApplicationServers and on new
Secondary SpectrumApplicationServers that you create.
You can configure whether core services, data services, integrations, device connections, and
service groups are load balanced among SpectrumApplicationServers.
Note: <LOFTSTORE_HOME> refers to a folder on the Spectrum Database Server. If
you have configured for high availability as described in the High Availability Guide
for Loftware-Supplied Embedded Database, then this is
C:\Loftware\Spectrum\LoftStore. Otherwise, this is the folder in which the
Spectrum database (LoftStore) is installed.
<SPECTRUM_HOME> refers to the folder on the SpectrumApplicationServer, such
as C:\Loftware\Spectrum\Spectrum or
/opt/loftware/spectrum/Spectrum, in which the Spectrum application is
installed. Although the following procedures use backslashes in operating system
paths, you should use forward slashes if required by your operating system.
To turn on support for load balancing of services among SpectrumApplicationServers, do the
following:
1. From a command prompt on the SpectrumApplicationServer, navigate to the following
folder:
<SPECTRUM_HOME>\bin
2. To turn on support for core services, run the following command:
sputils set-value autoDistributeJvm true JvmManagement
3. To turn on support for devices, run the following command:
sputils set-value autoDistributeDevices true JvmManagement
4. To turn on support for data services, run the following command:
sputils set-value autoDistributeDataServices true
JvmManagement
5. To turn on support for integrations, run the following command:
sputils set-value autoDistributeIntegrations true
JvmManagement
6. To turn on support for service groups, run the following command:
sputils set-value autoDistributeCategoryName true
JvmManagement
You can create groups of services and load balance the services within each group. A service
group can include data services, device group services, and integration services.
To configure and load balance groups of services, perform the following steps:
1. In System Management, expand the Tag Management pane and create a tag category
with a name such as Load Balancing to identify collections of services. For the Tag
Category Class, select Service. For more information, see "Create a Tag Category" on
page 767.
Example: Using a Load Balancing Tag Category
Services that are assigned the same value for a tag category can be load
balanced with each other. For example, suppose that you have a tag category
named Load Balancing, and the associated values for it are Group 1, Group
2, and Group 3. All services that are assigned the value of Group 1 for the
Load Balancing tag category can be load balanced with each other.
2. In System Management, expand the Service Management pane.
3. For each service that you want to assign to a load balancing group, do the following:
a. In the Service Management pane, click the service.
b. For Auto Configure, select the check box.
c. For Auto Configure Group, click Select.
d. For Category, select the tag category that you created for load balancing.
e. For Value, select the load balancing group in which to include the service.
f. Click OK.
g. Save the service.
Services that are assigned to the same group are load balanced with each other.
Note: If some services have Auto Configure selected, but no category or value
specified, those services are load balanced as a group.
Service Properties
The following are the properties of a service, such as core service, a data service, an integration
service, or a device group service.
Option Description Values
Configured Whether the service is running on at least one Started
Status SpectrumApplicationServer within the Stopped
environment.
For services that can be manually started and
stopped, a Start Data Service or Stop Data
Service button is displayed at the bottom of the
pane.
<ServiceType> The name of the selected service, which may be a
Name core service, data service, integration service, or
device group service.
Service An explanation of the purpose of the service.
Description
Option Description
Proxy If this SpectrumApplicationServer cannot respond to a request, whether
it will forward that request to another SpectrumApplicationServer.
Important! For this version of Spectrum, you should always
set Proxy to Never.
Note: This option exists only for services that accept remote
operations directly from client computers.
Priority The order in which the instance of the service on a particular server should
fail over to another server, if available. This option is relevant only if the
service is configured for high availability or failover rather than load
balancing.
Important! If the service supports load balancing, then to
display the Priority option you must select a number for
Load Balanced Target.
For each server that you are load balancing and that should run the service
under ordinary circumstances, set the Priority to 1. For each server that
should act as a standby server and run the service only if another server
goes offline, set the Priority to 2 or greater.
If the same priority is selected for a service on more than one
SpectrumApplicationServer, then the service runs on the first
SpectrumApplicationServer that attempts to run it.
<Number>: The lower the value, the greater the priority.
Tip: If you have multiple standby servers, you can use the
priority to control which server acts as the failover target for
each service. The order proceeds from the lowest number to
the highest number. That is, if a Priority 1 server fails and
servers with Priority 2 and Priority 3 are available, then the
server with Priority 2 will be used if it is running. If the
server with Priority 2 fails, then the server with Priority 3
will be used. When the Priority 1 server comes back online,
the service will revert to that server.
State Whether the service is running on this SpectrumApplicationServer.
Started: The service is running on this server.
Stopped: The service is not running on this server.
Ready: The service is running on this server, but is not actively engaged.
For example, this state can occur if the service is running on three servers,
but the Load Balanced Target is 2.
Unknown: A problem has occurred. Contact Loftware for assistance.
Tip: It is recommended that you install the Spectrum application and database at
each facility site before you create the facility object in Spectrum. Each facility site
can have only one SpectrumApplicationServer and one Spectrum Database
Server. Each facility site includes a Loftware-supplied embedded database. The
name of the root folder in Spectrum must be the same at the headquarters site and
at each facility site associated with that headquarters. The headquarters and facility
sites must be in the same WAN, but facilities are not required to be able to
communicate with each other.
1A Spectrum Application Server and a Spectrum Database Server that are associated with each other by a Spectrum License.
2A geographical location, such as the location of a Spectrum instance or a remote computer.
3The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
4An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
Objects are replicated only from headquarters to facilities. If objects are created or altered at a
facility, they may be replaced or deleted during synchronization to provide the facility with the
most current configuration of objects from headquarters. However, to reduce the chance of
extensive accidental deletion, folders that are replicated from headquarters to facilities and are
later deleted from headquarters are not automatically deleted from facilities. Folders can be
manually deleted at facility sites.
If you do not want objects from headquarters to replace objects in some folders at the facility,
you can restrict which folders and which types of objects are synchronized if you have the
necessary permissions. You can also disable synchronization for an individual object, either at
the headquarters or at a facility.
Tip: In most cases, disabling synchronization for an object at a facility prevents
headquarters from synchronizing that object at that facility. However, if the object
is moved or renamed at the headquarters, then the object at the facility is likewise
moved or renamed, but is not otherwise altered. Also, if there is a conflict (not just
a difference) between the headquarters and a facility, the object configuration from
headquarters overrides that of the object at the facility as required to resolve the
conflict.
By default, built-in folders and built-in objects are not replicated. Also, facilities, Remote Sites,
and LDAP authentication information are not replicated.
If objects are modified at a facility when connectivity with headquarters is lost, those changes
are not automatically replicated to headquarters. To replicate such changes to headquarters, you
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
3An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
can either make the changes at headquarters manually, or you can export objects from a facility
and import the objects to headquarters.
Transaction Sync Replicates Transactional Data
Transactional data is replicated from facility to headquarters only. If you have configured a
facility so that printing is normally processed at the headquarters, there may not be much
transactional data produced at the facility.
Differences between Scheduled Sync and Manual Sync
When a scheduled sync occurs, only objects or transactional data that have changed since the
previous sync are replicated. When you manually initiate a sync, all specified objects or
transactional data are replicated, regardless of whether there have been any changes since the
previous synchronization.
In a multi-site deployment of Spectrum, you can manually initiate the replication of objects from
headquarters (HQ)1 to a facility 2, and the replication of transactional data used for auditing
from the facility to headquarters.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Synchronize Objects
You can manually initiate replication of transactional data used for auditing from the facility to
headquarters.
To initiate the replication of transactional data, perform the following steps:
1. Click System Management.
2. Expand the Facility Sync pane.
3. In the tree, navigate to the facility that you want to manage.
1The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
2An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
In a multi-site deployment1 of Spectrum, you can review the results of replication of objects
from headquarters (HQ)2 to a facility 3, and the results of replication of transactional data
used for auditing from the facility to headquarters.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
You can review the results of replication of objects from headquarters to a facility.
To review the results, perform the following steps:
1. Click System Management.
2. Expand the Facility Sync pane in the left column.
3. Navigate to the facility that you want to manage.
4. In the Configuration Sync box, review the table. There is a row with a unique Sync ID
for each time that synchronization is performed. The Status column indicates the current
status of each synchronization effort. The Trigger column indicates whether the
synchronization be scheduled or initiated manually.
5. To view additional detail, click .
Review the Synchronization of Transactional Data
You can review the results of replication of transactional data used for auditing from the facility
to headquarters.
To review results, perform the following steps:
1. Click System Management.
2. Expand the Facility Sync pane.
3. In the tree, navigate to the facility that you want to manage.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2The location of a Spectrum Application Server and Spectrum Database Server that are associated with facilities. These servers
must be associated with a Spectrum license for which Usage is set to Production and Multi-Site is set to true. Each HQ can
communicate with multiple facilities. By synchronizing, an HQ can replicate objects to facilities and replicate transactional data
generated at faciliites back to the HQ.
3An object in Spectrum that represents the location of a Spectrum Application Server and Spectrum Database Server that are
associated with a headquarters (HQ). These servers must be associated with a Spectrum license for which Usage is set to Facility
and Multi-Site is set to true. Each facility can communicate with only one headquarters. By synchronizing, an HQ can replicate
objects to facilities and replicate transactional data generated at faciliites back to the HQ.
4. In the Transaction Sync box, review the table. There is a row with a unique Sync ID
for each time that synchronization is performed. The Status column indicates the current
status of each synchronization effort. The Trigger column indicates whether the
synchronization be scheduled or initiated manually.
5. To view additional detail, click .
The following controls are used to manage synchronization between the facility and the
headquarters with which it is associated. These controls are displayed when a facility is selected
in the Facility Sync pane in System Management.
Note: Facilities and other functionality related to multi-site deployment are
available only if your Spectrum license has the Multi-Site property enabled. Some
options are displayed only if you are logged on to the headquarters site.
Tip: The tree in the Facility Sync pane includes only folders and facility objects.
It does not provide a view of what folders or objects are configured for
synchronization or exist at another site.
Property Description
Facility The path to the facility in Spectrum followed by the unique ID of the
Name facility.
Configuration Controls for initiating and canceling the replication of synchronized
Sync objects from headquarters to the facility, and information reported
about recent synchronizations.
Note: A synchronization takes effect on each object
individually. You can cancel a synchronization that is in
progress, preventing any more objects from being
synchronized. However, canceling a synchronization does
not undo the effects on objects already processed during
that synchronization.
The following commands are available:
l View History Details
l Refresh History
l Sync Now
l Abort Sync
l Sync Date
l Status
l Trigger
Property Description
Transaction Controls for initiating and halting the replication of transactional
Sync data1 from the facility to headquarters.
The following commands are available:
l View History Details
l Refresh History
l Sync Now
l Abort Sync
l Sync Date
l Status
l Trigger
1In a multi-site deployment of Spectrum, information about recent synchronizations that can be used for auditing. During a
transaction sync, this data can be replicated from a facility to headquarters.
Configuring Authentication
Spectrum has the concept of local and domain users. Local users are assigned a password by the
administrator within the Spectrum system. Domain users are configured in Spectrum, but their
passwords are stored in an LDAP or Federated Single Sign-On system.
If you use an LDAP or Single Sign-On system, Spectrum can use that system to authenticate the
user. In both cases a user must be created in Spectrum, and the user names must be an exact
match.
LDAP
Single Sign-On
Single Sign-On (SSO) enables users to log in to Spectrum through a third-party authentication
system, thereby bypassing the Spectrum login screen when connecting to a Spectrum
environment.
Loftware Spectrum supports the following SSO protocols:
lKerberos version 5
lSecurity Assertion Markup Language (SAML) V2.0
Kerberos can be used to provide Integrated Windows authentication.
SAML is an XML-based framework, and it can be used in both Windows and Linux
environments. It is designed for online applications like Spectrum to share authentication
information.
Users must be configured in Spectrum, and the user name must be the same as their idP user
name.
To configure Spectrum authentication, see the following topics:
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
Loftware Spectrum supports Integrated Windows authentication using the Kerberos version 5
protocol. You can use this optional capability along with Lightweight Directory Access Protocol
(LDAP) authentication to enable users to bypass the Spectrum login screen when connecting to
your Spectrum environment.
Note: Single sign-on using Integrated Windows authentication is supported only
for SpectrumApplicationServers that are running a Windows Server operating
system.
Note: If you are configuring a multi-site deployment1 of Spectrum, you must log
in to each facility site to configure LDAP authentication. LDAP authentication
information is not synced from headquarters to facilities.
Before you begin: By default, the Loftware Spectrum service uses the Local
System account of the SpectrumApplicationServer. In your Windows Server
environment, you must create a Run As user account for the Loftware Spectrum
service, and you must register a service principal name (SPN) for the service in
conjunction with this Run As user. You must create a keytab file 2 that you can
use to make these credentials available to the SpectrumApplicationServer.
To support Integrated Windows authentication using Kerberos protocol, you must specify a Run
As user for the Loftware Spectrum service, and you must turn on support for Kerberos protocol
on the SpectrumApplicationServer.
1. On the SpectrumApplicationServer, in the Windows Control Panel, open the Services
console and double-click the Loftware Spectrum service.
a. On the General tab, click Stop to stop the service.
b. On the Log On tab, click This account and enter the credentials for the Run As
user account that you created for the Loftware Spectrum service.
c. Click OK.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2A file containing encrypted credentials for accessing a computer.
d. Set security.kerberos.keytab to the path to the keytab file that you created for
the service principal name for the service in conjunction with the Run As user for
the Loftware Spectrum service.
e. Save and close the file.
Example
# Standard Authentication through UI: default
# Integrated Windows Authentication : kerberos
# Federated SSO using SAML : federated
security.authentication.scheme=kerberos
To support Integrated Windows authentication using Kerberos protocol, you must configure
LDAP authentication and create user accounts in Spectrum.
1. Display the Spectrum log in screen by typing the URL for connecting to Spectrum into a
web browser, appending ?showLogin=true to the end of the URL, and then submitting
the URL.
Example
http://spectrum-
server.example.com:8080/loftwarespectrum?showLogin=true
2. On the Spectrum login page, enter the credentials for an account that has the ROLE_ADMINISTRATOR
role or for the SuperAdmin account.
3. Click System Management, and then expand LDAPAuthentication.
a. Click to create a new configuration.
b. For Domain Name, enter a unique name for the LDAP server configuration that
identifies the domain represented.
c. For Provider URL, enter the LDAP URLto be used by Spectrum when
establishing a connection to the LDAP server. Either LDAP or LDAPover SSL
(LDAPS) may be used.
d. Click Save.
4. Configure user accounts in Spectrum. For users who will log in using single sign-on, the
user name must be the same as their domain user name. For more information, see "
Controlling Access in Spectrum" on page 560.
Note: Web browsers on Spectrum client computers must be configured to
support the Kerberos protocol. For more information, refer to the
documentation for web browsers supported by your organization.
You can change Spectrum to use Federated SSO using SAML 2.0 to authenticate users. To
accomplish this, you must download an XML file from Spectrum and then use that file to
configure Spectrum as a Service Provider (SP) with your Identity Provider (idP). Finally, you
must download a file from your idP and use it to complete the configuration of SSO for
Spectrum.
Configure a Domain
To support federated SSO using SAML 2.0, you must configure a domain and create domain
user accounts in Spectrum.
1. On the Spectrum login page, enter the credentials for an account that has the ROLE_ADMINISTRATOR
role or for the SuperAdmin account.
Note: If you've already configured Spectrum for federated authentication,
display the Spectrum log in screen by typing the URL for connecting to
Spectrum into a web browser, appending ?showLogin=true to the end of
the URL, and then submitting the URL.
Example
http://spectrum-
server.example.com:8080/loftwarespectrum?showLogin=true
1. Configure user accounts in Spectrum. For users who will log in using single sign-on, the
user name must be the same as their SSO user name. For more information, see "
Controlling Access in Spectrum" on page 560.
2. Select the domain that you created from the Domain drop-down list.
Configure Spectrum as a SAML Service Provider
6. Go to your Identity provider (idP) or configure an idP, and then add your Spectrum
system as a service provider.
a. Add the metadata file downloaded from Spectrum as requested during
configuration.
b. Download the metadata file from the idP, as provided.
c. Save the file you download from your idP to <SPECTRUM_
HOME>/product/conf/saml2-metadata-idp.xml
Note: The name of the metadata file can be changed as long as the
security.federated.idpfilename property is changed to match in the
jdbc.properties file.
7. On the SpectrumApplicationServer, restart the Loftware Spectrum service.
8. Attempt to log in to your Spectrum environment using the username and domain of a
user you created in Spectrum.
Note: If you are configuring a multi-site deployment1 of Spectrum, you must log
in to each facility site to configure LDAP authentication. LDAP authentication
information is not synced from headquarters to facilities.
Descrip-
Option Notes
tion
Domain A unique Required. This value is not required to be a real domain.
Name name for The value entered is displayed to users as an option available for
the the Domain field on the Spectrum login page.
LDAPserv
er
configuratio
n that
identifies
the domain
represente
d.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
Descrip-
Option Notes
tion
Provider The LDAP Required. Either LDAP or LDAP over SSL (LDAPS) may be
URL URL to be used.
used by Note: If including a base distinguished name
Spectrum (DN 1) in the Provider URL, do not end the URL
when with a slash. Doing so may cause authentication to
establishing fail.
a
connection Example: LDAP over SSL (LDAPS)
to the
LDAPserv The format is ldaps://host:port/base_dn. The default
er to port is 636.
authenticat
ldaps://corpldap.example.com:636/dc=com
e.
pany,dc=com
Example: LDAP
The format is ldap://host:port/base_dn. The default
port is 389.
ldap://corpldap.example.com:389/dc=comp
any,dc=com
Authenticati The You must select one of the following values for Authentication
on Type approach Type:
used when l Search and bind: Use the Search Base and Search
server. Search Filter to find the user DN, and then attempt to
use the LDAP Compare operation with the Password
Attribute.
l Bind only: Attempt to bind with the user DN and
1Distinguished name. A unique entry in a directory managed using Lightweight Directory Access Protocol (LDAP).
Descrip-
Option Notes
tion
Admin DN The fully- May be required depending on your configuration. Consult your
qualified LDAPsystemadministrator.
distinguishe Example
d name of
an cn=directory manager,dc=example,dc=com
administrat
or account
with the
authority to
search for a
user
distinguishe
d name.
Admin The May be required depending on your configuration. Consult your
Password password LDAPsystemadministrator.
associated Example
with the
account userPassword
provided in
the
AdminD
N field.
Search Base The portion Used if the Authentication Type is Search and bind or
of the Search and compare.
LDAP Note: You can specify a SearchBase, a baseDN
hierarchy to that is part of the ProviderURL, or both. If both,
be the baseDNis appended to the SearchBase
searched. when the SearchBase is evaluated.
Example
ou=shipping,ou=users
Descrip-
Option Notes
tion
Search Filter An LDAP Used if the Authentication Type is Search and bind or
filter string Search and compare.
used in The following placeholders can be incorporated. Each
conjunction placeholder corresponds to a field on the User Info tab for a
with the user as shown in Access Control.
Search Base Placeholder User Info field
to perform
{0} User Name
a search for
the user {1} First Name
distinguishe {2} Last Name
d name {3} Domain
before {4} Email Address
authenticati
on is Important: The search filter must be configured
attempted. to return only one user DN. If the search returns
multiple users, authentication fails.
Example: OpenLDAP
The following search filter is for the specified user
name.
(uid={0})
(sAMAccountName={0})
Example: Name
The following search filter is for the first name and
last name of the user as specified in Spectrum.
(cn={1} {2})
Descrip-
Option Notes
tion
userPrincipalName={4}
(userPrincipalName={0}@{3})
Password The name Used if the Authentication Type is Search and compare or
Attribute of the Compare only.
attribute in Example
the user
object in userPassword
the LDAP
server that
contains
the user
password.
The
password
must be
SHA
encrypted.
User DN User Used if the Authentication Type is Bind only or Compare
Patterns distinguishe only.
d name If you enter multiple patterns, they are searched in the order
patterns to that they appear in this field. Editing a UserDNPattern moves
be used. it to the end of the list.
Note: If a base DN is specified in the Provider
URL, it is appended to each UserDN Pattern
when the pattern is evaluated.
Example
{0} is a placeholder for the specified user name.
uid={0},ou=users
Managing Fonts
Because LoftwareSpectrum is a web-based application, fonts must be installed on the
SpectrumApplicationServer before they can be available for use in label templates. Spectrum
does not have access to the fonts that are installed on Spectrum client computers, only to fonts
that are installed in Spectrum.
A broad selection of fonts is provided with Spectrum and is installed automatically during the
installation of the product. Administrators can install additional fonts by using the Font
Management pane in System Management.
Note: Regarding the legal use of fonts, the Spectrum licensee is responsible and
liable to any font supplier for the legal right to use their fonts. Third-party fonts are
not part of the Loftware product offering and license agreement.
Note: Regarding the legal use of fonts, the Spectrum licensee is responsible and
liable to any font supplier for the legal right to use their fonts. Third-party fonts are
not part of the Loftware product offering and license agreement.
3. In the Add Fonts dialog box, enter the path to the folder containing fonts to be installed.
The following syntax must be used for the path.
Best Practice
For ease of installation, it is recommended that you copy the fonts that you
want to install into a temporary folder on the SpectrumApplicationServer.
Only put fonts that you want to install in Spectrum in that folder.
Path Description Path Examples
Folder on the Windows file://C:/Folder/Fonts
SpectrumApplicationServer with a path Linux file://folder/fonts
such as C:\Folder\Fonts on Windows The folder must be hosted on the
SpectrumApplicationServer. Do not
include a trailing slash.
Folder available via public UNC path Windows
such as \\Server\SharedFolder\Fonts file://Server/SharedFolder/Fonts
on Windows Linux
file://server/sharedfolder/fonts
Credentials must not be required to
access this folder. Do not include a
trailing slash.
Note: All fonts that are in the folder will be installed. It is recommended
that you only install fonts that your organization intends for use in
Spectrum.
4. Click Continue. The Font Installation in progress message is displayed.
5. In the Font Management pane, click Refresh List to update the list of fonts displayed.
If some of the fonts that were in the folder are not listed, wait for a few minutes and then
click Refresh List again.
Delete Fonts
You can delete fonts that you or another administrator installed, with the exception of native
fonts. You cannot delete fonts that were installed during the installation of Loftware Spectrum.
Important! Deleting a font will affect any label templates that use that font to
format text. A default font will be displayed instead.
To delete specific fonts, use the following procedure.
1. In System Management, click and expand the Font Management pane.
2. To filter the list of fonts to display only those that can be deleted, for Font Filters clear
the System and Native check boxes. Leave Installed, TTF, OTF, and TTC selected.
3. In the Delete column, either select the check box for each font that you want to delete,
or select the check box next to the Delete column heading to select all fonts that can be
deleted.
4. To filter the list of fonts to display only those to be deleted, for Font Filters select all of
the check boxes, including To Delete.
5. Click Delete Fonts to delete all of the fonts that you have selected.
6. In the Delete Selected Fonts Confirmation dialog box, review the list of fonts. If only
fonts that you intend to delete are listed, click Continue.
7. In the Status dialog box, review whether the deletion of each font succeeded, and then
click OK.
The following are the options for displaying information about the fonts available in Spectrum,
installing additional fonts, and deleting fonts.
Font Filters
The following filters restrict which fonts are displayed in the table depending upon their
properties.
Important! These filters can interact with each other.
Filter
Description Values
Group
Status In the list of fonts, whether to display custom fonts : Fonts that have the
Filters installed by an administrator, TrueType fonts specified value for Status
(TTF), OpenType fonts (OTF), and TrueType font are displayed in the table
collections (TTC) installed during the installation unless prohibited by filters
of Spectrum, and driver-specific fonts. for font type or font
Installed: TrueType fonts, TrueType font deletion.
collections, and OpenType fonts that were installed : Fonts that have the
by an administrator after the installation of specified value for Status
Spectrum. are omitted from the table.
System: TrueType fonts, TrueType font
collections, and OpenType fonts that were installed
automatically during the installation of Spectrum.
Native: Driver-specific fonts.
Font In the list of fonts, whether to display TrueType : Fonts that have the
Type fonts (TTF), OpenType fonts (OTF), and specified value for Font
Filters TrueType font collections (TTC). Type are displayed in the
TTF1 table unless prohibited by
OTF2 filters for status or font
TTC3 deletion.
: Fonts that have the
specified value for Font
Type are omitted from the
table.
1TrueType font
2OpenType font
3TrueType font collection
Filter
Description Values
Group
Deletion In the list of fonts, whether to display fonts that are : Fonts that have the
Selected selected for deletion. specified value for Delete
Filter To Delete: Fonts that are selected for deletion. are displayed in the table
unless prohibited by filters
for status or font type.
: Fonts that have the
specified value for Delete
are omitted from the table.
Font Properties
Option Description
Add Install all fonts in the folder for which you specify a path. The following syntax
Fonts must be used for the path.
Best Practice
For ease of installation, it is recommended that you copy the fonts
that you want to install into a temporary folder on the
SpectrumApplicationServer. Only put fonts that you want to install
in Spectrum in that folder.
Path Description Path Examples
Folder on the file://C:/Folder/Fonts
SpectrumApplicationServer with The folder must be hosted on the
a path such as C:\Folder\Fonts SpectrumApplicationServer. Do not
include a trailing slash.
Folder available via public UNC file://Server/SharedFolder/Fonts
path such as Credentials must not be required to
\\Server\SharedFolder\Fonts access this folder. Do not include a
trailing slash.
Important! The computer where the folder is located and the
SpectrumApplicationServer must be operating in a domain
environment. Connections among workgroups are not supported.
Tag Management
In Loftware Spectrum, users can characterize certain objects by assigning tags to them. Tags can
then be used to search, sort, filter, and report on objects within business rules. Each tag has a
category and a value.
A tag can be assigned to an application, business rule, data service, device group, facility, form,
image, integration, label template, layout, process, remote site, reusable object, user, or
workflow template.
Note: Assigning a tag to an object requires permissions for that object, but does
not require Tag Categories permissions.
In System Management, you can create and manage tag categories. Each static tag category has
a name and a list of associated values. Each variable tag category allows users to type in a value
for the tag.
Example: Static Tag Category
You can use a tag to indicate where a label template is in its life cycle. In System
Management, you can create a static tag category named Life Cycle. For this tag
category, you specify possible values such as the following: Under Development,
In Review, On Hold, Complete.
In Design, a Document Designer can select a label template, add a tag with the
Life Cycle category, and select the value Under Development. When the label
template is ready for review, the Document Designer can change the value for the
tag to In Review.
Example: Variable Tag Category
You can use a variable tag category to allow Document Designers to specify the
owner of a label template. In System Management, you can create a variable tag
category named Owner. You do not specify associated values for the tag category.
In Design, a Document Designer can select a label template, add a tag with the
Owner category, and type the user name of the person who is the owner as the tag
value.
Tip: For a tag assigned to an object, you can use a script in a data source or in a
business rule to retrieve the tag value. Tag-related functions are also available by
using Web Services calls.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
When creating a tag category, you must decide whether to make it static (the user selects a tag
value from a fixed list of values) or variable (the user types in a tag value). For any static tag
category that you create, you must also create the list of tag values associated with the tag
category.
To create a tag category, use the following procedure.
1. In System Management, click the Tag Management bar to expand the pane.
2. In the Tag Management pane, click the + button to add a new tag category.
3. On the Tag Category Info tab, enter a name and description for the tag category. The
name will be displayed in the Tag pane and tab but the description will not.
Note: You cannot change the Tag Category Name after you save the tag
category for the first time.
4. For Tag Category Type, specify whether the tag category is a static tag category or a
variable tag category.
n Static: Has a name and a list of associated values.
n Variable: Has a name and allows users to type in values to associate with the tag
category.
Note: You cannot change the Tag Category Type after you save the tag
category for the first time.
5. For Tag Category Class, specify whether the tag category is a document class or service
class.
n Document: A tag associated with an application, business rule, data service,
device group, facility, form, image, integration, label template, layout, process,
remote site, reusable object, user, or workflow template.
n Service: A tag associated with a SpectrumApplicationServer in a Spectrum
environment with distributed services.
Note: You cannot change the Tag Category Class after you save the tag
category for the first time.
6. Click Save Tag Category.
7. If you are creating a static tag category, click the Tag Values tab.
a. In the Associated Values field, enter a possible value for the tag, and then click
Add. Repeat for each value that the tag can have.
Tip: To delete a value in a static tag category, click the value and
then click Delete.
b. Click Save Tag Category.
Tip: To assign a tag to an object or to change the value of an assigned tag, see "
Categorize an Object" on page 646.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
Note: If a tag value was previously assigned to an object and the tag value is
deleted from its tag category, the tag value will remain assigned to the object.
In System Management, you can manage tag categories. Each tag category has a name, and
static tag categories have a list of associated values that you can manage.
To add or remove values available for a static tag category, use the following procedure.
1. In System Management, click the Tag Management bar to expand the pane.
2. In the Tag Management pane, click the tag category that you want to change.
3. Click the Tag Values tab.
n If you want to add a new value for use with the tag category, type the new value
into the Associated Values field, and click Add.
n If you want to remove one of the values, click the value, and then click Delete.
Note: You cannot edit the name of an Associated Value after you save the
tag category.
4. Click Save Tag Category.
Tip: To assign a tag to an object or to change the value of an assigned tag, see "
Categorize an Object" on page 646.
The following options for creating and deleting a tag category can be configured in the Tag
Management pane in System Management. Each tag category has a name and a list of
associated values.
Tip: To assign a tag to an object or to change the value of an assigned tag, see "
Categorize an Object" on page 646. Tags can be assigned to an application,
business rule, data service, device group, facility, form, image, integration, label
template, layout, process, remote site, reusable object, user, or workflow template.
Tip: For a tag assigned to an object, you can use a script in a data source or in a
business rule to retrieve the tag value. Tag-related functions are also available by
using Web Services calls.
Property Description
Tag CategoryThe
Namename of the tag category. This name will be displayed in the Tags pane
or tab when assigning a tag category to an object or when viewing the list of
tag categories assigned to an object.
Tag Whether the tag category is a static tag category or a variable tag category. The
Category values associated with a static tag category can be configured by an
Type administrator in System Management.
Note: This property cannot be changed after the tag category
has been saved for the first time.
Tag Whether the tag category is for an object or for a core service.
Category l Document: A tag associated with an application, business rule, data
Class service, device group, facility, form, image, integration, label template,
layout, process, remote site, reusable object, user, or workflow
template.
l Service: A tag associated with a SpectrumApplicationServer in a
Note: The list of associated values is displayed and can be edited on the Tag
Values tab only if the Tag Category Type is Static.
Property Description
Associated Values
A list of all values available to be selected for the tag category. These values
will be displayed in the Tags pane and tab.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
To configure a Spectrum environment to provide users with static help for Spectrum, use the
following procedure:
Note: This option is not recommended unless lack of internet connectivity or
other issues make it impractical to use dynamic help in your environment.
1. In System Management, click the Global Settings bar to expand the pane.
2. In the Global Settings pane, click Settings.
3. In the Settings section, under Help Preferences, for Source Location select Local.
4. Click Save.
To configure a Spectrum environment to provide users with dynamic help for Spectrum, use the
following procedure:
Note: Dynamic help is the default configuration. The following procedure is
necessary only if the source of Spectrum Help has been changed to static help.
1. In System Management, click the Global Settings bar to expand the pane.
2. In the Global Settings pane, click Settings.
3. In the Settings section, under Help Preferences, for Source Location select Remote.
4. Click Save.
Global Settings
The following options can be managed by using the Global Settings pane.
General Preferences
Property Description Values
Force Inactivity Whether to automatically log a user out after a : Users are not
Logout specified period of inactivity. logged out due to
inactivity.
: Users are
logged out after
being inactive for
the specified
period of time.
Force Device Whether to update the IP address of the : IP address of
Connection Lookup device before each print job. the device is not
updated before
each print job.
: Force
Spectrum to
update the IP
address of the
device before each
print job.
Custom Installation Display a name for the current Spectrum All characters are
Name instance in the Spectrum title bar. permitted.
Example: QA
Environment
Help Preferences
Property Description Values
Source Location Whether to display dynamic web-based Remote: Dynamic web-
help or static help when users click based help is displayed when
links to the SpectrumUserGuide (Help). a user clicks help links in
Spectrum. The help is hosted
on Loftware's website. This
option is recommended
because it provides users
with the most current
documentation. (Default)
Local: Static help that was
installed at the time of
Spectrum's installation is
displayed when a user clicks
help links in Spectrum. The
help is hosted on the
SpectrumApplicationServer.
This option is provided to
support Spectrum
environments that do not
have Internet access.
Print Preferences
Property Description Values
Text Box Overrun How Spectrum should respond if the amount Allow Overrun:
Mode of data received for a Text Box field is more The text continues
than can fit. beyond the
Tip: If the Text Box Overrun bottom of the
Mode is specified in the job data, envelope for the
that overrides any mode specified field. For a printed
in Label Specific Options in label, as much of
Design, device options in Device the text as can fit
Management, or global settings on the label is
in System Management. printed.
Otherwise, if specified in Label Truncate Data:
Specific Options, that overrides Text that does not
device options and global fit is not printed
settings, and if specified in or displayed. The
device options, that overrides preceding text is
global settings. printed or
displayed.
Truncate Data at
Paragraph
Break: A
paragraph that
does not fit is not
printed or
displayed. The
preceding
paragraph is
printed or
displayed.
Fail Print Job on
Overrun: Any
print job that
includes a Text
Box field in which
the data received
does not fit is
failed and is not
printed or
displayed.
Driver Preferences
Label Component Caching
Other Options
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
You can individually assign a user profile directly to users or you can assign a profile to groups so
that it can be inherited by users who are members of that group.
Note: If a user is a member of multiple groups that have user profiles, only the
user profile most recently applied to the group takes effect for that user. A profile
directly assigned to a user supersedes a profile assigned through group
membership. A user can only inherit a profile through group membership if that
user's profile is set to NoProfile.
To assign and apply a user profile to a user or a group, use the following procedure.
1. Click Access Control.
2. Click a user or group to which you want to assign the user profile.
3. If assigning the profile to a group, for Default Profile select the name of the user profile
that you created and click Save. The profile is assigned only to users whose individual
profile is set to NoProfile.
4. If assigning the profile to an individual user, for Apply Profile select the name of the
user profile that you created and click Save User.
To update and reapply a user profile to users and groups to which it is already assigned, use the
following procedure.
1. Click User Preferences.
2. Click User Profiles to expand the pane.
3. Click a user profile.
4. Change the values, visibility, and configurability of preferences as needed. For more
information about each preference, see " User Preferences Page (Administration)" on
page 786.
5. Click Save.
Note: If a user is a member of multiple groups that have user profiles, only the
user profile most recently applied to the group takes effect for that user. A profile
directly assigned to a user supersedes a profile assigned through group
membership. A user can only inherit a profile through group membership if that
user's profile is set to NoProfile.
General Preferences
Preference Description
Display The language used in the user interface of Spectrum. Options include the
Language following:
l English
l German
l French
l Spanish
l Simplified Chinese
l Traditional Chinese
l Portuguese (Brazilian)
l Japanese
Landing Page The page (top-level tab) that is displayed when users to whom the profile
is applied log in to Spectrum.
Home Folder Folder in Spectrum initially selected and expanded in the tree when
opening, saving, or printing.
Initial Label The label template or process that is initially loaded when users to whom
this profile is applied click Print.
Default Process The process used if users to whom this profile is applied do not select a
process when printing a label template from Print.
ReprintProcess The Reprint process used when users to whom this profile is applied click
Reprint in Status.
Change A button that displays a dialog box allowing a user to whom the profile is
Password applied to change his or her password for Spectrum.
Label/Document Preferences
These preferences control what is initially selected in Design when a Document Designer to
whom the profile is applied creates a new label template. However, even if these preferences are
locked down, the Document Designer can change what is displayed for the current session by
selecting options in Design.
Preference Description
Size The default size used when a user to whom this profile is applied produces a
label template.
Width The default horizontal span of the label template.
The unit of measure is as defined in Units under Design Preferences, or in
Design under Options > Units.
Height The default vertical span of the label template.
The unit of measure is as defined in Units under Design Preferences, or in
Design under Options > Units.
Shape The default appearance of the outside edge of the label canvas when creating
a new label template.
Orientation Sets the default direction objects are aligned on the label when creating a new
label template.
Document The default resolution in dots per inch for objects on the label.
DPI
Font The default type of font to be used in the label. The following options are
Category available.
TrueType
DPL1
IPL2
ZPL II3
Use Label Font Category
Note: If Use Label Font Category is selected, the default
type of font is whatever type was most recently used by that
user when creating a label template or reusable object.
Preference Description
New Whether to display the Create Label dialog box when creating a new label
Document template.
Dialog Box If Bypass and use my preferences is selected and if Size (or Width and
Height), Shape, Orientation, Document DPI, and Font Category are
configured in the user's preferences, then the dialog box is not displayed.
Otherwise, the dialog box is displayed.
Design Preferences
These preferences control what is initially displayed in Design when a Document Designer
creates or edits a label template. However, even if these preferences are locked down, the
Document Designer can change what is displayed for the current session by selecting options in
Design.
Preference Description
View Whether to initially display the Label View, Form View, or both. If displaying
both, they can be arranged side-by-side or stacked vertically.
Units The default unit of measure to be used to position and size objects in label
templates. Options include inches, cm, and mm.
Grid Whether to initially display an overlay grid to assist Document Designers with
aligning objects. The dots or lines of the grid are not displayed in printed
labels or in the forms displayed to Data Providers. The type of grid can be
configured in Grid Settings.
Align to Whether to initially force the top left corner of each object to align with the
Grid nearest alignment overlay dot or intersection of lines. Whether the grid is
used can be configured in Grid.
Grid The type of alignment overlay. Options include Dot, Line, Dotted Line, and
Settings Dashed Line.
The dots or lines of the grid are not displayed in printed labels or in the forms
displayed to Data Providers. Whether the grid is used can be configured in
Grid.
Preference Description
Design What data to show in fields when displaying a label template or a reusable
Data object in Design. This option affects what is displayed in the Label view and
Form view in Design, as well as what is displayed when you preview or print
a label in Design. More specifically, this option affects what is displayed in
text fields, barcode fields, and variable image fields.
l Default Value: The values specified in the Default Value property
1For a Variable Text field, the series of digits 1234567890, repeated until the maximum number of characters allowed for the field is
displayed. For a barcode field, a sample barcode that adheres to the specified properties. For an image field, a sample image.
Whether placeholder data is used in Design is controlled by the selection for Design Data.
2A collection of data (names and values) that was retrieved from a data source and is specific to a label template or a reusable
object. A data set can be used to populate fields displayed in Design, in a preview, and when test printing.
Print Preferences
These preferences control the default options when printing from Print. However, even if these
options are locked down, a user can change printing options for the current session on Print.
Preference Description
Default The device 1 used unless the user selects a different device at print time.
Device
Clear fields Whether to automatically reset all values entered in the form for on-demand
after print after printing occurs.
successful
print
Navigation Whether the Documents Tree is displayed in Print.
Panel Show: The tree is displayed, but the user can click a control to hide it.
Hide: The tree is hidden, but the user can click a control to display it.
Hide and Lock: The tree is hidden and the user cannot display it.
Allow Print Whether the Preview button is displayed in Print.
Preview Note: To use Print Preview, a user should have a role with
Print permission for Documents, have Print permission for
Documents for folders containing label templates and images to
be previewed, and have Allow Print Preview selected in User
Preferences.
View Data Whether to allow a user to click the object title in Print and display the data
Map on map entries in a dialog box. For more information, see " View the Print Data"
PrintPage on page 505.
1A physical printer, print queue, or other target for output, such as an image file or a PDF file.
Buttons
Note: If a user is a member of multiple groups that have user profiles, only the
user profile most recently applied to the group takes effect for that user. A profile
assigned to a user supersedes a profile assigned through group membership.
Managing Devices
LoftwareSpectrum supports multiple printing options, including native support for specific
device models, device family drivers, devices directly connected to the
SpectrumApplicationServer, and remote devices via SpectrumRemotePrint. You can also
create a generic driver that outputs an XML file for use with unsupported devices or devices
with a proprietary printer language. In addition, you can configure Spectrum to pass a file
directly to a target device without the need to associate the file with a label template.
To provide broad device language support, LoftwareSpectrum uses family drivers. Each family
driver includes the options needed to support many different devices from the same
manufacturer.
If you select a specific model of device, only the options relevant to that model are displayed.
This approach can help ensure that you do not select options not supported by the device.
If you select Family Driver for the Family, you can view all options for all devices in the
family. However, some options may not be supported by some devices. By using a family driver,
you can print a label on multiple models of devices as long as you ensure that the devices
support the same resolution.
Note: Device groups can contain only one device.
Note: Loftware Spectrum encodes print data using UTF-8. Check your device
firmware to ensure that it supports UTF-8. Older devices may not support this
encoding. The effect of printing labels to unsupported devices is that characters
above ASCII 127 may not be handled correctly on printed labels.
Connection Types
Spectrum supports the following connection types.
l TCP/IP, including standard TCP/IP protocol and remotespooler(LPR) connection via
wired or wireless connection
l Spooler, for use with a server device connection
l File, for use with a print-to-PDF device connection, print-to-image device connection, or
to create an XML file
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
Add a Device
To configure a new device connection, use one of the following procedures.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2Datamax-O'Neil Programming Language, a printer control language.
3Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
4Intermec Printer Language, a printer control language.
5SATO Barcode Program Language, a programming language for communication between a computer and a printer.
6Zebra Programming Language II, a printer control language.
4. In the Connection section, for Connection Type select TCP/IP and configure
settings. The available connection types depend on the family and model selected. For
more information, see " TCP/IP Connection Type" on page 845.
a. If the device is not accessible to the SpectrumApplicationServer via TCP/IP, for
Remote Site select the Remote Site from which the device is accessible via
TCP/IP. Otherwise, no Remote Site is needed.
b. For IP Address, enter the IP address or DNS name for the device.
c. If a field for Protocol is displayed, select Standard.
5. In the Options, Media, and other sections, configure device family-specific options. For
more information, see " Device Driver Options" on page 858.
6. In the Properties pane, enter a Description of the device.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
You can configure Spectrum to spool to a device queue for a device that is directly connected to
the a SpectrumApplicationServer by a wired or wireless connection. The device may be
connected to the server by USB port, parallel port, serial port, or other means. Alternatively, if
the device is connected to a computer other than the SpectrumApplicationServer and if a
Remote Site has been defined for that computer, then you can configure Spectrum to spool to a
device queue for a device connected to the Remote Site.
Note: In a multi-site deployment1 of Spectrum, device connections can be
created only at headquarters. They can be replicated to facilities by using
synchronization, and they can be changed at facilities if allowed by the
configuration.
To create a new spooler connection for a device directly connected to a
SpectrumApplicationServer, use this procedure.
1. Click Device Management.
2. Click File > New > Device or click the New Device button in the toolbar to create
a new device.
3.
Make the following selections in the dialog box.
a. For Family, select Server.
b. For Model, select Spooler.
c. Click OK.
4. In the Connection section, for the Connection Type select Spooler.
a. If the device is connected to a computer other than the
SpectrumApplicationServer, for Remote Site select the Remote Site associated
with that computer. Otherwise, no Remote Site is needed.
b. For Spooler Name, select a device.
5. In the Options section, configure device options. For more information, see " Options
for Server Spooler Device Drivers" on page 974.
6. In the Properties pane, enter a Description of the device.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2Datamax-O'Neil Programming Language, a printer control language.
3Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
4Intermec Printer Language, a printer control language.
5SATO Barcode Program Language, a programming language for communication between a computer and a printer.
6Zebra Programming Language II, a printer control language.
4. In the Connection section, for Connection Type select USB and configure settings.
The available connection types depend on the family and model selected. For more
information, see " USB Connection Type" on page 850.
a. If the device is not accessible to the SpectrumApplicationServer via USB, for
Remote Site select the Remote Site from which the device is accessible via USB.
Otherwise, no Remote Site is needed.
b. For USB Port, click the drop-down list and select the device.
5. In the Options, Media, and other sections, configure device family-specific options. For
more information, see " Device Driver Options" on page 858.
6. In the Properties pane, enter a Description of the device.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Note: For USB devices connected to Linux operating systems:
l To allow Spectrum to print to USB devices, you must add the Loftware
Spectrum user "spectrum" that will print to the device to the "lp" group in
Linux.
l If you move a previously configured USB device to a different USB port,
review the device in Device Management to verify that the correct USB
Port is selected, and then click Save.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
By using Line Printer Remote (LPR) protocol, you can configure Spectrum to spool to a print
queue that is directly connected to a client computer by a wired or wireless connection. The
device may be connected to the client computer by USB port, parallel port, serial port, or other
means. Alternatively, if the device is not accessible to the SpectrumApplicationServer and if a
Remote Site has been defined for that computer, then you can configure Spectrum to print to a
device that is accessible to the Remote Site via LPR protocol.
Note: Before you can use a remotespooler(LPR) connection with Spectrum, you
must configure the client computer to support such connections. For more
information, see "Requirements for Spectrum Client Computers" on page 47.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
3.
Make the following selections in the dialog box.
a. Select a Family other than Server.
b. Select a Model other than Image or PDF.
If your model of device is not listed
For Family select Family Driver, and for Model select an appropriate value
based on the device brand and printer control language.
Description Model
cab device cab
Datamax-O'Neil device or device using DPL 1 DPL
Intermec device using Fingerprint language or Direct Protocol FP/DP
(FP/DP ) 2
Intermec device using IPL3 IPL
SATO device or device using SBPL4 SBPL
Zebra device or device using ZPL II5 ZPL II
c. Click OK.
4. In the Connection section, for Connection Type select TCP/IP and configure
settings. For more information, see " TCP/IP Connection Type" on page 845.
a. If the device is not accessible to the SpectrumApplicationServer via LPR
protocol, for Remote Site select the Remote Site from which the device is
accessible via LPR protocol. Otherwise, no Remote Site is needed.
b. For IP Address, enter the IP address or DNS name of the client computer to
which the device is connected. Do not use the generic name localhost.
c. For Protocol, select LPR. The IP Port is automatically changed to 515 and must
not be altered.
d. For LPR Queue, enter either the device name or the share name for the device.
(Sharing the device is not required.) This field is not case-sensitive.
e. Leave the Raw LPR check box selected. Clearing this option would allow the
operating system driver to alter the print stream, which could have unpredictable
results.
f. Optional: For Document Name, you can enter a string that can include variables
to format how print jobs from this device connection are identified in the
Windows Server print queue. This option does not affect what appears on the
printed label. For more information, see " Dynamic Field Values" on page 855.
5. In the Options, Media, and other sections, configure device family-specific options. For
more information, see " Device Driver Options" on page 858.
6. In the Properties pane, enter a Description of the device.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
8. In Control Panel in Windows or Windows Server, ensure that the driver used by the
device is Windows Generic/Generic Text Spooler.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
If your device is currently unsupported in Spectrum, you can define and create a basic device
driver that allows sending a print stream or an image to the device. The output from a generic
driver is XML that can be sent to a printer or saved to a file, and allows for writing XSLTs to
create the desired print stream.
A sample generic driver XSL file is included in Spectrum. To see the sample XSL file, enter http://spectrum-server:
in the address field of your browser, where spectrum-server is the name of the server hosting
Spectrum for your organization and genericDriverSample.xsl is case sensitive.
Note: In a multi-site deployment1 of Spectrum, device connections can be
created only at headquarters. They can be replicated to facilities by using
synchronization, and they can be changed at facilities if allowed by the
configuration.
To create a new generic device connection, use this procedure.
1. Click Device Management.
2. Click File > New > Device or click the New Device button in the toolbar to create
a new device.
3.
Make the following selections in the dialog box.
a. For Family, select Family Driver.
b. For Model, select Generic.
c. Click OK.
4. In the Connection section, for Connection Type select File and configure settings. For
more information, see " File Connection Type (Print to PDF, Image, or XML)" on page
847.
5. Change the File Path to the location on the server where you want the XML files stored.
Best Practice
Use a UNC path such as \\Server\SharedFolder. Mapped drives are not
supported.
6. In Options, Advanced, and Custom Commands, configure the options. For more
information, see "Generic Device Driver" on page 964.
7. In the Properties pane, enter a Description of the device.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
8. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
7. Click File > Save or click the Save button in the toolbar and enter a Device Group
Name in the Save Device As dialog box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
You can configure Spectrum to pass an external file directly to a target device without the need
to associate the file with a label template by using a Pass Through device connection. A Pass
Though device connection should only be used when the target device supports native printing
for the file type.
A Pass Through device can be accessible to the SpectrumApplicationServer via TCP/IP, USB,
or remote spooler(LPR). Alternatively, if the device is not accessible to the
SpectrumApplicationServer and if a Remote Site has been defined for that computer, then you
can configure Spectrum to print to a device that is accessible to the Remote Site via TCP/IP,
USB, or LPR protocol.
If you have an existing PCL1device configured in Spectrum under the Family Driver, you can
configure the device to support pass through files rather than creating a Pass Through device
connection. Open the device in Device Management, click the Advanced tab, and then
select the appropriate file types under Pass Through File Types.
Note: In a multi-site deployment2 of Spectrum, device connections can be
created only at headquarters. They can be replicated to facilities by using
synchronization, and they can be changed at facilities if allowed by the
configuration.
To create a new Pass Through device connection, use this procedure.
1. Click Device Management.
2. Click File > New > Device or click the New Device button in the toolbar to
create a new device.
3. Make the following selections in the dialog box:
a. For Family, select Family Driver.
b. For Model, select Pass Through.
c. Click OK.
4. In the Connection section, for Connection Type select TCP/IP or USB and
configure settings. For more information, see " TCP/IP Connection Type" on page 845
or " USB Connection Type" on page 850.
Note: If the device is not accessible to the SpectrumApplicationServer via
TCP/IP or USB, for Remote Site select the Remote Site from which the
device is accessible via TCP/IP or USB. Otherwise, no Remote Site is
needed.
5. In the Options section, under Pass ThroughFile Types, select the types of files that
the device supports printing natively. You must select at least one file type.
After you create a Pass Through device connection, to print external files you need a method of
specifying the file to print and a method of sending the print job. For more information, see"
Print External Files" on page 1202.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
To import the information for multiple devices into Spectrum, you must first create a file (in
CSV format) that contains the option names and associated values for your devices. The internal
(database) names for these device options vary from the names used in the user interface in most
cases. For information about matching device option names to the names used in the
import/export file, see " Import/Export Names" on page 827.
Note: The import/export feature does not support all the available device options.
While an import file can be created by assembling the common and family-specific internal
option names, the most practical method of creating this file is by creating model devices and
exporting the settings from Device Management in Spectrum.
To import multiple devices into Spectrum, use this procedure.
1. If you do not have existing devices in Spectrum, follow the instructions in " Add a
Device" on page 796 to create a model device for the devices you will be importing.
Repeat this step for each unique device family you will be importing, being sure to set
the options appropriately for your devices.
2. Follow the instructions in " Export Devices" on page 816 to create an export file that
contains the information about your devices.
3. Add a row to the file for each of the devices you want to add to Spectrum. At a
minimum, you must add information for the following fields:
n NAME - Device Group Name
n FOLDER - Spectrum folder where the device should be saved
n FAMILY - The printer language grouping for the device
n MODEL - The printer model being added
n DESCRIPTION - Text that describes the device or its purpose
n IPADDRESS - The network location of the device
4. Change or add the option values as needed for your devices.
5. Follow the instructions in " Import Devices" on page 817 to import your devices into
Spectrum.
Export Devices
You can extract the option settings for all your devices by exporting a device information file
from Device Management.
A file in the same format (CSV) can be used to create multiple devices in Loftware Spectrum
simultaneously. You can start this file by exporting the information for your existing devices
using the Export function in Device Management.
To export a device information file from Loftware Spectrum, use the following procedure.
1. Select Device Management.
2. Click File > Export.
3. To select the Spectrum folder from which to export devices, click next to the
Export Folder field.
4. Select the folder from the Select Folder dialog.
5. Click Include subfolders to also search child folders of the selected folder for devices.
All devices within the selected folders will be exported.
6. Click OK, and then click OK again when the Export dialog appears.
7. Select a location to save your file, and click Save.
You have created a CSV file that contains the options and values for the devices you have
selected. For information about matching device option names to the names used in the
import/export file, see " Import/Export Names" on page 827.
Example Export File
Import Devices
You can create multiple devices in Loftware Spectrum simultaneously by creating a device
import file that sets the options for the devices and then importing that file into Spectrum.
Note: To add printers to Spectrum in this way, you must have Create and Write
permissions for Device Groups.
To use an import file to import device information, you must first create the file. For more
information, see " Importing Multiple Devices" on page 816.
To import the file into Loftware Spectrum, use the following procedure.
1. Select Device Management.
2. Click File > Import.
3. In the Select Import File dialog, click Browse to select the file you created.
4. Set the behavior if the import process encounters a device that already exists from If
device exists.
a. Select Ignore to do nothing, or retain the settings for the existing device.
b. Select Update to change the settings of the existing device based to the settings
in the CSV file.
c. Select Fail to stop the import process if a duplicate device is found.
5. Select Create folders to add folders based on the setting in the FOLDER column in the
CSV file.
6. Click OK.
The new devices are activated and started. Devices may not be valid if required settings are
missing or not valid.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Categorize a Device
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
To assign a tag to a device in Device Management, use this procedure.
1. In Device Management, click File > Open or click the Open button in the
toolbar.
2. In the Open dialog box, select a device and then click OK.
3. In the right column, click the Tags title bar to expand the pane.
4. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from a device does not delete the tag category
from Spectrum. You can add a new tag to the device and select that
same category again.
5. Click File > Save or click the Save button in the toolbar.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
Delete a Device
You can delete a device in Spectrum.
1. Click Device Management.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select a device and click OK.
4. Click File > Delete.
The device is removed from your Spectrum environment.
Tip: You can also delete a device from within an Open dialog box or from within
the All Devices pane by right-clicking the device and selecting Delete.
Supported Printers
LoftwareSpectrum supports printers from a variety of manufacturers. For a list of supported
printers, in Spectrum click Device Management, click Add Device, select a Family, and then
click Model to view the list of supported models. The printer models supported may vary with
the version of Spectrum.
If your device is not supported, you may define and create your own device driver that allows
sending a print stream or image to the device. This involves writing XML to create the desired
print stream. For more information, see " Create a Generic Device Connection" on page 810.
1A client-side service that must be installed on a remote computer so that it can communicate with the Spectrum Application
Server and permit printing. The Remote Print Agent connects to Spectrum to receive print jobs, provide device and status
information, and receive configuration information as needed.
2A computer outside of your LAN/WAN and on which the Remote Print Agent is installed. A remote computer has access to devices
that are not directly accessible by a Spectrum Application Server.
3An object in Spectrum that represents the location of a remote computer. The Remote Print Agent must be installed on the
remote computer so that it can communicate with the Spectrum Application Server and make devices at that location available in
Spectrum. Each Remote Site can communicate with only one Spectrum Application Server.
4A user who creates and configures devices in Spectrum. Some Device Managers may have permissions to manage Remote Sites.
SpectrumRemotePrint enables users to print from Spectrum using devices that are not directly
accessible by a SpectrumApplicationServer. To use this approach, an administrator must
configure a Remote Sitean object in Spectrum that represents the location of a computer that
has wired, wireless, or network connections to devices that are not directly accessible by a
SpectrumApplicationServer. Each Remote Site can communicate with only one
SpectrumApplicationServer.
To configure a Remote Site, an administrator should use the following procedure.
1. Click Device Management.
2. Click File > New > Remote Site or click the New Remote Site button in the
toolbar to create a new Remote Site.
3.
For Maximum Number of Devices, enter a limit for the number of devices that the
administrator of the remote computer can create for use with Spectrum at the Remote
Site.
4. In the Properties pane, enter a description of the Remote Site.
5. Click File > Save or click the Save button in the toolbar.
6. Navigate to the folder in which you want to save the Remote Site, enter a name for the
Remote Site, and then click OK.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
After you save the Remote Site for the first time, the token for the Remote Print Agent is
displayed along with a button that allows administrators to download the Remote Print Agent.
Provide the administrator of the remote computer with the name of the Remote Site, and direct
that administrator to install the Remote Print Agent. For information about what the
administrator of the remote computer must do, see "Install the Remote Print Agent" on page
824.
SpectrumRemotePrint enables users to print from Spectrum using devices that are not directly
accessible by a SpectrumApplicationServer. After a Spectrum administrator configures a
Remote Site 1, an administrator of the remote computer 2 must install the Remote Print
Agent3 on the remote computer so that it can communicate with the
SpectrumApplicationServer and make those devices available in Spectrum.
Before You Begin: A Spectrum administrator must create a Remote Site for use
by for the Remote Print Agent and provide you with the name of the Remote Site.
For more information, " Configure a Remote Site" on page 823.
Note: The Remote Print Agent is supported for use only on computers running a
Windows Server or Windows operating system.
To install the Remote Print Agent, an administrator of the remote computer should use this
procedure.
1. In Spectrum, click Device Management.
2. Click File > Open or click the Open button.
3. In the left pane of the Open dialog box, click a folder to display the Remote Sites and
other objects within that folder. You can also double-click a folder to display subfolders.
4. In the middle pane, click the Remote Site that you want to open. You can also double-
click a subfolder to navigate to it. The right pane displays details and tag information
about the selected object.
Tip: If you do not know where to find a particular object, in the left pane
click the top-level folder, type part of the name of the object into the search
box, and click the Search button. Search results are displayed in the
middle pane. Note that only the folder selected in the left pane is searched.
5. Click OK. The Remote Site is displayed.
6. Make a note of the Token displayed for the Remote Site. You will require this token
when you install the Remote Print Agent.
7. Click Download to download the Loftware Spectrum Remote Print installer
(remotePrintAgent.exe).
8. Transfer the Loftware Spectrum Remote Print installer to the Remote Site computer.
1An object in Spectrum that represents the location of a remote computer. The Remote Print Agent must be installed on the
remote computer so that it can communicate with the Spectrum Application Server and make devices at that location available in
Spectrum. Each Remote Site can communicate with only one Spectrum Application Server.
2A computer outside of your LAN/WAN and on which the Remote Print Agent is installed. A remote computer has access to devices
that are not directly accessible by a Spectrum Application Server.
3A client-side service that must be installed on a remote computer so that it can communicate with the Spectrum Application
Server and permit printing. The Remote Print Agent connects to Spectrum to receive print jobs, provide device and status
information, and receive configuration information as needed.
9. On the Remote Site computer, double-click the installer file and follow the prompts in
the pop-up dialogs.
a. "You are installing Loftware Spectrum Remote Print. Do you want to continue?"
Click the Yes or No button.
b. "Do you want to install Loftware Spectrum Remote Print in the default location,
C:\Program Files\Loftware Remote Print?"
Click the Yes, No, or Cancel button.
A No response brings up a dialog for choosing a location.
c. "Enter the Loftware Spectrum URL."
Use the format https://<SpectrumApplicationServer>:<port>
For example: https://www.example.com:8080
d. "Enter the Loftware Spectrum Site Token."
Enter the Token associated with the Remote Site that you obtained from the
Remote Site page in Device Management.
e. "Enter the Remote Site Name you were provided for use with Loftware
Spectrum."
Enter the Remote Site name from the Remote Site page in Device Management
f. "Ready to install Loftware Spectrum Remote Print...Begin?"
Click the Yes or No button.
The Loftware Spectrum Remote Print service (lwsremote) is started automatically. A Device
Manager 1 or a Spectrum administrator must create devices and associate them with the Remote
Site. If you are responsible for creating devices, see " Create a TCP/IP Device Connection" on
page 797, " Create a Server Spooler Connection" on page 803, or " Create a RemoteSpooler
(LPR) Connection" on page 807.
1A user who creates and configures devices in Spectrum. Some Device Managers may have permissions to manage Remote Sites.
A Device Manager 1 or a Spectrum administrator must create devices in Spectrum for use with
a Remote Site.
lIf creating devices in Spectrum for the Remote Site is the responsibility of a Spectrum
administrator, then the administrator must obtain from the administrator of the remote
computer 2 details about the printers or spoolers necessary to configure the devices in
Spectrum.
l If creating devices in Spectrum is a responsibility of an administrator of the remote
computer, then this user must have the permissions necessary to configure device groups
in Spectrum and at least Read permission for Remote Sites.
If you are responsible for adding devices, see " Create a TCP/IP Device Connection" on page
797, " Create a Server Spooler Connection" on page 803, or " Create a RemoteSpooler(LPR)
Connection" on page 807.
1A user who creates and configures devices in Spectrum. Some Device Managers may have permissions to manage Remote Sites.
2A computer outside of your LAN/WAN and on which the Remote Print Agent is installed. A remote computer has access to devices
that are not directly accessible by a Spectrum Application Server.
Import/Export Names
You can import the information for multiple devices into Spectrum by creating a file in CSV
format that contains the option names and values for model device configurations. While an
import file can be created by assembling the common and family-specific internal option names,
the most practical method of creating this file is by creating model devices and exporting the
settings from Device Management in Spectrum.
The internal (database) names for device options vary from the names displayed in the user
interface in most cases. The following topics list the import/export names for supported device
options.
Note: The import/export feature does not support all the available device options.
This table lists the device options common to all device families as they appear in Device Management
with the corresponding import/export name that should be used when importing multiple
devices using a device import file.
Option Import/Export Name
Description DESCRIPTION
Device Group Name NAME
Family FAMILY
Force checked symbologies to print as images BARCODES_INSTR
Model MODEL
Physical location in Spectrum where the device is saved FOLDER
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
This table lists the device connection options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Connection Options" on page
845.
Note: The import/export feature does not support all the available device options.
These topics list the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Note: The import/export feature does not support all the available device options.
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for DPL devices.
Option Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Present Distance SET_PRESENTDISTANCE
Column Offset SET_COLOFFSET
Row Offset SET_ROWOFFSET
Cutter Engaged SET_CUTTERENGAGED
Label Present SET_LABELPRESENT
Verifier SET_VERIFIER
Set Label Length SET_LABELLENGTH
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Media Option Import/Export Name
Supply Type SET_SUPPLY_TYPE
Print Speed (ips) SET_PRINTSPEED
Slew Rate (ips) SET_SLEWRATE
Backup Speed (ips) SET_BACKUPSPEED
Head Temperature SET_HEADTEMPERATURE
Advanced Option Import/Export Name
Memory Module SET_MEMORYMODULE
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for generic devices.
Option Import/Export Name
Include Print Parameters INCLUDE_PRINT_PARAMETERS
Include Device Options INCLUDE_DEVICE_OPTIONS
Include Format Data INCLUDE_FORMAT_DATA
Include Field Data INCLUDE_FIELD_DATA
Include Label Image INCLUDE_LABEL_IMAGE
Color Imaging IS_COLOR_IMAGING
Image Format IMAGE_FORMAT
Image Encoding IMAGE_ENCODING
Device Resolution (dpi) SET_RESOLUTION
Orientation SET_ORIENTATION
Advanced Option Import/Export Name
Zip Print Stream ZIP_LABELS
Transform XML with XSLT USE_XSLT
Path to XSL File XSL_PATH
Schema Version SCHEMA_VERSION
Custom Command Import/Export Name
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are common to Intermec Fingerprint/Direct Protocol (FP/DP)
devices. For information about device-specific options and connection options, see " Device
Driver Options" on page 858.
Option Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Start Adjust SET_STARTADJUST
Stop Adjust SET_STOPADJUST
X-Start SET_XSTART
Disable Print Key SET_DISABLEPRINTKEY
Ribbon Saver SET_RIBBONSAVER
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Media Option Import/Export Name
Media Type SET_MEDIA_TYPE
Print Speed (mm/s) SET_PRINT_RATE
Contrast SET_CONTRAST
Ribbon Constant SET_RIBBONCONSTANT
Ribbon Factor SET_RIBBONFACTOR
Advanced Option Import/Export Name
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are the options supported by import/export for NeuraLabel devices.
For information about these options, see " Device Driver Options" on page 858.
Option Import/Export Name
Label Gap LABEL_GAP
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Custom Command Import/Export Name
PJLHeader Command SET_CUSTCMD_1
Job Level Command SET_CUSTCMD_2
Page Level Command SET_CUSTCMD_3
PCL Option Names for Import/Export File
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for PCL devices.
Option Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Print Orientation SET_PRINT_ORIENTATION
Output Tray SET_OUTPUT_TRAY
Page Size SET_PAGE_SIZE
Paper Source SET_PAPER_SOURCE
Paper Type SET_PAPER_TYPE
Duplex Mode SET_DUPLEX
Advanced Option Import/Export Name
Compression SET_COMPRESSION
Color Modes SET_COLOR_MODE
Font Option Import/Export Name
Downloaded Fonts SET_RECALLFONTLIST
TrueType Font Recall SET_RECALLTTFS
Custom Command Import/Export Name
Before Label SET_CUSTCMD_1
After Label SET_CUSTCMD_2
PDF Option Names for Import/Export File
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for PDF devices.
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for Intermec IPL devices.
Option: Label Control Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Top of Form SET_TOPOFFORM
Max Label Length SET_MAXLABELLENGTH
Retract Distance SET_LABELRETRACTDISTANCE
Skip Distance SET_SKIPDISTANCE
Label Rest Point SET_LABELRESTPOINT
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Option: Label Handling Import/Export Name
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for QuickLabel devices.
Option Import/Export Name
Version QCPL_VERSION
Changed Fields CHANGED_FIELDS_SUPPORT
Image Bit Depth IMAGE_BIT_DEPTH
Image Byte Boundary IMAGE_BYTE_BOUNDARY
Alternate Threadpool ALTERNATE_THREADPOOL
ICM Directory ICM_DIRECTORY
Secondary Port SECONDARY_PORT_FIELD
Socket Read Timeout SOCKET_READ_TIMEOUT_FIELD
Media Option Import/Export Name
Auto Cutter IS_AUTO_CUTTER
Cut At Job End IS_CUT_AT_JOB_END
Gap Length GAP_LENGTH
Mark Length MARK_LENGTH
Advanced Option Import/Export Name
Image Regions IMAGE_REGIONS
Color Correct IS_COLOR_CORRECTED
Rendering Intent RENDERING_INTENT
Special Paper IS_SPECIAL_PAPER
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for SBPL devices.
Option Import/Export Name
Device Version SET_PRINTERVERSION
Device Resolution (dpi) SET_RESOLUTION
Vertical Reference Point SET_VERTICAL
Horizontal Reference Point SET_HORIZONTAL
Print Length SET_PRINTLENGTH
Enable Cutter SET_ENABLECUTTER
Print/Cut Offset SET_PRINTCUTOFFSET
Media Option Import/Export Name
Print Darkness SET_PRINTDARKNESS
Darkness Range SET_DARKNESSRANGE
Font Option Import/Export Name
TrueType Font Recall SET_RECALLTTFS
Font Mapping SET_REMAPFONTS
Barcode Imaging Option Import/Export Name
Force checked symbologies to print as images BARCODES_INSTR
Code 39 IMAGE_CODE39
Code 39 Full ASCII IMAGE_EXTCODE39
Code 93 IMAGE_CODE93
Code 93 Full ASCII IMAGE_EXTCODE93
Code 128 IMAGE_CODE128
DataMatrix IMAGE_DATAMATRIX
EAN-8 IMAGE_EAN8
EAN-13 IMAGE_EAN13
GS1 DataMatrix IMAGE_GS1DATAMATRIX
GS1-128 IMAGE_GS1128
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for server spooler devices.
Option Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Orientation SET_PRINT_ORIENTATION
Paper Size SET_PAPERSIZE
Paper Source SET_PAPERSOURCE
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Miscellaneous Command Import/Export Name
Spooler Name PRINTERNAME
Zebra (ZPL II) Option Names for Import/Export File
This table lists the device options as they appear in Device Management with the
corresponding import/export name that should be used when importing multiple devices using a
device import file. For information about these options, see " Device Driver Options" on page
858.
Tip: In addition to these, common options and connection options are also
supported. For more information, see "Common Options for Import/Export File"
on page 828 and "Connection Options for Import/Export File" on page 829.
The options in this table are those supported by import/export for ZPL II devices.
Option Import/Export Name
Device Resolution (dpi) SET_RESOLUTION
Label Top SET_LABELTOP
Print Mode SET_PRINTMODE
Cut Interval SET_CUTINTERVAL
Tear-off SET_TEAROFFADJUST
Backfeed SET_BACKFEED
Override Pause Count SET_PAUSE
Text Box Overrun Mode TEXTBOX_OVERFLOW_RULE
Media Option Import/Export Name
Media Type SET_MEDIA_TYPE
Stock Type SET_SUPPLY_TYPE
Print Speed (mm/s) SET_PRINT_RATE
Darkness SET_DARKNESS
Flip Label 180 Degrees SET_FLIPLABEL
Print Mirror Image of Label SET_MIRRORLABEL
Print Label as White on Black SET_REVERSEPRINT
Font Option Import/Export Name
Global Printing Engine SET_GLOBALPRINTINGENGINE
TrueType Font Recall SET_RECALLTTFS
Default Glyph SET_DEFAULTGLYPH
Bidirectional Text Layout SET_BIDIRECTIONALTEXT
Character Shaping SET_CHARACTERSHAPING
OpenType Table Support SET_OPENTYPETABLE
Barcode Imaging Option Import/Export Name
Force checked symbologies to print as images BARCODES_INSTR
Code 39 IMAGE_CODE39
Code 39 Full ASCII IMAGE_EXTCODE39
1A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
2A configuration of a Spectrum environment that includes Spectrum instances located at different sites within the same WAN. In a
multi-site deployment, each Spectrum instance acts as either a headquarters or a facility.
Toolbar
Command Description
Icon
Export Create a file in CSV format that contains all the option settings for the
devices configured in your system at a folder level that you select. For
more information, see " Importing Multiple Devices" on page 816.
Import Create devices based on option settings in a CSV format import file. For
more information, see " Importing Multiple Devices" on page 816.
Refresh Update the displayed data.
Delete Delete the device or remote site that you have displayed in Device
Management.
Edit Menu Commands
Toolbar
Command Description
Icon
Cancel/Undo Undo the most recent change to the device or remote site that
Edits you are editing.
Status Commands
Toolbar Icon Command Description
Device Status Open the Devices section in Status.
Connection
The Connection section allows you to configure the connection for a device. This section is
displayed only after a Family and Model have been specified for the device, and those
selections determine the connection types available. Only options appropriate for the selected
connection type are displayed. For more information, see " Connection Options" on page 845.
family driver. The Options section is displayed only after a Family and Model have been
specified for the device. The options included and which sections are displayed depend on the
Family and Model selected.
For information about the options available for each device family driver, see " Device Driver
Options" on page 858.
Properties Pane
The following properties can be configured or viewed in the Properties pane when you view a
device or a Remote Site with LoftwareSpectrum.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name: spaces,
double quotes, single quotes, hyphens, underscores, periods, and grave accents. For letters, the
case that you specify is displayed, but case is ignored when Spectrum interprets a name.
Option Description Notes
Device Group A unique name for this device. Required. Displayed only for a
Name device.
Remote Site A unique name for this Remote Site Required. Displayed only for a
Name site. remote site.
Description A description for this device or
remote site.
Connection Options
The following device connection types may be available from the Connection section when
adding a device connection.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
When configuring a device connection, the following options are available in the Connection
section when you select TCP/IP as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
reached.
Job Retry If connection errors occur, the length of time after which to Time in
Timeout cease connection attempts and classify a print job as failed. seconds
Tip: Coordinate this value with Connection
Attempt Timeout and Retry Wait Time. For
example, if you want to attempt a connection for 5
seconds, wait for 10 seconds, repeat, and classify
the job as failed if a connection has not been
achieved within 1 minute, then you would set
Connection Attempt Timeout to 5000, Retry
Wait Time to 10000, and Job Retry Timeout to
60.
This option is displayed only if Fail Job on Connection Errors
is set to Timeout.
A File device connection allows you to print to a PDF or PNG file, or create an XML file. When
configuring a device connection, the following options are available in the Connection section
when you select File as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
File Settings
Option Description Values and Variables
File Path The folder on the Default value if Model is set to
SpectrumApplicationServer PDF:
where PDF files are stored. A %W/pdfs
UNC path is recommended, but Default value if Model is set to
physical paths to folders on the Image:
SpectrumApplicationServer can %W/images
also be used. Default value if Model is set to
Best Practice Generic:
Use a UNC path such %W/generic
as
\\Server\SharedFold Where %W is defined as:
er. Mapped drives are ${catalina.home}/webapps/ROOT
not supported.
File The file name creation tools. This %U: User
%L: Device
Name field is parsed for instances of %J: Job Number
Pattern ${<value>}, #{<value>}, % %D {yyyy-MM-dd'T'HHmmss}: Date Format
{<value>}, which are replaced
with the corresponding data For additional values, see " Dynamic Field
Values" on page 855.
sources. For more information, see
" Dynamic Field Values" on page
855.
Create Whether Spectrum should create On/Off
Director the folder if it does not exist. Default=On
y
Retry The time between attempts to Seconds
Wait write to the file.
Time
An Email device connection allows you to print to a PDF file or to a PNG file and send the file
via email. When configuring a device connection, the following options are available in the
Connection section when you select Email as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
When configuring a device connection, the following options are available in the Connection
section when you select Spooler as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
When configuring a device connection, the following options are available in the Connection
section when you select USB as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
reached.
When configuring a device connection, the following options are available in the Connection
section when you select QCPL as the connection type.
Note: Not all connection types are available to all device families and models. The
options available are dependent on the type of connection and device family
selected.
reached.
When configuring the options in the Connection section for a device connection, the following
fields accept static characters as well as dynamic values from the system properties or data
map1.
Connection Type Fields
" TCP/IP Connection Type" on page 845 Document Name
" File Connection Type (Print to PDF, Image, or XML)" on page 847 File Name Pattern
" Email Connection Type (Send as PDF or Image)" on page 848 From
To
Subject
Body
System Properties
You can use the following case-sensitive values to enter data from system properties in the field.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
Value Description
%D{<format_string>} Date format. Characters are case-sensitive. Static alphanumeric
characters must be enclosed in single quotation marks.
Year: yyyy
Month: MM or MMM
Day of month: dd
Hour: HH
Minutes: mm
Seconds: ss
Milliseconds: SSS
Example: %D{yyyy-MM-dd HH:mm:ss 'PT'} results in a date
and time like 2014-07-23 09:54:28 PT.
%J Job ID, a numeric value.
%P Print Job Detail Context ID. This numeric value can be useful
for debugging.
%L Device Group Name in Spectrum.
%U User name of user who requested the print job.
Data Map Entries
To use data from data map entries in the field, enter the data ref1 in ${/Body/Text} format.
Example
You might want the file name of your printed PDF files to contain company names and item
serial numbers from the data map, which will allow users to search for and quickly locate specific
PDF files.
Your label template in Design includes fields for company names and serial numbers with data
references from the data map, or Data Ref values, of /Body/Company and /Body/Serial.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
In the Connection section for the device connection in Device Management , enter
${/Body/Company}${/Body/Serial} in the File Name Pattern field. For company Loftware and item
serial number 12345, the PDF file name will be Loftware12345.pdf.
The Options, Media, Fonts, Barcode Imaging, Detailed Status, Advanced, and Custom
Commands sections allow you to configure options that are specific to a particular device
family driver. The Options section is displayed only after a family driver or a Family and
Model have been specified for the device. The options included and which sections are
displayed depend on the Family and Model selected.
For information about the options available for each device family driver, see the appropriate
topic.
Note: If the Family selected is Family Driver, then a device language, image file
output, or PDF file output can be selected for the Model.
Device
Bar-
Lan- Advance- Custom
Media code Detailed
Family guage Options Fonts d Com-
Options Ima- Status
or Options mands
ging
Model
cab cab Options Media Detailed Advanced Custom
(cab) (cab) Status (cab) Command
(cab) s (cab)
Datama DPL1 Options Media Detailed Advanced Custom
x-O'Neil (Datamax- (Datamax- Status (Datamax- Command
O'Neil) O'Neil) (Datamax- O'Neil) s Tab
O'Neil) (Datamax-
O'Neil)
Intermec FP/DP Options Media Advanced Custom
2 (Intermec (Intermec (Intermec Command
with with with s Tab
FP/DP) FP/DP) FP/DP) (Intermec
with
FP/DP)
Device
Bar-
Lan- Advance- Custom
Media code Detailed
Family guage Options Fonts d Com-
Options Ima- Status
or Options mands
ging
Model
Intermec IPL1 Options Media Barcod Advanced Custom
(Intermec (Intermec e (Intermec Command
with IPL) with IPL) Imagin with IPL) s
g (Intermec
(Interm with IPL)
ec with
IPL)
NeuraLa 300x Options Media Advanced Custom
bel (NeuraLa (NeuraLa (NeuraLa Command
bel) bel) bel) s
(NeuraLa
bel)
PCL2 PCL 5c Options Fonts Detailed Advanced Custom
(PCL 5c) (PCL Status (PCL 5c) Command
5c) (PCL 5c) s (PCL
5c)
PCL3 PCL 5e Options Fonts Detailed Advanced
(PCL 5e) (PCL Status (PCL 5e)
5e) (PCL 5e)
QuickLa Kiaro Options Media Detailed Advanced
bel QL111 (QuickLa (QuickLa Status (QuickLa
bel) bel) (QuickLa bel)
bel)
4
SATO SBPL Options Media Fonts Barcod Detailed Advanced Custom
(SATO) (SATO) (SAT e Status (SATO) Command
O) Imagin (SATO) s
g (SATO)
(SAT
O)
Device
Bar-
Lan- Advance- Custom
Media code Detailed
Family guage Options Fonts d Com-
Options Ima- Status
or Options mands
ging
Model
Zebra ZPL II1 Options Media Fonts Barcod Detailed Advanced Custom
(Zebra) (Zebra) (Zebr e Status (Zebra) Command
a) Imagin (Zebra) s (Zebra)
g
(Zebra)
Family Generic Options Advanced Custom
Driver (Generic) (Generic) Command
s
(Generic)
Family Image Options Advanced
Driver (Image) (Image)
Family PDF2 Options Advanced
Driver (PDF) (PDF)
Family Pass Options
Driver Through (Pass
Through)
Server Spooler Options
(Server
with
Spooler)
cab Device Driver
If the Family selected is Family Driver and the Model selected is cab, or if the Family
selected is cab and a model is selected, then the following sections are displayed.
Label Control
Option Description Values
Device Resolution The resolution capability of the device in Dots 203 dpi
Per Inch (dpi). 300 dpi
600 dpi
Label Gap The gap between labels in millimeters. -120mm to 120mm
Horizontal Offset Horizontal adjustment of the point where -9999mm to
printing begins. This is useful when a single 9999mm
format must be printed on several different
types of labels that already have printed
information.
Vertical Offset Vertical adjustment of the point where -9999mm to
printing begins. This is useful when a single 9999mm
format must be printed on several different
types of labels that already have printed
information.
Backfeed Speed Backfeed (retract) speed of the device before 0 to 10 mm/s
or after a label is printed.
Print Mode The action taken by the device after a label or Tear Off
group of labels has printed. Peel Off
Cutter
Don't Send
Peel Off Distance Distance by which to feed the label forward -150mm to 150mm
after printing.
Note: This option is available
only if Print Mode is set to Peel
Off.
Cut Offset Adjustment to align labels to the cut position. -150mm to 150mm
Note: This option is available
only if Print Mode is set to
Cutter.
Cut Interval The number of labels to skip before cutting. 0 labels to 9999
Note: This option is available labels
only if Print Mode is set to
Cutter.
If the Family selected is Family Driver and the Model selected is cab, then the Media
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is cab and a specific model is selected, then only options appropriate to
that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Option Description Values
Media Type The print method used by Thermal Transfer (Ribbon): Uses
the device. ribbon and non-heat sensitive label
stock to print. The print head is
activated as the label moves
underneath heating the ribbon material
and melting it onto the label. To
increase the quality of the print
decrease/increase the speed and
increase/decrease the heat as
necessary.
Direct Thermal (No Ribbon): Uses
heat sensitive label stock without a
ribbon. The print head is activated as
the label moves underneath heating
the label stock and activating the heat
sensitive material in the stock causing
darkening of the material. To increase
the quality of the print,
decrease/increase the speed and
increase/decrease the heat as
necessary.
Label Stock The type of media loaded in Label Gap: Gap, perforation or
the device. separation between each label.
Continuous: No gaps or separations
between labels.
Upper Marker
Lower Marker
Advanced Options
Option Description Values
Send Device Options If selected, all device options configured in On/Off
LoftwareSpectrum are sent to the device. If Default=On
cleared, the settings configured at your device are
used.
Diagnostics When selected, diagnostics are enabled for On/Off
troubleshooting. Default=Off
Diagnostics Specifies the folder where debug images for Black
Directory and Red images on a label are stored.
Note: This option is available only if
Diagnostics is selected.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After Command to occur as the last command sent after each label.
Label
Datamax-O'Neil Device Driver
If the Family selected is Family Driver and the Model selected is DPL, or if the Family
selected is Datamax-O'Neil and a model is selected, then the following sections are displayed.
If the Family selected is Family Driver and the Model selected is DPL, then the Media
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Datamax-O'Neil and a specific model is selected, then only options
appropriate to that model are displayed. For more information about drivers and Spectrum, see "
Managing Devices" on page 794.
Option Description Values
Supply Type The type of media loaded in the device. Mark Stock: Stock
with a black mark
found opposite print
side.
Continuous: No
gaps, notches, or
perforations
between labels.
Die Cut: Stock that
has gaps between
each label.
Print Speed The speed in inches per second (ips) at which the stock 2.0ips to 12.0ips
(ips) is fed when printing. The combinations of print speed Default: 8.0ips
and head temperature control the print quality of the
label.
Slew Rate The speed in inches per second (ips) at which the stock 2.0ips to 16.0ips
(ips) is fed when advancing over non-printing areas. This Default: 8.0ips
option may affect device throughput.
Backup The rate of stock movement in inches per second (ips) 2.0ips to 5.0ips
Speed (ips) during backup positioning for start of print, cutting, or Default: 4.0ips
present distance.
Head Darkness of the print. 0 to 33
Temperature Default: 12
Detailed Status for Datamax-O'Neil Devices
If the Family selected is Family Driver and the Model selected is DPL, or if the Family
selected is Datamax-O'Neil and a specific device model is selected, then the Detailed Status
section is displayed.
This section allows you to retrieve detailed information about the status and configuration of the
device, such as the model number, firmware version, media type, whether the device is out of
label stock, and whether the device is experiencing any errors.
Tip: Basic status information about whether the device is started and whether the
device service is running is displayed in the Properties pane.
Option Description Command
Detailed Status Query the device and display detailed information On-
about the device and its status. Clicking the On- Demand
Demand Status button displays a dialog box Status
containing status information.
Note: The On-Demand Status
command is available only if the
Connection Type is set to TCP/IP or
QCPL.
Advanced Options for Datamax-O'Neil Devices
If the Family selected is Family Driver and the Model selected is DPL, then the Advanced
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Datamax-O'Neil and a specific model is selected, then only options
appropriate to that model are displayed. For more information about drivers and Spectrum, see "
Managing Devices" on page 794.
Advanced Options
Option Description Values
Memory Module To which memory module to download designs, Module A
graphics, and fonts. through
Module I USB
Thumbdrive
Default:
Module D
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After Command to occur as the last command sent after each label.
Label
<STX>J
Example: Cause a Form Feed
You can use the following command to cause a form feed to the next start of print.
<STX>F
Note: For more information about DPL, refer to Datamax-O'Neil documentation.
If the Family selected is Family Driver and the Model selected is FP/DP1, or if the Family
selected is Intermec and a Fingerprint/Direct Protocol (FP/DP) model is selected, then the
following sections are displayed.
l " Options for Intermec FP/DP Devices" on page 879
l " Media Options for Intermec FP/DP Devices" on page 882
l "Pass Through File Types" on page 885
l " Custom Commands for Intermec FP/DP Devices" on page 886
Options for Intermec FP/DP Devices
If the Family selected is Family Driver and the Model selected is FP/DP2, then the Options
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Intermec and a Fingerprint/Direct Protocol (FP/DP) model is
selected, then only options appropriate to that model are displayed. For more information about
drivers and Spectrum, see " Managing Devices" on page 794.
1Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
2Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
Label Control
Label Handling
1Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
Advanced Options
Option Description Values
Format The areas of memory (RAM) in which the label design is to be stored. 0 to 20
Number Default:
1
Send If selected, all device options configured in LoftwareSpectrum are On/Off
Options sent to the device. If cleared, the settings configured at your device Default:
are used. On
1Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
1Fingerprint/Direct Protocol. Intermec Fingerprint is a programming language for printer applications. Intermec Direct Protocol is
a label layout language used by Fingerprint.
Note: You can enter lower ASCII control codes by using mnemonic text
representation. The mnemonic text must be upper case. For example, you can use
<ESC> for an escape character or <HT> for a tab character. To enter upper case text
that includes < or > but should not be converted to a control code, enclose the
text with << and >>. For example, <<US>> is converted to <US>. Lower case or
mixed case text enclosed in < and > will remain as is and will not be converted
into a control code. For a list of common control codes, see "Lower ASCII
Control Codes" on page 975.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After FPL Command to occur after the configuration part of the print stream.
Options
After Command to occur as the last command sent after each label.
Label
INPUT OFF
Example: Manually Changing the Print Speed
If you are using a device that is only partially supported and you need to manually
change the print speed by a means other than using the Print Speed option on the
Media tab, you could enter the following custom command in the After FPL
Options field to change the print speed to 225mm/s.
If the Family selected is Family Driver and the Model selected is IPL1, or if the Family
selected is Intermec and an IPL model is selected, then the following sections are displayed.
l " Options for Intermec IPL Devices" on page 888
l " Media Options for Intermec IPL Devices" on page 893
l " Barcode Imaging for Intermec IPL Devices" on page 894
l "Pass Through File Types" on page 897
l " Custom Commands for Intermec Devices" on page 898
Options for Intermec IPL Devices
If the Family selected is Family Driver and the Model selected is IPL, then the Options
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Intermec and an IPL model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Label Control
Label Handling
If the Family selected is Family Driver and the Model selected is IPL, then the Media
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Intermec and an IPL model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
If the Family selected is Family Driver and the Model selected is IPL, then the Barcode
Imaging section displays the following options. Some options may not be relevant to some
device models.
If the Family selected is Intermec and an IPL model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Option Description Values
Force checked For each symbology, whether to print a barcode as an : The
symbologies to print image or to use the device's native ability to encode the device
as images. barcode. encodes
Note: Selecting the Print as Image the
property for a Barcode field overrides this barcode.
option for the relevant symbology, and the If the
barcode is sent as an image. Selecting Print device
as Image removes any potential device does not
variation when natively encoding the barcode support
data. native
encoding
of
barcodes,
then the
barcode
is
encoded
by
Spectrum
and
printed
as an
image.
(Default)
:
Spectrum
encodes
the
barcode
and
prints it
as an
image.
Advanced Options for Intermec IPL Devices
If the Family selected is Family Driver and the Model selected is IPL, then the Advanced
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Intermec and an IPL model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Advanced Options
Option Description Values
Language The locale of the default code page and character sets. See device United
user guide for more information. States
Image Configure how much of the label's format to "image" before starting 2 to 25
Bands to print. If the image bands are set correctly, they can greatly improve Default:
device throughput. If set incorrectly, they can degrade performance. 5
The number of image bands available is determined by the amount of
memory installed in your device. Consult your device manual for the
available range of image bands.
Format The areas of memory (RAM) in which the label design is to be stored.
0 to 99
Number Default:
1
Enable Allow IBM compatible characters to replace standard ASCII On/Off
IBM characters. Default:
Translation Off
Send If selected, all device options configured in LoftwareSpectrum are On/Off
Options sent to the device. If cleared, the settings configured at your device Default:
are used. Off
Use Direct If selected, Direct Graphics mode is enabled so that you can use On/Off
Graphics compressed images without storing them in the device. Images must Default:
be compressed into run-length encoded (RLE) data and the device On
must have enough memory to contain the entire label. Selecting this
option may improve print speed. If cleared, Direct Graphics mode is
not used. See the device guide for more information about Direct
Graphics mode.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Note: If a custom command begins with <STX> and ends with <ETX>, you must
include those control codes in the custom command field, and they must be upper
case.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After IPL Command to occur after the configuration part of the print stream.
Options
After Command to occur as the last command sent after each label.
Label
<STX><SI>S90;<ETX>
Note: For more information about IPL, refer to Intermec documentation.
If the Family selected is NeuraLabel and a model is selected, then the following sections are
displayed.
Tip: For NeuraLabel devices, Spectrum provides a PCL1 3GUI driver.
If the Family selected is NeuraLabel and a model is selected, then the Media Options
section displays the following options. For more information about drivers and Spectrum, see "
Managing Devices" on page 794.
Option Description Values
Media Type The type of paper or label stock being used by the Plain Paper
device. (Default)
Synthetic Label
Matte Label
Glossy Label
Photo Inkjet
Paper
Matte Inkjet
Paper
Glossy Inkjet
Paper
Paper Source The tray from which to draw media and whether Tray 1
the media is continuous (no gap, perforation, or Continuous
separation between labels) or in sheets. (Default)
Tray 1 Cut
Sheet
Tray 2 Cut
Sheet
Marks Whether the label stock has a line or mark on the Marked
back of the label stock. (Default)
Note: This option is not
configurable.
Mark Adjust How far to adjust where a label is printed. This -30 to 300mils
option is typically used if the mark is in the wrong Default: 20mils
position because the media does not match the
current specification.
Note: This option is available only if
Paper Source is set to Tray 1
Continuous.
Advanced Options
Option Description Values
Color Mode Whether to print in color, grayscale, or black Black & White
and white. Color (Default)
Grayscale
Print Quality Whether to print using draft, normal, or best Draft
print quality available with the device. Normal
Tip: Most GHS labels use (Default)
Normal. Small labels with Best
intricate detail may require Best.
Ink Saver Whether to use a reduced amount of ink when Off: The
printing. normal amount
of ink is used.
(Default)
Low: 10% less
than the normal
amount of ink
is used.
High: 25%
less than the
normal amount
of ink is used.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
PJL Header Printer Job Language (PJL) command to occur at the beginning of
Command the print stream prior to switching to PCL 3GUI language.
Example
@PJL JOB NAME = "Sample Job 1"
Job Level Command Command to be appended to existing job commands once per print
job. This command may be used to support enhancements due to
firmware upgrades.
Example
If Paper Source is set to Tray 1 Continuous, the
following command inserts four leading blank pages.
<ESC>*o5W<SO><GS><NUL><NUL><EOT>
Page Level Command to be appended to existing page commands once per page
Command or label. This command may be used to support enhancements due
to firmware upgrades.
Example
If Color Mode is set to Color, the following
command prints output in black and white:
<ESC>*o5W<VT><SOH><NUL><NUL><STX>
If the Family selected is PCL1 and the Model selected is PCL 5c, then the following sections
are displayed.
l " Options for PCL 5c Devices" on page 907
l " Fonts for PCL 5c Devices" on page 909
If the Family selected is PCL and the Model selected is PCL 5e, then the following sections
are displayed.
If the Family selected is NeuraLabel and a model is selected, then a PCL 3GUI driver is used
and options relevant to NeuraLabel devices are displayed. For more information, see "
NeuraLabel Device Driver" on page 899.
Options for PCL 5c Devices
If the Family selected is PCL and the Model selected is PCL 5c, the Options section displays
the following options. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Option Description Values
Device The resolution capability of the device in Dots Per Inch (dpi). 300
Resolution 600
1200
2400
Orientation The alignment of the label in relation to the paper. Portrait
Landscape
Reverse Portrait
Reverse Landscape
Default: Portrait
Output To which output tray to direct printed labels. If a device has Upper (default)
Tray only one output tray or otherwise does not support this Lower
feature, this command is ignored.
If the Family selected is PCL and the Model selected is PCL 5c, the Fonts section displays
the following options. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Note: The font recall1 functionality requires that you install the same font in
Spectrum and on your device. Font recall is not supported for Spectrum's built-in
fonts. If you attempt to use font recall with a built-in font by installing a font of
the same name on your device, the result may not be WYSIWYG.
Note: In some circumstances, font recall cannot be applied for a particular field.
For more information, see " Troubleshoot Devices" on page 1462.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
2TrueType font
3TrueType font collection
Advanced Options
Option Description Values
Compression The method of file compression used. Adaptive compression, Unencoded
Type which automatically selects the most effective type of Run-length
compression, is recommended. encoding
Tagged Image
File Format
(TIFF)
Delta row
compression
Adaptive
Default:
Adaptive
Color Mode Whether to print in color (RGB), in grayscale, or in black and RGB
white. Grayscale
Black & White
Default: RGB
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After Command to occur as the last command sent after each label.
Label
Options for PCL 5e Devices
If the Family selected is PCL and the Model selected is PCL 5e, the Options section displays
the following options. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Option Description Values
Device The resolution capability of the device in Dots Per Inch (dpi). 300
Resolution 600
1200
2400
Output To which output tray to direct printed labels. If a device has Upper (default)
Tray only one output tray or otherwise does not support this Lower
feature, this command is ignored.
Page Size The size of a page of stock. Executive
Letter (default)
Legal
Ledger
A5
A4
A3
Custom
B4 (JIS)
B5 (JIS)
B5 (ISO)
Monarch
Com 10
C5 (ISO)
DL
Hagaki
Oufuku-Hagaki
If the Family selected is PCL and the Model selected is PCL 5e, the Fonts section displays
the following options. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Note: The font recall1 functionality requires that you install the same font in
Spectrum and on your device. Font recall is not supported for Spectrum's built-in
fonts. If you attempt to use font recall with a built-in font by installing a font of
the same name on your device, the result may not be WYSIWYG.
Note: In some circumstances, font recall cannot be applied for a particular field.
For more information, see " Troubleshoot Devices" on page 1462.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
2TrueType font
3TrueType font collection
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
If the Family selected is QuickLabel and the Model selected is Kiaro! or QL-111, then the
following sections are displayed.
Tip: Basic status information about whether the device is started and whether the
device service is running is displayed in the Properties pane.
Option Description Command
Detailed Status Query the device and display detailed information On-
about the device and its status. Clicking the On- Demand
Demand Status button displays a dialog box Status
containing status information.
Note: The On-Demand Status
command is available only if the
Connection Type is set to TCP/IP or
QCPL.
Advanced Options for QuickLabel Devices
If the Family selected is QuickLabel and a specific model is selected, then only options
appropriate to that model are displayed. For more information about drivers and Spectrum, see "
Managing Devices" on page 794.
Option Description Values
Image Regions The number of regions of the label 1 to 10 image regions
image to send to the device individually. per label
Default: 5
Color Correct Whether to apply a color management : Off (Default)
profile to the output of the device. : On
Note: This option is
displayed only if Satin
Synthetic is selected for
Media Type in the
Media section.
If the Family selected is Family Driver and the Model selected is SBPL, or if the Family
selected is SATO and a model is selected, then the following sections are displayed:
Label Control
Option Description Values
Device Version Whether the device is a Japanese or International
internationally branded device. Japan
Device Resolution The resolution capability of the device in 203 dpi (8 dpmm)
Dots Per Inch (dpi) or dots per millimeter 300 dpi (11.8 dpmm)
(dpmm). 305 dpi (12 dpmm)
600 dpi (23.6 dpmm)
609 dpi (24 dpmm)
Cutter Options
Option Description Values
Enable Cutter Whether to turn on the cutter. On/Off
Default =
Off
Print/Cut Offset Align labels to the cut position. -400 to
400 dots
Note: The font recall1 functionality requires that you install the same font in
Spectrum and on your device. Font recall is not supported for Spectrum's built-in
fonts. If you attempt to use font recall with a built-in font by installing a font of
the same name on your device, the result may not be WYSIWYG.
Note: In some circumstances, font recall cannot be applied for a particular field.
For more information, see " Troubleshoot Devices" on page 1462.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
Note: When using the font mapping1 functionality, the font displayed in
Spectrum is the Spectrum font, and the font printed is the native font. So that the
result is as close to WYSIWYG as possible, it is recommended that you select a
native font that is comparable to the Spectrum font.
Note: If the same TrueType font is used for both font recall and font mapping,
the recalled font takes precedence.
1The ability to use a printer's native scalable font at print time in place of a TrueType font. Font mapping allows you to print natively
and therefore improve performance.
Tip: Basic status information about whether the device is started and whether the
device service is running is displayed in the Properties pane.
Option Description Command
Detailed Status Query the device and display detailed information On-
about the device and its status. Clicking the On- Demand
Demand Status button displays a dialog box Status
containing status information.
Note: The On-Demand Status
command is available only if the
Connection Type is set to TCP/IP or
QCPL.
Advanced Options for SATO Devices
If the Family selected is Family Driver and the Model selected is SBPL, then the Advanced
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is SATO and a specific model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Advanced Options
Option Description Values
Memory Slot The memory card used if Expanded Memory is None
selected. Slot A
Slot B
Send Options If enabled, all device options configured in On/Off
LoftwareSpectrum set are sent to the device. Default=On
Otherwise, the options configured at the device are
used.
CLNX Series If you are using a SATO device in the CLNX series, On/Off
enable this option to use the correct command set. Default=Off
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Tip: For assistance with print stream scripting, contact Loftware's Professional
Services Group.
Option Description Values
Script Name The name of the print stream script.
Tip: This name may be included in log
files, which may assist you if
troubleshooting problems with the
script.
Apply Script Whether to run the print stream script. A print stream : Do
script is run just prior to sending data to a device. The not run
effects of print stream scripting are reflected only in the
the print stream, not in the datamap. script.
Note: Regardless of whether Apply (Default)
Script was selected, if the Advanced : Run
Troubleshooting option is disabled the
then the script is not run. script.
Script A print stream script written in JavaScript.
LoftwareSpectrum uses the Rhino JavaScript engine
for Script data sources. Rhino is an open source
JavaScript engine maintained by the Mozilla
Corporation. It enables you to parse, compile, and
execute JavaScript statements, and it supports
JavaScript versions 1.0 through 1.8.
Note: JavaScript versions 1.3 and later
conform to the ECMAScript-262
specification (Standard ECMA-262).
Custom Commands for SATO Devices
If the Family selected is Family Driver and the Model selected is SBPL, or if the Family
selected is SATO, then the Custom Commands section displays the following options. For
more information about drivers and Spectrum, see " Managing Devices" on page 794.
Custom commands are sent even if Send Options is cleared in the Advanced section.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
After Command to occur after the option stream.
Control
Strings
After Command to occur as the last command sent after each label.
Label
Zebra Device Driver
If the Family selected is Family Driver and the Model selected is ZPL II, or if the Family
selected is Zebra and a model is selected, then the following sections are displayed.
l " Options for Zebra Devices" on page 945
l " Media Options for Zebra Devices" on page 949
l " Fonts for Zebra Devices" on page 951
l " Barcode Imaging for Zebra Devices" on page 956
l " Detailed Status for Zebra Devices" on page 957
l "Pass Through File Types" on page 960
l " Custom Commands for Zebra Devices" on page 961
Note: It is recommended that Zebra ZPL II devices use x.17 or later firmware.
For Zebra font commands, x.14 or later firmware is required. Spectrum supports Zebra ZPL II
devices with x.10 or later firmware.
Options for Zebra Devices
If the Family selected is Family Driver and the Model selected is ZPL II, then the Options
section displays the following options. Some options may not be relevant to some device
models.
If the Family selected is Zebra and a specific model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Note: It is recommended that Zebra ZPL II devices use x.17 or later firmware.
For Zebra font commands, x.14 or later firmware is required. Spectrum supports Zebra ZPL II
devices with x.10 or later firmware.
Font Options
Option Description Values
Global Printing Whether to enable Zebra's Global Printing feature, which is :
Engine required for Unicode fonts. Allow
Note: Enabling this option may impact Unicode
device throughput, such as causing pauses fonts.
before printing a label. (Default)
: Do
not
allow
Unicode
fonts.
Note: The font recall1 functionality requires that you install the same font in
Spectrum and on your device. Font recall is not supported for Spectrum's built-in
fonts. If you attempt to use font recall with a built-in font by installing a font of
the same name on your device, the result may not be WYSIWYG.
Note: In some circumstances, font recall cannot be applied for a particular field.
For more information, see " Troubleshoot Devices" on page 1462.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
2TrueType font
3TrueType font collection
Tip: Basic status information about whether the device is started and whether the
device service is running is displayed in the Properties pane.
Option Description Command
Detailed Status Query the device and display detailed information On-
about the device and its status. Clicking the On- Demand
Demand Status button displays a dialog box Status
containing status information.
Note: The On-Demand Status
command is available only if the
Connection Type is set to TCP/IP or
QCPL.
Note: It is recommended that Zebra ZPL II devices use x.17 or later firmware.
For Zebra font commands, x.14 or later firmware is required. Spectrum supports Zebra ZPL II
devices with x.10 or later firmware.
Advanced Options for Zebra Devices
If the Family selected is Family Driver and the Model selected is ZPL II, then the
Advanced section displays the following options. Some options may not be relevant to some
device models.
If the Family selected is Zebra and a specific model is selected, then only options appropriate
to that model are displayed. For more information about drivers and Spectrum, see " Managing
Devices" on page 794.
Note: It is recommended that Zebra ZPL II devices use x.17 or later firmware.
For Zebra font commands, x.14 or later firmware is required. Spectrum supports Zebra ZPL II
devices with x.10 or later firmware.
Advanced Options
Option Description Values
Always Download Whether the label template is sent with : The label
Format every print request. template is not sent.
(Default)
: The label
template is sent.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Note: You can enter lower ASCII control codes by using mnemonic text
representation. The mnemonic text must be upper case. For example, you can use
<ESC> for an escape character or <HT> for a tab character. To enter upper case text
that includes < or > but should not be converted to a control code, enclose the
text with << and >>. For example, <<US>> is converted to <US>. Lower case or
mixed case text enclosed in < and > will remain as is and will not be converted
into a control code. For a list of common control codes, see "Lower ASCII
Control Codes" on page 975.
Command Location
You can configure custom commands to occur in multiple locations for the same job.
Note: For some custom commands, it may be necessary to add Start Format (^XA)
and End Format (^XZ) as part of the command.
Option Description
Before Command to occur as the first command sent to the device at the start of the
Label job. On an extended print job (multiple label requests in print stream), this
command occurs only before the first label request.
This location is outside the boundaries of an ^XA-^XZ format string.
After ZPL Command to occur after the configuration part of the print stream.
Control This location is inside the boundaries of an ^XA-^XZ format string.
Strings
Last Command to occur after all the fields are defined and immediately before the
Command ^PQ (Print Quantity) command.
Before This location is inside the boundaries of an ^XA-^XZ format string.
^PQ
Last Command to occur immediately after the ^PQ (Print Quantity) command.
Command This location is inside the boundaries of an ^XA-^XZ format string.
After ^PQ
After Command to occur as the last command sent after each label.
Label This location is outside the boundaries of an ^XA-^XZ format string.
^XA^MCY^XZ
Example: Manually Changing the Print Speed
If you are using a device that is only partially supported and you need to manually
change the print speed by a means other than using the Print Speed option on the
Media tab, you could enter the following custom command in the After ZPL
Control Strings field to change the print speed to 10ips. Because this location is
inside the boundaries of an ^XA-^XZ format string, you do not include those
commands.
^PR10
Note: For more information about ZPL II, see the ZPL II Programming Guide or
other Zebra documentation.
If the Family selected is Family Driver and the Model selected is Generic, then the following
sections are displayed.
Label Control
Advanced Options
Option Description Values
Zip Print Whether the print stream will be zipped with GZIP compression. On/Off
Stream Default: Off
(Cleared)
Transform Whether the user will specify an XSL file that will be used to On/Off
XML with transform the XML output into user-formatted output. Default: Off
XSLT (Cleared)
Path to The specified path to an XSL file. Tested URL formats are file and
XSL File http.
Note: This option is available only if the
Transform XML with XSLT option is selected.
Schema The version of the schema. 1.0
Version
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Command Location
If desired, add text such as special commands to the Custom Command fields to be included
in the XML output.
Image Device Driver
If the Family selected is Family Driver and the Model selected is Image, then the following
sections are displayed.
l " Options for Image Devices" on page 968
l " Advanced Options for Image Devices" on page 968
Options for Image Devices
If the Family selected is Family Driver and the Model selected is Image, the Options
section displays the following option.
Label Control
Option Description Values
Zip Labels When saving or sending multiple labels as image On/Off
files, whether to package the images into a single Default=Off
zip file or to save or send them as separate files.
Advanced Options for Image Devices
If the Family selected is Family Driver and the Model selected is Image, the Advanced
section displays the following options.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
If the Family selected is Family Driver and the Model selected is PDF, then the following
sections are displayed.
l " Options for PDF Devices" on page 969
l " Advanced Options for PDF Devices" on page 971
Options for PDF Devices
If the Family selected is Family Driver and the Model selected is PDF, the Options section
displays the following options.
Label Control
Option Description Values
Include Label as Image When saving a label as a PDF file, whether On/Off
to include the label in the PDF file as a Default=Off
single image rather than as individual
components. This option does not affect
the appearance of the PDF. However, text
in the PDF file is searchable only if this
check box is cleared.
If the Family selected is Family Driver and the Model selected is PDF, the Advanced
section displays the following options.
Advanced Troubleshooting
Option Description Values
Advanced Whether to display advanced troubleshooting Disabled: Do
Troubleshooting options, including options for print stream not display
scripting. advanced
troubleshooting
options, and do
not run a print
stream script
for this device
connection.
(Default)
Enabled:
Display
advanced
troubleshooting
options.
Tip: For assistance with print stream scripting, contact Loftware's Professional
Services Group.
Option Description Values
Script Name The name of the print stream script.
Tip: This name may be included in log
files, which may assist you if
troubleshooting problems with the
script.
Apply Script Whether to run the print stream script. A print stream : Do
script is run just prior to sending data to a device. The not run
effects of print stream scripting are reflected only in the
the print stream, not in the datamap. script.
Note: Regardless of whether Apply (Default)
Script was selected, if the Advanced : Run
Troubleshooting option is disabled the
then the script is not run. script.
If the Family selected is Family Driver and the Model selected is Pass Through, then the
following sections are displayed.
l "Pass Through File Types" on page 974
Options for Pass Through Devices
If the Family selected is Family Driver and the Model selected is Pass Through, the
Options section displays the following options.
Important: A Pass Though device connection should only be used when the
target device supports native printing for the selected file type. You must select at
least one pass through file type for a Pass Through device connection.
If the Family selected is Server, the Options section displays the following options.
Option Description
Resolution The resolution capability of the device in Dots Per Inch.
Orientation The alignment of the label in relation to the paper.
Paper Size The dimensions of the paper.
Note: A Document Designer 1 who is overriding this option by
using Label Specific Options (LSOs) in Design is not limited to the
values displayed. A custom value can be typed into the LSO.
Paper The location from which the device should draw label stock.
Source Note: A Document Designer 2 who is overriding this option by
using Label Specific Options (LSOs) in Design is not limited to the
values displayed. A custom value can be typed into the LSO.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Option Description
Text Box How Spectrum should respond if the amount of data received for a Text Box field
Overrun is more than can fit.
Mode Tip: If the Text Box Overrun Mode is specified in the job data, that
overrides any mode specified in Label Specific Options in Design,
device options in Device Management, or global settings in
System Management. Otherwise, if specified in Label Specific
Options, that overrides device options and global settings, and if
specified in device options, that overrides global settings.
Allow Overrun: The text continues beyond the bottom of the envelope for the
field. For a printed label, as much of the text as can fit on the label is printed.
Truncate Data: Text that does not fit is not printed or displayed. The preceding
text is printed or displayed.
Truncate Data at Paragraph Break: A paragraph that does not fit is not printed
or displayed. The preceding paragraph is printed or displayed.
Fail Print Job on Overrun: Any print job that includes a Text Box field in which
the data received does not fit is failed and is not printed or displayed.
Use Global Setting: The value for Text Box Overrun Mode that is set in
System Management is used.
Lower ASCII Control Codes
If a Custom Commands tab is displayed for a device, you can incorporate lower ASCII control
codes into the print stream in the positions listed on the Custom Commands tab. The
following table lists common control codes.
Note: Control codes must be in uppercase and must begin and end with angle
brackets. To enter upper case text that includes < or > but should not be
converted to a control code, enclose the text with << and >>. For example,
<<US>> is converted to <US>. Lower case or mixed case text enclosed in < and >
will remain as is and will not be converted into a control code.
The following properties are displayed in the Configuration section for a Remote Site 1.
Property Description
Last Date and time when the Remote Print Agent2 on the remote computer most
Contact recently made contact with the SpectrumApplicationServer.
Note: This property is displayed only after the Remote Site has
been saved for the first time.
Maximum Number
The maximum number of devices associated with the remote computer that
of may be configured for use with Spectrum.
Devices
Devices A list of the devices available via the remote computer and configured in
Spectrum.
Note: This property is displayed only after the Remote Site has
been saved for the first time.
Property Description
Token An alphanumeric token that allows a SpectrumApplicationServer to
authenticate a Remote Print Agent that attempts to communicate with
Spectrum. A token is unique to the Remote Site with which it is associated.
Tip: The Remote Site Administrator requires the token during
installation of the Remote Print Agent.
Version The version number of the Remote Print Agent. The version number of the
Remote Print Agent is independent from the version number of Spectrum and
they are not expected to match.
Note: The value is None until the remote computer connects to
Spectrum for the first time.
1An object in Spectrum that represents the location of a remote computer. The Remote Print Agent must be installed on the
remote computer so that it can communicate with the Spectrum Application Server and make devices at that location available in
Spectrum. Each Remote Site can communicate with only one Spectrum Application Server.
2A client-side service that must be installed on a remote computer so that it can communicate with the Spectrum Application
Server and permit printing. The Remote Print Agent connects to Spectrum to receive print jobs, provide device and status
information, and receive configuration information as needed.
Property Description
Download A button that allows you to download the Remote Print Agent so that it can be
installed on a remote computer.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
A Data Service Administrator can centrally manage the connection URL and credentials for
multiple JDBC data services by using a Link data service in conjunction with the JDBC data
services. This approach conceals the connection URL and credentials from Document
Designers. Because using a Link data service allows the connection URL and credentials to be
managed separately from JDBC data services and Database data sources, this approach can be
also useful if you frequently need to move label templates from one
SpectrumApplicationServer to another (such as a development server and a production server)
and require a different connection URL and credentials in each environment.
A Data Service Administrator controls whether each parameter 2 of the data service is visible to
Document Designers, and Document Designers control which parameters are visible to Data
Providers. A Data Service Administrator can include a query when configuring a data service and
conceal the query from Document Designers. Alternatively, a Data Service Administrator can
allow Document Designers to configure the query when they create Database data sources that
use the data service.
A Data Service Administrator or a Document Designer can view a list of the columns from the
database returned by the query, change which columns are displayed to Data Providers, and
change the name displayed for each column in results viewed by Data Providers. Optionally, a
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Information that is gathered by a data service or that is part of the configuration of a data service. Parameters can be configured
by data service administrators, or data service administrators can make parameters available to document designers to
customize for each Database data source.
Data Service Administrator can limit which columns are available for use as data sources and
prevent Document Designers from configuring these options. These changes do not alter the
database from which the data is obtained.
By using a JDBC data service and a Database data source, you can retrieve information from a
database, but you cannot modify information in the database. However, an administrator can
modify information in a database by using a JDBC Update data service and a business rule. One
cannot create data sources in Design associated with a JDBC Update data service.
Requirements for JDBC Data Services and JDBC Update Data Services
Spectrum supports data service connections to types of databases such as Oracle, SQL Server,
and MySQL.
To enable Spectrum to connect to most types of databases, you must install a third-party JDBC
driver on the computer where Spectrum is installed. For more information, see " Add a JDBC
Driver to Spectrum" on page 989.
Note: Custom parameters are available only for JDBC data services and Database
data sources. Built-in parameters are available for all types of data services.
Note: Parameters in Link data services can only be managed by a Data Service
Administrator and are not displayed to Document Designers.
A parameter managed by a Data Service Administrator
If a built-in parameter or a custom parameter is configured to be managed by the Data Service
Administrator, the following are the consequences for Data Service Administrators and
Document Designers.
Tip: This approach is suggested for any parameter that should not be
customized by Document Designers or incorporated into a form for use by Data
Providers. This approach is not recommended for any parameter for which Data
Providers are expected to enter data because Document Designers will not be
able to see the parameter to incorporate it into a form.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
2Information that is gathered by a data service or that is part of the configuration of a data service. Parameters can be configured
by data service administrators, or data service administrators can make parameters available to document designers to
customize for each Database data source.
3Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
4Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
l Select the Is Parameter check box for the parameter so that it is configurable in data
sources.
l May configure an initial value for the parameter or connect it to a data source.
Document Designers experience the following behavior when using data sources containing a
parameter managed, but not created by, a Document Designer:
l The parameter is displayed to Document Designers when configuring a data source
l If the parameter was added to the data service after a data source was created, the
parameter is not added to the existing data source.
l If the Data Service Administrator makes changes to the value of the parameter in the
data service, the value of the parameter is not changed in existing data sources.
l If the Data Service Administrator deletes a custom parameter in the data service, that
parameter is automatically removed from associated data sources.
l If the parameter includes in its input any parameters that are managed only in the data
service, changes to those other parameters will affect it.
A parameter created and managed bya Document Designer
If a custom parameter is created and configured to be managed by the Document Designer,
the following are the consequences for Data Service Administrators and Document
Designers.
Note: This approach is available only for parameters in a Database data source.
When the Data Service Administrator configures the data service, the parameter is not
displayed in the Configuration section.
The Document Designer must perform the following tasks when configuring a data source if
the Document Designer intends to create a custom parameter:
l Create the custom parameter.
Document Designers experience the following behavior when using a parameter created in a
Database data source by a Document Designer:
l The parameter is displayed to Document Designers when configuring a data source.
l If a Document Designer creates another data source associated with the same data
service, the parameter is not included in the second data source. If a Document
Designer creates an identical parameter in the second data source, that parameter must
be managed independently of the parameter in the first data source. Changing one of
these parameters has no effect on the other.
l If the parameter includes in its input any parameters that are managed only in the data
Example
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
Note: You do not have to stop a data service to make changes to its configuration
or for those changes to take effect, but you must save your changes.
1. Click Data Services.
2. Click File > New > JDBC Data Service.
3. Click the Configuration section.
4. If the connection URL and credentials will be provided via a Link data service, select Is
Data Link.
5. For each parameter, decide whether you will manage the parameter or whether you will
allow the Document Designer to manage the parameter for each Database data source.
For more about each parameter, see " Configuration Parameters for JDBC Data Services"
on page 1020.
n To allow Document Designers to configure a parameter, select the Is Parameter
check box. You can either specify an initial value or data ref for the parameter or
leave it blank. Changes made to the parameter in the data service are not
propagated to existing Database data sources.
n To configure a parameter as part of the data service, clear the Is Parameter check
box and configure the parameter, entering a value or a data ref. Changes made to
the parameter in the data service are propagated to Database data sources. The
parameter is not displayed to Document Designers in Database data sources.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
8. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Data Service dialog box, select the folder in which to
save the data service. You can double-click a folder to display subfolders.
b. Click OK to save the data service. Creation information is displayed in the
Properties pane.
9. If the data service has not been started, click Start Data Service.
10. For the Result Map, if you have cleared Is Parameter and want to customize the
column information returned by the query, do the following. For more information, see "
Configuration Parameters for JDBC Data Services" on page 1020.
a. Click Run Query to populate the Result Map with details about each column
returned by the SQL query.
b. Review the Result Map and make any changes desired.
c. If you have extensively customized the Result Map, it is recommended that you
note the details of your configuration so that you can reproduce it if it should ever
become necessary to reset the Result Map due to changes in the database or
other data source.
11. Click File > Save or click the Save button in the toolbar.
The data service is updated with the connection information. You can view the status of the data
service in the Properties pane. If the data service is stopped, you must start it to make the
results available when printing labels.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A connection to a database that acts as a data source and can serve as the data ref for a document field. A Database data source
is associated with a Database data service.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Note: If you want to delete a data service, you must stop it before you can delete
it.
6. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Data Service dialog box, select the folder in which to
save the data service. You can double-click a folder to display subfolders.
b. Click OK to save the data service. Creation information is displayed in the
Properties pane.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
7. If the data service has not been started, click Start Data Service.
The data service is updated with the connection information. You can view the status of the data
service in the Properties pane. If the data service is stopped, you must start it to permit the
connection information to be used by other data services.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Note: If you want to delete a data service, you must stop it before you can delete
it.
Tip: To use a Link data service, a Data Service Administrator configuring a JDBC
Data Service must select the Is Data Link option and for Data Link select the
Link data service. For more information, see " Configure a JDBC Data Service" on
page 990.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
6. For each parameter, decide whether you will manage the parameter or whether you will
allow the Document Designer to manage the parameter for each Alternate data source.
For more about each parameter, see " Configuration Parameters for File Data Services" on
page 1028.
Important! If you select XML for the Data Type, the data service cannot
be used with an Alternate data source, and must be managed by using a
business rule instead.
To allow Document Designers to configure a parameter, select the Is Parameter
n
check box. You can either specify an initial value or data ref for the parameter or
leave it blank. Changes made to the parameter in the data service are not
propagated to existing Alternate data sources.
n To configure a parameter as part of the data service, clear the Is Parameter check
box and configure the parameter, entering a value or a data ref. Changes made to
the parameter in the data service are propagated to Alternate data sources. The
parameter is not displayed to Document Designers in Alternate data sources.
n The Result Name must be configured as part of the data service.
7. In the Properties pane, enter a Service Name and optionally a Description.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Important! Provide a Service Name that is easily recognizable to
Document Designers. When a Document Designer 1 creates an Alternate
data source 2, the Service Name (but not the Description) is displayed.
Data service names are case sensitive.
8. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Data Service dialog box, select the folder in which to
save the data service. You can double-click a folder to display subfolders.
b. Click OK to save the data service. Creation information is displayed in the
Properties pane.
9. If the data service has not been started, click Start Data Service.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
The data service is updated with the connection information. You can view the status of the data
service in the Properties pane. If the data service is stopped, you must start it to make the
results available when printing labels.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Note: If you want to delete a data service, you must stop it before you can delete
it.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
7. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Data Service dialog box, select the folder in which to
save the data service. You can double-click a folder to display subfolders.
b. Click OK to save the data service. Creation information is displayed in the
Properties pane.
8. If the data service has not been started, click Start Data Service.
The data service is updated with the connection information. You can view the status of the data
service in the Properties pane. If the data service is stopped, you must start it to make the
results available when printing labels.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Note: If you want to delete a data service, you must stop it before you can delete
it.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
10. For Result Path, specify the path the subset of data that you want returned from the
web service. If you want to define the subset of data by using an XPath expression, select
XPath Override.
Example: Result Path and XPath Override
If the configuration of the web service in Data Services contains the following values:
Result Path /getCountryResponse/country
XPath Override
or
Result Path /*[local-name()='Envelope']/*[local-name()='Body']/*[local-
name()='getCountryResponse']/*[local-name()='country']
XPath Override
and the SOAP response from the web service is the following:
<SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:getCountryResponse
xmlns:ns2="http://spring.io/guides/gs-producing-web-
service">
<ns2:country>
<ns2:name>Spain</ns2:name>
<ns2:population>46704314</ns2:population>
<ns2:capital>Madrid</ns2:capital>
<ns2:currency>EUR</ns2:currency>
</ns2:country>
</ns2:getCountryResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Then the following data map entries result:
/Body/name/!TEXT! Spain
/Body/population/!TEXT! 46704314
/Body/capital/!TEXT! Madrid
/Body/currency/!TEXT! EUR
For more information about XPath, see Other References in "External Links" on page
1645.
11. If you must provide credentials for authentication when connecting to the web service,
for Authentication Type select Basic and then enter credentials for User Name and
Password.
12. For HTTP Headers, enter the names and values that define the operating parameters of
the HTTP transaction.
13. In the Properties pane, enter a Service Name and optionally a Description.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
14. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Data Service dialog box, select the folder in which to
save the data service. You can double-click a folder to display subfolders.
b. Click OK to save the data service. Creation information is displayed in the
Properties pane.
15. If the data service has not been started, click Start Data Service.
The data service is updated with the connection information. You can view the status of the data
service in the Properties pane. If the data service is stopped, you must start it to make the
result available when printing labels.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Note: If you want to delete a data service, you must stop it before you can delete
it.
To test the JDBC connection string for a JDBC data service, use this procedure.
1. Click Data Services.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select a JDBC data service and then click OK.
4. Click the Configuration section.
5. Click Test URL. The Test JDBC URL dialog box displays the data service's connection
information if it has been configured.
6. Click Test. A message describes the success or failure of the test.
Note: If the connection fails, alter the JDBC Connection URL and the
credentials in the Test JDBC URL dialog box, retest, and click Accept Values
when you achieve a successful result. You must click File > Save or Save to
update the configuration with your changes.
Note: For information about previewing how a data service will be displayed to a
Document Designer 1 and how results from a data service will be displayed to a
Data Provider 2, see " Preview a JDBC Data Service" on page 1006.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
To preview how a JDBC data service will be displayed to a Document Designer 1 and how
results from the data service will be displayed to a person acting as a Data Provider 2, use this
procedure.
Note: For information about testing the JDBC Connection URL and database
credentials service, see " Test the JDBC URL for a JDBC Data Service" on page
1005.
1. Click Data Services.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select a JDBC data service and then click OK.
4. Click the Data Source section, and review which parameters are displayed. Only
parameters available to Document Designers are displayed.
5. Enter sample values for parameters.
6. Click Test Data Service. The Data Source Results dialog box displays the information
that would be provided to a Data Provider.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
If you are unsure where a data service is managed and who can run the query for the data service,
use one of these procedures to determine where a result map is managed.
If you are a Data Service Administrator
1. Click Data Services.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select a data service and then click OK.
4. Click the Configuration section.
n If Is Parameter is cleared for the Result Map, then you must manage it in the
data service.
n If Is Parameter is selected for the Result Map, then it is managed in Database
data sources by Document Designers.
If you are a Document Designer
1. Click Design.
2. Open a label template that uses the Database data source.
3. Click the title bar of the Data Sources pane, expand Database, and double-click the
data service.
4. In the Database Data Source dialog box, click Next.
n If the Result Map is displayed, then you can manage it in Database data sources.
n If the Result Map is not displayed, then it is managed by a Data Service
Administrator as part of a data service.
To remove any customizations made to the Result Map and populate it with the default column
information from the database, run the query again.
Best Practice
After making a change to the query, always run the query.
If the Result Map is managed as part of the data service
1. Click Data Services.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select a data service and then click OK.
4. Click the Configuration section.
5. Under the Result Map table, click Run Query.
If the Result Map is managed as part of a Database data source
1. Click Design.
2. Open a label template that uses a Database data source.
3. Click the title bar of the Data Sources pane, expand Database, and double-click the
data service.
4. In the Database Data Source dialog box, click Next.
5. Under the Result Map table, click Run Query.
Note: If the Result Map is managed as part of multiple Database data sources and a
change has occurred to the data service that requires all of them to be updated, you
must run the query in each Database data source individually.
1. In Data Services, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select a data service and then click OK.
3. In the right column, click the Tags title bar to expand the pane.
4. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from a device does not delete the tag category
from Spectrum. You can add a new tag to the device and select that
same category again.
5. Click File > Save or click the Save button in the toolbar.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
file that is on the same server as Spectrum, that is on a mapped drive, or that is accessible
via a UNC path that does not require credentials.
l HTTP Data Service: Select to create a connection to a text file, an image file, or an
database so that these parameters can be used by multiple JDBC or JDBC Update data
services.
l SOAP Web Service Data Service: Select to configure a connection to a web service.
For an existing data service, you can view its status (started or stopped). You can also view
information about when and by whom the data service was created and most recently modified.
Important! To enable Spectrum to connect to most types of databases, you must
install a third-party Java Database Connectivity (JDBC) API driver on the
computer where Spectrum is installed. For more information, see " Add a JDBC
Driver to Spectrum" on page 989.
1A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
2Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Close All Close all data services that you have open in Data Services.
Save Save the displayed data service.
Save As Save a copy of the displayed data service under a different
name.
Refresh Update the displayed data.
Configuration
The Configuration section allows you to configure a connection to a database or a file external
to Spectrum and control which parameters are visible to Document Designers.
For each parameter, you can specify a data ref or a value, or allow the Document Designer to
configure the parameter. Selecting the Is Parameter check box for a parameter allows
Document Designers to customize that parameter for each Database data source or Alternate
data source. If the Is Parameter check box is cleared, then the parameter is not displayed in
Database data sources or Alternate data sources.
Important! In most cases, you should clear the Is Parameter check boxes for the
JDBC Connection URL, the database credentials, the URL credentials, and Read
Only Session so that they cannot be changed by a Document Designer. For JDBC
data services, it is recommended that you select the Read Only Session check
box to prevent misuse of the database connection.
You can include a query 1 when configuring a JDBC data service. Alternatively, you can allow
Document Designers to configure the query when they create Database data sources that use the
data service.
For a JDBC data service, the Result Map displays the columns that are returned by the query.
By altering the Result Map, you or a Document Designer can change which columns are
displayed to a person acting as a Data Provider 2 and change the name displayed for each
column in results viewed by Data Providers. Optionally, you can configure a Result Map to limit
which columns are available for use as data sources, and then prevent Document Designers from
viewing or changing the Result Map by clearing the Is Parameter check box. Changes that you
make to the Result Map do not alter the database.
Note: The Result Map is not dynamic. If the columns available in the database
have changed, you must run the query again to see those changes reflected in the
data service.
For more about the options when configuring a data service, see the following:
l " Configuration Parameters for JDBC Data Services" on page 1020
l " Configuration Parameters for Link Data Services" on page 1036
l " Configuration Parameters for File Data Services" on page 1028
l " Configuration Parameters for HTTP Data Services" on page 1032
l " Configuration Parameters for SOAP Web Service Data Services" on page 1038
Data Source
The Data Source section allows you to preview how the query 3 or settings that you have
configured on the Configuration section are displayed to Document Designers. Prompts are
not displayed for any parameter for which the Is Parameter check box is cleared. You can also
1A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
enter parameters and test the data service to preview how results are displayed to a person acting
as a Data Provider 1.
Note: JDBC Update data services and SOAP Web Service data services do not
have corresponding data sources in Design. They are instead managed by using
business rules.
Buttons
Button Effect
Start Data Starts or stops the selected data service. You can view the status of the data
Service service in the Properties pane.
or Stop Tips about starting and stopping a data service:
Data l After creating a data service, you must save and start it before you can
configuration or for those changes to take effect, but you must save your
changes.
l You must stop a data service before you can delete it.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Button Effect
Add Allows you to configure custom parameters for the data service. For each
Parameter parameter that you create, you can configure the following:
l Variable Name: Name displayed to Data Service Administrators in the
Button Effect
Test URL Tests whether the JDBC Connection URL and credentials that you have
specified on the Configuration tab provides access to the external database.
If the connection fails, you can alter the JDBC Connection URL and the
credentials in the Test JDBC URL dialog box, retest, and click Accept Values
when you achieve a successful result. You must click Save to update the
configuration with your changes.
This button is displayed when either the Configuration section or Data
Source section of a JDBC data service is viewed.
The following sections and panes may be displayed when you configure a JDBC data service 1
or a Database data source 2.
Configuration
The following options may be displayed in the Configuration section for a JDBC data
service. You can also add custom options. A Data Service Administrator 3 can limit which
options are visible to a Document Designer 4. The Auto Select First Row and Auto Select
Single Row Result options are only displayed when configuring a Database data source.
Important! A Data Service Administrator can select the Is Parameter check
box for a parameter in a data service to allow a Document Designer to
customize that parameter for each Database data source. If the Is Parameter
check box is cleared, then the parameter is not displayed in Database data
sources.
Note: A Data Service Administrator can add custom parameters by clicking the
Add Parameter button when configuring a Data Service. A Document
Designer can add custom parameters by clicking the Add Parameter button
when configuring a Database data source.
Parameter Description
Is Data Whether to obtain the JDBC Connection URL and credentials from a Link
Link data service. This parameter cannot be displayed or configured in Database
data sources.
If cleared, the URL and credentials from this JDBC data service are used.
If selected, the URL and credentials from the Link data service specified in
the Data Link field are used.
Data Link The Link data service from which to obtain the JDBC Connection URL
and credentials. This option is displayed only if Is Data Link is selected.
This parameter cannot be displayed or configured in Database data sources.
1A connection to a database or spreadsheet that is external to Spectrum. A JDBC data service drives Database data sources used
in label templates.
2A connection to a database that acts as a data source and can serve as the data ref for a document field. A Database data source
is associated with a Database data service.
3A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
4Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Parameter Description
JDBC The connection string for the database used for this data service. This
Connection option is displayed only if Is Data Link is not selected. For information
URL about the format, see " JDBC Connection URL Formats" on page 1026.
Note: In most cases, the Data Service Administrator should
clear the Is Parameter check box so that this parameter
cannot be configured in Database data sources by Document
Designers.
Database The user name used when establishing a connection to the database. This
Username option is displayed only if Is Data Link is not selected.
Note: In most cases, the Data Service Administrator should
clear the Is Parameter check box so that this parameter
cannot be configured in Database data sources by Document
Designers.
Database The password associated with the user name used when establishing a
Password connection to the database. This option is displayed only if Is Data Link is
not selected.
Note: In most cases, the Data Service Administrator should
clear the Is Parameter check box so that this parameter
cannot be configured in Database data sources by Document
Designers.
SQL Query The SQL query that the data service runs on the database. The query can
be entered as part of the data service or can be passed as a parameter from a
Database data source used in the label template.
Note: If the Data Service Administrator selects the Is
Parameter check box so that this parameter can be
configured in Database data sources by Document Designers,
then the Data Service Administrator should also select Is
Parameter for Result Map.
Read Only If selected, prevents the user from misusing this connection to make
Session changes to the database during this session. This functionality may vary
with the JDBC driver and database software used.
Note: In most cases, the Data Service Administrator should
clear the Is Parameter check box so that this parameter
cannot be configured in Database data sources by Document
Designers.
Batch Size The maximum number of rows returned by the query. You can specify up
to 1000 rows.
Parameter Description
Session Time (specified in seconds) allowed for a Data Provider 1 to select a row.
Expiration The default value is 300 seconds.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Parameter Description
Result Map The columns provided by running the SQL Query. You can configure
which columns are displayed to a Data Provider 1 and available to
Document Designers for use as data sources. You can also configure the
column display names and widths displayed to Data Providers in results.
If the Data Service Administrator clears the Is Parameter check box so
that this parameter cannot be configured in Database data sources by
Document Designers, then the Data Service Administrator should also
clear Is Parameter for SQL Query.
Important! The Result Map is not dynamic. If the columns
available in the database have changed, you must ensure that
the data service is started and run the query again to see those
changes reflected in the data service. In a Database data
source, you must run the query again to retrieve changes to
the associated data service.
l Column Name: The name of the column in the database and as it
is displayed to Document Designers. You cannot change this value
in the Result Map.
l Required: If selected, generates an error if a row in the query result
does not include a value for a the column. You can change this
value in the Result Map.
l Display: If selected, the column is displayed in results for Data
Providers and in the Data Sources pane for Document Designers.
You can change this value in the Result Map.
l Display Name: The name of the column as it is displayed to Data
Providers. You can change this value in the Result Map.
l Type: The data type of values in the column. You cannot change
this value in the Result Map.
l Display Length: The default width that will be used when
displaying the column in the results to Data Providers. Data
providers can manually adjust column widths. Changing this value
does not limit the length of the data available to Data Providers.
You can change this value in the Result Map.
l Run Query: Clear the existing Result Map, run the query, and
populate the Result Map with the default information about the
columns. If you customized the Result map, those changes are
removed.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Parameter Description
l Is Parameter: Selecting this option allows Document Designers to
not displayed and the data from the first row returned is inserted
into the form automatically.
Note: If you select this option, it is recommended that you
include at least one Prompt field in the Form that is
populated by the results to provide confirmation to the Data
Provider that the query was run.
Auto This option for configuring results from a data service is available only
Select when configuring a Database data source. If the data service returns only a
Single Row single row:
Result l If this option is not selected, the Data Source Results dialog box
is displayed and the Data Provider must manually click the row to
select it.
l If this option is selected, the Data Source Results dialog box is
not displayed and the data from the row is inserted into the form
automatically.
Note: If you select this option, it is recommended that you
include at least one Prompt field in the Form that is
populated by the results to provide confirmation to the Data
Provider that the query was run.
Data Source
The Data Source section allows you to preview how the query 1 or settings that you have
configured on the Configuration section are displayed to Document Designers. Prompts are
not displayed for any parameter for which the Is Parameter check box is cleared. You can
also enter parameters and test the data service to preview how results are displayed to a
person acting as a Data Provider 2.
Note: JDBC Update data services and SOAP Web Service data services do not
have corresponding data sources in Design. They are instead managed by using
business rules.
Properties Pane
The Properties pane allows you to name and describe the data service. It also displays the
type of the data service and status information about the data service.
Option Description
Data The type of data service.
Service l JDBC Data Service
1A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Option Description
Service Required. A unique name for this data service.
Name Characters permitted in names
The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. For letters, the
case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Note: Enter a Service Name that will be easily recognizable
to Document Designers and administrators. When creating a
data source, the Service Name (but not the Description) is
displayed to Document Designers. JDBC Update data
services and SOAP Web Service data services do not have
corresponding data sources in Design, but are instead
managed by using business rules.
Description A description for this data service.
Service Management Pane
If your Spectrum environment is configured to support distributed services, the Service
Management pane allows you to configure failover of data services between
SpectrumApplicationServers. These options are also available in the Service Management
pane in System Management.
Important! Whenever you add a new device, data service, or integration, you
must ensure that the service is activated on all SpectrumApplicationServers on
which it should be available to run and started on at least one. In an
environment with only one SpectrumApplicationServer, these types of
services are automatically activated and started when they are created. For more
information, see "High Availability with Distributed Services" on page 716.
Database
JDBC Connection URL Format Requirements
Type
Oracle jdbc:oracle:thin:@<ServerName_or_ JDBC driver*
IPAddress>:<port>:<sid>
Spectrum
SQL jdbc:sqlserver://<ServerName_or_ JDBC driver
Server IPAddress>:<port>;databaseName=<sid>
Spectrum
MySQL jdbc:mysql://<ServerName_or_ JDBC driver
IPAddress>:3306/<DatabaseName>
Spectrum
Embedded !LOCAL! Local connection to an
embedded database
* A JDBC driver for Oracle 11g and Oracle 12c is installed with Spectrum in most cases.
Contact Loftware's Professional Services Group (PSG) if you have any questions.
The following sections and panes may be displayed when you configure a File data service 1 or
an Alternate data source 2.
Configuration
The following options may be displayed in the Configuration section for a File data service
or an Alternate data source.
Important! A Data Service Administrator 3 can select the Is Parameter
check box for a parameter in a data service to allow a Document Designer 4 to
customize that parameter for each Alternate data source. If the Is Parameter
check box is cleared, then the parameter is not displayed in Alternate data
sources.
Parameter Description
URL The URL pointing to the external file from which data can be retrieved.
For information about the format, see " URL Formats for File Data
Services" on page 1030.
In most cases, the Data Service Administrator should clear the Is
Parameter check box so that this parameter cannot be configured in
Alternate data sources by Document Designers.
Note: A Document Designer who can change this parameter
can access any file.
Result Required. A name by which to refer to the data returned by the data
Name service. To print an external file such as a PDF without associating the file
with a label template, enter the !INLINE_DOCUMENT! reserved key.
This parameter cannot be displayed or customized in an Alternate data
source, therefore no Is Parameter check box is provided for it in a File
data service.
1A connection to a plain text file or an image file that is external to Spectrum. A File data service or an HTTP data service drives
Alternate data sources used in documents.
2A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
3A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
4Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Parameter Description
Data Type Whether the URL points to an image, plain text, or XML. For a URL that
points to aPDFfile, select Image.
Important! If you select XML for the Data Type, the data
service cannot be used with an Alternate data source, and
must be managed by using a business rule instead.
Note: JDBC Update data services and SOAP Web Service data services do not
have corresponding data sources in Design. They are instead managed by using
business rules.
Properties Pane
The Properties pane allows you to name and describe the data service. It also displays the
type of the data service and status information about the data service.
1A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Option Description
Data The type of data service.
Service l JDBC Data Service
LoftwareSpectrum supports File data service connections to URLs that point to files. The
format for URLs to several types of targets is shown. Although the following examples show
URLs for a text file, you can also point to image files.
Important! The computer hosting the target file and the
SpectrumApplicationServer must be operating in a domain environment.
Connections among workgroups are not supported.
Note: Spectrum supports images that use an RGB color model and one of the
following file formats: PNG, GIF, JPG, BMP, or PCX.
Target URL Format Examples
File available via public UNC path such as file://Server/SharedFolder/File.txt
\\Server\SharedFolder\File.txt Credentials must not be required to
access this file.
File on the SpectrumApplicationServer with a file:///C:/Folder/File.txt
path such as C:\Folder\File.txt The file must be hosted on the
SpectrumApplicationServer.
The following sections and panes may be displayed when configuring an HTTP data service 1
or an Alternate data source 2.
Configuration
The following options may be displayed in the Configuration section for an HTTP data
service or an Alternate data source.
Important! A Data Service Administrator 3 can select the Is Parameter
check box for a parameter in a data service to allow a Document Designer 4 to
customize that parameter for each Alternate data source. If the Is Parameter
check box is cleared, then the parameter is not displayed in Alternate data
sources.
Parameter Description
URL The URL pointing to the external file from which data can be retrieved.
For information about the format, see " URL Formats for HTTP Data
Services" on page 1034.
In most cases, the Data Service Administrator should clear the Is
Parameter check box so that this parameter cannot be configured in
Alternate data sources by Document Designers.
Note: A Document Designer who can change this parameter
can access any file.
Result Required. A name by which to refer to the data returned by the data
Name service. To print an external file, such as a PDF, without associating the
file with a label template, enter the !INLINE_DOCUMENT! reserved
key.
This parameter cannot be displayed or customized in an Alternate data
source, therefore no Is Parameter check box is provided for it in an
HTTP data service.
Username The user name used when establishing a connection to the URL.
In most cases, the Data Service Administrator should clear the Is
Parameter check box so that this parameter cannot be configured in
Alternate data sources by Document Designers.
1A connection to plain text data or image data that is external to Spectrum. A File data service or an HTTP data service drives
Alternate data sources used in documents.
2A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
3A local administrator who creates and configures data services for use by Document Designers who configure Database data
sources and Alternate data sources.
4Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
Parameter Description
Password The password associated with the user name used when establishing a
connection to the URL.
In most cases, the Data Service Administrator should clear the Is
Parameter check box so that this parameter cannot be configured in
Alternate data sources by Document Designers.
Data Type Whether the URL points to an image, plain text, or XML. For a URL that
points to aPDFfile, select Image.
Important! If you select XML for the Data Type, the data
service cannot be used with an Alternate data source, and
must be managed by using a business rule instead.
1A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Option Description
Data The type of data service.
Service l JDBC Data Service
LoftwareSpectrum supports data service connections to URLs that point to files. The format
for URLs to several types of targets is shown. Although the following examples show URLs for a
text file, you can also point to image files.
Note: Spectrum supports images that use an RGB color model and one of the
following file formats: PNG, GIF, JPG, BMP, or PCX.
Target URL Format Examples
File or data available http://www.example.com/Folder/File.txt
via unsecured link You do not need to enter credentials when creating the data
service, and any credentials entered are disregarded.
File or data available https://www.example.com/Folder/File.txt
via secured link
The following sections and panes are displayed when you configure a Link data service.
Configuration
The following options are displayed in the Configuration section for a Link data service.
Tip: You can configure multiple JDBC data services to obtain a connection
URL and credentials from a Link data service instead of separately managing
these parameters in each JDBC data service.
Parameter Description
Connection Required. The connection string for the database used for this data service.
URL For information about the format, see " JDBC Connection URL Formats"
on page 1026.
Database The user name used when establishing a connection to the database.
Username
Database The password associated with the user name used when establishing a
Password connection to the database.
Data Source
The Data Source section allows you to preview how the query 1 or settings that you have
configured on the Configuration section are displayed to Document Designers. Prompts are
not displayed for any parameter for which the Is Parameter check box is cleared. You can
also enter parameters and test the data service to preview how results are displayed to a
person acting as a Data Provider 2.
Note: JDBC Update data services and SOAP Web Service data services do not
have corresponding data sources in Design. They are instead managed by using
business rules.
Properties Pane
The Properties pane allows you to name and describe the data service. It also displays the
type of the data service and status information about the data service.
1A SQL query that a data service runs on an external database. The query can be entered as part of the data service or can be
passed as a parameter from a Database data source used in the document.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Option Description
Data The type of data service.
Service l JDBC Data Service
SOAP Web Service data services enable you to interact with web services by using Simple
Object Access Protocol (SOAP). A web service is a platform-independent application that is
hosted on a website. A SOAP implementation of web services provides a Web Services
Description Language (WSDL), which is an XML-based language for defining an interface. A
WSDL describes how a service can be called, what arguments can be used, and what type of data
is expected to be returned.
The following sections and panes may be displayed when configuring a SOAP Web Service data
service. There is no corresponding data source for a SOAP Web Service data service, but there
is a corresponding xmlData business rule component.
Note: Whether the Is Parameter check boxes in a SOAP Web Service data
service are selected or cleared has no impact. Disregard the Data Source section.
Configuration
The following options may be displayed in the Configuration section for a SOAP Web
Service data service.
Parameter Description
WSDL URL The link to a Web Services Description Language (WSDL) that you can
use to communicate with a web service. A WSDL is an XML-based
language for defining an interface. A WSDL describes how a service can
be called, what arguments can be used, and what type of data is
expected to be returned.
Envelope The XML for the SOAP envelope element. This is the root element of
a SOAP message and defines the XML document as a SOAP message.
Web Service The link for connecting to a web service. In many cases, you can click
Address Load From WSDL to automatically obtain the address from the
WSDL. However, for some web services the WSDL provides only a
testing address, and you must type in the production address.
Security A security header that provides credentials for connecting to the web
Header service.
l None: Do not include a security header, or else enter a security
Parameter Description
Result Name The name of the XML Data business rule component to be used. The
default name is WS_RESULT.
For more information, see "xmlData Business Rule Component" on
page 1339.
Result Path The path to the subset of data that you want returned from the web
service.
If the XPath Override check box is selected, this is the XPath
expression of the subset of data that you want returned from the web
service. For more information, see Example: Result Path and XPath
Override.
XPath Whether to define the subset of data that you want returned from the
Override web service by the XPath expression entered in the Result Path field.
For more information, see Example: Result Path and XPath Override.
Authentication The authentication type for connecting to the web service.
Type l None: Do not require authentication.
service.
User Name The user name of the credentials to use when connecting to the web
service.
Note: Available only if the Authentication Type is
Basic.
Password The password of the credentials to use when connecting to the web
service.
Note: Available only if the Authentication Type is
Basic.
HTTP The names and values that define the operating parameters of the
Headers HTTP transaction.
Example: Result Path and XPath Override
If the configuration of the web service in Data Services contains the following values:
Result Path /getCountryResponse/country
XPath Override
or
Result Path /*[local-name()='Envelope']/*[local-name()='Body']/*[local-
name()='getCountryResponse']/*[local-name()='country']
XPath Override
and the SOAP response from the web service is the following:
<SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns2:getCountryResponse
xmlns:ns2="http://spring.io/guides/gs-producing-web-service">
<ns2:country>
<ns2:name>Spain</ns2:name>
<ns2:population>46704314</ns2:population>
<ns2:capital>Madrid</ns2:capital>
<ns2:currency>EUR</ns2:currency>
</ns2:country>
</ns2:getCountryResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Then the following data map entries result:
/Body/name/!TEXT! Spain
/Body/population/!TEXT! 46704314
/Body/capital/!TEXT! Madrid
/Body/currency/!TEXT! EUR
For more information about XPath, see Other References in "External Links" on page
1645.
Properties Pane
The Properties pane allows you to name and describe the data service. It also displays the
type of the data service and status information about the data service.
Option Description
Data The type of data service.
Service l JDBC Data Service
Option Description
Service Required. A unique name for this data service.
Name Characters permitted in names
The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. For letters, the
case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Note: Enter a Service Name that will be easily recognizable
to Document Designers and administrators. When creating a
data source, the Service Name (but not the Description) is
displayed to Document Designers. JDBC Update data
services and SOAP Web Service data services do not have
corresponding data sources in Design, but are instead
managed by using business rules.
Description A description for this data service.
Service Management Pane
If your Spectrum environment is configured to support distributed services, the Service
Management pane allows you to configure failover of data services between
SpectrumApplicationServers. These options are also available in the Service Management
pane in System Management.
Important! Whenever you add a new device, data service, or integration, you
must ensure that the service is activated on all SpectrumApplicationServers on
which it should be available to run and started on at least one. In an
environment with only one SpectrumApplicationServer, these types of
services are automatically activated and started when they are created. For more
information, see "High Availability with Distributed Services" on page 716.
Important: Access in Spectrum requires both role-based permissions1 and object access
permissions2. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
The following object access permissions are typically necessary to support integrations.
Additional permissions may be required to support some processes and business rules.
n Folders containing device groups to be used in conjunction with an integration should
grant the group that you create for Run As users Read and Print permissions for Device
Groups.
n Folders containing label templates, layouts, images, or business rules to be used when
printing via an integration should grant that group Read and Print permissions for
Documents.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
nFolders containing processes used by integrations should grant that group Read and Print
permissions for Processes.
For more information about configuring users and groups and about granting access to objects,
see "Getting Started with Users and Permissions" on page 569.
1Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Design
Type Read Write Create Delete Admin List Print Publish Reprint Queue
Print
Roles
Documents
Device
Groups
Servers
Jobs
Processes
Integrations
Data
Services
User
Profiles
Remote
Sites
Facilities
6. Click Save Folder.
When you create a File Drop integration, you specify a Scan Folder. This is a folder outside of
the Spectrum library to which print job files can be copied so that they can be processed by
Spectrum. When you specify a Scan Folder, Spectrum automatically creates several subfolders in
it.
After you start the integration, Spectrum monitors the Scan Folder for incoming print jobs.
When Spectrum is ready to begin processing a print job, Spectrum moves the job from the Scan
Folder to a subfolder named processing.
n If Spectrum processes a job successfully and if you have configured the File Drop
integration not to archive the job file, then the job file is deleted.
n If Spectrum processes a job successfully and if you have configured the File Drop
integration to archive the original job file and the XML file for the job, then these files
are moved to the processed folder. Preserving these files can be useful for
troubleshooting, but otherwise it is suggested that you do not archive the original job file
or the XML file to reduce the disk space needed.
n If Spectrum encounters a problem while processing a job, the job is moved to the error
subfolder and an error file may be created in that folder with additional information.
Tip: An error file is created only if the error occurs before processing
begins. Otherwise, the error is listed in Status instead.
If a file with a file extension other than one of these that you have configured the integration to
recognize is copied to the Scan Folder, it remains in the Scan Folder and is not processed.
WARNING: Files should never be edited in the Scan Folder. Editing a file in this
folder may strand the associated print job.
File Drop integration extends the functionality of other applications so users can print labels
generated with data provided by those applications. A print job is initiated by placing a print job
file into a folder that Spectrum monitors.
To create a File Drop integration that allows print job files to be processed by Spectrum, do the
following.
1. Click Integration Management.
2. Click File > New > File Drop to create a File Drop integration.
3. In the Configuration section, configure the following details about print request files.
a. For Job Target Folder, select the folder in Spectrum to which status information
about print jobs related to this integration should be directed. Although you can
use the default Job Target folder, it is suggested that you configure a separate job
target folder for each integration.
b. For Default Process, select either a process that you have created that should be
applied to the integration, or else select the Generic Document Process in the
root folder.
c. For Transaction Size, accept the default value unless Technical Support or the
Professional Services Group directs you to change it.
d. For Scan Folder, enter a UNC path to a shared folder or a path to a local folder
on the SpectrumApplicationServer to which print request files will be dropped.
For example, \\Server01\ScanFolder or C:\ScanFolder. If the folder does not
exist, it is created.
Important: For best performance, it is recommended that each Scan
Folder be associated with only one integration so that integrations do
not scan the same job files.
e. For File Type and Extension, select which file types this integration should
process and by what file extension each selected file type is identified. You must
specify a file extension for any file type selected. A file type can be associated with
only one file extension in an integration.
f. For Polling Interval, enter how frequently in milliseconds (ms) Spectrum should
check the Scan Folder for new print job files.
g. You can restrict the order in which incoming jobs are processed.
n To allow the order in which incoming print job files are processed to vary
and to ensure that a blocked job does not block all jobs that follow it, clear
FIFO.
n To require incoming print job files to be processed in the order in which
they are created, select FIFO.
h. To ensure that the XML produced is properly formatted, it is recommended that
you select Validate XML.
i. Except during testing, it is recommended that you clear Archive Original Job
File and Archive XML.
j. Each print job file specifies the device or devices to which the job will be sent.
n To send each job to the device or devices specified in the job, leave this
field blank.
n To override that device selection and send all jobs that use this integration
to a particular device, enter a Device Name.
4. In the Properties pane, enter a description of the purpose of the integration.
5. Click File > Save or click the Save button in the toolbar
a. In the left pane of the Save Integration dialog box, select the folder in which to
save the integration. You can double-click a folder to display subfolders.
b. For Integration Name, enter a name by which the integration will be identified
in Spectrum.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses,
square brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-
colons, and tildes. Additionally, the following characters are permitted but cannot
begin or end the name: spaces, double quotes, single quotes, hyphens,
underscores, periods, and grave accents. For letters, the case that you specify is
displayed, but case is ignored when Spectrum interprets a name.
c. Click OK to save the integration. Creation information is displayed in the
Properties pane.
6. Click Start Integration.
7. To verify that the integration has started, view the Status in the Properties pane.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
PAS commands, CSV commands, and XML (LPS) commands, including the alternative syntax,
are supported in Spectrum except as noted.
The PAS syntax is a simple ASCII structure that has all the commands, field names, and data for
the labels that are to be printed.The field names in the file match the ones given to their
corresponding fields on the label in Design.Each PAS file can have many different label
requests within it.
PAS and CSV Commands
The following commands apply to the PAS and CSV file syntaxes.The commands for XML
(LPS) are the same as the LPS commands with the exception of beginning with an underscore
(_) instead of an asterisk (*).
Command Description
*FORMAT,<name> The fully-qualified name of the label template to which to send the
data. Each PAS file must begin with this command.
*PRINTERNAME,< The fully-qualified name of the device to which to print.
name>
If you are using *PRINTERNAME, do not use *PRINTERNUMBER.The
latter always takes precedence over the former.
*PRINTERNUMBER,< The LPS device number of the device to which to print.
number>
Note: Use *PRINTERNUMBER only if the PAS file was
generated for use with LPS and if you are not using
*PRINTERNAME.
*JOBNAME,<name> The name of the job for status reporting purposes. The *JOBNAME is
applied to all labels printed within the job.
Note: In Spectrum, the job name is stored in the job
rather than as part of the datamap.
*QUANTITY,< The number of labels to print.
number>
*DUPLICATES,< The number of copies of the label to print. This is useful if you are
number> using incrementing numbers and you need to print multiple copies of
the same number before incrementing it. For example, you may need
to put two labels on a box with the same serial numberone label for
each corner.
*PAGES,<number> The number of pages to print. This is only used if you are using a
layout.
*PRINTLABEL Print the current label. A PAS file generated for use with LPS must
end with the *PRINTLABEL command.
Command Description
*DELINKODBC Override the database. You must provide all data for the labels.
Include this command in your .pas file to turn off the database links
for normal production.
*SENDFORMAT,0 Suppress the sending of the format information to the device. The
device recalls the format from memory and throughput time is
increased. This is supported only on devices that support the pre-
downloading of the fixed fields in your format.
*TRAY,< Specify a paper source. This command is available for Windows
name|number> devices and devices that use the PCL 5 driver. If the device you are
printing to has more than one tray, this command is designed to send
a label to a particular tray on the device.
For Windows drivers, the tray is the name of the tray that supplies
the paper.The name corresponds to the configured tray name in the
driver setup, such as lower or upper, and is not case sensitive.
For PCL5 drivers, the tray is one of the following numbers.
0: Print current page (paper source remains unchanged)
1: Feed paper from main paper source
2: Feed paper by using manual feed
3: Feed envelope by using manual feed
4: Feed paper from alternate paper source
5: Feed from optional large paper source
6: Feed envelope from envelope feeder
7: Select the paper source automatically
8: Feed paper from Tray 1 (right side tray)
20 - 39: Feed paper from High Capacity Input (HCI) Trays 2-21
*INLINE_DOCUMENT Required for printing external files. Print an external file, such as a
PDF, without associating the file with label template.
*INLINE_TYPE Required for printing external files. The list of supported external file
types. For example, INLINE_PDF.
*LABEL_RANGES A set of comma delimited label ranges to reprint in a multi-label or
quantity reprint. When printing external files, this is the range of
pages to print. An asterisk is a wildcard value that resolves to the last
label printed.
Command Description
*PAGE_HANDLING The page handling for imaged files. Maintains aspect ratios.
ACTUAL_SIZE: Do not increase or decrease the image size on the
page. Default value.
FIT: Increase or decrease the image size as appropriate to fit the
page.
INCREASE: Increase the image size of undersized images only to fit
the page.
DECREASE: Decrease the image size of oversized images only to fit
the page.
CUSTOM: Increase or decrease the image size as specified in
!PAGE_CUSTOM!.
*PAGE_CUSTOM Required if !PAGE_HANDLING! is CUSTOM. For imaged files,
the percentage as an integer value to increase or decrease the image
size on the page. A value greater than 100 will increase the image
size, and a value less than 100 will decrease the image size on the
page. Can be used when printing external files. Default: 100.
*FORCE_IMAGE Whenprinting external files, whether to force the file to print as an
imaged file.
TRUE: An external file is imaged regardless if the target device is
configured and supports the !INLINE_TYPE! natively.
FALSE: Default value.
*TARGET_MEDIA_ Required if !PAGE_HANDLING! is not CUSTOM. For imaged
HEIGHT files, the height of the target media size in thousandths of an inch
(mils), unless specified otherwise in !TARGET_MEDIA_UNITS!.
*TARGET_MEDIA_ For imaged files, the width of the target media size in thousandths of
WIDTH an inch (mils), unless specified otherwise in !TARGET_MEDIA_
UNITS!.
*TARGET_MEDIA_ The target unit of measurement. Can be used when printing external
UNITS files.
INCHES: Thousandths of an inch (mils). Default value.
CM: Centimeter.
MM: Millimeter.
Alternative Commands
You can use the following commands as alternatives to the previously mentioned
commands.The alternative syntax makes it easier for report generation software to create the
file.
The following section and panes are available when you configure a File Drop integration.
Configuration
The following options are available in the Configuration section when you configure a File
Drop integration.
Note: All paths should be relative to the SpectrumApplicationServer.
Option Description Notes
JobTargetFolder The folder in Spectrum to which status Required
information about print jobs related to this
integration should be directed. For more
information, see " Configure a Job Target
Folder" on page 1045.
Default Process A process to be applied to the integration. Required
Although this field is required, you can select
the Generic Document Process in the root
folder if you have not configured a custom
process that should be applied.
Transaction Size Transaction size is used during job Required
management for packaging print job details
into print jobs. Use the default value unless
Loftware Technical Support or Loftware
Professional Services Group directs you to
change it.
Important! Whenever you add a new device, data service, or integration, you
must ensure that the service is activated on all SpectrumApplicationServers on
which it should be available to run and started on at least one. In an
environment with only one SpectrumApplicationServer, these types of
services are automatically activated and started when they are created. For more
information, see "High Availability with Distributed Services" on page 716.
Oracle Integration
Oracle integration extends the functionality of Oracle applications, incorporating
LoftwareSpectrum capabilities so that users can print labels and other Spectrum documents
from Oracle Warehouse Management Solution (WMS), Oracle Mobile Supply Chain, and other
Oracle applications. Print requests initiated by users in Oracle applications can be processed and
printed by Spectrum, and Spectrum reports the status of each request to the originating
application. You can configure as many Oracle integrations as your Spectrum license allows.
Before you configure an Oracle integration in Spectrum, you must create the Oracle user
account in Oracle that you plan to use with Spectrum. Spectrum uses the credentials of this
Oracle user account to connect to the Oracle database.
Note: Each Oracle integration in Spectrum must be associated with a different
Oracle user. Only one Oracle user can own the Spectrum client software that is
installed in the Oracle database.
The Oracle user account does not require Oracle database administrator (DBA) privileges. The
following are the minimum permissions required for the Oracle user in Oracle. Replace ORACLE_
USER_FOR_SPECTRUM with the name of the Oracle user.
If you are using Oracle Warehouse Management Solution (WMS), the following privileges are
required in addition to the preceding list.
GRANT CREATE ANY PROCEDURE TO ORACLE_USER_FOR_SPECTRUM_ROLE;
GRANT DROP ANY PROCEDURE TO ORACLE_USER_FOR_SPECTRUM_ROLE;
5. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Integration dialog box, select the folder in which to
save the integration. You can double-click a folder to display subfolders.
b. Click OK to save the integration. Creation information is displayed in the
Properties pane.
6. Click Start Integration.
Note: The first time that an Oracle integration is started, a table, packages,
and Java required by Spectrum are installed in the Oracle database. If the
integration is deleted, they are removed.
7. To verify that the integration has started, view the Status in the Properties pane.
Important! Whenever you add a new device, data service, or integration,
you must ensure that the service is activated on all
SpectrumApplicationServers on which it should be available to run and
started on at least one. In an environment with only one
SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see
"High Availability with Distributed Services" on page 716.
This section is intended to provide a basic Oracle MSCA and WMS setup necessary to ensure
Loftwares ability to print a label. It is not intended to be a complete install guide or to cover all
variables and options. This covers two Oracle E-Business Suite products: Mobile Supply Chain
Applications (MSCA), which is the telnet/mobile (scanner) device session also known as Oracle
Mobile Apps, and the Oracle Warehouse Management System (WMS). It is important that you
find out what version you are running, as there are some changes in the functionality and
architecture between WMS release versions 11.5.8 and 11.5.9 in forms (desktop) and telnet
(mobile). These screens/functions are noted as needed by version.
This section also covers the asynchronous method of label printing where Oracle drops an XML
file into a directory, and Loftware picks up the XML file, processes it and creates a new
synchronous printing method where Oracle calls the SQL API and writes the XML directly to
the Loftware. This should help you troubleshoot most Oracle setup and configuration issues.
MSCA and WMS Pre-requisites - Please be sure you have the following:
l Oracle Inventory/WMS experience
l System Administrator, Warehouse Manager and Whse Mgmt under Apps user profile
Please have your instance URL for forms and telnet URL or IP address/port number for
your telnet/mobile session available (For example:
http://loftwms.loftwareinc.com:8000, telnet32 172.16.0.45 10200).
If you have access problems with either, see the troubleshooting section at the end of this
section, as some configuration of permissions may be required. PL/SQL experience and access
may be needed to troubleshoot some situations as necessary.
Point of Clarification: The MSCA (Mobile Apps) product does not have separate
setups. It uses the WMS profiles, that is for Label Print Mode, and if
Asynchronous, Label Output Director. Therefore, when you query for profile
options, you query WMS%.
The MSCA product does not include the Compliance Labeling Rules Engine or
LPNs. These are WMS ONLY. At time of printing, MSCA has 9 label types, WMS
has 3 additional LPN type labels for 12 base labels, and the Compliance Labeling
Rules Engine allows you to create variations of those base labels based on variables
you specify (for example: a different shipping label for different ship to addresses).
Please refer to Metalink Oracle Warehouse Management Product Documentation
for more information on MSCA & WMS including user and implementation guides.
Refer to Metalink Oracle Warehouse Management System White Papers for more
information on rules and label customization. The Telnet session is also included
in the WMS product and still requires setup and configuration; see Metalink
document MWA Server and Dispatcher Configuration Quick Start Reference.
Whatever the path specified is, as in the example shown above /dbfiles/applcsf/outbound,
this directory MUST have write permissions by the Oracle Apps. See tech note in the
troubleshooting section to determine if you have proper permissions.
Adding a Printer
1. Apps responsibility= System Administrator
n Install: Printer
n Navigation path= Install>Printer>Register
2. Double click Register.
3. Add <printername>.
Note: Case sensitive, this must match EXACTLY what you set up as your
Device Group Name.
4. Under Type, select printer type label.
5. Add a description of your printer for reference, for example: Bar Code Label Printer1.
See following figure:
When you define label formats, you are setting up the data fields that you want the system to
include on a particular label. The following figure provides an example of the data that might
appear on a LPN label, which would be created in Loftware Spectrum beforehand. This
"registers" that label in the Oracle WMS system, which needs to match exactly what you saved in
Design. To define this label in the system, you would set up the label fields and License Plate
Number (LPN) as shown in the example.
Before you can specify label generation points and construct label format rules, you must define
label formats. You define labels in the Define Label Formats window as shown in the following
figure.
1. Navigate to the Define Label Formats window.
Setup>Warehouse Configuration>Printers & Devices>Define Label Formats
Note: Name(s) for labels, fields and variables should be the exact same name that
is stored in Loftware Spectrum.
2. In the Label Type field, use the list of values to select the label type for which you want
to define label formats, for example: LPN.
3. Enter a name for the label in the Label Formats region, Name field.
4. Enter an optional description to describe this label format in the Description field.
5. Enter a date on which this label format can no longer be used in the Disable Date field.
This is optional.
6. Select the Default Label check box to identify that this label type is used as the default
label type if the system cannot find a rule that determines the label format (WMS only).
7. Save your work; click the Label Fields button to open the Define Label Field Variable
window.
How to Define Label Field Variables
These instructions assume that you have already defined a label format and you clicked the Label
Fields button to open the Define Label Field Variables window.
4. If documents are not displayed, right click documents and add label type.
5. Double click a label type, for example: LPN.
6. Select printer name, level and value from list of values as shown in the figure below.
7. Scroll to right and check box for enable and default for desired value.
8. Save your work and close the form.
1. Expand the Business Flows icon to display a list of business flows in the left panel of the
window.
2. Select the LPN Generation business flow to associate a label type.
3. Use the list of values in the Label Type field to select the LPN label type to associate it
to the business flow.
Note: The list of values displays only those label types valid for the
business flow.
4. Select the level at which you want to control printing for this label type in the Level
field. Valid values are Site, Application, Responsibility, and User.
5. Select the value for the level that you selected in step 5 in the Value field.
The Value field is disabled if you selected Site as the level in step 5. If you selected
Application, the list of values displays valid applications. If you selected User, the list of
values displays valid users. If you selected Responsibility, the list of values displays valid
responsibilities.
The Enabled check box is automatically selected to indicate that this label type can be
used for generating the label associated with the business flow. Clearing this check box
disables this association, and the label type is not generated for the business flow.
6. Enter any comments about the association that you just created in the Comments field.
7. Save your work; close the form.
Setting Up Label Format Assignment Rules
Note: This applies only to the WMS Compliance Labeling Rules Engine. The rules
engine uses restrictions that are user defined to print variations of the base
registered labels. This piece has been included for reference so that you have a
basic understanding of the Label Rules Engine.
After you define label formats and associate them with the appropriate business flows, you can
define label format assignment rules. Label format assignment rules associate a particular label to
a business object, based on the parameters and restrictions that you specify. For example,
assume that you have defined a LPN label for small hazardous items.
The following figure provides an example of a rule that you might create to generate a LPN
Content label. Recall that Label Format Assignment rules have return values. When WMS
executes this rule, it returns the value LPN_HAZ (if all of the rules restrictions are met) which
represents the label format for the LPN Content label.
Note: Before you set up label format rules, you should manually plan and design
your rule.
1. Navigate to the WMS Rules window.
8. Enter the value associated with the business object in the Parameter field.
9. Select the operator that represents the rule conditions in the Operator field.
10. Use the list of the values to select the appropriate business object in the second Object
field.
11. Use the list of values or enter the parameter value associated with the second business
object in the second Parameter field.
12. Repeat steps 6 through 9 to add more restrictions to your rule.
13. Enter a weight that specifies the rules execution priority in relation to other label rule
execution priorities in the Weight field located at the bottom of the window. Higher
weighted rules are executed first.
14. Select the Enabled check box if you want to enable the rule.
Note: The User Defined check boxes - User Defined, Enable, and
Common to All Orgs are explained following the instructions on the rule
definition.
15. Clear the Common to All Orgs check box (if selected). Rules should not be selected
across organizations because task types, resources, and departments are all organization
specific.
16. Select the options for the restriction if more than one restriction is specified. This
determines how the restrictions should be considered during execution of the rules.
17. Save your work.
Note: When you enable a rule, the system compiles the rule and checks for
possible syntax errors. If you are having problems and cannot get anything
to work or work consistently, one of the first things to do as a preventative
measure is to Generate All Rules. Responsibility =Warehouse Manager
NAVIGATION = Other>Requests>Requests>Run>Single Request
Query Gen% Select Generate All Rules. Also, if you change any rules, or
enable/disable rules or strategies, you MUST bounce the Telnet server
(MWA) and log out/log back in on the Telnet session/device before
proceeding or your transactions are likely to fail to produce any labels.
The following section and panes are available when you configure an Oracle integration.
Configuration
The following options are available in the Configuration section when you configure an
Oracle integration.
Option Description Notes
Job Target The folder in Spectrum to which status information about Required
Folder print jobs related to this integration should be directed. For
more information, see " Configure a Job Target Folder" on
page 1045.
Default A process to be applied to the integration. Although this Required
Process field is required, you can select the Generic Document
Process in the root folder if you have not configured a
custom process that should be applied.
Transaction Transaction size is used during job management for Required
Size packaging print job details into print jobs. Use the default
value unless Loftware Technical Support or Loftware
Professional Services Group directs you to change it.
Connect The type of connection to use and the Oracle system with Required.
Using which Spectrum is integrated. Required Spectrum Types of
components will be installed in this Oracle system. identifier
include the
following:
SID
ServiceName
Oracle IP address or host name of the Oracle database server. Required
Host
Oracle Port The Oracle SQLNet Listener port number for the Oracle Required. The
database server. default
SQLNet
Listener port
is 1521.
Oracle An Oracle user name. Spectrum does not require that this Required
User account have database administrator (DBA) privileges in
Oracle. For more information, see "Configure an Oracle
User for Spectrum" on page 1063.
Password The password for the user name provided in the Oracle Required
User field.
Option Description
Description A description for this integration.
Integration The type of integration. One of the following values is displayed:
Type File Drop, Oracle, SAP RFC, SAP BC-XOM, Event JMS Consumer, Event
JMS Producer, Event Direct Processing, Event ActiveMQ Connection,
Event Oracle AQ Connection, Event File Producer, Event File Consumer,
Event Email Producer, Event Email Consumer, or Event Message
Converter
Service Management Pane
If your Spectrum environment is configured to support distributed services, the Service
Management pane allows you to configure failover of integration services between
SpectrumApplicationServers. These options are also available in the Service Management
pane in System Management.
Important! Whenever you add a new device, data service, or integration, you
must ensure that the service is activated on all SpectrumApplicationServers on
which it should be available to run and started on at least one. In an
environment with only one SpectrumApplicationServer, these types of
services are automatically activated and started when they are created. For more
information, see "High Availability with Distributed Services" on page 716.
If you want to integrate Loftware Spectrum with SAP ERP, you must perform the tasks
described in this section to prepare for integration.
The user performing the preparation for Integration for use with SAP Applications must have
working knowledge of Spectrum components and of SAP ERP. Some steps involve
configuration within SAP ERP by a SAP Basis Administrator on the SAP Application Server and
are included for information purposes only.
To prepare for Integration for use with SAP Applications, perform the following tasks:
l "Configure the SAP JCo JDK " on page 1086 - Required for all types of Integration for
use with SAP Applications.
l "Install the Command Line Interpreter (CLI)" on page 1088 - For SAP BC-XOM
integrations only.
l "Configure an SAP User for Spectrum" on page 1091 - Required for all types of
Integration for use with SAP Applications.
Configure the SAP JCo JDK
LoftwareSpectrum Integration for use with SAP Applications requires the SAP Java
Connector (JCo) JDK, which includes a JAR package, and other files to be located on the
SpectrumApplicationServer for a non-embedded database deployment. Spectrum uses the JAR
package to receive work and to send back status information from SAP ERP.
Note: These steps are required if you intend to support SAP BC-XOM
integrations or SAP RFC integrations.
Before You Begin: Download the SAP JCo 3.0.16 or later JDK version which can
be obtained from SAP Marketplace. Be sure to download the 64-bit SAP JCo JDK.
The SAP Marketplace requires an authorized login.
Configure the SAP JCo JDK on Windows Server
To configure the SAP JCo JDK, perform the following steps:
1. Stop the Loftware Spectrum service.
2. Add the path of the folder containing the SAP JCo JDK to your System Path
environment variable.
Example
If you downloaded the SAP JCo to C:\sapjco3, adding to the System Path
would look like this:
%JAVA_HOME%\jre\bin;C:\sapjco3
3. Copy the sapjco3.jar package of the folder containing the SAP JCo JDK to the following
folder:
Example
C:\Loftware\Spectrum\Spectrum\product\endorsed
4. Restart the Loftware Spectrum service.
Configure the SAP JCo JDK on Linux
To configure the SAP JCo JDK, perform the following steps:
Note: Environment variables must be set system-wide to allow the Loftware
Spectrum service to find the SAP JCo JDK during startup. Contact your Linux
Administrator for assistance as needed.
1. Stop the Loftware Spectrum service.
2. Add the path of the folder containing the SAP JCo JDK to your system-wide PATH
environment variable:
Example
If the SAP JCo JDK is located in /opt/loftware/sapjco, adding to the
$PATH would look like the following example:
export PATH=$PATH:/opt/loftware/sapjco
3. Navigate to your$SPECTRUM_HOME location and create a new folder, named lib_so.
4. Add the $SPECTRUM_HOME/lib_so path to your system-wide LD_LIBRARY_PATH
environment variable.
Example
export LD_LIBRARY_PATH=$LD_LIBRARY_
PATH:/opt/loftware/spectrum/Spectrum/lib_so
5. Copy the libsapjco3.so file from the downloaded SAP JCo JDK folder to the
$SPECTRUM_HOME/lib_so folder.
6. Copy the sapjco3.jar package from the folder containing the SAP JCo JDK to the
following location:
/opt/loftware/spectrum/Spectrum/product/endorsed
7. Start the Loftware Spectrum service.
After Deployment
If you want to support SAP BC-XOM integrations, continue with "Install the Command Line
Interpreter (CLI)" on page 1088. Otherwise, continue with "Configure an SAP User for
Spectrum" on page 1091.
Install the Command Line Interpreter (CLI)
If you intend to support SAP BC-XOM integrations, then you must install the
LoftwareSpectrum Command Line Interpreter (CLI) on the SAP Application Server to
prepare for LoftwareSpectrum Integration for use with SAP Applications.
The CLI is a utility that is run by the SAP Spooler when a print job is submitted from SAP ERP.
The CLI passes the request to the LoftwareSpectrum Integration for use with SAP
Applications. Spectrum applies the appropriate label template, sends the job to the printer, and
then sends the status back to the SAP Spooler.
Note: These steps are required only if you intend to support SAP BC-XOM
integrations.
Before You Begin: The Java JDK version 1.8 must be installed on the SAP
Application Server. Also, you must download the 64-bit SAP Java Connector (JCo)
JDK to the SpectrumApplicationServer and configure the SAP JCo JDK. For
more information, see "Configure the SAP JCo JDK " on page 1086.
Install the Loftware Spectrum Command Line Interpreter
To install the CLI on the SAP Application Server, perform the following steps.
1. Extract the files from the download location on the SpectrumApplicationServer:
http://<spectrum-server>:8080/downloads/sapClient-
package.zip
2. Copy the following files to a new folder on the SAP Application Server.
n jdbc.properties
n log4j.xml_EXAMPLE
n MsgResources.properties
n MsgResources_de_DE.properties
n MsgResources_en_US.properties
n MsgResources_es_MX.properties
n MsgResources_fr_FR.properties
n MsgResources_ja_JP.properties
n MsgResources_pt_BR.properties
n MsgResources_zh_CN.properties
n MsgResources_zh_TW.properties
n runcli.cmd_EXAMPLE
n runcli.sh_EXAMPLE
n sapcli.jar
Note: The CLI can be in any location, as long as the Output Management
System (OMS) definition in SAP Spool Administration (SPAD) has the
appropriate path in the OMS Submit Command.
3. You must edit the runcli files with the _EXAMPLE suffix to specify the classpath for
sapcli.
Important: The runcli.sh script must have execute permission set.
Note: The script output must be only the single output line generated by
the sapcli request. This format is dictated by SAP, and additional lines are
not allowed. The following is an example.
2.00 4 1 test Print\ request\ accepted\ by\ Loftware\
Spectrum
For a server running the Windows Server operating system, open the runcli.cmd_
EXAMPLE file in a text editor. Change the -cp value C:\saptest\;C\saptest\ to the
fully-qualified path to the folder where the sapcli tool is installed. Change the path for
Java to reference the fully-qualified path to the instance of Java installed on the SAP
Application Server. Save the file as runcli.cmd.
Example
@echo off
rem If JAVA_HOME is not set to the required version
documented in Loftware Spectrum Technical Requirements,
rem you must use the fully-qualified path to the required
version instead of %JAVA_HOME%.
rem Change "C:\saptest\" to the fully-qualified path to the
folder where the sapcli tool is installed.
"%JAVA_HOME%\bin\java.exe" -cp .;C:\saptest\;C:\saptest\*
com.loftware.sapCliClient.SapCli SUBMIT %*
For a Linux server, open the runcli.sh_EXAMPLE file in a text editor. Change the -cp
value, .:/opt/loftware:/opt/loftware/*, to the fully-qualified path to the folder where
the sapcli tool is installed. Change the path for Java to reference the fully-qualified path
to the instance of Java installed on the SAP Application Server. Save the file as runcli.sh.
Linux Example
#!/bin/bash
<logger name="com.loftware.sapCliClient">
<root>
<level value="ERROR" />
<appender-ref ref="FILE" />
</root>
5. The CLI can be in any location, as long as the Output Management System (OMS)
definition in SAP Spool Administration (SPAD) has the appropriate path in the OMS
Submit Command. OMS commands should include the required quotation marks, as
shown in the following example. For the last parameter, enter RDI, XSF, or XML as
appropriate.
Example (Windows Server)
Path: C:\saptest\
Submit:
runcli.cmd http://172.16.10.19:8080/spectrum-
server/blazeDS/amf "n=BCXOM-1" "&EI" "&EG" "&P" "&F" "&ES"
RDI
Continue with "Configure an SAP User for Spectrum" on page 1091.
Configure an SAP User for Spectrum
Before you configure LoftwareSpectrum Integration for use with SAP Applications, you
must create the SAP user account in SAP ERP that you plan to use with Spectrum. Spectrum
uses the credentials of this SAP user account to connect to the SAP database.
The SAP user must have authorization in SAP ERP for some function modules, function
groups, and data dictionary objects. Obtaining developer access assigned by SAP is required for
developing RFC modules in SAP ERP, and it provides the rest of the authorizations required to
develop and modify an Integration for use with SAP Applications. The SAP user can be a
background user (Communication User), although during development and testing it is
recommended that you provide this SAP user account with dialog access for the purpose of
debugging.
Before You Begin: Before you configure integrations, you must download the 64-
bit SAP Java Connector (JCo) JDK to the SpectrumApplicationServer and
configure the SAP JCo JDK. For more information, see "Configure the SAP JCo
JDK " on page 1086. Also, if you want to support SAP BC-XOM integrations, you
must install the Loftware Spectrum Command Line Interpreter. For more
information, see "Install the Command Line Interpreter (CLI)" on page 1088.
If you intend to support SAP BC-XOM integrations, then you must configure SAP ERP to
permit integration of the full BC-XOM interface with LoftwareSpectrum. More than one
integration may point to the same SAP Application Server, but each SAP BC-XOM integration
must be configured to refer to a different Output Management System (OMS).
Note: These steps are required only if you intend to support SAP BC-XOM
integrations.
These procedures should be performed within the SAP Application Server by a system
administrator. You must use an SAP user account with administrative access to the SAP Spool
Administration (SPAD) and related transactions.
Before You Begin: You must create the SAP user account in SAP ERP that you
plan to use with Spectrum. For more information, see "Configure an SAP User for
Spectrum" on page 1091.
The following procedures begin from the SPAD transaction with either Extended or Full
Administration Mode enabled at the transaction.
Configure the Real Output Management System (ROMS)
You must configure the Real Output Management System (ROMS) so that SAP ERP can
initialize the OMS component of Loftware Spectrum.
1. On the Spool Administration: Initial Screen, click the Output management
systems tab, and then next to Real Output Management Systems click Display. The
list of ROMS is displayed.
2. Click to edit the list of ROMS.
3. Click to create a new ROMS.
4. In the OMS Description section, enter a name and a description.
You must configure the Logical Output Management System (LOMS). This is what SAP ERP
uses to submit jobs to LoftwareSpectrum.
1. From the main SPAD screen, click the Output management systems tab, and next to
LOMS click Display. The list of LOMS is displayed.
2. Click to edit the list of LOMS.
3. Click to create a new LOMS.
4. Assign a Name and Description for the LOMS.
Parameter Description
IntegrationName The name that you will give to an SAP BC-XOM
integration in Spectrum.
Important! When you create the
integration in Spectrum, you must use the
same integration name that you used in the
Submit command.
FileType The type of file RDI, XSF, or XML (XFP uses the
XML file type).
Important! The length of the Submit command is restricted by the 132
character limit on the length of commands. You must ensure that the
integration name is short enough to avoid exceeding the limit. To minimize
the length of the command, you can use the numeric IP address for the
SpectrumApplicationServer.
To finish connecting SAP ERP to the LoftwareSpectrum Command Line Interpreter, you
must configure an SAP Output Device and associate it with the LOMS.
1. Click the Devices / servers tab, and next to Output Devices click Display. The list of
Output Devices is displayed.
2. Click to edit the list of Output Devices.
3. Click to create a new Output Device.
4. On the DeviceAttributes tab, for the Device Type select the appropriate device type:
n RDI: UTF-8 PLAIN
n XSF: SAP Smart Forms
n XFP: XFP
If you do not have an appropriate device type in your SAP ERP environment, contact
your SAP Basis Administrator to request that an appropriate device type be created for
use with Spectrum.
LoftwareSpectrum Integration for use with SAP Applications allows Spectrum to register
with an SAP Application Server as a virtual device to which SAP Advanced Business
Application Programming (ABAP) applications and forms can print.
You can configure as many SAP BC-XOM integrations as your Spectrum license allows. More
than one integration may point to the same SAP Application Server, but each must be
configured to refer to a different Output Management System (OMS) with the SAP Spool
Administration (SPAD) transaction of SAP ERP. A single SAP BC-XOM integration can accept
RDI, XSF, XFP, and XML data, but an OMS has a single output device that can only send one
data type. That data type can change on the SAP Application Server without any changes to the
Spectrum integration.
Before You Begin: Before you create each SAP BC-XOM integration, you must
configure SAP ERP to permit integration of the full BC-XOM interface with
Spectrum. The name that you intend to use for the integration must be
incorporated into the Submit command in the Logical Output Management
System (LOMS) on the SAP Application Server. The length of this name must be
12 characters or fewer. For more information, see "Configure SAP ERP for BC-
XOM Communication" on page 1092.
To create an SAP BC-XOM integration that allows print requests from an SAP Application
Server to be processed by Spectrum, do the following.
1. Click Integration Management.
2. Click File > New > SAP BC-XOM to create an SAP BC-XOM integration.
3. In the Configuration section, configure the following details about SAP.
a. For Job Target Folder, select the folder in Spectrum to which status information
about print jobs related to this integration should be directed. Although you can
use the default Job Target folder, it is suggested that you configure a separate job
target folder for each integration.
b. For Default Process, select either a process that you have created that should be
applied to the integration, or else select the Generic Document Process in the
root folder.
c. For Transaction Size, accept the default value unless Technical Support or the
Professional Services Group directs you to change it.
d. For SAP System Name, enter the name of the SAP Application Server, typically
8 characters in length.
e. For SAP Client, enter the three-digit identification number from SAP Transaction
SCC4. This is the client ID with which the SAP user specified by the SAP
Username is authorized to log on.
f. For SAP Username and SAP Password, enter SAP credentials for the
integration to use when connecting.
10. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Integration dialog box, select the folder in which to
save the integration. You can double-click a folder to display subfolders.
b. Click OK to save the integration. Creation information is displayed in the
Properties pane.
11. Click Start Integration.
12. To verify that the integration has started, view the Status in the Properties pane.
After the integration is started, it becomes available as a virtual device to which SAP ABAP
applications and forms can print until the integration is stopped. If the integration is stopped or
cannot be accessed due to network issues, print requests remain pending.
Tip: To ensure that SAP BC-XOM integrations and SAP RFC integrations can
function successfully, use only uppercase text in the Data Ref fields in label
templates in Design. By default, Data Ref fields are case sensitive.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
From the perspective of SAP ERP, Spectrum acts as an Output Management System (OMS).
SAP ERP sends the data for a request in Raw Data Interface (RDI), XML for Smart Forms
(XSF), or XML format. You can configure the data with values for Spectrum-specific symbol
names to override default values.
The OMS Submit command invokes the CLI to pass RDI data to an SAP BC-XOM integration
in Spectrum. The RDI data should follow the standard SAP RDI format and should include
Spectrum-specific name and value pairs to ensure proper printing.
RDI data has two components:
l The Header contains information about the device, such as the device type and form
name.
l The Data contains the information to be printed. This component can contain
Extended Field
Field Name Value
Name
LABEL_ LW_JOBNAME The name for a specific job in Spectrum.
HEADER_LW_
JOBNAME
LABEL_ LW_TRAY Tray 1
HEADER_LW_
TRAY
LABEL_ LW_QUANTITY Quantity 2
HEADER_LW_
QUANTITY
LABEL_ LW_ Duplicates3
HEADER_LW DUPLICATES Important: For RDI, the LW_
_DUPLICATES DUPLICATES value is used as is. For
XSF and XML, the XML (LPS)
processor subtracts 1 from the LW_
DUPLICATES value.
LABEL_ LW_LABEL The label template to use with a job.
HEADER_LW_
LABEL
LABEL_ LW_PAGES Pages4
HEADER_LW_
PAGES
LABEL_ LW_INLINE_ Required for printing external files. Print an external
HEADER_LW_ DOCUMENT file, such as a PDF, without associating the file with
INLINE_ label template.
DOCUMENT
LABEL_ LW_INLINE_ Required for printing external files. The list of
HEADER_LW_ TYPE supported external file types. For example,
INLINE_TYPE INLINE_PDF.
1To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
2The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
3The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
4The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
Extended Field
Field Name Value
Name
LABEL_ LW_LABEL_ A set of comma delimited label ranges to reprint in a
HEADER_LW_ RANGES multi-label or quantity reprint. When printing
LABEL_ external files, this is the range of pages to print. An
RANGES asterisk is a wildcard value that resolves to the last
label printed.
LABEL_ LW_PAGE_ The page handling for imaged files. Maintains aspect
HEADER_LW_ HANDLING ratios.
PAGE_ ACTUAL_SIZE: Do not increase or decrease the
HANDLING image size on the page. Default value.
FIT: Increase or decrease the image size as
appropriate to fit the page.
INCREASE: Increase the image size of undersized
images only to fit the page.
DECREASE: Decrease the image size of oversized
images only to fit the page.
CUSTOM: Increase or decrease the image size as
specified in !PAGE_CUSTOM!.
LABEL_ LW_PAGE_ Required if !PAGE_HANDLING! is CUSTOM. For
HEADER_LW_ CUSTOM imaged files, the percentage as an integer value to
PAGE_ increase or decrease the image size on the page. A
CUSTOM value greater than 100 will increase the image size,
and a value less than 100 will decrease the image size
on the page. Can be used when printing external
files. Default: 100.
LABEL_ LW_FORCE_ Whenprinting external files, whether to force the
HEADER_LW_ IMAGE file to print as an imaged file.
FORCE_IMAGE TRUE: An external file is imaged regardless if the
target device is configured and supports the
!INLINE_TYPE! natively.
FALSE: Default value.
LABEL_ LW_TARGET_ Required if !PAGE_HANDLING! is not CUSTOM.
HEADER_LW_ MEDIA_ For imaged files, the height of the target media size
TARGET_ HEIGHT in thousandths of an inch (mils), unless specified
MEDIA_ otherwise in !TARGET_MEDIA_UNITS!.
HEIGHT
Extended Field
Field Name Value
Name
LABEL_ LW_TARGET_ For imaged files, the width of the target media size
HEADER_LW_ MEDIA_ in thousandths of an inch (mils), unless specified
TARGET_ WIDTH otherwise in !TARGET_MEDIA_UNITS!.
MEDIA_
WIDTH
LABEL_ LW_TARGET_ The target unit of measurement. Can be used when
HEADER_LW_ MEDIA_UNITS printing external files.
TARGET_ INCHES: Thousandths of an inch (mils). Default
MEDIA_UNITS value.
CM: Centimeter.
MM: Millimeter.
From the perspective of SAP ERP, Spectrum acts as an Output Management System (OMS).
SAP ERP sends the data for a request in Raw Data Interface (RDI), XML for Smart Forms
(XSF), or other XML format such as XFP. You can configure the data with values for Spectrum-
specific names to override default values.
The OMS Submit command invokes the CLI to pass XSF or XML data to an SAP BC-XOM
integration in Spectrum.
XSF or XML data can have one or more smartxsf elements, each of which maps directly to a
Smart Form. A smartxsf element has two components:
lThe Header contains information about the device, such as the device type and form
name.
l The Data contains the content to be printed.
A new label will occur on smartxsf and data elements. Header fields from the parent smartxsf
element will be copied into the field map when a new data element triggers a new label.
If a custom stylesheet is not configured for an integration, Spectrum uses a built-in stylesheet to
transform the XSFinto XML (LPS). XML must be in XML(LPS) format, or a custom stylesheet
must be specified to transform the XML to XML(LPS).
Header
l general/form is used for documentIDunless an override field is present for this form.
l general/output-device is used for the Spectrum output device unless an override
field is present for this form.
l general/tdcopies is used for the Spectrum quantity value unless an override field is
present for this form.
l general is used to add all general sub elements to the data map.
Example XSF
<header>
<general>
<version>1.14.2</version>
<form>SF_XSF_DEMO1</form>
<language>EN</language>
<device>PRINTER</device>
</general>
</header>
<variable name="header/general/device">PRINTER</variable>
Note: In an SAP BC-XOM integration, you can configure the Use Extended
Field Names to Refer to RDI or XSF Data Records option to control whether
only the symbol name is needed to refer to an XSF data record or whether the
window and element names must also be used in the reference.
Data
The following XSF data elements will map directly to Spectrum data refs1 by the value of their
name attribute:
l
sym
l
text
l
include-text
If a data element is a descendent of a table, a suffix "_N" will be added to the field name, where
N is the implicit row number within that table group.
Override Fields
You can use the following field names to override values in XSF and XML headers. Spectrum
override fields are expected to occur as text elements with the appropriate corresponding name
attribute value. Before you can do so, you must configure these names in SAP ERP and
incorporate them into an ABAP program or SAPscript.
Field Name Value
LW_ Device name (Alias) of the selected device.
PRINTERNAME
LW_JOBNAME The name for a specific job in Spectrum.
LW_TRAY Tray 2
LW_QUANTITY Quantity 3
LW_ Duplicates4
DUPLICATES Important: For XSF, XFP, and XML, the XML (LPS)
processor subtracts 1 from the LW_DUPLICATES value.
For RDI, the LW_DUPLICATES value is used as is.
LW_LABEL The label template to use with a job.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
1The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
Elements NotProcessed
l Header sub elements: page, archive
Note: Window is only used for extended field names. Its descendent text,
include-text, and sym elements will be processed.
l Formatting fields, however table is used to add row index suffixes to table row data
From the perspective of SAP ERP, Spectrum acts as an Output Management System (OMS).
SAP ERP sends the data for a request in Raw Data Interface (RDI), XML for Smart Forms
(XSF), or other XML format such as XFP. You can configure the data with values for Spectrum-
specific names to override default values.
If the SAP Output Device is configured as Device Type XFP, the OMS Submit command
invokes the CLI to pass the XFP data to an SAP BC-XOM integration in Spectrum.
There are two formats for XMLfor SAP Interactive Forms by Adobe (XFP):
lXFP with context: Mixes some of the structure of the PDF-based form with the data
from an application.
l XFP without context: Contains just the data with none of the form structure and can be
Override Fields
You can use the following field names to override values in XFP headers. Spectrum override
fields are expected to occur as text elements with the appropriate corresponding name attribute
value. Before you can do so, you must configure these names in SAP ERP and incorporate them
into an ABAP program or SAPscript.
Field Name Value
LW_ Device name (Alias) of the selected device.
PRINTERNAME
LW_JOBNAME The name for a specific job in Spectrum.
LW_TRAY Tray 1
LW_QUANTITY Quantity 2
LW_ Duplicates3
DUPLICATES Important: For XSF, XFP, and XML, the XML (LPS)
processor subtracts 1 from the LW_DUPLICATES value.
For RDI, the LW_DUPLICATES value is used as is.
LW_LABEL The label template to use with a job.
LW_PAGES Pages4
LW_INLINE_ Required for printing external files. Print an external file, such as a PDF,
DOCUMENT without associating the file with label template.
LW_INLINE_ Required for printing external files. The list of supported external file
TYPE types. For example, INLINE_PDF.
LW_LABEL_ A set of comma delimited label ranges to reprint in a multi-label or
RANGES quantity reprint. When printing external files, this is the range of pages
to print. An asterisk is a wildcard value that resolves to the last label
printed.
1To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
2The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
3The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
4The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
Option Description
Use If selected, the form (window), field (element), and symbol names must
Extended be included when referring to a data map entry generated from an RDI or
Field Names XSF data record. If cleared, only the symbol name is needed to refer to a
to Refer to data record.
RDI or XSF
Data
Use Legacy If selected, an underscore (_) is used as the field separator for extended
Extended field names. Otherwise, the forward slash (/) separator is used.
Field Note: This option is available only if Use Extended Field
Separator for Names to Refer to RDI or XSF Data is selected.
XSF Data
New Label If selected, a new label is generated if a duplicate data field name is
on Repeat encountered during RDI processing.
RDI Data Note: For XSF, a new label is generated on duplicate
Record Field smartxsf and data elements. For XML, specify a custom
Names stylesheet in XSForXMLStylesheet that handles new
label behavior.
Send Job If selected, Spectrum sends the job status to SAP ERP.
Status to
SAP
OMS The name of the Output Management System to configure to print to
Spectrum.
Option Description
XSF or XML For XSF, XFP, or XML data, enter the UNCpath to a shared folder or a
Stylesheet path to a local folder on the SpectrumApplicationServer of the
stylesheet to use for converting data to XML (LPS).
Important: Review the following information for your data
type:
l XSF: If a stylesheet is not specified and the
Option Description
Run As A Spectrum user account under which requests received from outside of
Spectrum are run. This account must have at least the Integration role or
equivalent permissions and is typically not an interactive user. For more
information, see " Configuring a Run As User for Integrations" on page
1043.
SAP Load Balancing Connection Mode
These options are displayed only if the Load Balance Connection check box is selected.
Note: SAP load balancing is not related to Spectrum distributed services.
Option Description
SAP Message The
Server
message server that performs load balancing of communication
(MSHOST) between application servers in an SAP System. This name must be the
same on all application servers belonging to the same SAP System.
SAPGroup The SAP logon group. A load balancing group automatically optimizes the
selection of application server for performance.
SAPSystem The name of the SAP R/3 System.
ID
(R3NAME)
SAP The load balancing service.
Message
Server Port
(MSSERV)
SAP Single Server Connection Mode
These options are displayed only if the Load Balance Connection check box is cleared.
Option Description
SAP IPAddress The IPv4 address of the SAP Application Server.
SAP System Number
The two-digit identification number for the SAP instance to which
to connect.
Properties Pane
The following properties can be configured or viewed in the Properties pane when you view
any type of integration with LoftwareSpectrum.
Option Description
Integration A unique name for this connectivity bridge between Spectrum and another
Name application. Required.
Characters permitted in names
The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. For letters, the
case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Description A description for this integration.
Integration The type of integration. One of the following values is displayed:
Type File Drop, Oracle, SAP RFC, SAP BC-XOM, Event JMS Consumer, Event
JMS Producer, Event Direct Processing, Event ActiveMQ Connection,
Event Oracle AQ Connection, Event File Producer, Event File Consumer,
Event Email Producer, Event Email Consumer, or Event Message
Converter
Service Management Pane
If your Spectrum environment is configured to support distributed services, the Service
Management pane allows you to configure failover of integration services between
SpectrumApplicationServers. These options are also available in the Service Management
pane in System Management.
Important! Whenever you add a new device, data service, or integration, you
must ensure that the service is activated on all SpectrumApplicationServers on
which it should be available to run and started on at least one. In an
environment with only one SpectrumApplicationServer, these types of
services are automatically activated and started when they are created. For more
information, see "High Availability with Distributed Services" on page 716.
If you intend to support SAP RFC integrations, then you must configure an RFC Destination for
the LoftwareSpectrum interface in Transaction SM59. For SAP RFC integrations, Spectrum
uses an SAP RFC Listener to receive print requests initiated by an SAP Application Server.
More than one integration may point to the same SAP Application Server.
Note: These steps are required only if you intend to support SAP RFC
integrations.
These procedures should be performed within the SAP Application Server by a system
administrator.
Before You Begin: You must create the SAP user account in SAP ERP that you
plan to use with Spectrum. For more information, see "Configure an SAP User for
Spectrum" on page 1091.
In Transaction SM59 in SAP ERP, you must create an RFC Destination for the
LoftwareSpectrum interface.
1. For RFC destination, enter a name.
2. For Connection Type, select T (TCP/IP connection).
3. For Activation Type click Registration.
4. For Program ID, enter a name.
Important! When creating an SAP RFC integration in Spectrum, you must
enter this name in the RFC Program ID field. More than one integration
may point to the same RFC Program ID.
LoftwareSpectrum Integration for use with SAP Applications allows Spectrum to register
with an SAP Application Server as a program that SAP Advanced Business Application
Programming (ABAP) applications may call and to which they can send print requests.
You can configure as many SAP RFC integrations as your Spectrum license allows. More than
one integration may point to the same SAP Application Server and even to the same RFC
Program ID.
Before You Begin: Before you create SAP RFC integrations, you must create an
RFC Destination for the Spectrum interface in SAP ERP in Transaction SM59. For
more information, see "Configure SAP ERP for RFC Communication" on page
1119.
Note:An SAP RFC integration field value has a limit of 1000 characters.
To create an SAP RFC integration that allows print requests from an SAP Application Server to
be processed by Spectrum, do the following.
1. Click Integration Management.
2. Click File > New > SAP RFC to create an SAP RFC integration.
3. In the Configuration section, configure the following details about SAP.
a. For Job Target Folder, select the folder in Spectrum to which status information
about print jobs related to this integration should be directed. Although you can
use the default Job Target folder, it is suggested that you configure a separate job
target folder for each integration.
b. For Default Process, select either a process that you have created that should be
applied to the integration, or else select the Generic Document Process in the
root folder.
c. For Transaction Size, accept the default value unless Technical Support or the
Professional Services Group directs you to change it.
d. For SAP System Name, enter the name of the SAP Application Server, typically
8 characters in length.
e. For SAP Client, enter the three-digit identification number from SAP Transaction
SCC4. This is the client ID with which the SAP user specified by the SAP
Username is authorized to log on.
f. For SAP Username and SAP Password, enter SAP credentials for the
integration to use when connecting.
g. For SAP Gateway Service, enter the SAP network gateway (port) available for
registration.
h. For Connection Count, enter the maximum number of RFC requests to allow to
be simultaneously processed. Any additional requests are queued until an active
request is completed.
i. For RFC Program ID, enter the registered program ID of the RFC program from
the RFC Destination in the SAP Application Server.
j. To ignore empty field names, select Ignore Empty Fields. Otherwise, empty
field names will cause a job to fail.
k. To ignore invalid field names, select Ignore Invalid Field Names. Otherwise,
invalid field names will cause a job to fail.
4. To support SAP Load Balancing connection mode to permit multiplexing of
communication with all SAP Systems in your SAP environment, select Load Balance
Connection. Otherwise, clear the check box to use SAP Single Server connection mode
instead.
5. If you selected Load Balance Connection, configure the following options.
a. For SAP Message Server (MSHOST), enter the name or IP address of the
message server that performs load balancing of communication between
application servers in an SAP System. This name must be the same on all
application servers belonging to the same SAP System.
b. For SAP IP Address (GWHOST), enter the IPv4 address of the SAP
Application Server.
c. For SAP Group, enter the name of the SAP logon group.
d. For SAP System ID (R3NAME), enter the name or IP address of the SAP R/3
System.
e. For SAP Message Server Port (MSSERV), enter the name of the load balancing
service used for SAP.
6. If you cleared Load Balance Connection, configure the following options.
a. For SAP IP Address (GWHOST), enter the IPv4 address of the SAP
Application Server.
b. For SAP System Number, enter the two-digit identification number for the SAP
instance to which to connect.
7. For Run As, select the Spectrum user account under which print requests from SAP
applications should be run. This user account must have at least the Integration role or
equivalent permissions.
8. In the Properties pane, enter a name by which the integration will be identified in
Spectrum and a description of its purpose.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
9. Click File > Save or click the Save button in the toolbar.
a. In the left pane of the Save Integration dialog box, select the folder in which to
save the integration. You can double-click a folder to display subfolders.
b. Click OK to save the integration. Creation information is displayed in the
Properties pane.
10. Click Start Integration.
11. To verify that the integration has started, view the Status in the Properties pane.
After the integration is started, its associated function becomes available until the integration is
stopped. If the integration is stopped or cannot be accessed due to network issues, print
requests remain pending.
Tip: To ensure that SAP BC-XOM integrations and SAP RFC integrations can
function successfully, use only uppercase text in the Data Ref fields in label
templates in Design. By default, Data Ref fields are case sensitive.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
For SAP RFC integrations, LoftwareSpectrum Integration for use with SAP Applications
uses an SAP RFC Listener to receive print requests initiated by the SAP Application Server.
Similar to receiving IDocs, the Listener registers with SAP ERP. This call takes the form of a
CALL FUNCTIONDESTINATION statement in an Advanced Business Application
Programming (ABAP) program in SAP ERP.
Calls to an RFC Destination can be placed in ABAP code in several locations in SAP ERP.
These locations include user exits, business add-ins, workflow, output determination and
custom function modules, reports or transactions.
Important! Initiating an RFC from inside SAP ERP by using the CALL
FUNCTIONDESTINATION statement will trigger a database commit in the
SAP Application Server. For this reason, it may not be desirable to make a
synchronous call from some locations.
In Spectrum, refer to Status for messages about the result of RFC communication related to
Integration for use with SAP Applications.
Tip: For more information about ABAP programming, see ABAP Programming on
the SAP Help Portal, help.sap.com.
For SAP RFC integrations, the following modes of communication are possible between SAP
ERP and LoftwareSpectrum. LoftwareSpectrum Integration for use with SAP
Applications provides an ABAP-compatible function for each mode. You can access these
functions in Transaction SE37 in SAP ERP or include them in a program written in ABAP.
l Asynchronous from SAP (LOFTWARE_PRINT_REQUEST): The call from SAP ERP
to Spectrum is asynchronous by nature and thus has no confirmation or status returned.
l Asynchronous to Spectrum (LOFTWARE_PRINT_REQUEST_ACK): The call
returns after the job has been accepted by Spectrum or when a high-level error occurs.
l Synchronous to Spectrum (LOFTWARE_PRINT_REQUEST_CONFIRM): The call
returns after the job as been delivered to the device or when a high-level or device-level
error occurs.
Signatures for RFC Communication
For SAP RFC integrations, the following are examples of CALL FUNCTION statements for
each communication mode.
Example: LOFTWARE_PRINT_REQUEST
call function
'LOFTWARE_PRINT_REQUEST'
destination
'SPECTRUM'
exporting
LABEL= label_name
PRINTER= device_name
JOBNAME= job_name
QUANTITY= quantity
DUPLICATES= duplicates
importing
tables
LABEL_FIELDS= fields.
exceptions
COMMUNICATION_FAILURE= 1 message msg_text
SYSTEM_FAILURE= 2 message msg_text
OTHERS= 3
Example: LOFTWARE_PRINT_REQUEST_ACK
call function
'LOFTWARE_PRINT_REQUEST_ACK
destination
'SPECTRUM'
exporting
LABEL= label_name
PRINTER= device_name
JOBNAME= job_name
QUANTITY= quantity
DUPLICATES= duplicates
importing
CONFIRMATION= confirmation_message
tables
LABEL_FIELDS= fields
exceptions
COMMUNICATION_FAILURE= 1 message msg_text
SYSTEM_FAILURE= 2 message msg_text
OTHERS= 3
Example: LOFTWARE_PRINT_REQUEST_CONFIRM
call function
'LOFTWARE_PRINT_REQUEST_CONFIRM'
destination
'SPECTRUM'
exporting
LABEL= label_name
PRINTER= device_name
JOBNAME= job_name
QUANTITY= quantity
DUPLICATES= duplicates
importing
CONFIRMATION= confirmation_message
tables
LABEL_FIELDS= fields
exceptions
COMMUNICATION_FAILURE= 1 message msg_text
SYSTEM_FAILURE= 2 message msg_text
OTHERS= 3
For SAP RFC integrations, parameter data types should be defined in SAP ERP as follows.
Category Name Type Description
Export LABEL CHAR255 Label, Label Type, or Label
Parameters Group
PRINTER CHAR255 Device name
JOBNAME CHAR255 Unique name for job, echoed in
Spectrum
QUANTITY INT
DUPLICATES INT
Import CONFIRMATION STRUCTURE Structure describing the results of
Parameters ID (INT) the print request
MSG (TEXT100)
For SAP RFC integrations, multiple Label Requests can be included in a single RFC call.
Label requests contained in a Stacked Job must be destined for a single device type.
The LABELNUM Field in the LABEL_FIELDS structure represents the individual label
request. For each new label request, this number must be incremented.
Example
The following example shows the structure of LABEL_FIELDS to print two labels. There will
be a row for each field required.
LABELNUM FIELDNAME FIELDVALUE
0 PART_NUMBER GR1287654
0 CUSTOMER_NUMBER 76234
1 PART_NUMBER AB9867221
1 CUSTOMER_NUMBER 998345
Exceptions for RFC Communication
For SAP RFC integrations, if the call from SAP ERP is synchronous, the following SAP ABAP
Exceptions may occur.
Value Short Msg Description
1 COMMUNICATION_ System-level exception indicating a connection or
FAILURE communications failure
2 SYSTEM_FAILURE System-level exception indicating any other unidentified
failure
3 OTHERS
Remote Function Call (RFC) is an interface that allows SAP application programmers to use the
Advanced Business Application Programming (ABAP) language to program or script calls to
Spectrum.
The following section and panes are available when you configure an SAPRFC integration by
using LoftwareSpectrum Integration for use with SAP Applications.
Configuration
The following options are available in the Configuration section when you use
LoftwareSpectrum Integration for use with SAP Applications to configure an SAP RFC
integration.
Note: You must configure each of the options displayed.
Option Description
Job Target Folder The folder in Spectrum to which status information about print
jobs related to this integration should be directed. For more
information, see " Configure a Job Target Folder" on page 1045.
Default Process A process to be applied to the integration. Although this field is
required, you can select the Generic Document Process in the
root folder if you have not configured a custom process that
should be applied.
Transaction Size Transaction size is used during job management for packaging
print job details into print jobs. Use the default value unless
Loftware Technical Support or Loftware Professional Services
Group directs you to change it.
SAP System Name The name of the SAP Application Server, typically 8 characters
in length.
SAP Client The three-digit identification number from SAP Transaction
SCC4.
SAP Username An SAP user name. This is the client ID with which the SAP
user specified by the SAP Username is authorized to log on.
SAP Password The password for the user name provided in the SAP Username
field.
SAPGatewayService The port available for registration.
Option Description
Connection Count The maximum number of connection threads (concurrent job
requests) that can be open from the SAP Java Connector (JCo) to
the SAP Application Server (identified by the RFC Program ID).
The default for this setting is 20. Consider the maximum number
of connections and total users allowed on the SAP instance when
setting Connection Count.
RFC Program ID The registered server program ID for the RFC destination
defined in the SM59 Transaction Code within the SAP system.
Ignore Empty Fields If selected, empty field names are ignored and do not cause a job
to fail.
Ignore Invalid If selected, invalid field names are ignored and do not cause a job
FieldNames to fail.
Load Balance Whether to support SAP Load Balancing connection mode or
Connection SAP Single Server connection mode. SAP Load Balancing
permits multiplexing of communication with all SAP Systems in
your environment.
: Use SAP Load Balancing connection mode.
: Use SAP Single Server connection mode.
Note: The mode that you specify determines
which options are displayed immediately following
the Load Balance Connection option.
Option Description
SAPIPAddress The IPv4 address of the SAP Application Server.
(GWHOST)
SAPGroup The SAP logon group. A load balancing group automatically optimizes
the selection of application server for performance.
SAPSystem ID The name of the SAP R/3 System.
(R3NAME)
SAP Message The load balancing service.
Server Port
(MSSERV)
SAP Single Server Connection Mode
These options are displayed only if the Load Balance Connection check box is cleared.
Option Description
SAPIPAddress The IPv4 address of the SAP Application Server.
(GWHOST)
SAP System Number The two-digit identification number for the SAP instance to
which to connect.
Properties Pane
The following properties can be configured or viewed in the Properties pane when you view
any type of integration with LoftwareSpectrum.
Option Description
Integration A unique name for this connectivity bridge between Spectrum and another
Name application. Required.
Characters permitted in names
The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. For letters, the
case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Description A description for this integration.
Integration The type of integration. One of the following values is displayed:
Type File Drop, Oracle, SAP RFC, SAP BC-XOM, Event JMS Consumer, Event
JMS Producer, Event Direct Processing, Event ActiveMQ Connection,
Event Oracle AQ Connection, Event File Producer, Event File Consumer,
Event Email Producer, Event Email Consumer, or Event Message
Converter
Event Integration
Event integration extends the functionality of other applications so users can perform tasks in
Spectrum using data provided by those applications. Event integration also allows users to
perform tasks in those applications using data provided by Spectrum.
Event integrations act as consumers or producers of events. These types of integrations interact
with connections to data or functionality external to Spectrum called end points. Event
consumers interact with end points to retrieve event messages, and event producers interact
with end points to publish event messages.
Spectrum supports the following types of Event integrations:
l Event JMS Consumer: Java Message Service (JMS) is an application programming
interface (API) that can be used to send messages between clients computers. In
Spectrum, you can use an Event JMS Consumer integration to listen for event messages
from an end point and process them. This type of Event integration is an end point
followed by a processor list, and it can be used in conjunction with an Event JMS
Producer integration.
l Event JMS Producer: You can use an Event JMS Producer integration to post event
messages to an end point. This type of Event integration is a processor list followed by an
end point, and it can be used in conjunction with an Event JMS Consumer integration.
l Event Direct Processing: An integration that allows the creation of processors to
perform a function that can be used by multiple consumers and producers. This type of
Event integration is a processor list.
l Event Socket Consumer: An integration that accepts a direct socket connection. The
connection is one-way and there is no response from Spectrum over the socket the
client connects, sends data, and then closes the connection.
l Event ActiveMQ Connection: Apache ActiveMQ is an open source messaging server.
In Spectrum, you can use an Event ActiveMQ Connection integration to pass event
information between another application and Spectrum. You can use these integrations as
standalone instances or as proxies for other messaging systems. This type of integration
can act as either as an event consumer or an event producer.
l Event Oracle AQ Connection: Oracle Advanced Queuing (AQ) provides message
queuing functionality that is integrated with Oracle Database. In Spectrum, you can use
Event Oracle AQ Connection integrations to pass event information between Oracle and
Spectrum. This type of integration can act as either as an event consumer or an event
producer.
l Event File Producer: An integration that writes files in a specific folder response to a
processor in another Event integration. This type of Event integration is a processor list
followed by an end point, and it can be used in conjunction with an Event File Consumer
integration.
lEvent File Consumer: An integration that pulls files into Spectrum when files are saved
in a specific folder. This type of Event integration is an end point followed by a processor
list, and it can be used in conjunction with an Event File Producer integration. It is
conceptually similar to a File Drop integration.
l Event Email Producer: You can use an Event Email Producer integration to generate
email messages.
l Event Email Consumer: You can use an Event Email Consumer integration to listen
convert messages from one type of message to another. For example, you can convert
Spectrum messages about ModelStatus (AutoRefresh) into email messages.
For more information about Event integrations, contact Loftware's Professional Services Group.
The representational state transfer (REST) API for Web Services integration provides basic
functionality. It cannot be used for more complex tasks such as submitting stacked jobs.
Note: Commands may require authentication.
l Retrieve Version (version)
This command retrieves the version number of the REST API that you are using. You
can also use it to verify that the API is running.
http://<Server IP>:8080/spectrum-server/rest/version
l Submit Job (submit)
This command allows you to submit a job to be processed by Spectrum. This command
requires job data and uses the POST method, so pasting into a URL is not supported. For
<DeviceFQN> and <LabelTemplateFQN>, you must provide the fully-qualified name
within Spectrum for a device and a label template or process.
http://<Server IP>:8080/spectrum-
server/rest/submit?device=<DeviceFQN>&document=<LabelTemplateFQN>
Example
http://example.com:8080/spectrum-
server/rest/submit?device=/MyCompany/PDF%20Printer&document=/
MyCompany/Label01
l Job Status (status)
This command allows you to retrieve the status of a specific job processed by Spectrum.
You must specify the job number for the job.
http://<Server IP>:8080/spectrum-server/rest/status/<Job Number>
Example
http://example.com:8080/spectrum-server/rest/status/10000921
The Web Services API is used to create custom font-end applications for Spectrum. The Simple
Object Access Protocol (SOAP) API for Web Services integration provides basic and advanced
functionality, including printing, document searching, device searching, and the ability to submit
stacked jobs.
SOAP
Simple Object Access Protocol (SOAP) is a standard method of transmitting data over computer
networks. SOAP uses XML to encapsulate either a request or a response in an envelope. When
SOAP is implemented, it abstracts the client architecture from the server, so any client
computer that can generate and parse the SOAP envelopes can function. SOAP can be used by a
desktop application, web browser-based application, or mobile application.
SOAP Request
Each SOAP request to Spectrum must be in the format specified by the Spectrum WSDL. Every
SOAP request must have an envelope. For requests to Spectrum, an envelope must include a
Header for authentication and a Body.
The following is the syntax for the SOAP envelope. As noted in the comments, you must insert
a valid Spectrum username and password for the user that is making the request.
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-wss-wssecurity-
secext-1.0.xsd"
xmlns:wsu="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-wss-wssecurity-
utility-1.0.xsd" soap:actor="UT"
soap:mustUnderstand="1">
<wsse:UsernameToken wsu:Id="UsernameToken-
1"><wsse:Username><!-- Spectrum Username --
></wsse:Username>
<wsse:Password Type="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-wss-username-token-
profile-1.0#PasswordText"><!-- Spectrum Password --
></wsse:Password>
</wsse:UsernameToken></wsse:Security>
</soap:Header>
<!-- Add a Body -->
</soap:Envelope>
Important! You must replace the placeholder comment for the SOAP Body with a
Request Body. See the Functions section that follows for links to samples.
SOAP Response
All responses to a request have a SOAP envelope. Responses typically do not include a Header,
but do include a Body that contains a return element.
The value of the success attribute of the return element determines the contents that follow it.
If there is a successful result (success="true"), then the response data includes a result
element containing data related to the fully-qualified name that was submitted. The result
element may be preceded by one or more additionalData element containing children.
Responses contain one or more Data Transfer Objects (DTOs) that can be used to parse the
result.
Responses also contain an element that references itself, shown below as Response Function.
For example, if a request for getVersion was sent, getVersionResponse would be sent back to
the client computer.
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<!-- Header omitted -->
<soap:Body>
<!-- Response Function -->
<return success="[true|false]">
<!-- Response Data -->
</return>
<!-- End Response Function -->
</soap:Body>
</soap:Envelope>
Tip: For the syntax of a SOAP Response to specific type of SOAP Request, see
the Functions section that follows.
You can view a list of available functions at he following URL, substituting the IP address of
your SpectrumApplicationServer for <Server IP>. The functions are listed in the
SpectrumServices section.
http://<Server IP>:8080/spectrum-server/webServices/
The following is a reference about these functions. The syntax for a SOAP Request Body and
for a SOAP Response Function are included for each.
Operational Functions
The following table describes the operational functions, such as those that relate to print jobs
and to the SOAP API.
Purpose Description Syntax
Get the SOAP version Return the version number of getVersion
the SOAP API.
Web Services Description Language (WSDL) is used to show client computers what functions
are available and how to use them. The WSDL used by Spectrum is automatically generated by
using the Java code developed for Web Services. Viewing the Spectrum WSDL can be helpful if
you need more technical detail about the functions, elements, and attributes than is provided in
this guide.
To view the WSDL for your Spectrum environment, see the following URL, substituting the IP
address of your SpectrumApplicationServer for <Server IP>:
http://<Server IP>:8080/spectrum-server/webServices/spectrumservices?wsdl
addTagValueToDocument Function for Web Services Integration
Given the fully-qualified Spectrum name of a label template, form, layout, image, reusable
object, application, business rule, or workflow template, a tag category, and a tag value, this
function adds a tag with the specified category and value to the label template, form, layout,
image, reusable object, application, business rule, or workflow template. If a tag with that
category already is already assigned to the object, the value is replaced. For more information
about tags, see "Tag Management" on page 766.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
data. For more information, see "SOAP API for Web Services Integration" on page 1139.
<ns2:addTagValueToDocumentResponse
xmlns:ns2="http://published.webservices.loftware.com/">
<return success="[true|false]"/>
</ns2:addTagValueToDocumentResponse>
Given a fully-qualified Spectrum folder name, this function returns a list of any immediate
subfolders. The request is not recursive, so folders within those subfolders are not included.
Tip: You can use this function to retrieve a summary of all of the devices in a
particular folder.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getChildFolderNames>
</soap:Body>
xsi:type="ns2:lwFolderDto">
<id>...</id>
<name>...</name>
<fullyQualifiedName>...</fullyQualifiedName>
</additionalData>
<result xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xsi:type="ns2:lwFolderDto">
<id>...</id>
<name>...</name>
<fullyQualifiedName>...</fullyQualifiedName>
</result>
</return>
</ns2:getChildFolderNamesResponse>
Syntax Tips
Additional information is available about the following items.
lwFolderDto
This complex element contains data describing a folder in a Spectrum environment. It can
include the following elements.
Element Type Description
id long The ID of the folder.
name string The name of the folder.
fullyQualifiedName string The fully-qualified name of the folder.
parentFolderFQN
The fully-qualified name of a folder in your Spectrum environment.
getDeviceDetails Function for Web Services Integration
Given the name of a device, this function returns information about that device.
Important! Content in a Web Services integration is case sensitive. This includes
names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
Important! For deviceName, do not use the fully-qualified name (FQN) for the
device. Use only the name.
<soap:Body>
<ns2:getDeviceDetails
xmlns:ns2="http://published.webservices.loftware.com/">
<deviceName><!-- Replace with the name of a device --
></deviceName>
</ns2:getDeviceDetails>
</soap:Body>
Given the name of a device group, this function returns information about that device group.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getDeviceGroupDetails>
</soap:Body>
<ns2:getDeviceGroupDetailsResponse
xmlns:ns2="http://published.webservices.loftware.com/">
<return success="[true|false]">
<result xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xsi:type="ns2:lwDeviceGroupDto">
<id>...</id>
<name>...</name>
<failBack>...</failBack>
<failOverType>...</failOverType>
</result>
</return>
</ns2:getDeviceGroupDetailsResponse>
Syntax Tips
Additional information is available about the following items.
lwDeviceGroupDto
This complex element contains data describing a device group. It can include the following
elements.
Element Type Description
id long The ID of the device group.
name string The name of the device group in Spectrum.
devices See the devices entry that follows for more
information.
This element is not included in responses to
getDeviceGroupDetails.
failBack boolean This is element is not intended for use with
current Spectrum functionality and may be
omitted.
failOverType deviceFailoverTypeEnum This is element is not intended for use with
current Spectrum functionality. If the element
is included, the value should be the following:
LOAD_BALANCED_FIRST_AVAILABLE
devices
This complex element contains data describing a device. It is used within an
lwDeviceGroupDto element and can include the following elements.
Element Type Description
id long The ID of the device.
name string The name of the device.
getDeviceGroupNames Function for Web Services Integration
Given a fully-qualified Spectrum folder name, this function returns a list of information about
every device group in that folder. The request is not recursive, so device groups within
subfolders are not included.
Tip: You can use this function to retrieve a summary of all of the device groups in
a particular folder.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getDeviceGroupNames>
</soap:Body>
<devices>
<id>...</id>
<name>...</name>
</devices>
<failBack>...</failBack>
<failOverType>...</failOverType>
</additionalData>
<result xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xsi:type="ns2:lwFolderDto">
<id>...</id>
<name>...</name>
<fullyQualifiedName>...</fullyQualifiedName>
</result>
</return>
</ns2:getDeviceGroupNamesResponse>
Syntax Tips
Additional information is available about the following items.
lwDeviceGroupDto
This complex element contains data describing a device group. It can include the following
elements.
Element Type Description
id long The ID of the device group.
name string The name of the device group in Spectrum.
devices See the devices entry that follows for more
information.
This element is not included in responses to
getDeviceGroupDetails.
failBack boolean This is element is not intended for use with
current Spectrum functionality and may be
omitted.
failOverType deviceFailoverTypeEnum This is element is not intended for use with
current Spectrum functionality. If the element
is included, the value should be the following:
LOAD_BALANCED_FIRST_AVAILABLE
devices
This complex element contains data describing a device. It is used within an
lwDeviceGroupDto element and can include the following elements.
Given a fully-qualified Spectrum folder name, this function returns a list of information about
every device in that folder. The request is not recursive, so device connections within
subfolders are not included.
Tip: You can use this function to retrieve a summary of all of the devices in a
particular folder.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getDeviceNames>
</soap:Body>
Given the fully-qualified Spectrum name of a label template, form, layout, image, reusable
object, application, business rule, or workflow template, this function returns information about
that object.
Important! Content in a Web Services integration is case sensitive. This includes
names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getDocumentDetails>
</soap:Body>
<opacityValue>...</opacityValue>
<redValue>...</redValue>
</backgroundFillColor>
<currentState>...</currentState>
<currentWorkingVersionNumber>...</currentWor
kingVersionNumber>
<docType>...</docType>
<documentDpi>...</documentDpi>
<fieldNames>...</fieldNames>
...
<fieldNames>...</fieldNames>
<fontClassifier>...</fontClassifier>
<height>...</height>
<majorVersion>...</majorVersion>
<minorVersion>...</minorVersion>
<printBackgroundFill>...</printBackgroundFil
l>
<printRotation>...</printRotation>
<shape>...</shape>
<width>...</width>
</result>
</return>
</ns2:getDocumentDetailsResponse>
Syntax Tips
Additional information is available about the following items.
lwDocumentDto
This complex element contains data describing an object such as a label template, form,
layout, image, reusable object, application, business rule, or workflow template. It can
include the following elements.
Element Type Description
id long The ID of the object.
name string The name of the object. To refer
to a specific version of a
version-controlled object,
append a colon followed by the
version number to the end of
the object name.
fullyQualifiedName string The fully-qualified name of the
object.
Given a fully-qualified Spectrum folder name, this function returns a list of information about
every label template, form, layout, image, reusable object, application, business rule, or
workflow template in that folder. The request is not recursive, so objects within subfolders are
not included.
Tip: You can use this function to retrieve a summary of all of the label templates,
forms, layouts, images, reusable objects, applications, business rules, and workflow
templates in a particular folder.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</ns2:getDocumentNames>
</soap:Body>
Given a print job ID (such as 10000160), this function returns the status of the print job.
Tip: The submitJobRequest function returns a long value representing a print
job ID, which you can reuse in the getJobStatus function.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
This function returns a list of the tags categories that exist in your Spectrum environment.
Optionally, the tag values associated with each tag category can also be returned.
Important! Content in a Web Services integration is case sensitive. This includes
names, attributes, and values.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<tagValues>
<id>1000001</id>
<name>System</name>
<categoryId>100000</c
ategoryId>
<sortOrder>1</sortOrd
er>
</tagValues>
<tagValues>
<id>1000002</id>
<name>LPS</name>
<categoryId>100000</c
ategoryId>
<sortOrder>2</sortOrd
er>
</tagValues>
<tagValues>
<id>1000003</id>
<name>Spectrum</name>
<categoryId>100000</c
ategoryId>
<sortOrder>3</sortOrd
er>
</tagValues>
<tagValues>
<id>1000004</id>
<name>Unknown</name>
<categoryId>100000</c
ategoryId>
<sortOrder>4</sortOrd
er>
</tagValues>
</categories>
</result>
</return>
</ns2:getTagCategoriesResponse>
Syntax Tips
Additional information is available about the following items.
lwTagCategories
This complex element contains data describing all tag categories in the Spectrum
environment. Depending on the SOAP Request, the tag values associated with each tag
category may also be included.
categories
This complex element contains data describing one tag category. In the SOAP Response, an
instance of this element is included for each tag category in the Spectrum environment.
Element Type Description
id long The ID of the tag category.
name string The name of the tag category.
tagValues See the tagValues entry that follows for more information.
tagValues
Each instance of this complex element describes one tag value associated with a tag category.
If loadTagValues is set to true in getTagCategories in the SOAP Request, then the
SOAP Response includes an instance of this complex element for each tag value within a
categories element. If loadTagValues is set to false, then tagValues elements are not
included in the SOAP Response.
Element Type Description
id long The ID of the tag value.
name string The name of the tag value.
categoryId long The ID of the tag category with which this tag value is associated.
sortOrder int The order in which this tag value is displayed when the tag values
associated with this tag category are displayed in the Spectrum user
interface.
getVersion Function for Web Services Integration
This function returns the version number of the SOAP API that you are using. You can use this
command to verify that the API is running. This function does not have any parameters for
which you must provide information.
Important! Content in a Web Services integration is case sensitive. This includes
names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
Given the parameters for a print job request, this function submits the print job for processing.
The response includes the print job ID number.
Important! Content in a Web Services integration is case sensitive. This includes
names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
</entryList>
<!-- Add more entryList elements
as needed to supply data to
Spectrum. -->
<!-- You can nest entryList
elements. Notice that parent
entryList elements do not
include value.
-->
<entryList>
<name>...</name>
<entryList>
<name>...
</name>
<value>..
.</value>
</entryList>
</entryList>
</jobData>
</jobRequest>
</ns2:submitJobRequest>
</soap:Body>
Example: A Simple Print Request
The following example is for a simple print request for a label template with no Prompt fields.
<soap:Body>
<ns2:submitJobRequest
xmlns:ns2="http://published.webservices.loftware.com/">
<jobRequest>
<clientCode>SoapSampleApp</clientCode>
<folderUrl>/Default/Label
Templates</folderUrl>
<jobData>
<entryList>
<name>!DESTINATION!</
name>
<value>/Default/IP_
ZPL_II</value>
</entryList>
<entryList>
<name>!DOCUMENT_
URL!</name>
<value>/Default/Label
Templates/test_
text</value>
</entryList>
<!-- In the following nested
entryList, /Body/fieldname is
configured. Notice that parent
entryList elements do not
include value. You can nest more
entryList elements as needed.
-->
<entryList>
<name>Body</name>
<entryList>
<name>fie
ldname</n
ame>
<value>Te
xt
Value</va
lue>
</entryList>
</entryList>
<!-- Add more entryList elements
as needed to supply data to
Spectrum -->
</jobData>
</jobRequest>
</ns2:submitJobRequest>
</soap:Body>
Tip: If you are creating a more complex print request, refer to the Spectrum
WSDL for additional detail about the syntax. For more information, see the
"Spectrum WSDL" section in "SOAP API for Web Services Integration" on page
1139.
<result xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xsi:type="xs:long">...
</result>
</return>
</ns2:submitJobRequestResponse>
Syntax Tips
Additional information is available about the following items.
jobRequest
This complex element can include the following elements.
Element Type Description
clientCode string
folderUrl string
jobData See the jobData entry that follows for more information.
jobData
This complex element is used within a jobRequest element and contains entryList elements
that provide the parameters for the print job. You can include as many entryList elements as
needed, and you can nest entryList elements.
Element Type Description
name string
value string If you nest entryList elements, do not include a value in the parent
entryList element.
updloadImage Function for Web Services Integration
Given the byte array representing an image, import that image into the Spectrum environment.
Note: Spectrum supports images that use an RGB color model and one of the
following file formats: PNG, GIF, JPG, BMP, or PCX.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
Replace the comment in the parentFolderFQN element with the fully-qualified name (FQN)
of the folder in your Spectrum environment where you want to save the image, and the
comment in the name element with the name to be used for the image in the Spectrum
environment. Replace the comment in the data element with a byte array representing the
image.
Important: When importing an image, it is recommended that you save it to the
Images\User Images folder. An image that will be used only as part of a
Variable Image may be saved to any folder in Spectrum. Otherwise, for an image to
be available to add to a label template, you must save it to the Images\User
Images folder, the Images\Stock Images folder, or a subfolder of one of those
folders.
Note: Spectrum does not differentiate between images with different file name
extensions, so you must give each image that you import a name that is unique
within the folder where it is saved.
<soap:Body>
<ns2:updloadImage
xmlns:ns2="http://published.webservices.loftware.com/">
<parentFolderFQN><!-- Replace with FQN of a folder --
></parentFolderFQN>
<name><!-- Replace with the name for the image in Spectrum --
></name>
<data><!-- Replace with the byte array representing the image --
></data>
</ns2:updloadImage>
</soap:Body>
Note: The following characters are permitted in the name: letters, numbers,
parentheses, square brackets, ampersands, asterisks, plus signs, equal signs,
commas, semi-colons, and tildes. Additionally, the following characters are
permitted but cannot begin or end the name: spaces, double quotes, single
quotes, hyphens, underscores, periods, and grave accents. Names are limited to
255 characters.
parentFolderFQN
The fully-qualified name of a folder in your Spectrum environment.
Categorize an Integration
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
To assign a tag to an integration in Integration Management, use this procedure.
1. In Integration Management, click File > Open or click the Open button in the
toolbar.
2. In the Open dialog box, select an integration and then click OK.
3. In the right column, click the Tags title bar to expand the pane.
4. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from a device does not delete the tag category
from Spectrum. You can add a new tag to the device and select that
same category again.
5. Click File > Save or click the Save button in the toolbar.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
Delete an Integration
You can delete an integration in Spectrum.
1. Click Integration Management.
2. Click File > Open or click the Open button in the toolbar.
3. In the Open dialog box, select an integration and click OK.
4. Click File > Delete.
The integration is removed from your Spectrum environment.
Tip: You can also delete an integration from within an Open dialog box or from
within the Integrations pane by right-clicking the integration and selecting
Delete.
Close All Close all integrations that you have open in Integration
Management.
Save Save the integration.
Save As Save a copy of the integration under a different name.
Refresh Update the displayed data.
Integrations Tree
By default, the Integrations tree is hidden. You can display it by clicking the arrow button
along the left edge of the Integration Management page. The Integrations tree displays
integrations that have been created. You can double-click an existing integration to open it. You
can right-click an integration to move or delete it.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
Spectrum comes with a default process that you can use called the Generic Document Process.
This process does not apply any business rules or otherwise alter the print request. If you want
to override properties of print requests or apply business rules, you can create new processes
and configure them to meet your needs.
A process can be selected either when configuring an integration or when printing on demand:
n When configuring an integration in Integration Management, an administrator must
select a process to be run automatically whenever that integration is used to submit a
print job created in another application.
n When printing on demand in Print, a Data Provider may select a process to run instead of
selecting a label template. When this approach is used, either the process or its business
rule must specify a label template.
Important! It is recommended that you do not alter the Generic Document
Process. This process is used when a Data Provider selects a label template in
Print and uses it to print labels. You can also associate it with integrations if you
do not want to apply a business rule.
Create a Process
If you have created a business rule or if you want to override the label template, layout, or
device to be used when processing a print request, you must create a process to run the business
rule or to specify overriding values. For each value to which that the process refers, consider the
impact of the location prefix and the ability of the business rule to override values in the
process.
Important! You should familiarize yourself with how to specify whether Spectrum
should look for a value in the job, in the process, in the system properties, or in a
row of data from a database. For more information, see "Location Prefixes" on page
1359.
Note: If the process that you create is intended to be run by a Data Provider in
Print rather than by using an integration, you must ensure that either the process
or the business rule run by the process specifies a label template to be used.
For more information, see "Create a Simple Process" on page 1192, "Create a Generator
Process" on page 1194, or "Create a Reprint Process" on page 1196.
Create an Integration
Unless the process that you created is intended to be run only by a Data Provider 1 in Print,
you must create an integration so that you can route print requests initiated by users in Oracle,
SAP, or other applications so that they are processed and printed using Spectrum.
On the Configuration tab of the integration that you create, for the Default Process select the
process that you have created. For more information, see "Integrating with Other Applications"
on page 1042.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
1Person or process that acts as a Data Provider, entering data into a form or other data entry view for a document that was
configured by a Document Designer. Also a default role in Spectrum.
Important: Access in Spectrum requires both role-based permissions1 and object access
permissions2. For a user to be able to perform an action on an object, the user
must directly or indirectly be assigned a role that grants permission to perform that
action on that type of object. Additionally, that particular object must either be in a
folder that directly or indirectly grants the user access permission to perform that
action on that type of object or else that particular object must directly or
indirectly grant permission to the user to perform that action. There are several
permissions that are only role-based or only object-based and do not require a
corresponding permission. Examples include List permission for Folders and all
permissions for ModelStatus (AutoRefresh), Tag Categories, and Devices.
For more information about configuring users and groups and about granting access to objects,
see "Getting Started with Users and Permissions" on page 569.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Before you begin creating a business rule for use with LoftwareSpectrum, you should identify
the decision points, constraints, and sources of data that impact labels and printing. If you
identify a need for business logic beyond what can easily be incorporated into data sources in a
label template, then you may need a business rule. You can use the information that you have
collected about your organization's procedures for printing labels to write business rules to
support those procedures.
You can create a simple business rule by using the Configurator 1, or you can perform
preliminary development of a business rule in Configurator and then switch to the XML Editor
if necessary. The XML Editor allows you to program the business rule in extensible markup
language (XML). However, you must complete any development for which you intend to use
Configurator before you begin editing the business rule in the XML Editor. For more
information, see "Create a Business Rule in Configurator" on page 440.
Tip: If you are writing a business rule or a portion of a business rule in XML, it is
recommended that you write it in a text editor intended for use with XML, and
then copy and paste the business rule into Spectrum. For information about
business rule components and the syntax of business rules, see "Business Rule
Reference" on page 1229.
To add a business rule to Spectrum, do the following.
1. If you want to perform preliminary development by using the Configurator, you must do
so before you begin to edit the business rule in XML. To perform preliminary
development by using the Configurator, see "Create a Business Rule in Configurator" on
page 440.
2. If you do not want to perform preliminary development by using the Configurator, click
Process Design.
a. Click File > New > Business Rule or click the New Business Rule button
in the toolbar to create a new business rule.
b. In the Properties pane, enter a Description of the business rule, including its
purpose.
3. When you are ready to program the business rule by using XML, in Process Design,
click the XML section.
4. Click Enable XML Editor, and then click OK to activate the XML Editor.
Important! After you enable the XML Editor, you can edit the business
rule in XML. However, you can no longer edit it by using the Configurator.
This change cannot be undone.
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
5. If you performed preliminary development by using the Configurator, but also used a text
editor to program XML to add to the business rule, do the following.
a. In the text editor in which you created XML to add to the business rule, copy the
XML.
b. In the XML Editor in Spectrum, position the insertion point where you want to
add the XMLthat you copied from the text editor.
c. Right click, and select Paste.
6. If you did not use the Configurator, but did use a text editor to program XML to add to
the business rule, do the following.
a. In the text editor in which you created XML for the business rule, copy the XML.
b. In the XML Editor in Spectrum, select the text of the placeholder business rule
that you are going to replace.
c. Right click, and select Paste.
7. If you did not use either the Configurator or a text editor, in the XML Editor inSpectrum
program the business rule by using XML. For information about business rule
components and the syntax of business rules, see "Business Rule Reference" on page
1229.
8. To neaten the indentation and spacing of the business rule, click Format XML.
9. To check whether the XML is properly formatted, click Validate Business Rule.
10. Click File > Save or click the Save button in the toolbar.
11. If the business rule has not previously been saved, in the left pane of the Save Business
Rule dialog box, click the folder in which you want to save the business rule. You can
double-click a folder to display subfolders.
a. Enter a name for the business rule in the Business Rule Name box.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses,
square brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-
colons, and tildes. Additionally, the following characters are permitted but cannot
begin or end the name: spaces, double quotes, single quotes, hyphens,
underscores, periods, and grave accents. For letters, the case that you specify is
displayed, but case is ignored when Spectrum interprets a name.
b. Click OK to save the business rule. If you have omitted any items for which
default values exist, they are automatically added to the business rule when you
save it.
Tip: Because default values may be added to a business rule when
you save it in Spectrum, after saving the business rule it is
recommended that you copy and paste it back into the text editor
that you used to create it so that you have the most recent version
available in the editor if you need to make changes.
Note: The first time you save a business rule to a version-controlled folder, the
business rule is automatically checked out. When you are finished editing it, be
sure to click File > Check In to save and check in your version, and make it
available for others to check out.
Next Steps
Create a process to run the business rule and receive data from it. For more information, see
"Create a Simple Process" on page 1192, "Create a Generator Process" on page 1194, or "Create
a Reprint Process" on page 1196.
In LoftwareSpectrum, you can configure a simple process to override job properties and
change the handling of a job by incorporating a business rule. You can use a simple process and a
business rule to handle incoming jobs differently depending on conditions, enforce required
settings, perform data retrieval from a database, substitute different printing and formatting
attributes, change paths, or repeat execution by using loops.
Note: If you want business logic to be implemented when the process is run, you
should first create a business rule that the process can run. For more information,
see "Create a Business Rule in XML" on page 1189.
To create a simple process that has the potential to run a business rule and to alter print
requests, do the following.
1. Click Process Design.
2. Click File > New > Process or click the New Process button in the toolbar to
create a new process.
3. In the Properties pane, enter a Description for the process.
4. For Process Type, select Simple.
5. Specify the path to the business rule, the path to the label template, and the path to the
device to be used with this process. For any of these properties for which you do not
want to override the value specified in the job, accept the default value.
Important: If you override the path to the label template in the Document
field, it is typically recommended that you enter the same path in the Data
Entry field. Also, in the Layout field you should either enter #{!LAYOUT_URL}
to use the layout associated with the label template specified in the
Document field or else explicitly specify the path to a layout.
6. Click File > Save or click the Save button in the toolbar.
Tip: For information about the default values in processes, see "Simple Process
Properties" on page 1378.
Note: Any overrides that you specify in the process may in turn be overridden by
the business rule.
Next Steps
A process can be run automatically whenever a particular integration is used to submit a print job
created in another application, or a process can be manually selected by a Data Provider when
printing on-demand in Spectrum. To configure an integration to run this process, see
"Integrating with Other Applications" on page 1042.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
In LoftwareSpectrum, you can configure a generator process to enable one print request to
generate additional print requests that use the same label template, another label template, or
multiple label templates. This can be useful for situations in which a set of related printed labels
is required for each job.
Note: If you want business logic to be implemented when the process is run, you
should first create a business rule that the process can run. For more information,
see "Create a Business Rule in XML" on page 1189.
To create a generator process that has the potential to run a business rule and to alter print
requests, do the following.
1. Click Process Design.
2. Click File > New > Process or click the New Process button in the toolbar to
create a new process.
3. In the Properties pane, enter a Description for the process.
4. For Process Type, select Generator.
5. For Job Source, you must specify the path to a business rule that includes a dataPipe
business rule component.
6. Click File > Save or click the Save button in the toolbar.
7. In the Save Process As dialog box, enter a Process Name.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Note: If users who print labels are expected to select the process, use a
name that will have meaning for them. The description is not displayed to a
Data Provider 1 in Print, only to administrators who have access to
Process Design or Access Control.
8.
In the left pane of the Save Process dialog box, click the folder in which you want to
save the process. You can double-click a folder to display subfolders.
9. Click OK to save the process.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Note: The first time you save a process to a version-controlled folder, the process
is automatically checked out. When you are finished editing it, be sure to click File
> Check In to save and check in your version, and make it available for others to
check out.
Tip: For information about the default values in processes, see "Generator Process
Properties" on page 1383.
Note: Any overrides that you specify in the process may in turn be overridden by
the business rule or job source.
Next Steps
A process can be run automatically whenever a particular integration is used to submit a print job
created in another application, or a process can be manually selected by a Data Provider when
printing on-demand in Spectrum. To configure an integration to run this process, see
"Integrating with Other Applications" on page 1042.
In LoftwareSpectrum, you can configure a reprint process to enable one print request to print
the same label template multiple times. A Reprint process will print an image of the label that
was just printed successfully and store it in a configurable file system location.
Note: If you want business logic to be implemented when the process is run, you
should first create a business rule that the process can run. For more information,
see "Create a Business Rule in XML" on page 1189.
To create a reprint process that has the potential to run a business rule and to alter print
requests, do the following.
1. Click Process Design.
2. Click File > New > Process or click the New Process button in the toolbar to
create a new process.
3. In the Properties pane, enter a Description for the process.
4. For Process Type, select Reprint.
5. Specify the path to the business rule and the path to the device to be used with this
process. For any of these properties for which you do not want to override the value
specified in the job, accept the default value.
6. Click File > Save or click the Save button in the toolbar.
7. In the Save Process As dialog box, enter a Process Name.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
Note: If users who print labels are expected to select the process, use a
name that will have meaning for them. The description is not displayed to a
Data Provider 1 in Print, only to administrators who have access to
Process Design or Access Control.
8. In the left pane of the Save Process dialog box, click the folder in which you want to
save the process. You can double-click a folder to display subfolders.
9. Click OK to save the process.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Note: The first time you save a process to a version-controlled folder, the process
is automatically checked out. When you are finished editing it, be sure to click File
> Check In to save and check in your version, and make it available for others to
check out.
Tip: For information about the default values in processes, see " Reprint Process
Properties" on page 1387.
Note: Any overrides that you specify in the process may in turn be overridden by
the business rule or job source.
Next Steps
A process can be run automatically whenever a particular integration is used to submit a print job
created in another application, or a process can be manually selected by a Data Provider when
printing on-demand in Spectrum. To configure an integration to run this process, see
"Integrating with Other Applications" on page 1042.
2. Click File > New > Workflow Template or click the New Workflow Template
button in the toolbar to create a new workflow template.
3. In the Properties pane, enter a Description for the workflow template, including its
purpose.
4. In the text editor in which you created the workflow template, copy the workflow
template.
5. In Spectrum, select the text of the placeholder workflow template that you are going to
replace, right click, and select Paste.
6. To neaten the indentation and spacing of the workflow template, click Format XML.
7. To check whether the XML is properly formatted, click Validate Workflow XML.
8. Click File > Save or click the Save button in the toolbar.
9. In the Save Workflow Template As dialog box, enter a Workflow Template Name.
Characters permitted in names
The following characters are permitted in the name: letters, numbers, parentheses, square
brackets, ampersands, asterisks, plus signs, equal signs, commas, semi-colons, and tildes.
Additionally, the following characters are permitted but cannot begin or end the name:
spaces, double quotes, single quotes, hyphens, underscores, periods, and grave accents.
For letters, the case that you specify is displayed, but case is ignored when Spectrum
interprets a name.
10. In the left pane of the Save Workflow Template dialog box, click the folder in which
you want to save the workflow template. You can double-click a folder to display
subfolders.
11. Click OK to save the workflow template. If you have omitted any items for which
default values exist, they are automatically added to the workflow template when you
save it.
Note: The first time you save a workflow to a version-controlled folder, the
workflow is automatically checked out. When you are finished editing it, be sure to
click File > Check In to save and check in your version, and make it available for
others to check out.
Tip: Because default values may be added to a workflow template when you save it
in Spectrum, after saving the workflow template it is recommended that you copy
and paste it back into the text editor that you used to create it so that you have the
most recent version available in the editor if you need to make changes.
Next Steps
Create event integrations for the steps and progressions. For more information, see "Event
Integration" on page 1134.
1. In Process Design, click File > Open or click the Open button in the toolbar.
2. In the Open dialog box, select a process, business rule, or workflow template and then
click OK.
3. In the right column, click the Tags title bar to expand the pane.
4. Perform one or more of the following actions:
n To add a tag to the object, click . In the Add Tags dialog box, select a
category and a value for the tag, and then click OK.
Note: The list of values available is dependent on the category
selected.
n To change the value of a tag that has been assigned to the object, click the row for
that tag, and then click . Select a value for the tag, and then click OK.
n To remove a tag from the object, click the row for that tag, and then click .
When prompted, click Yes to delete the tag.
Tip: Deleting a tag from a device does not delete the tag category
from Spectrum. You can add a new tag to the device and select that
same category again.
5. Click File > Save or click the Save button in the toolbar.
Built-in Tag Category: Source
A built-in tag category named Source is included with Spectrum. It is designed for use in a tag
that characterizes the origin of an object. If an object supports tags, then a tag with a category of
Source and a value of Spectrum is automatically assigned to it the first time that the object is
saved.
Value Purpose
System The object was built in to Spectrum.
LPS The object was created in Loftware Print Server (LPS) and was migrated to
Spectrum.
Spectrum The object was created in Spectrum.
Unknown The origin of the object is unknown.
l Use a Data Source: You can configure a data source, such as a Data Entry data
source 1, Database data source 2, Alternate data source 3, or Filedata service 4 to
point to a file outside of Spectrum. For more information, see "Configuring Label Data
Sources" on page 305.
l Use an Integration: You can reference an external file as a job from an integration
inSpectrum such as Oracle, SAP BC-XOM, File Drop, and Web Services.
Note: It is recommended that you do not use SAP RFC integrations to
print external files, as the file size is bound to the current field value limit of
1000 characters.
3. Send the Print Job
After the file to print has been specified, you can use the following approaches to send the print
job to the device configured to support pass through files.
Use a Process and On-Demand Print: You can create a process and an application
l
with a Job Request Form Rule which uses the process to allow users to submit a print
request.
l Use a Process and a Business Rule: You can create a process which references a
The process must also have the following data map entries on the Data Map tab:
Name Value
!INLINE_DOCUMENT!
A location in the datamap.
Example
${/myExternalPDF/data}
1A type of data source that allows a Data Provider to enter a value by using a prompt or a button.
2A connection to a database that acts as a data source and can serve as the data ref for a document field. A Database data source
is associated with a Database data service.
3A connection to a file external to Spectrum that acts as a data source and can serve as the data ref for a document field. An
Alternate data source is associated with either a File data service or an HTTP data service.
4The view that is displayed to a user on the Print page that allows the user to enter information for a label. A Document Designer
can configure this view in the Form view on the Design page.
Name Value
!INLINE_TYPE! A type of file.
Example
INLINE_PDF
Note: In Status, all pass through files use the Document name !INLINE_
DOCUMENT!, therefore it is recommended that you set a meaningful job name
which can be used to identify the file when searching print jobs. The job name can
be specified in an integration, data source, or business rule.
Examples
For more information, see "Create a Trigger to Run a Rule" on page 297.
8. Add another trigger on the form in the application with the following values:
n Trigger Source: PrintButton
n Trigger Event: onClick
n Trigger Type: Form Rule
n Form Rules: Your new Job Request form rule
9. Save the application.
10. Select the new application in Print, click the Select button to select a pass through file,
and then click thePrint button to send the pass through file to the device.
Using a Data Service, Business Rule, and Process
The following example uses an existing device connection, selects a file using a file data service,
and sends the print job using a process and a business rule.
1. In Device Management, open an existing device, click the Advanced tab, and then
select the PDF check box under Pass Through File Types. Save the device.
2. In Data Services, create and save a FileData Service with the following values:
n URL: The file path to a valid pass through PDF file
n Result Name: !INLINE_DOCUMENT!
n Data Type: Image
3. In Process Design, create and save a business rule that retrieves data from the new
FileData Service and merges it into the datamap. For more information, see "Retrieve
Data from a Database (XML)" on page 1224.
4. In Process Design, createand save a new simple process with the following values:
n Business Rule: Your new business rule
n Document: !INLINE_DOCUMENT!
n Device: Your pass through device
n On the DataMap tab, add the key name !INLINE_DOCUMENT! with the value
${/myImportedFile}.
n On the DataMap tab, add the key name !INLINE_TYPE! with the value INLINE_PDF.
5. Select the new process in Print and then click thePrint button to send the pass through
file to the device.
When printing pass through files, you can configure the page range, orientation, sizing and
handling, color mode, and whether the file prints as an imaged file. For more information, see
"Reserved Keys" on page 1487.
Tip: For a tag assigned to an object, you can use a script in a data source or in a
business rule to retrieve the tag value. Tag-related functions are also available by
using Web Services calls.
You can use a business rule to determine which label template to use when processing a print
request. The business rule can create a request for a particular label template based on data in the
print request. For example, you can convert a request for a generic shipping label to a customer-
specific shipping label based on the customer ID.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Tip: If you always want to use the same label template when a particular simple
process is run, you can specify the path to that label template in the Document
field for the process. You do not need to use a business rule unless you also want
to implement business logic.
The following business rule changes a shipping label template based on the customer ID
specified for the job. The SHIPPING_XREF table in the database includes columns named
CUSTOMER_ID and SHIPPING_LABEL. This business rule can be run by a simple process.
Note: This business rule requires the existence of a JDBC data service that
establishes a connection to a database. In the data service, Is Parameter is
selected for the SQL Query. For more information, see " Managing Data Services"
on page 979.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
<!-- Query the database using the customer ID to find the appropriate
label template. -->
<parameters>
<parameter parameterKey="query" resolveValue="true">
<parameterValue>SELECT SHIPPING_LABEL FROM LW_QA.SHIPPING_XREF
WHERE CUSTOMER_ID=${/Body/company}</parameterValue>
</parameter>
</parameters>
<children>
<mapOperations name="UPDATEMAP" namespace="Body">
</operation>
</operations>
</mapOperations>
</children>
<!-- Create a custom event to occur once for each row returned by the
database query. Mapping tables should only return one row of data for the
query. If more are returned, only the last row returned is used. -->
<perRowEvents>
<rowEvent eventName="SET_FORMAT" includeSiblings="false"/>
</perRowEvents>
</dataService>
</businessRule>
</businessRules>
You can use a business rule to perform print attribute substitution, changing values for print
attributes such as the device name, job name, Quantity, and Duplicates based on business logic
or on an existing request-level attribute. A request-level attribute is a default attribute for a label
template in the print request. If the label template does not define an attribute and there is no
lookup, then the request attribute is used.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Tip: If you always want to use the same value for a print attribute when a particular
simple process is run, you can specify the value for that print attribute in the field
for it in the process. You do not need to use a business rule unless you also want
to implement business logic.
The following business rule changes the label quantity (number of times to print a label using
the same data) to 2 for a specific shipping label template. This business rule can be run by a
simple process.
Note: This business rule requires the existence of a JDBC data service that
establishes a connection to a database. In the data service, Is Parameter is
selected for the SQL Query. For more information, see " Managing Data Services"
on page 979.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
<!- Check whether the request is for a specific shipping label. -->
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="false">
<trueLogMessage>*** DETECTED SHIPPING LABEL
***</trueLogMessage>
<left type="KEY" valueType="STRING">
<value>${!DOCUMENT_URL!}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>/Default/Label Templates/Shipping</value>
</right>
</equalsIgnoreCase>
</executionCondition>
</mapOperations>
</businessRule>
</businessRules>
Normally, if the Delink Data Source property of a process is true, then data sources in the
label template are disregarded except for Database and Alternate data sources. Conversely, if it is
false, then Spectrum uses all data sources in the label template. However, if it is false, when the
business rule specified by the process is run, any business rule components that would be
triggered by the LABELevent are not run.
In some situations, you may want to run business rule components that are triggered by the
LABEL event, but also have access to all data sources in the label template. To accomplish this,
set Delink Data Source to true and use a Reference business rule component to load the label
data sources into the datamap.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
In the process, if Delink Data Source is set to true, then the following business rule loads all
data sources specified in the label template into the datamap.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
</businessRule>
</businessRules>
Tip: If you want to access the data sources in the label template but disregard one
of them, you can override the data from a specific label data source by changing the
data for that key in the datamap. You can use a Map Operations business rule
component to accomplish this without changing the data source in the label
template.
In Device Management, you can create a device connection that allows you to print to a PDF
file or print to a PNG file and send the file to an email address. When configuring the options on
the Connection tab for such a device connection, you can enter email settings that include
static values and static patterns. However, for greater flexibility, you can enter the name of a
data map entry 1 for each of these options instead. You can use a business rule to assign values
to those data map entries by using a mapOperations business rule component, and you can
change the values as needed.
Tip: For information about configuring these types of device connections, see "
Create a Print-to-PDF Device Connection" on page 799 or " Create a Print-to-
Image Device Connection" on page 801.
When used in conjunction with an appropriate device connection, the following business rule
sends PDF files to different email addresses for approval depending on the region for which the
label template was designed. In this example, the organization stores label templates for each
region in a separate folder in their Spectrum environment. The organization has a print-to-PDF
device connection with an Email connection type so that PDF files can be sent via email. For
the To option on the Connection tab, the name of a data map entry has been entered rather
than a static value or a pattern. The business rule specifies a value for that data map entry.
Note: This business rule requires the existence of a print-to-PDF device
connection for which the To option on the Connection tab has a value of
${/Email/Reviewer}. The choice of name has no special significance, but the
name entered on the Connection tab and the name used in the business rule must
match.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Tip: If you always want to use the same value for a data map entry when a
particular simple process is run, you can specify the value for that data map entry in
the process. You do not need to use a business rule unless you also want to
implement business logic.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
<!-- If the PDF is for the Americas region, send the PDF to the Reviewer
for that region. -->
<mapOperations name="SEND_TO_AMERICAS_REVIEWER" namespace="Body">
1A name (key) and value pair in the data map for a job.
<!- Check whether the label template is in the Americas folder. -->
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="false">
<trueLogMessage>*** DETECTED AMERICAS LABEL
***</trueLogMessage>
<left type="KEY" valueType="STRING">
<value>${!DOCUMENT_URL!}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>/Default/Label Templates/Americas</value>
</right>
</equalsIgnoreCase>
</executionCondition>
<!-- Specify the email address for the Americas Reviewer. -->
<operations>
<operation action="OVERRIDE" dataType="STRING" literalValue="true"
operation="PUT">
<!-- Name (key) for To email address in the Connection tab for
the device. -->
<targetKey>${/Email/Reviewer}</targetKey>
<value>AmericasReviewer@example.com</value>
</operation>
</operations>
</mapOperations>
<!-- If the PDF is for the Europe region, send the PDF to the Reviewer
for that region. -->
<mapOperations name="SEND_TO_EUROPE_REVIEWER" namespace="Body">
<!- Check whether the label template is in the Europe folder. -->
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="false">
<trueLogMessage>*** DETECTED EUROPE LABEL ***</trueLogMessage>
<left type="KEY" valueType="STRING">
<value>${!DOCUMENT_URL!}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>/Default/Label Templates/Europe</value>
</right>
</equalsIgnoreCase>
</executionCondition>
<!-- Specify the email address for the Europe Reviewer. -->
<operations>
<operation action="OVERRIDE" dataType="STRING" literalValue="true"
operation="PUT">
<!-- Name (key) for To email address in the Connection tab for
the device. -->
<targetKey>${/Email/Reviewer}</targetKey>
<value>EuropeReviewer@example.com</value>
</operation>
</operations>
</mapOperations>
<!-- If the PDF is for the Asia Pacific region, send the PDF to the
Reviewer for that region. -->
<mapOperations name="SEND_TO_ASIA_PACIFIC_REVIEWER" namespace="Body">
<!- Check whether the label template is in the Asia Pacific folder.
-->
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="false">
<trueLogMessage>*** DETECTED ASIA PACIFIC LABEL
***</trueLogMessage>
<left type="KEY" valueType="STRING">
<value>${!DOCUMENT_URL!}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>/Default/Label Templates/Asia Pacific</value>
</right>
</equalsIgnoreCase>
</executionCondition>
<!-- Specify the email address for the Asia Pacific Reviewer. -->
<operations>
<operation action="OVERRIDE" dataType="STRING" literalValue="true"
operation="PUT">
<!-- Name (key) for To email address in the Connection tab for
the device. -->
<targetKey>${/Email/Reviewer}</targetKey>
<value>AsiaPacificReviewer@example.com</value>
</operation>
</operations>
</mapOperations>
</businessRule>
</businessRules>
You can use a business rule to query a device for its status and for information about the device.
You can use this data to respond differently to jobs when an error has occurred on the device or
when the device is configured in a particular way.
For a reference of reserved keys related to detailed device status, see "Reserved Keys" on page
1487.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
<!-- Use data about the device to fail the print job if the resolution
is not 300. -->
<mapOperations name="BCCTEST2" namespace="detailedInfo">
<triggers>
<trigger eventTrigger="ENQUEUE" priority="1"/>
</triggers>
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="true">
<trueLogMessage>RESOLUTION 300</trueLogMessage>
<falseLogMessage>RESOLUTION NOT 300</falseLogMessage>
<left type="KEY" valueType="STRING">
<value>${/detailedInfo/DDI_RESOLUTION}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>300</value>
</right>
</equalsIgnoreCase>
</executionCondition>
<operations>
</operations>
</mapOperations>
</businessRule>
</businessRules>
<!-- Use data about the device to fail the print job if the device is
paused. -->
<mapOperations name="BCCTEST2" namespace="detailedStatus">
<triggers>
<trigger eventTrigger="ENQUEUE" priority="1"/>
</triggers>
<executionCondition>
<equalsIgnoreCase failOnFalseCondition="true">
<trueLogMessage>NOTPAUSED</trueLogMessage>
<falseLogMessage>PAUSED</falseLogMessage>
<left type="KEY" valueType="STRING">
<value>${/detailedStatus/DDS_PAUSED}</value>
</left>
<right type="LITERAL" valueType="STRING">
<value>FALSE</value>
</right>
</equalsIgnoreCase>
</executionCondition>
<operations>
</operations>
</mapOperations>
</businessRule>
</businessRules>
You can use a business rule to perform data lookup, retrieving and incorporating information
that was not available in the original print request. For example, you could compute a product
number based on a serial number or retrieve an origin and other values based on a lot number.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following examples use a lot number supplied with the print request to query a database
table. Data returned from the query is used to populate the MAP fields /Body/origin and
/Body/location, which are used by the shipping001 label template. The MTL_LOT_
NUMBERS table in the database includes columns named PLACE_OF_ORIGIN, LOCATION,
and LOT_NUMBER. This business rule can be run by a simple process.
Note: This business rule requires the existence of a JDBC data service that
establishes a connection to a database. In the data service, Is Parameter is
selected for the SQL Query. For more information, see " Managing Data Services"
on page 979.
In this example, after this business rule is run, the data retrieved from the database is not
available in the datamap.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
<!-- Query the database by using the lot number to find other fields.
-->
<parameters>
<parameter parameterKey="query" resolveValue="true">
<parameterValue>SELECT * FROM LW_QA.MTL_LOT_NUMBERS WHERE LOT_
NUMBER=${/Body/lot_number}</parameterValue>
</parameter>
</parameters>
<children>
<mapOperations name="UPDATEMAP" namespace="Body">
</mapOperations>
</children>
<!-- Create a custom event to occur once for each row returned by the
database query. Mapping tables should only return one row of data for the
query. If more are returned, only the last row returned is used. -->
<perRowEvents>
<rowEvent eventName="SET_MAP" includeSiblings="false"/>
</perRowEvents>
</dataService>
</businessRule>
</businessRules>
In this example, after this business rule is run, the data retrieved from the database is available in
the datamap in /Body/dbData/{COLUMN_NAME}, which you can use as a data ref when
designing label templates.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false">
<businessRule>
<!-- Query the database by using the lot number to find other fields.
-->
<parameters>
<parameter parameterKey="query" resolveValue="true">
<parameterValue>SELECT * FROM LW_QA.MTL_LOT_NUMBERS WHERE LOT_
NUMBER=${/Body/lot_number}</parameterValue>
</parameter>
</parameters>
</dataService>
</businessRule>
</businessRules>
You can use a business rule to cause one print request to generate additional print requests that
use the same label template or other label templates. This can be useful for situations in which a
set of related printed labels is required for each job, such as a bill of lading for a shipment and a
label for each item in the shipment.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Important! The following example is a special type of business rule called a Job
Source. To use this business rule, you must create a generator process and enter
the path to this special business rule in the Job Source field.
The following business rule generates four labels from a single print request.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="false" id="0">
<businessRule>
<triggers>
<trigger eventTrigger="ENQUEUE" priority="1"/>
</triggers>
<children>
<dataPipe name="LABEL_GENERATOR_PIPE" namespace="Body"
targetProcessor="LABEL_GENERATOR">
<triggers>
<trigger eventTrigger="GENERATE_LABEL" priority="5"/>
</triggers>
</dataPipe>
</children>
</forLoop>
</businessRule>
<dataProcessors>
<processGenerator name="LABEL_GENERATOR">
<process ignoreErrors="false">
<processUrl>/Default/Generic Document Process</processUrl>
<data>
<entry name="Body">
<value>${/Body}</value>
</entry>
<entry name="!DOCUMENT_URL!">
<value>/Default/Label1</value>
</entry>
<entry name="!DESTINATION!">
<value>/Default/PDF Printer</value>
</entry>
</data>
</process>
</processGenerator>
</dataProcessors>
</businessRules>
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Business Rules
A business rule is a collection of component sets or business rule components that can be used
to incorporate logic or to add, change, or remove data or print parameters after a print request is
submitted but before printing occurs. Business rules are similar to form rules, but provide more
robust functionality. Business rules can be designed using the Configurator or programmed using
XML.
Best Practice
Use priority values to control the execution order of business rule components.
Additionally, within a business rule it is recommended that you list peer business
rule components in execution order so that the business rule will be easier for
others to understand.
A business rule must use the following structure and adhere to XML syntax.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules configuratorSupport="true|false">
<businessRule>
<!-- Specify a set of business rule components. -->
</businessRule>
</businessRules>
Syntax Tips
You can use a business rule component to add or change data in the datamap, to incorporate
conditional or loop logic, or to implement branching. Additionally, you can use JavaScript within
some types of business rule components to change data in the datamap. The following tables
summarize the purpose of each type of business rule component that you can use in a business
rule in LoftwareSpectrum.
Note: You can nest business rule components to perform complex operations.
Best Practice
Use priority values to control the execution order of business rule components.
Additionally, within a business rule it is recommended that you list peer business
rule components in execution order so that the business rule will be easier for
others to understand.
Branching
Component Type Purpose Syntax
Data Pipe For use in business rules for generator dataPipe
processes. From one print request, generate
additional print requests. Each print request
may use a different label template.
Reference Load content from another business rule into reference
the current business rule. You can also load
data sources from a label template into the
datamap.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Conditional business rule component allows you to determine whether to perform an action
based on the result of a comparison of values or the result of a logical operation.
The following is the syntax for a Conditional business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<conditional name="This_component" namespace="Parent_of_component"
configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
</preProcessingEvents>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<trueConditionEvents>
<!-- Definition of an event that occurs if the
condition is true. -->
<trueEvent eventName="Event_if_true"
includeSiblings="false|true"/>
</trueConditionEvents>
<falseConditionEvents>
<!-- Definition of an event that occurs if the
condition is false. -->
<falseEvent eventName="Event_if_false"
includeSiblings="false|true"/>
</falseConditionEvents>
</conditional>
Syntax Tips
Additional information is available about the following items.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A DataMap Script is a business rule component that allows you to make changes to the
datamap by using JavaScript. A DataMap Script can alter values in the datamap or add a value
to the datamap, but unlike a DataMap Entry Script (mapScript) it does not return a value.
The following is the syntax for a DataMap Script.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<dataMapScript name="This_component" namespace="Parent_of_component"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
<!-- You can specify a condition that must be true for this
business rule component to run. For more information, see
"Conditions" on page 1353. -->
<executionCondition>
<!-- Logical expression resulting in a condition of
true or false. You can perform a logical operation,
a comparison, or a data map entry state operation.
You can nest operations to create a more complex
expression. For more information, see "Logical
Operations and Comparisons" on page 1355. -->
</executionCondition>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
configuratorType
For a business rule component that was generated by using the Configurator 1, this attribute
is a numeric identifier that usually indicates what type of component block2 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
2In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Data Service business rule component allows you to retrieve rows of data from a database,
spreadsheet, file, or URL that is external to Spectrum. A Data Service can initiate row events to
be processed by other business rule components. A Data Service business rule component is
similar to a Database data source, a File data source, or an HTTP data source.
Before You Begin: In Data Services, an administrator must create the data
service with which you intend to associate the Data Service business rule
component. You can use any type of data service. For more information, see "
Managing Data Services" on page 979.
The following is the syntax for a Data Service business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<dataService name="This_component" namespace="Parent_of_component"
failOnNoRows="true|false"
mergeRowToJobData="true|false"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<perRowEvents>
<!-- You can create a custom event to occur once for
each row of data returned by the database query
specified in the data service. -->
<rowEvent eventName="Event_if_iterating_through_a row"
includeSiblings="false|true"/>
</perRowEvents>
</dataService>
Syntax Tips
Additional information is available about the following items.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
is a numeric identifier that usually indicates what type of component block1 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
For information about different types of component blocks, see "Component Blocks" on
page 463.
failOnNoRows
This optional attribute of a dataService business rule component allows you to control
whether a print job detail should fail if the database query returns no data. The default value
is false.
Value Description
false If the query returns no data, this does not cause a process error.
true If the query returns no data, the print job detail fails and a process error is
indicated in Status.
mergeRowToJobData
Required for a dataService, forLoop, or whileLoop business rule component. Optional for a
securityInfo business rule component. This attribute specifies whether a row of data
retrieved from a database should be copied into the job data of the datamap, or whether it
should exist in the datamap only as current row data. The default value is false.
Tip: For a securityInfo business rule component, it is typically recommended
that you set mergeRowToJobData to true so that the profile, user name, and
domain are saved to the datamap.
Value Description
false The data retrieved from the database exists in the datamap only as current row
data that child business rule components can access, but peer business rule
components cannot.
Value Description
true The data retrieved from the database exists in the datamap as current row data
that child business rule components can access, but peer business rule
components cannot.
The row data is also copied to the job data portion of the datamap for this
business rule component. Peer and child business rule components can access
this job data in the datamap.
When the row data is merged into the job data, the mergePolicy used is
MERGE_NONE and the action used is OVERRIDE. These are not
configurable.
Example
A dataService business rule component named DBQUERY exists
in the Body namespace and retrieves a value for PRINTERNAME
from a database. If mergeRowToJobData is true, then peers of
the dataService business rule component can access the value of
PRINTERNAME in the datamap by using
${/Body/DBQUERY/PRINTERNAME}.
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
Value Description
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Date/Time business rule component returns the date and time on the
SpectrumApplicationServer when this business rule component is run. This value is added to
the datamap and can be referenced by using the fully-qualified name of the Date/Time business
rule component. The capabilities of a Date/Time business rule component are comparable to
those of a Date/Time data source.
The following is the syntax for a Date/Time business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
For a business rule component that was generated by using the Configurator 1, this attribute
is a numeric identifier that usually indicates what type of component block2 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
2In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
daysToAdd
To return a time different from the time of processing, specify a positive or negative amount
of time in days, relative to the time of processing. A positive number returns a time later than
the time of processing. The default value is 0, which causes the time of processing to be
returned.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Detailed Device Information business rule component allows you to query a device for
detailed device information. This is typically information about a device that is not likely to
change between print jobs, such as information about the hardware model, firmware version, and
amount of installed memory in the device.
Other information can be retrieved by using a Detailed Device Status business rule component.
For information, see "detailedDeviceStatus Business Rule Component" on page 1262.
For a reference of reserved keys related to detailed device status and information, see "Reserved
Keys" on page 1487.
For examples of how to use these keys in a business rule, see "Retrieve Detailed Device Status
(XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
The following is the syntax for a Detailed Device Information business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<detailedDeviceInfo name="This_component" namespace="Parent_of_component"
deviceName="Device_to_query"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Detailed Device Status business rule component allows you to query a device for detailed
device status information. This is typically information about whether the device is offline and
whether error conditions exist that would prevent printing.
Other information can be retrieved by using a Detailed Device Information business rule
component. For information, see "detailedDeviceInfo Business Rule Component" on page
1257.
For a reference of reserved keys related to detailed device status and information, see "Reserved
Keys" on page 1487.
For examples of how to use these keys in a business rule, see "Retrieve Detailed Device Status
(XML)" on page 1221.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<detailedDeviceStatus name="This_component" namespace="Parent_of_component"
deviceName="Device_to_query"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
<defaultData>
<!-- Default data entries are stored as data map
entries that include a name (key) and a value. When
defining an entry, name and value are required. -->
<entry name="Name_of_data_map_entry"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
An Export Data business rule component allows you to convert data in a structure of data map
entries in Spectrum to an equivalent string of text or binary data . This data can be used in other
applications that accept data in CSV or XML format.
Tip: You can use an Import Data business rule component to convert a string of
data from CSV or XML format to a namespace containing a structure of data map
entries.
The following is the syntax for an Export Data business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<exportData name="This_component" namespace="Parent_of_component"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<!-- Required. The fully-qualified data map entry for which the
value is the converted data. -->
<targetDataRef>data_map_entry</targetDataRef>
</exportData>
Syntax Tips
Additional information is available about the following items.
action
For a business rule component that can return a value, this property determines whether that
value remains in the datamap when the business rule component finishes running and returns
control to its parent business rule component. The default value is OVERRIDE.
Note: The impact of a business rule component returning control to its parent
is also affected by mergePolicy.
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
block.
l Block fragment: The business rule component was generated by the Configurator as
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A For Loop is a business rule component that allows you to repeat an action a given number of
times. One potential use of For Loop is to iterate through rows of a database or a table.
Note: When incrementing an alphanumeric series, by default the series begins with
zero, progresses through the numerical digits, and then progresses through letters.
The following is the syntax for a For Loop.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<forLoop name="This_component" namespace="Parent_of_component"
direction="INCREMENT|DECREMENT"
mode="NUMERIC|UPPERCASE_ALPHA|UPPERCASE_ALPHANUM|HEXADECIMAL|CUSTOM"
step="Integer_by_which_to_increment/decrement"
maxLength="integer"
minLength="integer"
maxIterations="integer"
mergeRowToJobData="true|false"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<preProcessingEvents>
<preProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</preProcessingEvents>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<!-- The startValue must be of the type specified by the mode. -->
<startValue>value</startValue>
<!-- The minValue must be of the type specified by the mode. -->
<minValue>value</minValue>
<!-- The endValue must be of the type specified by the mode. -->
<endValue>value</endValue>
<!-- Specify a rowKey only if you are using the forLoop to iterate
through rows. -->
<rowKey>key</rowKey>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
true The data retrieved from the database exists in the datamap as current row data
that child business rule components can access, but peer business rule
components cannot.
The row data is also copied to the job data portion of the datamap for this
business rule component. Peer and child business rule components can access
this job data in the datamap.
When the row data is merged into the job data, the mergePolicy used is
MERGE_NONE and the action used is OVERRIDE. These are not
configurable.
Example
A dataService business rule component named DBQUERY exists
in the Body namespace and retrieves a value for PRINTERNAME
from a database. If mergeRowToJobData is true, then peers of
the dataService business rule component can access the value of
PRINTERNAME in the datamap by using
${/Body/DBQUERY/PRINTERNAME}.
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
Value Description
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Format Script is a business rule component that allows you to make changes to the properties
of a label template and to the datamap by using JavaScript. A Format Script does not return a
value. The capabilities of a Format Script are comparable to those of a Script data source, except
that methods for character-level formatting are not supported.
The following is the syntax for a Format Script.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
An Import Data business rule component allows you to convert a string of data from CSV or
XMLformat to an equivalent structure of data map entries for use in Spectrum.
Tip: You can use an Export Data business rule component to convert data in a
namespace from a structure of data map entries to a string of data in CSV or XML
format.
The following is the syntax for an Import Data business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<!-- Required. The format of the source data. This value is not
case sensitive. -->
<dataFormat>CSV|XML</dataFormat>
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
Value Description
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
part of a component block. Refer to the configuratorType of the parent of this
business rule component to determine the type of component block.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
and can be referenced by using the fully-qualified name of the Increment/Decrement business
rule component.
The starting value for each print job is entered by the user at print time or is configured as part
of the business rule component. The capabilities of an Increment/Decrement business rule
component are comparable to those of an Inc/Dec data source.
Tip: When incrementing an alphanumeric series, by default the series begins with
zero, progresses through the numerical digits, and then progresses through letters.
The following is the syntax for an Increment/Decrement business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<incDec name="This_component" namespace="Parent_of_component"
direction="INCREMENT|DECREMENT"
mode="NUMERIC|UPPERCASE_ALPHA|UPPERCASE_ALPHANUM|HEXADECIMAL|CUSTOM"
step="integer"
maxLength="integer"
minLength="integer"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<!-- The startValue must be of the type specified by the mode. -->
<startValue>value</startValue>
<!-- The endValue must be of the type specified by the mode. -->
<endValue>value</endValue>
</incDec>
Syntax Tips
Additional information is available about the following items.
action
For a business rule component that can return a value, this property determines whether that
value remains in the datamap when the business rule component finishes running and returns
control to its parent business rule component. The default value is OVERRIDE.
Note: The impact of a business rule component returning control to its parent
is also affected by mergePolicy.
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
configuratorType
For a business rule component that was generated by using the Configurator 1, this attribute
is a numeric identifier that usually indicates what type of component block2 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
2In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A DataMap Operations business rule component allows you to add, remove, or change data map
entries. It does not return a value.
The following is the syntax for a DataMap Operations business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<mapOperations name="This_component" namespace="Parent_of_component"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Note: For a parameter, the dataType specifies the data type of the parameter
value.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
literalValue
The literalValue attribute is a required Boolean value that indicates whether the value in any
data map entries specified by the operation should be treated as a literal value and used in its
current form, or whether the value should be resolved to a value in the datamap.
Value Description
false If the value in the data map entry is in the form of a key, resolve the key to a
value in the datamap.
true If the value in the data map entry is in the form of a key, use the text as is. Do
not resolve the key to a value in the datamap.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
operation
The operation to perform on the data map entry.
Value Description
PUT Add or change the specified data map entry.
DELETE If the specified data map entry exists in a previous scope, mark it as deleted.
Requests for that key will return NULL or notExists.
A data map entry that has been deleted can be restored (un-deleted) by using
the REMOVE operation.
REMOVE If the specified data map entry is not marked as deleted, this operation
removes the data map entry from the current scope of the datamap. The
data map entry cannot be un-deleted.
If the specified data map entry is already marked as deleted, this operation
removes the deletion marker so that the data map entry is restored (un-
deleted).
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A DataMap Entry Script is a business rule component that allows you to provide read-only data
map entries. A DataMap Entry Script also returns a value that is added to the datamap and that
can be referenced by using the fully-qualified name of the DataMap Entry Script. The
capabilities of a DataMap Entry Script are comparable to those of a Formula data source.
The following is the syntax for a DataMap Entry Script.
Important! Patterns for character-level formatting and for values returned from
data map entries are governed by the Java syntax for regular expressions.
Escape sequences are required for the following characters. Precede the character
with a backslash.
<>()[]{}|^-=+*$!?.\
By default, literal text within a pattern is case sensitive. You can make a pattern
case insensitive by beginning it with the special construct (?i). If you configure
both patterns and ranges in a Character-Level format source, ranges are resolved
before patterns.
For more information about Java syntax for regular expressions, see The Java
Tutorials: Regular Expressions on the Oracle website.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<mapScript name="This_component" namespace="Parent_of_component"
customScript="true|false"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND"
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<parameter parameterKey="Name_of_parameter"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
resolveValue="true|false">
<parameterValue>Initial_value_of_
parameter</parameterValue>
</parameter>
</parameters>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
false.
Value Description
false The user is granted Read Only access to data map entries.
true The user is granted Read access to data map entries.
dataType
This object has a type that describes the data that it returns or to which it refers. The default
value is STRING.
Note: For a parameter, the dataType specifies the data type of the parameter
value.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Reference is a business rule component that loads business rule components from another
business rule into the current business rule.
Best Practice
When calling a sibling business rule component that you did not write (for example,
by using a reference business rule component), use a separate event instead of using
includeSiblings to propagate an event.
Tip: For an example of how to use a Reference business rule component to load
data sources from a label template into the datamap, see "Access Label Data
Sources (XML)" on page 1216.
The following is the syntax for a Reference business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<reference name="This_component" namespace="Parent_of_component"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Security Info business rule component saves the user name, user domain, and user profile
information associated with a print request to the datamap when this business rule component
is run.
The values added to the datamap can be referenced by using the following reserved keys, which
are under the namespace and name that you specify in the business rule component.
Reserved
Description
Key
profile The user profile of the user associated with the print request. In the data map,
a user profile is represented by the reserved keys that are children of profile.
For more about user profiles, see "Configuring User Profiles" on page 781.
userdomain The domain (if any) specified in Spectrum for the user associated with the
print request.
username The Spectrum user name of the user associated with the print request.
The following is the syntax for a Security Info business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<securityInfo name="This_component" namespace="Parent_of_component"
mergeRowToJobData="true|false"
failOnError ="true|false"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Static business rule component allows you to add default data or parameters to the datamap.
The following is the syntax for a Static business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<static name="This_component" namespace="Parent_of_component"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<!-- You can create parameters, which are evaluated when the
business rule is run. For more information, see "Parameters" on
page 1363. -->
<parameters>
<!-- Parameters are stored as data map entries that
include a name (key) and a value. When defining a
parameter, parameterKey is required. -->
<!-- To cause any data map entries within the
parameter value to be resolved to their associated
values at run time, set resolveValue to true. -->
<parameter parameterKey="Name_of_parameter"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
resolveValue="true|false">
<parameterValue>Initial_value_of_
parameter</parameterValue>
</parameter>
</parameters>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A While Loop is a business rule component that allows you to repeat an action as long as
specified conditions continue to be true and the maximum number of iterations has not been
exceeded.
Tip: To prevent runaway looping if a conditional trigger always returns true, it is
recommended that you specify the maximum number of iterations allowed.
The following is the syntax for a While Loop.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<parameters>
<!-- Parameters are stored as data map entries that
include a name (key) and a value. When defining a
parameter, parameterKey is required. -->
<!-- To cause any data map entries within the
parameter value to be resolved to their associated
values at run time, set resolveValue to true. -->
<parameter parameterKey="Name_of_parameter"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
resolveValue="true|false">
<parameterValue>Initial_value_of_
parameter</parameterValue>
</parameter>
</parameters>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<beforeCondition>
<!-- Logical expression resulting in a condition of
true or false. You can perform a logical operation, a
comparison, or a data map entry state operation. You
can nest operations to create a more complex
expression. For more information, see "Logical
Operations and Comparisons" on page 1355. -->
<!-- The beforeCondition is evaluated before the child
business rule components have been run for this
iteration of the loop. -->
<!-- If the beforeCondition is true, loopEvents occur,
children are evaluated, and then the afterCondition is
evaluated. -->
<!-- If the beforeCondition is false, loopEvents do not
occur, children are evaluated, the afterCondition is
not evaluated, and no further iterations of the loop
occur. -->
</beforeCondition>
<afterCondition>
<!-- Logical expression resulting in a condition of
true or false. You can perform a logical operation, a
comparison, or a data map entry state operation. You
can nest operations to create a more complex
expression. For more information, see "Logical
Operations and Comparisons" on page 1355. -->
<!-- The afterCondition is evaluated after the child
business rule components have been run for this
iteration of the loop.
<!-- If this afterCondition is true and the number of
iterations has not exceeded maxIterations, then a new
iteration begins and the beforeCondition (if one
exists) is evaluated again. -->
<!-- If the afterCondition is false, then no further
iterations of the loop occur. -->
</afterCondition>
<loopEvents>
<loopEvent eventName="Custom_Event"
includeSiblings="true|false" />
</loopEvents>
</whileLoop>
Syntax Tips
Additional information is available about the following items.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
Value Description
true The data retrieved from the database exists in the datamap as current row data
that child business rule components can access, but peer business rule
components cannot.
The row data is also copied to the job data portion of the datamap for this
business rule component. Peer and child business rule components can access
this job data in the datamap.
When the row data is merged into the job data, the mergePolicy used is
MERGE_NONE and the action used is OVERRIDE. These are not
configurable.
Example
A dataService business rule component named DBQUERY exists
in the Body namespace and retrieves a value for PRINTERNAME
from a database. If mergeRowToJobData is true, then peers of
the dataService business rule component can access the value of
PRINTERNAME in the datamap by using
${/Body/DBQUERY/PRINTERNAME}.
name
Required for a business rule component or a default data entry. The name is a string used to
identify the business rule component or, for a default data entry, the data map entry.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
namespace
Required for a business rule component. The namespace is a string used to identify the
parent of the business rule component specified by the name attribute. Do not include a
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
Value Description
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
An XML Data business rule component can be used to convert data that is in an XML format
into data map entries. This type of business rule component can be used to produce data map
entries from XML data, such as the XML data received from a SOAP Web Service data service.
Important! If you are using an XML Data business rule component in conjunction
with a SOAP Web Service data service, the Result Name specified in the SOAP
Web Service data service must be the name of the XMLData business rule
component.
The following is the syntax for an XML Data business rule component.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<xmlData name="This_component" namespace="Parent_of_component"
resolveValue="true|false"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
<!-- Required. You must specify the XML data to be converted into
data map entries. The XMLdata must use UTF-8 encoding without a
byte order mark (BOM). Whether data is the XML itself or a key
pointing to the XML data is determined by resolveValue. -->
<data>XML data to convert to data map entries</data>
</xmlData>
Syntax Tips
Additional information is available about the following items.
alias
An alias is a data reference for a business rule component. It is comparable to a data ref1 in
a label template.
configuratorType
For a business rule component that was generated by using the Configurator 2, this attribute
is a numeric identifier that usually indicates what type of component block3 the business
rule component is part of.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
part of a component block. Refer to the configuratorType of the parent of this
business rule component to determine the type of component block.
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
leading slash.
For a securityInfo or systemDiagnostics business rule component, the name and
namespace indicate the path to the data saved in the datamap. Alternatively, for a
systemDiagnostics business rule component if the name and the namespace are empty
strings, then the diagnostic information is saved to the !DIAGNOSTICS! namespace.
Value Description
Body The namespace for fields in a label template created in Design is Body.
Note: Integrations automatically prefix paths in the print job
file with /Body where needed.
runtime The namespace for system properties is runtime.
Custom You can create custom namespaces that are named at your discretion. The
Namespace children of a namespace should always be business rule components, not
other namespaces.
resolveValue
For a parameter value, whether to treat any data map entries within the parameter value literal
text or resolve them to their associated values. The default value is false.
For an XML Data business rule component, whether to treat the value of data as literal XML
data or as a data map entry pointing to XML data. The default value is false.
Value Description
true For a parameter value, any data map entries within the parameter value are
resolved to their associated values at run time.
For an XML Data business rule component, the value of data is interpreted as a
data map entry that points to XML data, and is resolved to the value to which
the data map entry points at run time.
false For a parameter value, the parameter value is interpreted as literal text.
For an XML Data business rule component, the value of data is interpreted as
literal XML.
sticky
If parameters are used in the business rule component, whether the value of each parameter
remains fixed throughout the execution of the business rule component. The default value is
false.
Value Description
true The values of parameters in the business rule component remain fixed
throughout the execution of the business rule component. If the value is a data
ref, the value initially obtained for the data ref is used for the duration of the
execution of the business rule component.
Value Description
false The values of parameters in the business rule component can be overridden
during the execution of the business rule component. If the value is a data ref
and the value of that data ref changes during the execution of the business rule
component, then the current value of the data ref is used.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A trigger is a part of a business rule component that controls if and when that business rule
component is run based on if and when an event occurs.
l "Triggers" on page 1346
l "Events" on page 1347
Triggers
A trigger is a part of a business rule component that controls if and when that business rule
component is run.
Best Practice
Use priority values to control the execution order of business rule components.
Additionally, within a business rule it is recommended that you list peer business
rule components in execution order so that the business rule will be easier for
others to understand.
The following is the syntax for a trigger.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event" priority="integer"
propagation="NONE|BEFORE|AFTER"/>
</triggers>
Syntax Tips
Additional information is available about the following items.
eventTrigger
Required. The name of an event associated with a business rule component that determines
when during the processing of the business rule that business rule component is run.
You can use built-in events (ENQUEUE, PRINTJOBDETAIL, or LABEL) or custom
events as triggers. Built-in events refer to points in time during processing and do not need
to be created. Custom events must be defined and named before they can be used as triggers.
For more information, see "Events" on page 1347.
Note: If a business rule component includes both a global Conditional and a
trigger Conditional, then the business rule component is run only if both
Conditionals are true. That is, a logical AND operation is performed on the two
Conditionals.
priority
Required. An integer that serves as a prioritization number for a business rule component. If
the triggers for two business rule components use the same event, then the business rule
component with the lower priority value is run first.
Important! If multiple business rule components use the same eventTrigger,
you must specify a unique priority for the trigger in each of these business
rule components to ensure the intended prioritization.
propagation
Optional. If the event specified in the trigger of a business rule component occurs and if the
business rule component has children, the event can be automatically applied to the children.
This attribute of a trigger controls whether the event is applied to the children. Additionally,
this attribute controls whether the event is applied to the children before or after the
business rule component is run, which affects whether data provided by the business rule
component is available to its children. If propagation is not specified, the default value
NONE is used.
Tip: For a securityInfo business rule component that includes children, it is
typically recommended that you set propagation to AFTER so that the data
added to the datamap by the business rule component is available to its
children.
Value Description
NONE The event is not automatically applied to children.
BEFORE Before the business rule component is run, the event is automatically applied
to any children. Data provided by this business rule component is not
available to its children.
AFTER After the business rule component is run, the event is automatically applied
to any children. Data provided by this business rule component is available
to its children.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Events
An event is an occurrence during processing that can be used to trigger the running of one or
more business rule components. Unlike a built-in event, a custom event must be defined and
named before it can be used as a trigger.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Built-in Events
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<Type_of_custom_events>
<Type_of_custom_event eventName="Custom_Event"
includeSiblings="true|false">
</Type_of_custom_events>
An event that occurs only if a conditional business rule component is evaluated as true. You
can use a trueEvent as the trigger for a child business rule component of a conditional
business rule component to cause the child to run only if the condition is true. For more
information, see "conditional Business Rule Component" on page 1233.
<trueConditionEvents>
<trueEvent eventName="Custom_Event" includeSiblings="true|false"
/>
</trueConditionEvents>
falseEvent
An event that occurs only if a conditional business rule component is evaluated as false. You
can use a falseEvent as the trigger for a child business rule component of a conditional
business rule component to cause the child to run only if the condition is false. For more
information, see "conditional Business Rule Component" on page 1233.
<falseConditionEvents>
<falseEvent eventName="Custom_Event"
includeSiblings="true|false" />
</falseConditionEvents>
Event for dataService business rule components
rowEvent
An event that occurs when a row of data from a database is processed. You can use a
perRowEvent as the trigger for a child business rule component of a dataService business
rule component to cause the child to run once for each row of the database that is processed.
For more information, see "dataService Business Rule Component" on page 1243.
<perRowEvents>
<rowEvent eventName="Custom_Event" includeSiblings="true|false"
/>
</perRowEvents>
Event for forLoop and whileLoop business rule components
loopEvent
An event that occurs once per iteration of a forLoop or whileLoop. You can use a loopEvent
as the trigger for a child business rule component of a forLoop or a whileLoop to cause the
child to run once per iteration of the loop. For more information, see "forLoop Business Rule
Component" on page 1274 or "whileLoop Business Rule Component" on page 1332.
<loopEvents>
<loopEvent eventName="Custom_Event" includeSiblings="true|false"
/>
</loopEvents>
Syntax Tips
includeSiblings
Required. This property of an event determines whether the event is propagated to peers of the
business rule component when the event occurs.
Best Practice
When calling a sibling business rule component that you did not write (for example,
by using a reference business rule component), use a separate event instead of using
includeSiblings to propagate an event.
Value Description
false The event is propagated to children of the business rule component, but not to
peers.
true The event is propagated to children and peers of the business rule component.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A condition is a logical expression that can be used to control whether an associated business
rule component or other object can run. A condition can include logical operators, comparison
operators, and the data map entry state operator. These operators can be used to define special
conditions in a conditional, whileLoop, or dataService business rule component, or to define an
executionCondition in any type of business rule component.
l "Conditions" on page 1353
l "Logical Operations and Comparisons" on page 1355
Conditions
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<Type_of_condition>
<!-- Logical expression resulting in a condition of true or false.
You can perform a logical operation, a comparison, or a data map
entry state operation. You can nest operations to create a more
complex expression. For more information, see "Logical Operations
and Comparisons" on page 1355. -->
</Type_of_condition>
Types of Conditions
The following are types of conditions.
Condition for any business rule component
executionCondition
A condition that can limit whether a business rule component can run. You can define an
execution condition for any type of business rule component.
Value Description
true The business rule component may run.
false The business rule component does not run.
A condition in a whileLoop business rule component that is evaluated for each iteration of
the loop after child business rule components are run.
Value Description
true In a whileLoop business rule component, if the number of iterations has not
exceeded maxIterations, then a new iteration begins and the beforeCondition (if
one exists) is evaluated again.
false In a whileLoop business rule component, no further iterations of the loop occur.
For more information, see "whileLoop Business Rule Component" on page 1332.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
When defining a condition, you can include logical operators, comparison operators, and the data
map entry state operator. These operators can be used to define special conditions in a
conditional, whileLoop, or dataService business rule component, or to define an
executionCondition in any type of business rule component. Each operation results in a value of
true or false, and you can nest operations to produce complex expressions.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
Logical Operators
You can use the following logical operators.
Operator Description
and The result is true if the results of all child operations are true.
nand The result is true if the result of at least one child operation is false.
or The result is true if the result of at least one child operation is true.
nor The result is true if the results of all child operations are false.
The following is the syntax for logical operations that can be used when defining a condition.
<and|nand|or|nor failOnFalseCondition="false|true">
<falseLogMessage>Text written to log if condition is
false</falseLogMessage>
<trueLogMessage>Text written to log if condition is
true</trueLogMessage>
1A value that is unknown. A null value is different from an empty string or a zero value.
<value>string</value>
</left>
<!-- When defining the right, a value is required for type. -->
<right type="KEY|LITERAL"
valueType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE">
<value>string</value>
</right>
</equals|notEquals|equalsIgnoreCase|notEqualsIgnoreCase|greaterThan|lessThan>
DataMap Entry State Operator
You can use the data map entry state operator to determine whether a specified data map entry
exists and whether it contains a value.
Note: When using a mapState operator, you must specify a the name of a data map
entry as the value for key. A data map entry state operator cannot have child
business rule components.
Operator Description
mapState The result is true if the data map entry specified by key has the state specified
by stateCheck and the result is not inverted.
If the result is inverted, then the result is true if the data map entry specified by
key does not have the state specified by stateCheck.
The following is the syntax for a data map entry state operation that can be used when defining a
condition.
<mapState failOnFalseCondition="false|true"
key="Path" stateCheck="EXISTS|NOT_NULL|NOT_EMPTY" inverseResult="false|true">
<falseLogMessage>Text written to log if condition is
false</falseLogMessage>
<trueLogMessage>Text written to log if condition is
true</trueLogMessage>
</mapState>
Syntax Tips
Additional information is available about the following items.
failOnFalseCondition
This attribute of a logical operation or a comparison specifies whether the job should fail if
the value retrieved from the datamap does not match the literal value returned by the logical
operation. The default value is false.
Value Description
true If the value retrieved from the datamap does not match the literal value
returned by the logical operation, then the job fails.
Value Description
false If the value retrieved from the datamap does not match the literal value
returned by the logical operation, then the job does not fail due to this
condition.
inverseResult
For a data map entry state (mapState) operator, whether to invert the result of the
comparison of the state of the data map entry specified by key and the value of stateCheck.
The default value is false.
Value Description
true If the state of the data map entry specified by key and the value of stateCheck
are equivalent, then the mapState operation returns false. Otherwise, the
operation returns true.
false The result of the comparison is not altered.
key
Required for a data map entry state (mapState) operator. The name of the data map entry to
be reviewed.
stateCheck
For a data map entry state (mapState) operator, the value to compare to the state of the data
map entry specified by key. The default value is EXISTS.
Value Description
EXISTS The data map entry exists in the datamap.
Note: It is possible for the value to be an empty string or to
never have been specified.
NOT_ The data map entry exists in the datamap and a value has been specified
NULL for it.
Note: It is possible for the value to be an empty string.
NOT_ The data map entry exists in the datamap and the value is not an empty
EMPTY string.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Tip: In addition to data map entries that you create, there are built-in data map
entries. The names of these built-in data map entries are reserved keys. For more
information, see "Reserved Keys" on page 1487.
Location Prefixes
When configuring a value in a process or a business rule, you can direct Spectrum to look for the
data in the job data, the process, system properties, or the current row if processing rows of data.
You can direct Spectrum to check only one of these locations for the key (name), or to check
more than one of these locations in a specified order.
Prefix Effect
$ or Look for the key in the job data and return the associated value. If the key is not
$# found in the job data, look in the process.
# or #$Look for the key in the process and return the associated value. If the key is not
found in the process, look in the job data.
$$ Look for the key in the job data and return the associated value. If the key is not
found, do not look for it in other locations.
## Look for the key in the process and return the associated value. If the key is not
found, do not look for it in other locations.
% Look for the key in the system properties and return the associated value. If the
key is not found and no other location is specified, do not look for it in other
locations.
@ Look for the key in the row of data currently being processed and return the
associated value. If the key is not found and no other location is specified, do not
look for it in other locations.
Complex Lookup Examples
You can use several prefixes in combination so that you can look for a key in more than one
location, specifying the order in which to check the locations. You can also use a value retrieved
from one key as the key or part of the key for a second lookup.
Example Result
@%$#{/Body/Category}
This prefix and key cause Spectrum to look for a key named
/Body/Category in several locations, stopping when it is found, and to
return the associated value. Spectrum first looks for the key in the row
of data currently being processed. If the key is not found there, then
Spectrum looks for it in the system properties, then the job data, and
then the process. When the key is found, the value is returned and the
lookup ends without checking any remaining locations.
${@{column1}} This complex prefix and key cause Spectrum to look for a key named
column1 in the row of data currently being processed. If found, the
value of column1 is then used as a key for a lookup in the job data,
and the associated value from the job data is returned.
$${Color@{column1}}
This complex prefix and key cause Spectrum to look for a key named
column1 in the row of data currently being processed. If found, the
value of column1 preceded by the text row is used as a key for a
lookup in the job data, and the value associated with that key is
returned.
For example, if column1=Blue in a particular row, then Spectrum
would look for a key named ColorBlue in the job and return the value
associated with that key.
Default Data
You can create default data entries within a business rule component. Each default data entry
becomes a data map entry that includes a name (key) and a value.
The following is the syntax for specifying default data entries.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: If you create a default data entry, you must specify a name and a value. Do
not begin and end the name with an exclamation point (!), because that syntax is
used for reserved keys.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<defaultData>
<entry name="Name_of_data_map_entry"
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_CHILD|MERGE_TO_
PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
Syntax Tips
Additional information is available about the following items.
action
For a business rule component that can return a value, this property determines whether that
value remains in the datamap when the business rule component finishes running and returns
control to its parent business rule component. The default value is OVERRIDE.
Note: The impact of a business rule component returning control to its parent
is also affected by mergePolicy.
Value Description
OVERRIDE When control is returned to the parent, the value produced by the
business rule component is retained for the data map entry, replacing any
previous value for the data map entry.
NOT_ When control is returned to the parent, the value produced by the
EXISTS business rule component is retained for the data map entry only if a data
map entry with that name did not exist prior to the execution of this
business rule component. Otherwise, the previous value for the data map
entry is reinstated.
DELETE When control is returned to the parent, the data map entry is deleted from
the datamap.
APPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the end of the old value.
PREPEND If the data map entry existed before the business rule component was run,
then when control is returned to the parent the new value for the data
map entry is concatenated onto the beginning of the old value.
dataType
This object has a type that describes the data that it returns or to which it refers. The default
value is STRING.
Note: For a parameter, the dataType specifies the data type of the parameter
value.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
mergePolicy
For a business rule component that returns a value, this property (in conjunction with the
mergePolicy of its parent business rule component) determines whether the returned value
remains in the datamap when the business rule component finishes running and returns
control to its parent. The default value is MERGE_ALL.
Note: The impact of a business rule component returning control to its parent
is also affected by action.
Value in Par-
Value Description
ent
MERGE_ALL MERGE_ALL When the business rule component is finished
or MERGE_ or MERGE_ running, the data map entry containing the value
TO_PARENT FROM_CHILD that it returns remains in the datamap.
MERGE_ALL MERGE_ When the business rule component is finished
or MERGE_ NONE or running, the data map entry containing the value
TO_PARENT MERGE_TO_ that it returns is removed from the datamap.
PARENT
MERGE_ Any When the business rule component is finished
NONE or running, the data map entry containing the value
MERGE_ that it returns is removed from the datamap.
FROM_CHILD
name
Required for a default data entry. The name is a string used to identify the data map entry.
value
Required for a default data entry. The literal value to be associated with name in the
datamap.
Tip: A default data value should not include references to other data map
entries. If a reference to another data map entry is included, it will not be
resolved to the value of that data map entry.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Parameters
You can create parameters within a business rule component. Each parameter becomes a data
map entry that includes a name (key) and a value. The value can be a literal value or can include a
reference to another data map entry that is resolved at run time.
Note: You should not define parameters in a conditional business rule component.
Tip: You can configure whether the value of each parameter remains fixed
throughout the execution of a business rule component by configuring the sticky
attribute of the business rule component.
The following is the syntax for specifying parameters.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: If you create a parameter, you must specify a name for it as the value for
parameterKey. You are not required to specify parameterValue. Do not begin
and end the name with an exclamation point (!), because that syntax is used for
reserved keys.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<parameters>
<parameter parameterKey="Name_of_parameter" dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
resolveValue="true|false">
<parameterValue>Initial_value_of_
parameter</parameterValue>
</parameter>
</parameters>
Syntax Tips
Additional information is available about the following items.
dataType
This object has a type that describes the data that it returns or to which it refers. The default
value is STRING.
Note: For a parameter, the dataType specifies the data type of the parameter
value.
Value Description
STRING An object of this type is a text string. Any number included is treated as
text.
Tip: For a parameter in a dataService business rule
component, the result map for a JDBC data service can be
represented as a string.
INTEGER An object of this type is a signed integer value.
NUMBER An object of this type has a signed decimal value.
BOOLEAN An object of this type has a value of true or false.
BINARY An object of this type is an array of bytes.
DATE An object of this type is a time value stored in milliseconds since 1970.
parameterKey
Required for a parameter. The name of the parameter being created.
parameterValue
The initial value of the parameter. This value must be of the type specified by dataType. If
this value includes a data map entry, whether it is resolved to the value of that data map entry
at run time is determined by resolveValue. The value of the parameter can be changed at run
time by the business rule.
Representing a result map
For a parameter in a dataService business rule component, the result map for a JDBC data
service can be represented as a string in which the values for the columns are separated by
vertical bars.
The following is an example of a result map.
Column Name Required Display Display Name Type Display Length
QUANTITY Quantity number 5
The following is the string representation of the preceding result map:
QUANTITY|true|true|Quantity|number|5
resolveValue
For a parameter value, whether to treat any data map entries within the parameter value literal
text or resolve them to their associated values. The default value is false.
For an XML Data business rule component, whether to treat the value of data as literal XML
data or as a data map entry pointing to XML data. The default value is false.
Value Description
true For a parameter value, any data map entries within the parameter value are
resolved to their associated values at run time.
For an XML Data business rule component, the value of data is interpreted as a
data map entry that points to XML data, and is resolved to the value to which
the data map entry points at run time.
false For a parameter value, the parameter value is interpreted as literal text.
For an XML Data business rule component, the value of data is interpreted as
literal XML.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
Children
For each business rule component you have the option of specifying child business rule
components. Whenever an event occurs that triggers a business rule component to run, its child
business rule components also have the potential to run. However, a child business rule
component will only run if its own trigger event occurs.
Events in a business rule component can be used as triggers for child business rule components.
For example, in a conditional business rule component, you can configure individual child
business rule components to be triggered only when the condition is true or only when the
condition is false.
Including child business rule components is not required. However, some types of business rule
components (such as a forLoop) may have no practical effect if they do not have child business
rule components.
Each child business rule component can have child business rule components of its own.
Best Practice
Use priority values to control the execution order of business rule components.
Additionally, within a business rule it is recommended that you list peer business
rule components in execution order so that the business rule will be easier for
others to understand.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A job source is a special type of business rule that is required by generator processes. It must
include both a business rule and data processors. The business rule must contain a Data Pipe
business rule component. The data processors must include a Process Generator, which creates
additional print requests.
A job source must use the following structure and adhere to XML syntax.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<?xml version="1.0" encoding="UTF-8"?>
<businessRules>
<businessRules configuratorSupport="true|false">
<!-- Required. Specify a dataPipe business rule component.
For more information, see "dataPipe Business Rule Component" on page
1368. -->
<dataProcessors>
<!-- Required. Specify a processGenerator. -->
<processGenerator name="This_component">
<process ignoreErrors="false|true">
</process>
</processGenerator>
</dataProcessors>
</businessRules>
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
A Data Pipe is a business rule component that allows you to create new print job details. This
business rule component is used in conjunction with Generator processes.
The following is the syntax for a Data Pipe.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
Note: For each business rule component, most elements and attributes are
optional, but you should specify enough to achieve the functionality that you
intend. In most cases, you can omit attributes that are not relevant to your task and
default values will be used. You must specify a name and a namespace. Except
where otherwise indicated, attributes accept string values.
Important! In a Data Pipe, for targetProcessor you must provide the name of
the processGenerator from the Job Source business rule of the generator
process.
About the syntax documentation
Vertical bars indicate that you must choose one of the options shown. Italicized items can be
named or specified by you.
<dataPipe name="This_component" namespace="Parent_of_component"
targetProcessor="Name_of_processGenerator"
sticky="true|false" configuratorType="Block_type_ID" alias="Data_reference">
<!-- Triggers -------------------------------------------------->
<!-- Required. Specify which event will cause this business rule
component to run. For more information, see "Triggers" on page
1346. -->
<triggers>
<trigger eventTrigger="ENQUEUE|PRINTJOBDETAIL|LABEL|Custom_Event"
priority="integer" propagation="NONE|BEFORE|AFTER"/>
</triggers>
dataType="STRING|INTEGER|BOOLEAN|NUMBER|BINARY|DATE"
mergePolicy="MERGE_ALL|MERGE_NONE|MERGE_FROM_
CHILD|MERGE_TO_PARENT"
action="OVERRIDE|NOT_EXISTS|DELETE|APPEND|PREPEND">
<value>Value_of_data_map_entry</value>
</entry>
</defaultData>
<postProcessingEvents>
<postProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</postProcessingEvents>
<errorProcessingEvents>
<errorProcessEvent eventName="Custom_Event"
includeSiblings="true|false" />
</errorProcessingEvents>
1Data reference. The data source used to populate a field with a value. An Input Data Ref is the data source from which a Prompt
field obtains data.
2In Process Design, the graphical interface for configuring a business rule by creating component sets, each containing component
blocks that are run when a particular trigger event occurs.
3In a business rule designed in Configurator, an element that either adds or changes data, incorporates conditional or loop logic, or
implements branching. The XML represented by a component block includes one or more business rule components.
If the value of the attribute is 0, then it indicates one of the following about the type of
component block:
l None: The business rule component was created by using the XML Editor or a
version of Spectrum prior to Spectrum 3.0, and therefore is not part of a component
block.
l Block fragment: The business rule component was generated by the Configurator as
Tip: For assistance with a business rule that you have created or to have Loftware
create business rules for you, contact Loftware's Professional Services Group.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2The states an item goes through when applied to a workflow.
3The transitions between the steps in a workflow.
Toolbar
Command Description
Icon
New Business Create a new business rule.
Rule
New Workflow Create a new workflow template.
Template
Open Open an existing process, business rule, or workflow template.
Close Close the current process, business rule, or workflow template.
Close All Close all processes, business rules, and workflow templates that
you have open in Process Design.
Save Save the displayed process, business rule, or workflow template.
Save As Save a copy of the displayed process, business rule, or workflow
template under a different name.
Refresh Update the displayed data.
Other Commands
The following commands are available from the toolbar in Process Design.
Toolbar
Command Description
Icon
Delete Trigger or Delete the selected component set (identified by
Delete Block its trigger) or the selected component block.
Tip: This command is available only
if you are editing a business rule in
the Configurator view and have
selected a component set or a
component block.
Toolbar
Command Description
Icon
View Details Display the Block Details view of the selected
component set.
Tip: This command is available only
if you are editing a business rule in
the Configurator view and have
selected a component set in the
Business Rule Summary.
Navigation Tree
By default, the Navigation tree is hidden. You can display it by clicking the arrow button along
the left edge of the Process Design page. You can double-click an existing process, business
rule, or workflow template to open it. You can right-click a process, business rule, or workflow
template to move or delete it.
Tip: You can move an object from one folder to another by dragging the object
from one folder and dropping it into another. Alternatively, you can right-click an
object, select Move to, and select a folder to which to move it.
Simple processes are appropriate for performing data retrieval from a database, substituting
different printing and formatting attributes, changing paths, restricting execution based on
conditions, and repeating execution by using while or for loops.
The following sections and panes are displayed when a simple process is created or opened in
Process Design.
Configuration
When a process is created or opened in Process Design and Simple is selected for the
Process Type, the following options are displayed under Configuration.
Tip: The default values under Configuration are the names of data map entries.
The location prefixes for the default names cause Spectrum to look for values for
these names first in the job data, and if not found there to look for them in the
process data, which is displayed when you click DataMap. For more information,
see "Location Prefixes" on page 1359 and "Reserved Keys" on page 1487.
Property Description
Process Required. Whether to display the properties for a simple process, generator
Type process, or reprint process.
l Simple
l Generator
l Reprint
Audit How nested processes should determine which data to save to an audit table in
Type Spectrum.
l Static: Save the data as defined by the Audit Mask property in the
Property Description
Audit When a label is printed, what auditing data about the label to save to an audit
Mask table in Spectrum. You can select multiple options. If no options are selected,
then only general auditing values are saved.
l Data: Save the data necessary to print the label.
the label.
Note: This property is displayed only if Static is selected for the
Audit Type property. If Reprint is selected for the Process
Type, then the only value option available for Audit Mask is
Data.
Audit How nested processes should determine which values to use when saving data
Procedure to an audit table in Spectrum.
l Overwrite: The values from the parent process are ignored.
l Merge: The values from the parent process are combined with the
current values.
Note: This property is displayed only if Static is selected for the
Audit Type property.
Audit The specified name of the key in an audit table for the bitmask value
Key representing the Audit Mask and Audit Procedure values.
The default value is ${AUDIT_MASK!}.
Note: This property is displayed only if Parameter is selected
for the Audit Type property.
Property Description
Delink Whether Spectrum is prevented from using data sources defined in the label
Data template.
Source l If true, Spectrum does not use data sources defined in the label template
However, when the business rule is run, any business rule components
that would be triggered by the LABELevent are not run.
Tip: You can run business rule components that are triggered by
the LABEL event, but also have access to all data sources in the
label template. To do so, set Delink Data Source to true and use
a Reference business rule component to load the label data
sources into the datamap. For more information, see "Access
Label Data Sources (XML)" on page 1216.
Ignore Whether processing the print request continues if an error is encountered.
Errors l If true, continue processing the request until it is completed.
Process Parameters
Property Description Values
Business Required. The full path in Spectrum for a business rule to be run Path to
Rule when this process is used. a
If you do not want to run a business rule, enter ${!DATASOURCE_ business
URL!}. rule
Document Required. The full path in Spectrum for the label template to be used Path to
with this process. a label
Note: In most cases, the Document and Data Entry template
fields should contain the same path. Otherwise, for on-
demand printing the process would use the label design
from one label template and the data entry form from
another label template.
Device Required. The full path in Spectrum for the device to be used with Path to
this process. a device
DataMap
The DataMap section allows you to enter and view data map entries for print job detail data.
Each data map entry consists of a name (key) and value pair in the datamap for a print request.
Properties Pane
The Properties pane allows you to name and describe a process. You can also view information
about when and by whom the process was created and most recently modified.
Tags Pane
Add or change the tags assigned to the process.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
2The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
3The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
4The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
5To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
Generator processes can be used to enable one print request to generate additional print requests
that use the same label template, another label template, or multiple label templates. This can be
useful for situations in which a set of related printed labels is required for each job.
The following sections and panes are displayed when a generator process is created or opened in
Process Design.
Configuration
When a process is created or opened in Process Design and Generator is selected for the
Process Type, the following options are displayed under Configuration.
Tip: The default values under Configuration are the names of data map entries.
The location prefixes for the default names cause Spectrum to look for values for
these names first in the job data, and if not found there to look for them in the
process data, which is displayed when you click DataMap. For more information,
see "Location Prefixes" on page 1359 and "Reserved Keys" on page 1487.
Property Description
Process Required. Whether to display the properties for a simple process, generator
Type process, or reprint process.
l Simple
l Generator
l Reprint
Audit How nested processes should determine which data to save to an audit table in
Type Spectrum.
l Static: Save the data as defined by the Audit Mask property in the
Property Description
Audit When a label is printed, what auditing data about the label to save to an audit
Mask table in Spectrum. You can select multiple options. If no options are selected,
then only general auditing values are saved.
l Data: Save the data necessary to print the label.
the label.
Note: This property is displayed only if Static is selected for the
Audit Type property. If Reprint is selected for the Process
Type, then the only value option available for Audit Mask is
Data.
Audit How nested processes should determine which values to use when saving data
Procedure to an audit table in Spectrum.
l Overwrite: The values from the parent process are ignored.
l Merge: The values from the parent process are combined with the
current values.
Note: This property is displayed only if Static is selected for the
Audit Type property.
Audit The specified name of the key in an audit table for the bitmask value
Key representing the Audit Mask and Audit Procedure values.
The default value is ${AUDIT_MASK!}.
Note: This property is displayed only if Parameter is selected
for the Audit Type property.
Property Description
Delink Whether Spectrum is prevented from using data sources defined in the label
Data template.
Source l If true, Spectrum does not use data sources defined in the label template
However, when the business rule is run, any business rule components
that would be triggered by the LABELevent are not run.
Tip: You can run business rule components that are triggered by
the LABEL event, but also have access to all data sources in the
label template. To do so, set Delink Data Source to true and use
a Reference business rule component to load the label data
sources into the datamap. For more information, see "Access
Label Data Sources (XML)" on page 1216.
Ignore Whether processing the print request continues if an error is encountered.
Errors l If true, continue processing the request until it is completed.
Process Parameters
Property Description Values
Business The full path in Spectrum for a business rule to be run when this Path to
Rule process is used. a
business
rule
Job Required. The full path in Spectrum for a business rule that includes a Path to
Source dataPipe business rule component so that it can generate additional a
print requests. You can also include other business rule components. business
That business rule is run when this process is used. rule
If a business rule is also specified in the Business Rule field, the one
in the Business Rule field is processed before the one in the Job
Source field.
Device The full path in Spectrum for the device to be used with this process. Path to
a device
DataMap
The DataMap section allows you to enter and view data map entries for print job detail data.
Each data map entry consists of a name (key) and value pair in the datamap for a print request.
Properties Pane
The Properties pane allows you to name and describe a process. You can also view information
about when and by whom the process was created and most recently modified.
Tags Pane
Add or change the tags assigned to the process.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
1Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Reprint processes can be used to enable one print request to print the same label template
multiple times. A Reprint process will print an image of the label that was just printed
successfully and store it in a configurable file system location.
The following sections and panes are displayed when a reprint process is created or opened in
Process Design.
Configuration
When a process is created or opened in Process Design and Reprint is selected for the
Process Type, the following options are displayed under Configuration.
Tip: The default values under Configuration are the names of data map entries.
The location prefixes for the default names cause Spectrum to look for values for
these names first in the job data, and if not found there to look for them in the
process data, which is displayed when you click DataMap. For more information,
see "Location Prefixes" on page 1359 and "Reserved Keys" on page 1487.
Property Description
Process Required. Whether to display the properties for a simple process, generator
Type process, or reprint process.
l Simple
l Generator
l Reprint
Audit How nested processes should determine which data to save to an audit table in
Type Spectrum.
l Static: Save the data as defined by the Audit Mask property in the
Property Description
Audit When a label is printed, what auditing data about the label to save to an audit
Mask table in Spectrum. You can select multiple options. If no options are selected,
then only general auditing values are saved.
l Data: Save the data necessary to print the label.
the label.
Note: This property is displayed only if Static is selected for the
Audit Type property. If Reprint is selected for the Process
Type, then the only value option available for Audit Mask is
Data.
Audit How nested processes should determine which values to use when saving data
Procedure to an audit table in Spectrum.
l Overwrite: The values from the parent process are ignored.
l Merge: The values from the parent process are combined with the
current values.
Note: This property is displayed only if Static is selected for the
Audit Type property.
Audit The specified name of the key in an audit table for the bitmask value
Key representing the Audit Mask and Audit Procedure values.
The default value is ${AUDIT_MASK!}.
Note: This property is displayed only if Parameter is selected
for the Audit Type property.
Property Description
Delink Whether Spectrum is prevented from using data sources defined in the label
Data template.
Source l If true, Spectrum does not use data sources defined in the label template
However, when the business rule is run, any business rule components
that would be triggered by the LABELevent are not run.
Tip: You can run business rule components that are triggered by
the LABEL event, but also have access to all data sources in the
label template. To do so, set Delink Data Source to true and use
a Reference business rule component to load the label data
sources into the datamap. For more information, see "Access
Label Data Sources (XML)" on page 1216.
Ignore Whether processing the print request continues if an error is encountered.
Errors l If true, continue processing the request until it is completed.
Process Parameters
Property Description Values
Business Required. The full path in Spectrum for a business rule to be Path to a
Rule run when this process is used. business rule
If you do not want to run a business rule, enter ${!DATASOURCE_
URL!}.
Device Required. The full path in Spectrum for the device to be used Path to a
with this process. device
Layout The full path in Spectrum for the layout to be used with this Path to a
process. layout
Print Parameters
The default name for each of the following properties refers to the value specified in the job. If
no value is specified in the job, then the value specified in the Print Job Detail Data table is
used. This table can be displayed by clicking DataMap in the process.
DataMap
The DataMap section allows you to enter and view data map entries for print job detail data.
Each data map entry consists of a name (key) and value pair in the datamap for a print request.
1The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
2The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
3To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
Properties Pane
The Properties pane allows you to name and describe a process. You can also view information
about when and by whom the process was created and most recently modified.
Tags Pane
Add or change the tags assigned to the process.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
A business rule is a collection of component sets or business rule components that can be used
to incorporate logic or to add, change, or remove data or print parameters after a print request is
submitted but before printing occurs. Business rules are similar to form rules, but provide more
robust functionality. Business rules can be designed using the Configurator or programmed using
XML.
The following sections and panes are displayed when a business rule is created or opened in
Process Design.
Library
When editing a business rule in the Configurator, a list of triggers, component blocks, and
reusable rules that can be dragged and dropped into the business rule is displayed.
For more information about the different types of triggers and component blocks and about
reusable rules, see "Business Rule Configurator Reference" on page 459.
Configurator
The Configurator is a graphical interface for configuring a business rule by creating component
sets, each containing component blocks that are run when a particular trigger event occurs.
Business Rule Summary
The Business Rule Summary is a canvas onto which you can drag triggers for component sets.
For information about each type of event that can serve as a trigger, see "Triggers in
Configurator" on page 460.
Tip: The name of a Custom trigger must match the name of a Custom event.
Block Details
The Block Details view is a canvas onto which you can drag component blocks or reusable rules
to be included in a component set. You can drag and drop component blocks to indicate the
order in which they should run.
XML
The XML section allows you to view and edit the XML of business rule components, including
the triggers that govern when they run.
Example
You could create a business rule that includes logic to route print requests to
specific devices depending on the data associated with the print request. For
example, if some print requests include a color version of a logo and some include
only a black and white version of a logo, then a business rule could route the print
request that included the color logo to a color device.
Commands
Command Description
Enable XML Editor By default, the XML Editor is disabled when you create a business
rule, and you can configure the business rule by using the
Configurator. If you enable the XML Editor, the Configurator can
no longer be used to modify the business rule, and you must use
the XML Editor instead.
Note: This command is displayed only if the
business rule was created by using Configurator and
the XML Editor has not been enabled.
Format XML Neaten the indentation and spacing of the XML of the business
rule.
Note: This command is displayed only if the XML
Editor has been enabled for the business rule or if
the business rule was created prior to Spectrum 3.0.
Validate Business Rule Perform validation of the business rule syntax and formatting.
Note: This command is displayed only if the XML
Editor has been enabled for the business rule or if
the business rule was created prior to Spectrum 3.0.
Test Business Rule Specify trigger events and run the business rule to test it. No
process is used.
Important! When you test a business rule, that
business rule is run and can affect the Spectrum
environment. For example, testing a business rule
that is designed to alter a label template, to change a
value in a database, to submit a job, or to cancel a job
actually performs those actions.
Properties Pane
The Properties pane allows you to name and describe the business rule. You can also view
information about when and by whom the business rule was created and most recently modified.
Tags Pane
Add or change the tags assigned to the business rule.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
Configuration
The Configuration section allows you to enter workflow templates steps and progressions.
Commands
Command Description
Format XML Neaten the indentation and spacing of the XML of the workflow
template.
Validate Workflow Perform validation of the workflow template syntax and formatting.
XML
Properties Pane
The Properties pane allows you to name and describe the workflow template. You can also
view information about when and by whom the workflow template was created and most
recently modified.
Tags Pane
Add or change the tags assigned to the workflow template.
In Spectrum, users can categorize certain objects by assigning tags to them. Each tag has a
category and a value. A tag can be assigned to an application, business rule, data service, device
group, facility, form, image, integration, label template, layout, process, remote site, reusable
object, user, or workflow template. For a version-controlled object, tags cannot be changed in a
previously checked-in version.
For more information, see "Categorize a Process, Business Rule, or Workflow Template" on
page 1200.
If you create a cross reference table named MYTABLENAME, the table and its
audit table named MYTABLENAME_A exist in the LOFTXREF schema, and
two JDBC data services named MYTABLENAME_READand
MYTABLENAME_UPDATE are created in the Cross Reference Table App
folder.
Default Columns in a Cross Reference Table
When you create a cross reference table, the table includes the following columns by default.
Data
Column Name Description
Type
ID Number The internal identification number of the cross reference table
row. ID numbers of deleted rows are not reused.
CREATED DateTime The date and time when the row was created.
MODIFIED DateTime The date and time when the last edit was made to the row.
CREATED_ String The user name of the user who created the row.
ISSUER
LAST_ String The user name of the user who last edited the row.
UPDATED_
ISSUER
Columns in an Audit Record Table
A cross reference table audit record includes the following columns, where O_ is the old audit
record value and N_ is the new audit record value.
1A framework that allows you to use Design to create custom applications that interface with Spectrum.
Who are the users who need access to the cross reference table applications?
The users who need access to the cross reference table applications depend on your
organization's needs. You can configure permissions on the cross reference table folder,
applications, and data services, as well as customize roles to meet the needs of your organization.
Example
Suppose you determine you need two types of crossreference tableapplications
users:
l Users who can view and modify data in the tables using the
XrefUserApplication
l Users who can view and modify data in the tables, as well as create, edit, and
delete tables in the database using the XrefAdminApplication
The permissions required depend on the cross reference table application. By default, users such
as a Document Designer 1 or DocumentPrinter 2 can see the Cross Reference Table App
folder and its contents (that is, List permission for Folders and Read permission for Documents,
Processes, and Data Services is granted on the Cross ReferenceTable App folder). However,
only a Local Admin3 can open and use the applications in Print by default.
XrefUserApplication
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2The view that is displayed to a user on the Print page that allows the user to enter information for a label. A Document Designer
can configure this view in the Form view on the Design page.
3A Spectrum role with all permissions except those needed for role administration.
4Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
5Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
l Servers: Print
l Jobs:Read, Create, Print, Reprint
l Integrations: Print
Important: Although you can grant permissions on specific objects in the folder,
it is simpler to grant permissions on the entire folder for a user or group and then
control READ permission on the applications in the folder. For example, to allow a
group to use the XrefUserApplication but not the XrefAdminApplication, it is
recommended that you can grant the above permissions on the Cross Reference
Table App folder for a group and then deny Read permission on the
XrefAdminApplication.
Example
To allow a user to view and modify data in the tables using the XrefUserApplication,
you could do the following:
1. In Access Control, create a new role named XrefUser with the permissions
listed above at a minimum.
2. Create a new group named XrefUserGroup and assign the XrefUser role to the
group.
3. Assign the XrefUserGroup group to the users who need access to the
XrefUserApplication, or create a new user named XrefUser and assign the
XrefUserGroup group to the user.
4. Onthe CrossReference Table App folder, configure folder access for the
XrefUserGroup as listed above.
5. On the XrefAdminApplication, deny Read permission for the XrefUserGroup.
As their permissions do not allow them to use the XrefAdminApplication
without receiving an error, this may help avoid confusion by preventing users
in this group from being able to see the XrefAdminApplication in Print.
XrefAdminApplication
Access to the XrefAdminApplication requires certain role-based permissions and object access
permissions.
Role Permissions
At a minimum, a user must have page access to Access Control, Print, and Data Services and
have the following permissions granted to use the XrefAdminApplication:
l Data Services: READ, WRITE,CREATE, DELETE, PRINT
l Device Groups: READ, PRINT, QUEUE
l Devices: READ, PRINT
l Documents: READ, WRITE, PRINT
l Folders:READ, WRITE
l Groups: READ
l Integrations: READ, PRINT
l JVM Processes: READ, PRINT
l Jobs: READ, WRITE, CREATE, DELETE, PRINT
l Model Status:READ
l Processes: READ, PRINT
l Roles:READ
l Servers: READ, PRINT
l Tag Categories:READ
l UserProfiles: READ, WRITE
l Users: READ
Object Permissions
The following permissions must be granted on the Cross Reference Table App folder for the
user or group:
l Folders: Read, List
l Documents: Read, Write, Create, Delete, Admin, Print, Reprint
l DeviceGroups: Print, Reprint
l Servers: Print
l Jobs:Read, Create, Print, Reprint
l Processes: Read, Print
l Integrations: Read, Print
l Data Services: Read, Write,Create, Delete, Admin, Print
Example
To allow a user to view and modify data in the tables, as well as create and delete
tables in the database using the XrefAdminApplication, you could do the following:
1. In Access Control, create a new role named XrefAdmin with the permissions
listed above at a minimum.
2. Create a new group named XrefAdminGroup and assign the XrefAdmin role to
the group.
3. Assign the XrefAdminGroup group to the users who need access to the
XrefAdminApplication, or create a new user named XrefAdmin and assign the
XrefAdminGroup group to the user.
4. Onthe CrossReference Table App folder, configure folder access for the
XrefAdminGroup as listed above.
If you configure permissions as described above, a user with access to the XrefUserApplication
can view and modify data for every table created by or imported to the XrefAdminApplication.
If desired, you can prevent a user or group from being able to view or modify data for a specific
table.
Prevent a user or group from viewing a table
You can prevent a user or group from being able to see (and therefore, also prevent the user
from being able to modify) a specific table in the application by denying Read permission on
both the READ and UPDATE data services for the table. A user who is denied Read permission
on data services for a table does not see the table as an option in the View Data drop-down list
in the application.
Example
To prevent XrefUser from viewing or modifying a table named TABLENAME, do
the following:
1. In Access Control, click the TABLENAME_READ data service.
2. On theData Service Access tab, drag the XrefUser from the Users and
Groups tree at the right of the window to the User/Group table.
3. Deny Read permission for the user.
4. Click Save Data Service.
5. Click the TABLENAME_UPDATE data service.
6. On theData Service Access tab, drag the XrefUser from the Users and
Groups tree at the right of the window to the User/Group table.
7. Deny Read permission for the user.
8. Click Save Data Service.
Prevent a user or group from modifying a table
You can allow a user or group to see a table in the application, but prevent them from being able
to modify the data by denying Write permission on both the READ and UPDATE data services
for the table. A user who is denied Write permission on data services for a table can select the
table as an option in the View Data drop-down list in the application, but receives an error if
they try to edit the data.
Reorder a Column
Add a Column
2017/01/04 13:43:28
4. Click Add. A message is displayed confirming the column has been added.
You can now add data to the table. For more information, see " Edit Data in a Cross Reference
Table" on page 1417.
To edit a name of a column in a cross reference table, perform the following steps:
1. On the Edit Columns page of the XrefAdminApplication, select a table from the drop-
down list. The columns in the table are displayed.
2. Under Edit Column, select a column from the drop-down list.
3. Enter the new column name in the New Name field, and then click Rename. The new
column name is displayed.
Important: Avoid using any Oracle Database Reserved Words for table or
column names. Cross reference table and column names can include
uppercase and lowercase alphanumeric characters only.
To change a type of column in a cross reference table, perform the following steps:
Note: You can only change a column type if the column does not contain data.
1. On the Edit Columns page of the XrefAdminApplication, select a table from the drop-
down list. The columns in the table are displayed.
2. Under Edit Column, select a column from the drop-down list.
3. Select the new data type from the Type drop-down list, and then clickChange Type.
The new column data type is displayed.
Delete a Column
To search the contents of a cross reference table, perform the following steps:
1. On the View Data page, select a table from the drop-down list. The names of the
columns in the table are displayed.
2. Under Search Data, select the criteria by which to search. You can search one or
multiple columns and criteria.
Criteria Description
Column Which column in the table to search.
Operator The search operator. Options include EQUALS, NOT EQUALS,
GREATER THAN, GREATER THAN OR EQUALS, LESS
THAN, LESS THAN OR EQUALS, LIKE, NOT LIKE, IS NULL,
and IS NOT NULL.
Value The data to search for. This field is case sensitive.
Example
You could use the following criteria to view all the data in a table:
Column Operator Value
ID ISNOTNULL
3. Click Search. A message is displayed in the log pane with the number of rows returned
by the search criteria, and the data meeting the criteria is displayed in the table.
4. If more than 25 rows are returned, use the Previous and Next buttons to view more
results, or change the Rows PerPage number.
5. To clear the criteria used in a previous search, click Clear.
Insert Row
Update Row
To modify the contents of a row in a cross reference table, perform the following steps:
1. On the View Data page, select a table from the drop-down list. The names of the
columns in the table are displayed.
2. Under Edit Data, enter the ID of the row you want to edit and then click Load. The
data for the row is displayed in the fields for each column below.
Tip: If you do not know the row ID, perform a search for the row and
obtain the ID. For more information, see "Search for Data in a Table" on
page 1416.
3. Modify the data in the fields for each column as desired.
4. Under Update Row, click Update. A message is displayed in the log pane confirming
the updated row.
Note: The data displayed for a table in the View Data page is not dynamically
updated. To view updated data, perform a new search on the table. For more
information, see "Search for Data in a Table" on page 1416.
Delete Row
To delete a row from a cross reference table, perform the following steps:
1. On the View Data page, select a table from the drop-down list. The names of the
columns in the table are displayed.
2. Under Edit Data, enter the ID of the row you want to edit and then click Load. The
data for the row is displayed in the fields for each column below.
Tip: If you do not know the row ID, perform a search for the row and
obtain the ID. For more information, see "Search for Data in a Table" on
page 1416.
3. Under Delete Row, click Delete. A message is displayed in the log pane confirming the
deleted row.
Note: The data displayed for a table in the View Data page is not dynamically
updated. To view updated data, perform a new search on the table. For more
information, see "Search for Data in a Table" on page 1416.
imported must match the data type of the columns in the existing table in Spectrum.
l Data that is imported without anID number is inserted as a new row and assigned an ID.
l Data that is imported with a unique assigned ID number is inserted as a new row with the
ID provided.
l Data that is imported with an existing ID number overwrites the previous data in the
existing row.
To import data to a cross reference table, perform the following steps:
1. Click Print.
2. In the Documents tree, open the Cross Reference Table App folder and select the
XrefUserApplication.
3. On the View Data page, select a table from the drop-down list. The names of the
columns in the table are displayed.
4. Click Import CSV. The Import Data page is displayed.
5. On the ImportData page, click Select File.
6. In the browser's Open dialog box, select the CSV file you want to import and then
clickOpen.
7. On the Import Data page, review the displayed data for accuracy.
8. Review and resolve any issues displayed under Warnings.
9. Click Commit. A message is displayed confirming the rows have been committed.
10. Click Back to View Data to search or edit data. For more information, see " View Data
in a Cross Reference Table" on page 1415.
To search the contents of a cross reference table audit record, perform the following steps:
1. On the View Audit Records page, select a table from the drop-down list. The names of
the columns in the audit table are displayed.
2. Under Search Data, select the criteria by which to search. You can search one or
multiple columns and criteria.
Criteria Description
Column Which column in the table to search.
Operator The search operator. Options include EQUALS, NOT EQUALS,
GREATER THAN, GREATER THAN OR EQUAL, LESS THAN,
LESS THAN OR EQUAL, LIKE, NOT LIKE, IS NULL, and IS
NOT NULL.
Value The data to search for. This field is case sensitive.
Example
You could use the following criteria to view all the data in the audit table:
Column Operator Value
ID ISNOTNULL
3. Click Search. A message is displayed in the log pane with the number of rows returned
by the search criteria, and the data meeting the criteria is displayed in the table.
4. If more than 25 rows are returned, use the Previous and Next buttons to view more
results, or change the Rows PerPage number.
5. To clear the criteria used in a previous search, click Clear.
To export data from a cross reference table audit record to a comma-delimited text file (CSV)
file, perform the following steps:
1. On the View Audit Records page, select a table from the drop-down list. The names of
the columns in the audit table are displayed.
2. Perform a search on the table for the data you want to export. For more information, see
"Search for Data in a Table Audit Record" on page 1425.
3. Click ExportCSV. The Export dialog box is displayed when the file is ready.
4. In the Export dialog box, click OK.
5. In your browser's Save As dialog box, do the following:
a. Select a location to save your file.
b. Enter a file name.
c. Select or enter .csv for the file type.
d. Click Save.
You can now open and view this file in a spreadsheet application such as Microsoft Excel.
Troubleshooting
The following topics contain tips for troubleshooting issues with LoftwareSpectrum.
Logging Levels
The following are the different types of messages that may be included in a log for
LoftwareSpectrum:
lFatal error messages: These messages indicate situations in which the application must
shut down or is unusable.
l Error messages: These messages indicate that the application is in an unexpected and
possibly compromised state. A user may have performed an action that compromised the
application.
l Warning messages: These messages indicate that something unintended and notable
occurred in the application, or may indicate an important application state change. The
application may have acted in a way that is a cause for concern, but has not impacted the
stability of the application. A user may have made a mistake, but has not compromised
the application.
l Informational messages: These messages indicate that something notable occurred,
such as the printing of a label and the startup or shutdown of Spectrum. These messages
may provide helpful information if a problem is occurring, but their existence does not
indicate a problem.
l Debugging messages: These messages provide debugging information that may help a
Level Description
TRACE Fatal error, error, warning, informational, and debugging messages are
included in the log, as well as tracing where defined.
Note: This level should be used only when directed by
Loftware Technical Support.
ALL Messages of all types are included in the log.
Note: This level should be used only when directed by
Loftware Technical Support.
Rollover triggers are configured within the <RollingFile> element by setting the <Policies>
element. A rollover trigger can be size-based and time-based.
The following example defines two rollover triggers: when the log file size reaches 200 MB and
when the current date no longer matches the logs start date.
<RollingFile name="CRITICAL_MONTHLY_ROLL" fileName="${LOG_
DIR}/spectrum-critical.log"
filePattern="${LOG_DIR}/spectrum-critical.%d{yyyy-
MM}-%i.log.gz">
<PatternLayout pattern="${PATTERN}" charset="UTF-8" />
<Policies>
<SizeBasedTriggeringPolicy size="200 MB" />
<TimeBasedTriggeringPolicy />
</Policies>
</RollingFile>
Configure Appenders
The default appender is configured within the <Root> element by using the <AppenderRef>
element.
<Root level="warn">
<AppenderRef ref="DAILY_ROLL" />
</Root>
Package-Level Loggers
Package-level loggers, which are commented out by default, can be customized for
troubleshooting purposes. You can enable and configure logging for packages by uncommenting
the corresponding node and adjusting the level.
The following example in the <LOGGER Groupings> section defines the logging
configuration of the com.loftware.model.StartupInitializer package:
<!--
<Logger name="com.loftware.model.StartupInitializer"
level="DEBUG" />
-->
The System Log is the default log for Spectrum. It provides a full, lifetime view of the
application. All messages are captured in this log, so the other logs can be reconciled against this
one to provide additional context if needed. The default logging level for this log is WARN.
The Critical Event Log includes messages about issues that are critical to the functioning of
Spectrum. The default logging level for this log is INFO. Depending on the logging level
configured, information such as the following may be included.
l Startup and shutdown information (if the logging level is INFO level or better).
l Licensing changes (if the logging level is INFO level or better).
l Fatal error messages (if the logging level is FATAL or better).
l Any appropriate error messages (if the logging level is ERROR or better).
The Driver Install Log captures information about device driver service. The default logging
level is DEBUG.
The Integration Event Log captures information for Java MessageService(JMS) integrations.
Spectrum supports the Event JMS Consumer and the Event JMS Producer integrations. For
more information, see "Event Integration" on page 1134.
The default logging level for this log is INFO. Depending on the logging level configured,
information such as the following may be included.
l Messages sent between client computers.
l Custom user log messages, such as logs entered in the JavaScript for integrations.
The Printing Event Log captures every meaningful state transition in the lifetime of a job and a
print job detail as they progress through Spectrum, as well as any issues that occur. Device
connection information is included.
The default logging level for this log is INFO. Depending on the logging level configured,
information such as the following may be included.
l The beginning and end of each print job.
l The printing state for each job.
l The printing state for each print job detail.
l The destination (device) for each job.
l The label template and layout for each job.
l The requester of the print job.
l Any errors that occur during printing.
The Security Event Log includes messages about actionspositive and negativerelated to
security. The default logging level for this log is INFO. Depending on the logging level
configured, information such as the following may be included.
l User additions, modifications, or deletions (if the logging level is INFO level or better).
The user name is included.
l Security problems (if the logging level is WARN or better). For example, a user without
the necessary permissions attempting to perform an action, or an administrator attempting
to create an object without providing a required parameter. In many cases, the Spectrum
user interface will prevent these issues, but those not prevented by the user interface are
recorded in the Security Event Log.
l User logins and logouts (if the logging level is INFO level or better). The user name is
included.
The SOAP Web Service log captures information about SOAP Web Service Data Service
requests. The default logging level is WARN.
The Entity Sync Log includes information about objects1 replicated from headquarters to
facilities during synchronization in a multi-site deployment. The default logging level is
DEBUG.
1An item in Spectrum such as a role, group, user, business rule, application, workflow template, data service, form, image,
integration, job, label template, layout, device, device group, process, reusable object, facility, Remote Site, Spectrum Application
Server, or server process.
The Transaction Sync Log includes information about transactional data1 replicated from
facilities to headquarters during synchronization in a multi-site deployment. The default logging
level is DEBUG.
1In a multi-site deployment of Spectrum, information about recent synchronizations that can be used for auditing. During a
transaction sync, this data can be replicated from a facility to headquarters.
The User Event Log can be turned on to show user-defined log messages from business rules.
The default logging level for this log is INFO.
Windows C:\Loftware\Spectrum\Spectrum\product\webapps\logs
Linux /opt/loftware/spectrum/Spectrum/product/webapps/logs
For Spectrum Application Server log files, go to the <SPECTRUM_HOME>\product\logs
folder.
Example
Windows C:\Loftware\Spectrum\Spectrum\product\logs
Linux /opt/loftware/spectrum/Spectrum/product/logs
Note: For Linux users, the folder and files within <SPECTRUM_
HOME>/product/logs are owned by the Spectrum user that installed Spectrum.
Date/Time Values
Date/time values in Spectrum, including those obtained from a Database data source, are stored
in a special milliseconds format. You can use a Script data source to convert a date/time value to
a human readable format. For more information, see "Script Examples: Change the Format of a
Date" on page 387.
Symptom Resolution
Users cannot See " Controlling Access in Spectrum" on page 560. In particular, review
see, open, or the flowchart in "Order of evaluation limits inheritance" in the "Access
select a label Concepts in Spectrum" section.
template, folder,
user, or other
object.
Users cannot To print, a user requires Read, Create, and Print permissions for
print using a Documents. Both role-based permissions and object access permissions
label template orare required.
process. For more information, see " Controlling Access in Spectrum" on page
560. Review the flowchart in "Order of evaluation limits inheritance" in
the "Access Concepts in Spectrum" section.
Users cannot see To see or change a device queue, a user requires Read and Queue
a device queue permissions for Device Groups. For more information, see " Configuring
for a device. Device Access" on page 611.
1Permissions in Spectrum that are assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned. A user must have both a role-based permission and the corresponding
object access permission to perform an action on an object.
2Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Symptom Resolution
Permissions for Although a user inherits the roles of a group in which the user has
a user are not membership, those roles are displayed only on the Roles tab for the
displayed where group, not on the Roles tab for the user or the Users tab for the role. As
expected. a best practice, it is recommended that you configure permissions for
roles, assign roles to groups, and add users to groups.
Administrators One of the following approaches may resolve the issue:
are unable to l To assign a role to a user, Admin and Read permissions for Roles
assign roles to are required. By default, a user with the Local Admin role has
users. both of these privileges for roles. However, if the Do not allow
Local Administrator to assign this role to other users check
box is selected on the Permissions tab for the role, then users
with Local Admin receive only Read privileges for the role. This
check box can only be configured by a user who has both the
Local Admin and ROLE_ADMINISTRATOR roles.
l If you are a ROLE_ADMINISTRATOR or SuperAdmin and are
Symptom Resolution
A Security See "Troubleshoot General Issues" on page 1448.
service not
available
message is
displayed.
Users are unable If a Security service not available message is displayed, see
to log into "Troubleshoot General Issues" on page 1448.
Spectrum. If using LDAP authentication, see "Troubleshoot LDAP
Authentication" on page 1479.
Important! If you delete a custom parameter from a JDBC data service, the
parameter is automatically removed from any Database data sources associated with
that data service.
Symptom Resolution
An error message occurred The data service is not running. Save and start the data service
when attempting to run a before attempting to run a query.
query for the first time.
Changing a JDBC data A Database data source contains a copy of the configuration
service does not produce in the JDBC data service rather than a link to it. For more
any change in the label data.
information about the behavior to expect, see " Managing
Data Service Parameters" on page 986.
Deleting a custom If the Data Service Administrator deletes a custom parameter
parameter from a JDBC data in the JDBC data service, that parameter is automatically
service causes the removed from the associated data sources. For more
parameter to vanish from information about the behavior to expect, see " Managing
existing Database data Data Service Parameters" on page 986.
sources.
Symptom Resolution
A JDBC data service will To enable Spectrum to connect to most types of databases,
not run and the following you must install a third-party Java Database Connectivity
message is displayed: No (JDBC) API driver on the SpectrumApplicationServer. For
suitable driver. more information, see " Add a JDBC Driver to Spectrum" on
page 989.
A Channel disconnected This message may be displayed during an attempt to use a data
error is displayed when source if the data service has failed and is not load balanced
retrieving data by using a by using distributed services in Spectrum.
data entry form that points If the data service is configured to fail over to another
to a data source. SpectrumApplicationServer, this message may still be
displayed because there is a brief interruption during failover.
Use one of the following approaches to resolve the issue:
l Eliminate the potential for this error by using
Troubleshoot Design
For information about designing label templates and layouts, see "Designing Labels and Forms"
on page 117. For information about managing access to label templates, layouts, see "
Controlling Access in Spectrum" on page 560.
Symptom Resolution
A printed label includes the wrong See " Troubleshoot Label Data Sources" on page
data. 1457.
A Text Box field is not printing as See " Troubleshoot Label Data Sources" on page
intended. 1457.
Labels are not printed in the See " Troubleshoot Layouts" on page 1461.
expected layout.
Label Specific Options are not See " Troubleshoot Label Specific Options" on page
having the intended effect. 1460.
After opening a label template, the If the label or the form has very large dimensions or
Label view, Form view, or both contains an extremely large number of objects, it may
are not displayed. be exceeding the memory available to your web
browser. Using a 64-bit web browser may resolve the
issue.
In Preview, only an outline of the If the label or the form has very large dimensions or
label design is displayed. contains an extremely large number of objects, it may
be exceeding the memory available to your web
browser. Using a 64-bit web browser may resolve the
issue.
When attempting to save a label If the label or the form has very large dimensions or
template, a contains an extremely large number of objects, it may
Server.Acknowledge.Failed error be exceeding the memory available to your web
or a Warning: Unresponsive browser. Using a 64-bit web browser may resolve the
plugin error is displayed. issue.
Time values entered in hours, See "Time Values in Spectrum" on page 1449.
minutes, or seconds do not
produce the intended effect.
Users cannot see, open, or select a See " Troubleshoot Access Control (Permissions)" on
label template, folder, user, or page 1450.
other object.
Symptom Resolution
A label template that was migrated You can view information about issues that occurred
from an LPS environment to during migration from an LPS environment to a
Spectrum produces printed labels Spectrum environment.
that differ from those printed using In Design, open the label template and click the
LPS. Label view.
In the Properties pane, review the Migration and
Migrated properties.
If Migrated with issues is displayed, click the
icon in the Migrated property to display a report of
all migration issues.
If you have a concern about a specific field, click that
field. In the Properties pane, if Migrated with
issues is displayed, click the icon to display a tool
tip showing migration issues for that field.
includes the length of the data. For example, if a text field refers to a label data
wrong data. source, you must ensure that the Chars Per Line, # Lines, and Max
Chars for the field are great enough to accommodate the expected
data. Similar properties exist for Barcode fields. For Text Box fields,
printed data can be truncated by the Text Box Overrun Mode. For
more about this mode, see "System Management Page" on page 775.
l If the label data source is a Date/Time data source, an administrator
that neither the process nor a business rule is overriding the label data
source or affecting the output in an unanticipated manner.
A Text Box The following factors can affect the how text in a Text Box field is displayed:
field is not l Data in a Text Box field automatically wraps at the end of each line if
printing as the text would otherwise extend beyond the envelope of the field.
intended. When line wrapping occurs, the line break is either at the end of a
word or after a hyphen, en-dash, or em-dash. If a word is too wide to
fit in the field, a line break occurs within the word at the edge of the
envelope.
l If more data is received for a Text Box field than will fit, the Text
Symptom Resolution
A Database Any Database data source or Alternate data source used in a label template
data source that must support on-demand printing must have at least one trigger 1. If the
or an data source must support both on-demand printing and integrations, then it
Alternate must have at least two triggers, including one with a Do Not Run trigger
data source source. If the data source does not need to support on-demand printing, then
is failing to no triggers are required. For more information, see "Triggers in Design" on
query the page 419.
associated
data service.
Data If the label template must support on-demand printing and includes a
sources in a Database data source and an Alternate data source (or more than one of
label either), review the triggers for the data sources. Determine whether triggers
template are with the same combination of trigger source, trigger event, and trigger key (if
being run in any) are used by more than one data source in the label template, regardless of
the wrong the type of data source. If so, it may be necessary to configure values for
order. trigger priority 2 to manage the order in which the data sources are run. For
more information, see "Triggers in Design" on page 419.
When The dialog box displays only Database data sources and Alternate data sources
adding a for which the selected field or form has is not already configured as a trigger
trigger via source.
the l In the Properties pane, you can confirm whether a trigger already
1A means of running a data source, form rule, or business rule. Includes a trigger source if interactive (such as a button, a prompt,
or a form) and a trigger event (such as clicking a button, entering text at a prompt, loading a form, or submitting a job). For
example, you can specify a particular button as a trigger source that Data Providers can click to perform a query of a database.
2The order in which data sources, form rules, or business rules that have otherwise identical triggers are run. Trigger values are
compared only if the triggers have the same trigger source, trigger event, and trigger key (if any). The type of data source is
irrelevant. Among data sources, form rules, or business rules with otherwise identical triggers, the data source with the lowest
value for trigger priority is run first.
Symptom Resolution
An Some drivers provide native support for Inc/Dec behavior, which may
Inc/Dec improve performance. To optimize performance, ensure that the Minimum
data source Value and Maximum Value include the same number of digits. The
is causing a Minimum Value can be padded with leading zeros.
job to
complete
more
slowly.
Troubleshoot Layouts
For information about using layouts, see "Managing Label Templates" on page 89. For
information about managing access to layouts, see " Controlling Access in Spectrum" on page
560.
Tip: If you are working with a label template, layout, or image that is in a version-
controlled folder and problematic changes have been made to it, an administrator
can roll back to a previous version of that label template, layout, or image.
Symptom Resolution
Changes to a If label templates and layouts are designed in one folder and copied to
layout are not another, by default the label templates in the second folder are still
reflected in the associated with the layouts in the original folder. Associate the label
output from a templates in the second folder with the intended layouts.
label template to Best Practices
which the layout
If label templates that you create are typically copied from
is attached.
one folder to another, it is recommended that you save
layouts and label templates in separate folders to prevent
confusion.
The label image is If you use a Datamax (DPL) or Intermec (IPL) printer to print a label
anchored to the that is less than the media size (for example, print a 4"4" label to a
bottom of the printer with 4"6" stock), the label image will be anchored to the
output rather than bottom of the output due to DPL and IPL using a coordinate system in
the top. which the point of origin is at the bottom. Use the Print Rotation
property of the label to rotate the label image 180.
An existing layout If the layout is version controlled, then it must be published before it
is not available to can be attached to a label template. For more information about version
be attached to a control, see "Working in a Version-Controlled Environment " on page
label template. 79 or " Managing a Version-Controlled Environment" on page 701.
Additionally, appropriate access to the layout must be granted the user.
For more information, see " Controlling Access in Spectrum" on page
560.
Troubleshoot Devices
For information about managing device connections, see " Managing Devices" on page 794. For
information about managing access to device connections, see " Controlling Access in
Spectrum" on page 560.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
Symptom Resolution
The Remote Print Reinstall the Remote Print Agent. The correct Remote Site Name
Agent is unable to and Remote Site ID can be obtained from the Remote Site in Device
connect to Spectrum Management.
because the Remote
Site Name or Remote
Site ID is incorrect.
A thermal printer is For thermal printers, always set the resolution to what is reported
exhibiting unexpected by the device.
behavior.
A QuickLabel device If a QuickLabel device is in sleep mode when Spectrum sends a
enters an Errored state print job to it, the device may enter an Errored state. To resolve
when a print job is sent this issue, restart the QuickLabel device.
to it.
A QuickLabel device For QuickLabel devices, always set the label template size to
is exhibiting match the stock size.
unexpected behavior.
Print jobs are not If the configuration of a NeuraLabel device inSpectrum does not
printing from a match the media in the device, an error may occur at the device
NeuraLabel device, resulting in failed print jobs. Because the error occurs at the
even though the status device, Spectrum reports the status as Completed. To resolve,
in Spectrum is check that your configuration matches the media in the device.
Completed. For more information, see " NeuraLabel Device Driver" on page
899.
Symptom Resolution
Font recall is not For Zebra devices, x.14 or later firmware is required to support
performing as font commands.
expected. For font recall1 to function, the font file for each combination of
font and style must be loaded into device memory. If the font file
is not loaded into device memory at the location that you specified
in Spectrum, then the device's default font is used for font recall.
Font recall is not supported for Spectrum's built-in fonts.
If the font installed in Spectrum and the font loaded into device
memory are not the same, you may have unexpected results.
If a field includes any of the following characteristics, then the
font alone cannot be used to format the text and Spectrum must
generate an image of the formatted text for that field. When this
approach is necessary, font recall cannot be applied for the field.
l Text is rotated into a non-cardinal orientation.
l Text is centered.
For more information about font recall, see " Fonts for Zebra
Devices" on page 951.
Label Specific Options See " Troubleshoot Label Specific Options" on page 1460.
are not having the
intended effect.
1The ability to reference a font and style at print time by using a font file stored in device memory. Using font recall can reduce the
amount of data in the print stream and therefore improve performance.
Important! Whenever you add a new device, data service, or integration, you must
ensure that the service is activated on all SpectrumApplicationServers on which it
should be available to run and started on at least one. In an environment with only
one SpectrumApplicationServer, these types of services are automatically
activated and started when they are created. For more information, see "High
Availability with Distributed Services" on page 716.
7. Review the Windows Event Log for relevant events to diagnose the issue.
a. In Control Panel, click Administrative Tools and double-click Event Viewer.
b. In the Event Viewer, click Custom Views and then click Administrative
Events.
c. Review the details of events for which the Source is Spooler-LPDSVC and the
Event ID is a number from 4000 through 4009.
d. If the Event ID is 4009, note whether the name of the device shown in the event
is as expected.
8. If the device name was entered correctly but does not appear to be valid, it may be
necessary to configure a registry value in the Windows Registry on the computer to
which the device is connected.
a. In the Registry Editor, navigate to HKEY_LOCAL_
MACHINE\SYSTEM\CurrentControlSet\Control\Print.
b. If the DnsOnWire registry value exists, set its value data to 1. If it does not exist,
create a new DWORD (32-bit) Value named DnsOnWire and set its value data
to 1.
Important! The Font Management Service should be activated and started on all
SpectrumApplicationServers to ensure consistent fonts.
Symptom Resolution
A Channel disconnected This message may be displayed during an attempt to use a
error is displayed when data source if the data service has failed and is not load
retrieving data by using a balanced by using distributed services in Spectrum.
data entry form that points If the data service is configured to fail over to another
to a data source. SpectrumApplicationServer, this message may still be
displayed because there is a brief interruption during failover.
Use one of the following approaches to resolve the issue:
l Eliminate the potential for this error by using
Tip: You can check the version of LoftwareSpectrum and obtain information
about its components, the SpectrumApplicationServer, and your Spectrum
license (including the integrations allowed) by clicking in the Spectrum
title bar. You can save a copy of the information by clicking the Copy to
Clipboard button in the About Loftware Spectrum dialog box and pasting into
an application such as a word processor.
Symptom Resolution
Problems are occurring with a File Drop See " Troubleshoot File Drop Integration" on
integration. page 1471.
Problems are occurring with an Oracle See " Troubleshoot Oracle Integration" on
integration. page 1475.
Problems are occurring with an Integration See " Troubleshoot Integration for Use with
for use with SAP Applications. SAP Applications" on page 1477.
Tip: You can check the version of LoftwareSpectrum and obtain information
about its components, the SpectrumApplicationServer, and your Spectrum
license (including the integrations allowed) by clicking in the Spectrum
title bar. You can save a copy of the information by clicking the Copy to
Clipboard button in the About Loftware Spectrum dialog box and pasting into
an application such as a word processor.
Symptom Resolution
No print job You must determine whether the issue is due to the integration, the process
files are and business rule, or the device and device driver.
printing One of the following approaches may resolve the issue:
l Verify that the integration is running by checking for the presence of
Symptom Resolution
One or One of the following approaches may resolve the issue:
more print l Verify that the job file has one of the file extensions specified in the
in the Scan Folder and is locked. (A file may be locked if it is open for
editing.) If so, either unlock the file, remove the file, or clear the
FIFO check box.
l Click Status and search for job files that were submitted but not
Symptom Resolution
l To obtain information to help diagnose the issue, select Archive
Original Job File and Archive XML and then resubmit the job. If
the Archive Original Job File and Archive XML options are
selected, the job file should appear in the Scan Folder and then move
to one of its subfolders.
l Scan Folder: If the job is in this folder, it has not yet been
processed. Ensure that files in this folder are not locked. Files
should not be edited in this folder.
l processing: If the job is in this subfolder, Spectrum has begun
to process it. Ensure that files in this folder are not opened for
editing or locked for any other reason.
l processed: If the job is in this subfolder, it has been
completed successfully.
l error: If the job is in this subfolder, Spectrum attempted to
Symptom Resolution
Code 10008 If you clicked Status, double-clicked a job record, and Code 10008 was
under Job displayed, then the Run As user account for the integration may not have the
Error necessary object access permissions1 for an object used by the job. For
more information, see " Configuring a Run As User for Integrations" on page
1043.
Code 10016 If you clicked Status, double-clicked a job record, clicked a row in the
under Process Errors table, and Code 10016 was displayed, then the job file may
Process include an incorrect path. Correct the path and copy the job file to the Scan
Errors Folder again.
Performance Any of the following configuration changes may improve performance.
when using l Ensure that the Archive Original Job File and Archive XML check
1Permissions in Spectrum associated with a specific object or with a folder that control what actions can be performed on that
object or on objects within that folder. Each object has default permissions that can be overridden by exceptions for a specific
group or user. A user must have both a role-based permission and the corresponding object access permission to perform an
action on an object.
Tip: You can check the version of LoftwareSpectrum and obtain information
about its components, the SpectrumApplicationServer, and your Spectrum
license (including the integrations allowed) by clicking in the Spectrum
title bar. You can save a copy of the information by clicking the Copy to
Clipboard button in the About Loftware Spectrum dialog box and pasting into
an application such as a word processor.
Symptom Resolution
Problems are If print jobs are not printing, you must determine whether the issue is
encountered due to the integration, the process and business rule, or the device and
with an Oracle device driver.
integration.
Symptom Resolution
After Spectrum After you perform an upgrade of Spectrum, you must update each Oracle
is upgraded, an integration before it can be run. This is part of the Spectrum upgrade
Oracle process, but exists as a separate step to provide you with flexibility about
integration will when you schedule updates to Oracle integrations.
not run. To update an Oracle integration, attempt to start the integration. If the
integration has not been updated, an Oracle Integration Update
Required dialog box is displayed and provides you with an opportunity
to perform the update.
Important! Updating one Oracle integration does not
update any other Oracle integration. You must update each
Oracle integration separately.
The creation of Verify that an Oracle user account has been created in Oracle for use
an Oracle with Spectrum. Spectrum uses the credentials of this Oracle user account
integration fails. to connect to the Oracle database. For more information, see "Configure
an Oracle User for Spectrum" on page 1063.
Verify that the Oracle database server can connect to the
SpectrumApplicationServer. Network connectivity to the port that
Spectrum listens on (by default, port 8080) must exist.
Tip: You can check the version of LoftwareSpectrum and obtain information
about its components, the SpectrumApplicationServer, and your Spectrum
license (including the integrations allowed) by clicking in the Spectrum
title bar. You can save a copy of the information by clicking the Copy to
Clipboard button in the About Loftware Spectrum dialog box and pasting into
an application such as a word processor.
Symptom Resolution
Problems are One of the following approaches may resolve the issue:
encountered l If print jobs are not printing, you must determine whether the issue
with an is due to the integration, the process and business rule, or the
integration for device and device driver.
use with SAP l In label templates in Design, ensure that only uppercase text is
applications. used in the Data Ref fields. By default, Data Ref fields are case
sensitive.
l In SAP BC-XOMintegrations, ensure that the Integration Name
Symptom Resolution
Users are If authentication has failed unexpectedly, one of the following approaches
unable to log in may resolve the issue:
to Spectrum. l Ensure that the user has an account configured in Spectrum with
URL, ensure that the URL does not end with a slash.
l Ensure that the correct port is included in the Provider URL. The
default port for LDAP over SSL (LDAPS) is 636. The default port
for LDAP is 389.
l Review the Provider URL and the Search Base to ensure that
1Distinguished name. A unique entry in a directory managed using Lightweight Directory Access Protocol (LDAP).
Symptom Resolution
After If errors such as "java.lang.IllegalStateException: Cannot unload the page
configuring file when it is not loaded" appear in the Spectrum log file after configuring
single-sign on, single-sign on (SSO) using Integrated Windows authentication, do the
errors appear in following:
the log file. 1. Stop the Loftware Spectrum service.
2. Delete the following file from the SpectrumApplicationServer:
<SPECTRUM_HOME>\product\jms-data\db-1.log
3. Restart the Loftware Spectrum service.
References
The following topics provide reference material relevant to more than one page in
LoftwareSpectrum.
Tip: In a Save As dialog box, you can create a subfolder within the selected folder
by clicking the Add Folder button.
Navigation Tree
The left pane of an Open or Save As dialog box contains a navigation tree.
Command Description
Display To display the contents of a folder, double-click the folder in the navigation tree.
Contents The contents of the folder are displayed in the object list in the middle pane.
Delete To delete a folder and its contents, right-click the folder and then click Delete.
Notes:
l A folder can only be deleted if you have Delete permissions
Object List
The middle pane of an Open or Save As dialog box displays a list of the objects in the folder
selected in the navigation tree.
Command Description
Display To display details about a folder, click the folder in the object list once.
Details Information about the folder is displayed in the Details pane.
To display details about an object other than a folder, click the object once.
Information about the object is displayed in the Details pane. If the object
supports tags, then the Tags pane is displayed and lists the value for each tag
category assigned to the object.
Display To display the contents of a folder, double-click the folder in the object list. The
Contents contents of the folder are displayed in the object list in the middle pane.
Delete To delete an object, right-click the object and then click Delete.
Move To move an object, click and drag the object to a new folder. Alternatively, you
can right-click the object and then click Move to.
Search Box
The Search box allows you to search for objects within a folder and its subfolders.
Command Description
Search If you do not know where to find a particular object, in the navigation tree click
the top-level folder, type part of the name of the object into the search box, and
click the Search button. Search results are displayed in the object list pane.
Note: Only the folder selected in the navigation tree and its
subfolders are searched.
The following topics are comparable references for barcode properties and script methods.
l "Barcode Properties and Symbologies" on page 204
l "Script Methods for Barcodes" on page 347
Reserved Keys
The reserved keys listed in the following topics can be used in Process Design. Some may also
be used in Design or displayed in Status.
1A single request to use a label template to print to a specific destination. Depending on the values for Quantity, Duplicates, and
Pages, a print job detail may generate multiple labels.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
3The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
4The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
5The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
6To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
1A repository for the data for use when responding to a print request. Each data map entry is composed of a name (key) and a
value.
Job Processing
Reserved
Description
Key
clientcode The name of the integration that was used to submit the job.
createdate The date when the job was created.
currenttimeCurrent time on the SpectrumApplicationServer. This value is in Epoch
time 1.
jobname The name of the submitted job.
jvmname The name of the SpectrumApplicationServer processing the request.
rowindex The name of the current row if processing rows or a list of data.
servername The name of the SpectrumApplicationServer that is processing the job.
userdomain The domain (if any) specified in Spectrum for the user associated with the
print request.
username Spectrum user name of the user associated with the print request.
1The number of seconds since 00:00:00 UTC on 1 January 1970, not including leap seconds.
Printing
The following reserved keys can be used to refer to detailed device data retrieved from a cab
device by using a detailedDeviceStatus or detailedDeviceInfo business rule component. For
examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following reserved keys can be used to refer to detailed device data retrieved from a
Datamax-O'Neil device by using a detailedDeviceStatus or detailedDeviceInfo business rule
component. For examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following reserved keys can be used to refer to detailed device data retrieved from a PCL1
device by using a detailedDeviceStatus or detailedDeviceInfo business rule component. For
examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following reserved keys can be used to refer to detailed device data retrieved from a
QuickLabel device by using a detailedDeviceStatus or detailedDeviceInfo business rule
component. For examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following reserved keys can be used to refer to detailed device data retrieved from a SATO
device by using a detailedDeviceStatus or detailedDeviceInfo business rule component. For
examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
The following reserved keys can be used to refer to detailed device data retrieved from a Zebra
device by using a detailedDeviceStatus or detailedDeviceInfo business rule component. For
examples, see "Retrieve Detailed Device Status (XML)" on page 1221.
Important! The detailedDeviceStatus and detailedDeviceInfo business rule
components are supported for use only with cab, Datamax-O'Neil, PCL,
QuickLabel, SATO, and Zebra devices.
Important! Content in a business rule is case sensitive. This includes business rule
component names, attributes, and values.
For more information about these character sets, see the "Character Sets" section in "External
Links" on page 1645.
1Person who creates and designs label templates for use by Data Providers. Also a default role in Spectrum.
2Person or process that enters data into a form or other data entry view for a label that was configured by a Document Designer. A
user acting as a Data Provider requires the Document Printer role or equivalent permissions.
Loftware, Loftware Spectrum, LLM, Loftware Label Design, Loftware Print Server, LPS, Loftware Connector, Global Marking
Solutions, I-Push, and I-Pull are all registered trademarks of Loftware, Inc. Loftware WebAccess, LWA, and Loftware Web Services
are trademarks of Loftware, Inc. SAP is a registered trademark of SAP AG in Germany and in several other countries. Oracle and
Java are registered trademarks of Oracle and/or its affiliates. All other marks are the property of their respective owners. Loftware
Spectrum contains barcode components licensed from IDAutomation.com, Inc. These products may only be used as part of and in
connection with Loftware Spectrum.
Welcome to LoftwareSpectrum 20
Documentation and Support 21
About the LoftwareSpectrum UserGuide 22
Open the SpectrumUserGuide 23
User Interface: Help 24
About Loftware Spectrum 25
Tabs 26
Buttons 28
Licensing, Warranty, and Support 29
Technical Support 30
Contact Loftware 31
Sales 32
Customer Account Management 33
Engineering Technical Support (ETS) 34
Professional Services Group 35
Technical Requirements for Spectrum3.0 37
Server Requirements for Spectrum3.0 39
Requirements for Loftware Spectrum Database Server with Existing Oracle
Database 40
Requirements for Loftware Spectrum Database Server with Embedded Database 41
Requirements for Loftware SpectrumApplicationServer 42
Requirements for Multi-Site Deployment 43
Server Performance Tips 44
Client Computer Requirements for Spectrum3.0 46
Requirements for Spectrum Client Computers 47
Requirements for SpectrumRemotePrint Agent Computers 49
Other Requirements for Integrations 50
Requirements for Oracle Applications Integration 51
Requirements for Integration for use with SAP Applications 52
Log in to Spectrum 53
Spectrum Root Folder 57
Change Your Password 58
Loftware Spectrum Tools 59
Designing Labels 60
Configuring the Design Workspace 61
Set User Preferences 62
Select Data to Display in Design 63
Active Printers
This query returns Devices (Physical Devices) that have not been deleted. You must run a join
with Device Groups (Logical Devices), because the deleted flag is stored on that object.
SELECT PD.FULL_NAME FROM LOFTREPORTS.R_PHYSICAL_DEVICES PD,
LOFTREPORTS.R_LOGICAL_DEVICES LD
WHERE PD.LOGICAL_DEVICE_NAME = LD.FULL_NAME AND LD.DELETED =
'N';
Existing Users
This query shows the full names of all the users in the Spectrum environment that have not
been deleted.
SELECT U.FULL_NAME FROM LOFTREPORTS.R_USERS U WHERE DELETED =
'N';
Failed Jobs
This query returns full information about all failed jobs.
SELECT TJ.JOB_STATE, TPE.JOB_ID, TJ.NAME, TJ.FOLDER_FQN JOB_
FOLDER, TJ.ERROR_MESSAGE, TJ.NAME, TPE.MESSAGE, TPE.STACK_TRACE,
TPE.ERROR_CODE
FROM LOFTREPORTS.R_JOB TJ, LOFTREPORTS.R_PROCESS_ERRORS TPE
WHERE TPE.JOB_ID = TJ.ID;
The following are Master Data Views available using the Spectrum Reporting Schema.
R_DOCUMENTS is a Master Data View providing access to all objects in Loftware Spectrum
that are managed by using Documents permissions. These include the following types of
objects: label templates, forms, layouts, images, reusable objects, applications, business rules,
and workflow templates. Use the DOCTYPE column to determine the document type.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Document. This is
unique among all Documents in a Spectrum environment.
MODIFIED Timestamp The time when this Document was last modified.
CREATED Timestamp The time when this Document was created.
CREATED_ String The User that created this Document.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Document.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
FULL_NAME String The fully-qualified name of a Document, which includes its
location and name. This is unique in the Spectrum
environment.
Key: Primary Key
FOLDER_ String The fully-qualified path of the folder that contains this
NAME Document.
Key: Foreign Key, join with R_FOLDERS.FULL_NAME
DELETED String Whether this Document has been deleted.
Y: The Document has been deleted.
N: The Document has not been deleted.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of this Document
Version. This is unique in the Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Document Version was last modified.
CREATED Timestamp The time when this Document Version was created.
CREATED_ String The User that created this Document Version.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Document.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
DOCUMENT_ String The fully qualified name of the Document to which this
NAME Document Version belongs.
Key: Foreign Key, join with R_DOCUMENTS.FULL_
NAME
LAYOUT_ Number Whether this Document Version has a layout associated
ENABLED with it.
1: A layout is associated with this Document Version.
0: No layout is associated with this Document Version.
LAYOUT_ String The fully qualified name of the layout associated with this
REFERENCE Document Version if it has one; NULL otherwise.
Key: Foreign Key, join with R_DOCUMENTS.FULL_
NAME
MAJOR_ Number The major version of this Document Version. For a
VERSION Document that is not version controlled, 1.
MINOR_ Number The minor version of this Document Version. For a
VERSION Document that is not version controlled, 0.
ORIGINATING_ Number The ID of the originating Document Version. NULL for
VERSION Documents that are not version controlled, as well as for
the first version of any Document.
Key: Foreign Key, join with R_
DOCUMENTVERSION.ID
R_FOLDERS Master Data View
Folders are the objects that provide structure, storage, and security in Loftware Spectrum. Every
object in Spectrum is stored in a Folder, except for the root (Default) Folder. Folders can be
version controlled or not version controlled. All of the version-controllable objects stored in a
version-controlled Folder must themselves be version controlled.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of this Folder. This is
unique in the Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Folder was last modified.
CREATED Timestamp The time when this Folder was created.
CREATED_ String The User that created this Folder.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Folder.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
PARENT_ String The fully qualified name of the parent Folder of this Folder.
FOLDER_ NULL if this is the root Folder.
NAME Key: Foreign Key, join with R_FOLDERS.FULL_NAME
CASED_NAME String The name of this Folder.
FULL_NAME String The fully-qualified name of a Folder, which includes its
location and name. This is unique in the Spectrum
environment.
Key: Primary Key
VERSIONED String Whether objects in the Folder are version controlled.
VERSIONING: The Folder is version controlled.
NOVERSIONING: The Folder is not version controlled.
DESCRIPTION String The user-defined description of this Folder.
R_JOB_PROCESS Master Data View
Note: All timestamps are relative to the time on the database server.
R_LABEL_AUDIT is a Master Data View displaying data for labels that have been printed.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number The internal identification number of a Label. This is unique in
a Spectrum environment.
Key: Primary Key
END_INDEX Number The end index number of this Label in the list of labels that
have been printed.
JOB_ID Number Theidentification number of the Job.
JOB_NAME String The name of the Job.
PJDA_ID Number The identification number of the Print JobDetails of this
Label.
Key: Foreign Key, join with R_PRINTJOB_DETAIL.ID
DEVICE_ String The name of the device destination for this Label.
NAME
STARTINDEX Number The start index number of this Label in the list of labels that
have been printed.
JOB_DATA_ CLOB An XML representation of the job data for this Label.
XML (XML)
R_LOGICAL_DEVICES Master Data View
In Loftware Spectrum, Device Groups (Logical Devices) are container objects for Devices
(physical printers, print queues, or other targets for output, such as image files or PDF files).
Currently, this mapping is 1-to-1; however, in the future that may change. This organization
provides more flexibility than referencing the Devices directly.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
Users can characterize certain objects by assigning Meta Tags, or tags, to them. Tags can then be
used to search, sort, filter, and report on objects within business rules. Each tag has a category
and a value.
A tag can be assigned to an application, business rule, data service, device group, facility, form,
image, integration, label template, layout, process, remote site, reusable object, user, or
workflow template.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of this Meta Tag. This is
unique in the Spectrum environment.
Key: Primary Key
SYSTEM String Whether the Meta Tag is incapable of being deleted.
True: The Meta Tag is built-in and may not be deleted by a
user.
False: The Meta Tag may be deleted by a user with
appropriate permissions.
Update: The Meta Tag may be modified but not deleted by
a user.
MODIFIED Timestamp The time when this Meta Tag was last modified.
CREATED Timestamp The time when this Meta Tag was created.
CREATED_ String The User that created this Meta Tag.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Meta Tag.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
CAT_NAME String The name of the category of this Meta Tag.
ENTITY_ID Number The IDof the object this Meta Tag is assigned to.
ENTITY_TYPE String The type of object this Meta Tag is assigned to.
DOCUMENT_VERSION
DATA_SERVICE
INTEGRATION
PROCESS
LOGICAL_DEVICE
REMOTE_SITE
USER
TAG_VALUE String The value of this Meta Tag.
R_PHYSICAL_DEVICES Master Data View
Devices (Physical Devices) in Loftware Spectrum represent physical printers that perform label
printing as well other targets for output, such as image files and PDF files.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Device. This is
unique among all Devices in the Spectrum environment.
MODIFIED Timestamp The time when this Physical Device was last modified.
CREATED Timestamp The time when this Physical Device was created.
CREATED_ String The User that created this Device.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Device.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
LOGICAL_ String The containing Logical Device for this Device.
DEVICE_NAME Key: Foreign Key, join with R_LOGICAL_
DEVICES.FULL_NAME
ASSIGNED Number Whether this Device has been associated with a Device
Group. Currently, this should always be 1.
1: This Device is associated with a Device Group.
0: This Device is not associated with a Device Group.
CONFIG_ Number The current configuration status of this Device.
STATUS 1: This device is usable.
0: This device is not usable.
CONNECTION_ String The type of the connection used to connect to the Device.
TYPE TCPIP: For network printers.
FILE: For PDF printers.
DESCRIPTION String The user-defined description of this Device.
DETAILS_XML CLOB An XML representation of the options that have been
(XML) selected for this Device. It contains the connection
information as well as configuration settings for the type of
device that has been selected.
FAMILY_NAME String The family name of this Device or the value Family
Driver.
A Process is an object in Spectrum that binds together all of the components to be used when
responding to a print request. Among other items, those components may include a label
template, layout, form, device, and a business rule to be used when processing a print request.
The columns of this view that are marked as having the type String (Expression) may be either
static references ("/Default/Folder/Document1") or expressions (${/Body/object1}). In the
former case, the values can be used as Foreign Keys to access the specific objects references in
the column. In the latter case, the actual value is determined at run time.
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Process. This is
unique among all Processes in a Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Process was last modified.
CREATED Timestamp The time when this Process was created.
CREATED_ String The User that created this Process.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Process.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
UPPER_NAME String The upper-cased name of this Process.
DATA_ String The URL that points to the default Data Entry Form for
ENTRY_URL (Expression) this Process. This may be a form or a label template that
includes a form.
Key: Foreign Key if static, join with R_
DOCUMENTS.FULL_NAME
DATA_ String The URL that points to the default business rule used by
SOURCE_URL (Expression) this Process.
DELINK_ String Expression that dictates whether the label data sources
BUSINESS_ (Expression) associated with the final label template should be run at
RULE print time.
DESCRIPTION String The user-defined description of this Process.
DESTINATION String The URL that points to the default Destination (Logical
(Expression) Device) for this Process.
Key: Foreign Key if static, join with R_LOGICAL_
DEVICES.FULL_NAME
User Profiles define a set of default values for options in Loftware Spectrum. User Profiles must
be either a User ProfileTemplate type or a System Properties ProfileTemplate type.
A Server is a virtual or physical machine that contains one or more JVM Processes (server
processes). Today, Spectrum limits you to a single JVM Process per Server.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
Users can characterize certain objects by assigning tags to them. Tags can then be used to search,
sort, filter, and report on objects within business rules. Each tag has a category and a value,
which is displayed in the Tags pane and tab.
A tag can be assigned to an application, business rule, data service, device group, facility, form,
image, integration, label template, layout, process, remote site, reusable object, user, or
workflow template.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
SpectrumApplicationServer in a Spectrum
environment with distributed services.
Users can characterize certain objects by assigning tags to them. Tags can then be used to search,
sort, filter, and report on objects within business rules. Each tag has a category and a value,
which is displayed in the Tags pane and tab.
A tag can be assigned to an application, business rule, data service, device group, facility, form,
image, integration, label template, layout, process, remote site, reusable object, user, or
workflow template.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of this Tag Value. This
is unique in the Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Tag Value was last modified.
CREATED Timestamp The time when this Tag Value was created.
CREATED_ String The User that created this Tag Value.
ISSUER Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Tag Value.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
CATEGORY_ String The name of the category of this Tag Value.
NAME
CATEGORY_ID Number The IDof the tag category of this Tag Value.
SORTORDER Number The order of sorting for this Tag Value.
DELETED String Whether this Tag Value has been deleted.
Y: The Tag Value has been deleted.
N: The Tag Value has not been deleted.
VALUE String The value of this Tag Value.
R_USERS Master Data View
Every action performed in Loftware Spectrum must be performed by a User. This includes
interactive users who log in manually and perform tasks using the user interface, as well as non-
interactive user accounts that log in automatically and run background jobs.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a User. This is unique
among all Users in the Spectrum environment.
MODIFIED Timestamp The time when this User was last modified.
CREATED Timestamp The time when this User was created.
CREATED_ String The User that created this User. For the SuperAdmin user
ISSUER account, this is NULL.
Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this User.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
FOLDER_ String The fully-qualified path of the folder that contains this User.
NAME Key: Foreign Key, join with R_FOLDERS.FULL_NAME
FULL_NAME String The fully-qualified name of a User, which includes its
location and user name. This is unique in the Spectrum
environment.
Key: Primary Key
DELETED String Whether this User has been deleted.
Y: The User has been deleted.
N: The User has not been deleted.
CHANGE_ String Whether the User is required to change their password the
ON_LOGIN next time they log in.
Y: The User is required to change their password.
N: The User is not required to change their password.
DESCRIPTION String The user-defined description of this User.
EMAIL String The email address of this User, as provided when the user
was created or modified.
FIRST_NAME String The first name of this User.
User Profiles define a set of default values for options in Loftware Spectrum. User Profiles can
be used by more than one User, but each User can only have a single User Profile.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
The following are Transactional Archive Views available using the Spectrum Reporting Schema.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
DATE_VAL String The date of stored archive information in MMM_yy format.
For example, NOV_15.
HISTORY_ Date The date of stored archive information in dd-MMM-yy
MONTH format. For example, 01-NOV-15.
Note: The day value is always 01.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Device.
Key: Primary Key
STATUS String The status of the Device at the time specified in
TIMESTAMP.
UP: The Device is online.
DOWN: The Device is unreachable and possibly offline.
The Job1 is the top-level unit of work in Loftware Spectrum. A Job will run one or more
Processes; these may generate Print Jobs to drive the printing of labels. The current version of
Spectrum uses common values for many of the parameterized settings in a Job.
1What is submitted for processing. A job is separated into print jobs and print job details based on the processing rules. A job
defines which processes to use.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Job. This is unique
among all Jobs in a Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Job was last modified.
CREATED Timestamp The time when this Job was created.
CREATED_ String The User that created this Job. For the SuperAdmin user
ISSUER account, this is NULL.
Key: Foreign Key, join with R_USERS.FULL_NAME
LAST_ String The User that last modified this Job.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
UPPER_NAME String The upper-cased name of this Job.
NAME String An optional name for the Job to distinguish it from other
Jobs.
ACTION String The Job action, which must be one of the following:
Run
TestRun: Preview
BATCH_COUNT Number Not used.
CLIENT_CODE String A unique identifier for the client that started this job (if it
was started by a client).
DESCRIPTION String The user-defined description of this Job.
DESTINATION_ String Allows for a different device to be used at print time;
OVERRIDE primarily used for preview to substitute an Image device
for the defined device.
Key: Foreign Key, join with R_LOGICAL_
DEVICES.FULL_NAME
ERROR_CODE Number The error code value for the reason the job failed. This is
an internal identifier, but may help with problem
resolution.
ERROR_ String A description of the error that occurred and caused the job
DESCRIPTION to fail.
A Print Job1 represents a set of labels sent to a specific Logical Device as a group.
1A collection of one or more print job details that are grouped by destination, scheduled time to print, and priority.
Note: All timestamps are relative to the time on the database server.
Column Name Type
Description
ID Number
The internal identification number of a Print Job. This is
unique among all Jobs in a Spectrum environment.
Key: Primary Key
BATCH_ID Number Not used.
DESTINATION_ String The fully-qualified name of the Logical Device that this
FQN Print Job is targeting.
Key: Foreign Key; join with R_LOGICAL_
DEVICES.FULL_NAME
JOB_ID Number The ID of the parent Job for this Print Job.
Key: Foreign Key; join with R_JOB.ID
JOB_NAME String The name of the parent Job for this Print Job.
LOGICAL_ String The name of the Logical Device destination for this Print
DEVICE_NAME Job.
PHYSICAL_ String The name of the Physical Device destination for this Print
DEVICE_NAME Job.
PRIORITY Number The priority level at which this Print Job is being run.
SCHEDULE Timestamp Not used.
MODIFIED Timestamp The time when this Print Job was last modified.
CREATED Timestamp The time when this Print Job was created.
LAST_ String The User that last modified this Print Job.
UPDATED_ Key: Foreign Key, join with R_USERS.FULL_NAME
ISSUER
A Print Job Detail1 represents the printing of a single label template to single device. Note that
the Quantity 2, Duplicates3, and Pages4 values can change the number of labels that are
physically printed. For example, for a single label template, the number of labels actually printed
is determined by QUANTITY * (1 + DUPLICATES).
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
1A single request to use a label template to print to a specific destination. Depending on the values for Quantity, Duplicates, and
Pages, a print job detail may generate multiple labels.
2The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
3The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
4The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
1The number of times to reprint a label by using the same data and without changing the value in any incrementing or
decrementing field. Each duplicate printed label is identical.
2The number of times to print a label by using the same data. Each printed label produced is identical except for any incrementing
or decrementing field.
3To which output tray to direct printed labels or documents. If a printer has only one output tray or otherwise does not support this
feature, this is ignored. For Windows drivers the tray is the name of the tray that supplies the paper. The name corresponds to the
configured tray name in the driver setup (not case sensitive). For PCL 5e drivers the tray is the ID number of the tray that supplies
the paper. The ID corresponds to the configured tray number in the driver setup.
4A physical printer, print queue, or other target for output, such as an image file or a PDF file.
This view shows errors that occurred during Job processing. There may be one error per Print
Job Detail in the worst case.
Note: A user account named LOFTREPORTS exists in the LoftStore database.
This user account has the permissions necessary to see views and run reports using
the Spectrum Reporting Schema. You will be prompted to create a password for
the LOFTREPORTS user account.
Note: All timestamps are relative to the time on the database server.
1The number of times to print the content for the labels in a layout. Each page is identical, including the value in any incrementing or
decrementing field.
DEVICE_ACL_ENTRY 1586
DEVICES 1588
DOCUMENT_ACL_ENTRY 1590
DOCUMENT_STEP 1592
FOLDER_ACL_ENTRY 1594
FOLDERS 1598
FONT 1602
FONT_JOIN 1604
FONT_TYPE 1605
GROUP_ACL_ENTRY 1607
GROUP_ROLES 1609
GROUPS 1610
JVM_PROCESS 1612
JVM_PROCESS_DEVICE_CONFIG 1614
JVM_SRVC_CONFIG 1615
LDAP_DOMAINS 1617
LOCALIZED_RESOURCES 1618
LOGICAL_DEVICE_ACL_ENTRY 1620
LOGICAL_DEVICES 1622
PERMISSIONS 1624
ROLE_ACL_ENTRY 1625
ROLES 1627
SERVER_ACL_ENTRY 1629
SERVERS 1631
SERVICES 1633
SYSTEM_PROPERTIES 1635
USER_ACL_ENTRY 1636
USER_GROUPS 1638
USER_ROLES 1639
USERS 1640
Bitmask Values 1643
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Device ACL Entry.
Key: Primary Key
MODIFIED Timestamp The time when this Device ACL Entry was last modified.
CREATED Timestamp The time when this Device ACL Entry was created.
CREATED_ Number The ID of the User that created this Device ACL Entry. Refer
ISSUER to the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Device ACL Entry.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Device ACL Entry.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Device ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Device ACL Entry is incapable of being deleted.
True: The Device ACL Entry is built-in and may not be deleted
by a user.
False: The Device ACL Entry may be deleted by a user with
appropriate permissions.
Update: The Device ACL Entry may be modified but not
deleted by a user.
Column
Type Description
Name
ACE_ Number The order in which this ACL Entry applies with respect to other
ORDER ACL Entries for a Device.
Note: An ACL Entry will be applied in ascending
order based on its ACE_ORDER value. ACE_
ORDER values do not have to be consecutive.
DENIES Number The bitmask value representing the permissions for this Device
that are denied to the identified Group or User. For more
information, see "Bitmask Values" on page 1643.
GRANTS Number The bitmask value representing the permissions for this Device
that are granted to the identified Group or User. For more
information, see "Bitmask Values" on page 1643.
GROUP_ Number The ID of the Group being granted or denied permissions to
SID this Device.
USER_SID Number The ID of the User being granted or denied permissions to this
Device.
DEVICE_ Number The ID of the Device for which these permissions apply. Refer
ID to the LOFTREPORTS.R_PHYSICAL_DEVICES table.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Device. This is
unique among all Devices in the Spectrum environment.
Key: Primary Key
MODIFIED Timestamp The time when this Device was last modified.
CREATED Timestamp The time when this Device was created.
CREATED_ Number The ID of the User that created this Device. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Device. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Device.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Device.
OBJECT_ID Number The ID of this Device in the LOFTREPORTS.R_
PHYSICAL_DEVICES table.
SYSTEM String Whether the Device is incapable of being deleted.
True: The Device is built-in and may not be deleted by a
user.
False: The Device may be deleted by a user with
appropriate permissions.
Update: The Device may be modified but not deleted by a
user.
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number The internal identification number of a Document ACL Entry.
Column
Type Description
Name
SYSTEM String Whether the Document ACL Entry is incapable of being
deleted.
True: The Document ACL Entry is built-in and may not be
deleted by a user.
False: The Document ACL Entry may be deleted by a user
with appropriate permissions.
Update: The Document ACL Entry may be modified but not
deleted by a user.
ACE_ORDER Number The order in which this ACL Entry applies with respect to
other ACL Entries for a Document.
Note: An ACL Entry will be applied in
ascending order based on its ACE_ORDER
value. ACE_ORDER values do not have to be
consecutive.
DENIES Number The bitmask value representing the permissions for this
Document that are denied to the identified Group or User.
For more information, see "Bitmask Values" on page 1643.
GRANTS Number The bitmask value representing the permissions for this
Document that are granted to the identified Group or User.
For more information, see "Bitmask Values" on page 1643.
GROUP_SID Number The ID of the Group being granted or denied permissions to
this Document.
USER_SID Number The ID of the User being granted or denied permissions to
this Document.
DOCUMENT_ Number The ID of the Document for which these permissions apply.
ID
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Document Step.
Key: Primary Key
MODIFIED Timestamp The time when this Document Step was last modified.
CREATED Timestamp The time when this Document Step was created.
CREATED_ Number The ID of the User that created this Document Step. Refer
ISSUER to the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Document Step.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Document Step.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Document Step.
OBJECT_ID Number Loftware use only.
ACTION_ID Number The ID of the action performed on this Document Step.
DUE_DATE Timestamp Not used.
ENTRY_ID Number The ID of a Document.
OWNER_ID Number The ID of the User that started the workflow.
SPLIT_ID Number Not used.
START_DATE Timestamp The date and time when the workflow was started.
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Note: Except where otherwise noted, the term Document is used in this topic to
refer to any object in Spectrum that is managed by using Documents permissions.
This includes the following types of objects: label templates, forms, layouts,
images, reusable objects, applications, business rules, and workflow templates.
Note: All timestamps are relative to the time on the database server.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Font.
Key: Primary Key
MODIFIED Timestamp The time when this Font was last modified.
CREATED Timestamp The time when this Font was created.
CREATED_ Number The ID of the User that created this Font. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Font. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Font.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Font.
OBJECT_ID Number Loftware use only.
EXPIRATION Number Not used.
EXPIRATION_ Timestamp Not used.
DATE
FONT_FAMILY String The name of the font family for this Font. For example,
Arial.
FONT_WEIGHT String The style of this Font.
BOLD
BOLDITALIC
ITALIC
NORMAL
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Font.
Key: Primary Key
MODIFIED Timestamp The time when this Font was last modified.
CREATED Timestamp The time when this Font was created.
CREATED_ Number The ID of the User that created this Font. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Font. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Font.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Font.
OBJECT_ID Number Loftware use only.
FONT_ID Number The ID of this Font in the FONT table.
FONT_TYPE_ID Number The ID of this Font Type in the FONT_TYPE table.
FONT_TYPE
This table displays a log of the changes made to font types. A font type indicates whether the
font is a TrueType font, an OpenType font, or a font related to a specific printer control
language. A broad selection of fonts is provided with Spectrum and Administrators can install
additional fonts by using the Font Management pane in System Management.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Font Type.
Key: Primary Key
MODIFIED Timestamp The time when this Font Type was last modified.
CREATED Timestamp The time when this Font Type was created.
CREATED_ Number The ID of the User that created this Font Type. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Font Type.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ACTION String The type of audit action performed on this Font Type.
CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed
on this Font Type.
OBJECT_ID Number Loftware use only.
GROUP_ACL_ENTRY
This table displays information for an entry in the Access Control List (ACL) that grants or
denies access to a Group.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Group ACL Entry.
Key: Primary Key
MODIFIED Timestamp The time when this Group ACL Entry was last modified.
CREATED Timestamp The time when this Group ACL Entry was created.
CREATED_ Number The ID of the User that created this Group ACL Entry. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Group ACL Entry.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Group ACL Entry.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Group ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Group ACL Entry is incapable of being deleted.
True: The Group ACL Entry is built-in and may not be deleted
by a user.
False: The Group ACL Entry may be deleted by a user with
appropriate permissions.
Update: The Group ACL Entry may be modified but not
deleted by a user.
GROUP_ROLES
This table displays information to join the GROUP and ROLES tables.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Group Role.
Key: Primary Key
MODIFIED Timestamp The time when this Group Role was last modified.
CREATED Timestamp The time when this Group Role was created.
CREATED_ Number The ID of the User that created this Group Role. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Group Role.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Group Role.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Group Role.
OBJECT_ID Number Loftware use only.
GROUP_ID Number The ID of this Group in the GROUPS table.
ROLE_ID Number The ID of this Role in the ROLES table.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Group.
Key: Primary Key
MODIFIED Timestamp The time when this Group was last modified.
CREATED Timestamp The time when this Group was created.
CREATED_ Number The ID of the User that created this Group. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Group. Refer
UPDATED_ to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ACTION String The type of audit action performed on this Group.
CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed
on this Group.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Group is incapable of being deleted.
True: The Group is built-in and may not be deleted by a
user.
False: The Group may be deleted by a user with
appropriate permissions.
Update: The Group may be modified but not deleted by
a user.
DENIES Number The bitmask value representing the default permissions
for this Group that are denied to the Groups and Users
for which permissions are not configured. For more
information, see "Bitmask Values" on page 1643.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a server process.
Key: Primary Key
MODIFIED Timestamp The time when this server process was last modified.
CREATED Timestamp The time when this server process was created.
CREATED_ String The ID of the User that created this server process. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this server process.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this server process.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this server process.
OBJECT_ID Number The ID of this server process in the LOFTREPORTS.R_
JVM_PROCESS table.
SYSTEM String Whether this server process is incapable of being deleted.
True: The server process is built-in and may not be deleted
by a user.
False: The server process may be deleted by a user with
appropriate permissions.
Update: The server process may be modified but not
deleted by a user.
DENIES Number The bitmask value representing the default permissions for
this server process that are denied to the Groups and Users
for which permissions are not configured. For more
information, see "Bitmask Values" on page 1643.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a server process.
Key: Primary Key
MODIFIED Timestamp The time when this server process was last modified.
CREATED Timestamp The time when this server process was created.
CREATED_ String The ID of the User that created this server process. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this server process.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this server process.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this server process.
OBJECT_ID Number Loftware use only.
CONFIG_ Number Whether this server process is active.
STATUS 1: The server process is active.
0: The server process is not active.
DEVICE_ID Number The ID of the Device in the DEVICES table.
JVMSRVC_ Number The ID of the SpectrumApplicationServer in the JVM_
CONFIG_ID SRVC_CONFIG table.
PRIORITY Number The priority at which the identified Device should be started
on the identified SpectrumApplicationServer.
JVM_SRVC_CONFIG
This table contains the configuration information for services associated with a JVM process.
JVM processes are server processes within a SpectrumApplicationServer.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number The internal identification number of a configured service.
Key: Primary Key
MODIFIED Timestamp The time when this configured service was last modified.
CREATED Timestamp The time when this configured service was created.
CREATED_ String The ID of the User that created this configured service. Refer
ISSUER to the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this configured service.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this configured service.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on
DATE this configured service.
OBJECT_ID Number Loftware use only.
CONFIG_ Number Whether this configured service is active.
STATUS 1: The configured service is active.
0: The configured service is not active.
FORCED_ Number Whether this configured service should always run in proxy
PROXY mode.
1: The configured service should always run in proxy mode.
0: The configured service should not always run in proxy
mode.
JVM_ Number The ID of the JVM Process in the JVM_PROCESS table.
PROCESS_ID
LDAP_DOMAINS
This table displays a log of the changes made to Lightweight Directory Access Protocol (LDAP)
domains. By integrating LDAP authentication into Spectrum, you can enable users to log into
Spectrum by using their domain credentials.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of an LDAP Domain.
Key: Primary Key
MODIFIED Timestamp The time when this LDAP Domain was last modified.
CREATED Timestamp The time when this LDAP Domain was created.
CREATED_ String The ID of the User that created this LDAP Domain. Refer
ISSUER to the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this LDAP Domain.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this LDAP Domain.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this LDAP Domain.
OBJECT_ID Number Loftware use only.
PARENT_ID Number The ID of the parent Folder for this LDAP Domain.
Key: Foreign Key, join with LDAP_DOMAINS
PARTITION_ Number Not used.
TIER1
PARTITION_ Number Not used.
TIER2
PARTITION_ Number Not used.
TIER3
CASED_NAME String The name of this LDAP Domain.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a resource.
Key: Primary Key
MODIFIED Timestamp The time when this resource was last modified.
CREATED Timestamp The time when this resource was created.
CREATED_ String The ID of the User that created this resource. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this resource. Refer
UPDATED_ to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ACTION String The type of audit action performed on this resource.
CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed
on this resource.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the resource is incapable of being deleted.
True: The resource is built-in and may not be deleted by
a user.
False: The resource may be deleted by a user with
appropriate permissions.
Update: The resource may be modified but not deleted
by a user.
CREATED_ String The version of this resource when the audit action was
VERSION performed.
SYSTEM_KEY String The lookup name for this resource.
LAST_ String The last modified version of this resource.
MODIFIED_
VERSION
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Device Group ACL
Entry.
Key: Primary Key
MODIFIED Timestamp The time when this Device Group ACL Entry was last modified.
CREATED Timestamp The time when this Device Group ACL Entry was created.
CREATED_ Number The ID of the User that created this Device Group ACL Entry.
ISSUER Refer to the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Device Group ACL
UPDATED_ Entry. Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Device Group ACL
ACTION Entry.
CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Device Group ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Device Group ACL Entry is incapable of being
deleted.
True: The Device Group ACL Entry is built-in and may not be
deleted by a user.
False: The Device Group ACL Entry may be deleted by a user
with appropriate permissions.
Update: The Device Group ACL Entry may be modified but
not deleted by a user.
Column
Type Description
Name
ACE_ Number The order in which this ACL Entry applies with respect to other
ORDER ACL Entries for a Device Group.
Note: An ACL Entry will be applied in ascending
order based on its ACE_ORDER value. ACE_
ORDER values do not have to be consecutive.
DENIES Number The bitmask value representing the permissions for this Device
Group that are denied to the identified Group or User. For more
information, see "Bitmask Values" on page 1643.
GRANTS Number The bitmask value representing the permissions for this Device
Group that are granted to the identified Group or User. For
more information, see "Bitmask Values" on page 1643.
GROUP_ Number The ID of the Group being granted or denied permissions to
SID this Device.
USER_SID Number The ID of the User being granted or denied permissions to this
Device.
DEVICE_ Number The ID of the Device for which these permissions apply.
ID
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Device Group. This
is unique among all Device Groups in the Spectrum
environment.
MODIFIED Timestamp The time when this Device Group was last modified.
CREATED Timestamp The time when this Device Group was created.
CREATED_ String The ID of the User that created this Device Group. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this Device Group.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Device Group.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Device Group.
OBJECT_ID Number The ID of this Device Group in the LOFTREPORTS.R_
LOGICAL_DEVICES table.
SYSTEM String Whether the Device Group is incapable of being deleted.
True: The Device Group is built-in and may not be deleted
by a user.
False: The Device Group may be deleted by a user with
appropriate permissions.
Update: The Device Group may be modified but not
deleted by a user.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Permission.
Key: Primary Key
MODIFIED Timestamp The time when this Permission was last modified.
CREATED Timestamp The time when this Permission was created.
CREATED_ String The ID of the User that created this Permission. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this Permission. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Permission.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Permission.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Permission is incapable of being deleted.
True: The Permission is built-in and may not be deleted by a
user.
False: The Permission may be deleted by a user with
appropriate permissions.
Update: The Permission may be modified but not deleted by a
user.
CLASS String The class type that this Permission is applied to.
MASK Number The bitmask value representing the permissions that are denied
or granted to the identified Class. For more information, see
"Bitmask Values" on page 1643.
ROLE_ID Number The ID of the Role for which these permissions apply.
ROLE_ACL_ENTRY
This table displays information for an entry in the Access Control List (ACL) that grants or
denies access to a Role.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Role ACL Entry.
Key: Primary Key
MODIFIED Timestamp The time when this Role ACL Entry was last modified.
CREATED Timestamp The time when this Role ACL Entry was created.
CREATED_ Number The ID of the User that created this Role ACL Entry. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Role ACL Entry.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Role ACL Entry.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Role ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Role ACL Entry is incapable of being deleted.
True: The Role ACL Entry is built-in and may not be deleted by
a user.
False: The Role ACL Entry may be deleted by a user with
appropriate permissions.
Update: The Role ACL Entry may be modified but not deleted
by a user.
ROLES
This table displays a log of the changes made to roles. In Spectrum, role-based permissions are
assigned to a role and inherited by users who are members of a group to which that role is
assigned or by users to whom the role is directly assigned.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Role.
Key: Primary Key
MODIFIED Timestamp The time when this Role was last modified.
CREATED Timestamp The time when this Role was created.
CREATED_ Number The ID of the User that created this Role. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Role. Refer to the
UPDATED_ LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Role.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Role.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Role is incapable of being deleted.
True: The Role is built-in and may not be deleted by a user.
False: The Role may be deleted by a user with appropriate
permissions.
Update: The Role may be modified but not deleted by a
user.
DENIES Number The bitmask value representing the default permissions for
this Role that are denied to the Groups and Users for which
permissions are not configured. For more information, see
"Bitmask Values" on page 1643.
SERVER_ACL_ENTRY
This table displays information for an entry in the Access Control List (ACL) that grants or
denies access to a Server.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a Server ACL Entry.
Key: Primary Key
MODIFIED Timestamp The time when this Server ACL Entry was last modified.
CREATED Timestamp The time when this Server ACL Entry was created.
CREATED_ Number The ID of the User that created this Server ACL Entry. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Server ACL Entry.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this Server ACL Entry.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE Server ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Server ACL Entry is incapable of being deleted.
True: The Server ACL Entry is built-in and may not be deleted
by a user.
False: The Server ACL Entry may be deleted by a user with
appropriate permissions.
Update: The Server ACL Entry may be modified but not
deleted by a user.
SERVERS
This table displays a log of the changes made to Servers. A Server is a virtual or physical machine
that contains one or more JVM Processes (server processes).
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Server.
Key: Primary Key
MODIFIED Timestamp The time when this Server was last modified.
CREATED Timestamp The time when this Server was created.
CREATED_ Number The ID of the User that created this Server. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Server. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Server.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Server.
OBJECT_ID Number The ID of this Server in the LOFTREPORTS.R_SERVERS
table.
SYSTEM String Whether the Server is incapable of being deleted.
True: The Server is built-in and may not be deleted by a
user.
False: The Server may be deleted by a user with appropriate
permissions.
Update: The Server may be modified but not deleted by a
user.
DENIES Number The bitmask value representing the default permissions for
this Server that are denied to the Groups and Users for
which permissions are not configured. For more information,
see "Bitmask Values" on page 1643.
SERVICES
This table displays a log of the changes made to Services.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a Service.
Key: Primary Key
MODIFIED Timestamp The time when this Service was last modified.
CREATED Timestamp The time when this Service was created.
CREATED_ Number The ID of the User that created this Service. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this Service. Refer to
UPDATED_ the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this Service.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this Service.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the Service is incapable of being deleted.
True: The Service is built-in and may not be deleted by a
user.
False: The Service may be deleted by a user with
appropriate permissions.
Update: The Service may be modified but not deleted by a
user.
BEANNAME String The internal class name referenced by this Service.
DATABASE_ Number Whether this Service requires database access.
REQUIRED 1: The Service requires database access.
0: The Service does not require database access.
DELEGATE String The internal name of the class that will perform the work.
DESCRIPTION String The user-defined description of this Service.
SYSTEM_PROPERTIES
This table displays the key-value pairs for all of the system properties used within Spectrum.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a property.
Key: Primary Key
MODIFIED Timestamp The time when this property was last modified.
CREATED Timestamp The time when this property was created.
CREATED_ String The ID of the User that created this property. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ String The ID of the User that last modified this property. Refer
UPDATED_ to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ACTION String The type of audit action performed on this property.
CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed
on this property.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the property is incapable of being deleted.
True: The property is built-in and may not be deleted by a
user.
False: The property may be deleted by a user with
appropriate permissions.
Update: The property may be modified but not deleted
by a user.
DEFAULT_ String The default value to use if the system value is not
SYSTEM_VALUE specified or is incorrect.
SYSTEM_KEY String The lookup name for this property.
SYSTEM_ String The category that the System Key belongs to.
NAMESPACE
SYSTEM_VALUE String The specified value to use.
Note: All timestamps are relative to the time on the database server.
Column
Type Description
Name
ID Number
The internal identification number of a User ACL Entry.
Key: Primary Key
MODIFIED Timestamp The time when this User ACL Entry was last modified.
CREATED Timestamp The time when this User ACL Entry was created.
CREATED_ Number The ID of the User that created this User ACL Entry. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this User ACL Entry.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String The type of audit action performed on this User ACL Entry.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_ Timestamp The date and time when the audit action was performed on this
DATE User ACL Entry.
OBJECT_ID Number Loftware use only.
SYSTEM String Whether the User ACL Entry is incapable of being deleted.
True: The User ACL Entry is built-in and may not be deleted by
a user.
False: The User ACL Entry may be deleted by a user with
appropriate permissions.
Update: The User ACL Entry may be modified but not deleted
by a user.
Column
Type Description
Name
ACE_ Number The order in which this ACL Entry applies with respect to other
ORDER ACL Entries for a User.
Note: An ACL Entry will be applied in ascending
order based on its ACE_ORDER value. ACE_
ORDER values do not have to be consecutive.
DENIES Number The bitmask value representing the permissions for this User
that are denied to the identified Group or User. For more
information, see "Bitmask Values" on page 1643.
GRANTS Number The bitmask value representing the permissions for this User
that are granted to the identified Group or User. For more
information, see "Bitmask Values" on page 1643.
GROUP_ Number The ID of the Group being granted or denied permissions to
SID this User.
USER_SID Number The ID of the User being granted or denied permissions to this
User.
USER_ID Number The ID of the User for which these permissions apply.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a User Group.
Key: Primary Key
MODIFIED Timestamp The time when this User Group was last modified.
CREATED Timestamp The time when this User Group was created.
CREATED_ Number The ID of the User that created this User Group. Refer to
ISSUER the LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this User Group.
UPDATED_ Refer to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this User Group.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this User Group.
OBJECT_ID Number Loftware use only.
GROUP_ID Number The ID of this Group in the GROUPS table.
USER_ID Number The ID of this User in the USERS table.
USER_ROLES
This table displays information to join the USERS and ROLES tables.
Important! LOFTAUDIT tables are read-only. Modifications to these tables could
cause errors and prevent Spectrum from functioning.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a User Role.
Key: Primary Key
MODIFIED Timestamp The time when this User Role was last modified.
CREATED Timestamp The time when this User Role was created.
CREATED_ Number The ID of the User that created this User Role. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this User Role. Refer
UPDATED_ to the LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this User Role.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this User Role.
OBJECT_ID Number Loftware use only.
ROLE_ID Number The ID of this Role in the ROLES table.
USER_ID Number The ID of this User in the USERS table.
Note: All timestamps are relative to the time on the database server.
Column Name Type Description
ID Number The internal identification number of a User.
Key: Primary Key
MODIFIED Timestamp The time when this User was last modified.
CREATED Timestamp The time when this User was created.
CREATED_ Number The ID of the User that created this User. Refer to the
ISSUER LOFTREPORTS.R_USERS table.
LAST_ Number The ID of the User that last modified this User. Refer to the
UPDATED_ LOFTREPORTS.R_USERS table.
ISSUER
AUDIT_ String
The type of audit action performed on this User.
ACTION CREATE
INSERT
UPDATE
DELETE
AUDIT_DATE Timestamp The date and time when the audit action was performed on
this User.
OBJECT_ID Number The ID of this User in the LOFTREPORTS.R_USERS
table.
SYSTEM String Whether the User is incapable of being deleted.
True: The User is built-in and may not be deleted by a user.
False: The User may be deleted by a user with appropriate
permissions.
Update: The User may be modified but not deleted by a
user.
DENIES Number The bitmask value representing the default permissions for
this User that are denied to the Groups and Users for which
permissions are not configured. For more information, see
"Bitmask Values" on page 1643.
Bitmask Values
The DENIES and GRANTS columns contain a bitmask value that is the sum of the values of
the permissions that are denied or granted to a User or Group. The following table lists the
values of the permissions.
Value Permission
1 READ
2 WRITE
4 CREATE
8 DELETE
16 ADMINISTRATION
32 PRINT
64 PUBLISH
128 APPROVE
256 LIST
512 TESTPRINT
1024 REPRINT
DENIES Example
If the DENIES column has a bitmask value of 49, then the READ,
ADMINISTRATION, and PRINT permissions are denied to that User
or Group since 1+16+32 = 49 (BINARY: 110001).
External Links
Character Sets
W3Schools. HTML Character Sets.
(http://www.w3schools.com/charsets/default.asp)
Wikipedia. ASCII.
(http://en.wikipedia.org/wiki/ASCII)
Other References
W3Schools. XPath Tutorial.
(http://www.w3schools.com/xsl/xpath_intro.asp)