HP Service Manager Wizards Guide
HP Service Manager Wizards Guide
Wizards Guide
Legal Notices
Warranty
The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be
construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein.
The information contained herein is subject to change without notice.
Copyright Notice
© Copyright 1994 - 2014 Hewlett-Packard Development Company, L.P.
Trademark Notices
Adobe® is a trademark of Adobe Systems Incorporated.
Java is a registered trademark of Oracle and/or its affiliates.
Microsoft® and Windows® are U.S. registered trademarks of Microsoft Corporation.
Oracle® is a registered US trademark of Oracle Corporation, Redwood City, California.
UNIX® is a registered trademark of The Open Group.
For a complete list of open source and third party acknowledgements, visit the HP Software Support Online web site and search for the product manual called HP Service
Manager Open Source and Third Party License Agreements.
Documentation Updates
The title page of this document contains the following identifying information:
l Software Version number, which indicates the software version.
l Document Release Date, which changes each time the document is updated.
l Software Release Date, which indicates the release date of this version of the software.
To check for recent updates or to verify that you are using the most recent edition of a document, go to: http://h20230.www2.hp.com/selfsolve/manuals
This site requires that you register for an HP Passport and sign in. To register for an HP Passport ID, go to: http://h20229.www2.hp.com/passport-registration.html
Or click the New users - please register link on the HP Passport login page.
You will also receive updated or new editions if you subscribe to the appropriate product support service. Contact your HP sales representative for details.
Support
Visit the HP Software Support Online web site at: http://www.hp.com/go/hpsoftwaresupport
This web site provides contact information and details about the products, services, and support that HP Software offers.
HP Software online support provides customer self-solve capabilities. It provides a fast and efficient way to access interactive technical support tools needed to manage your
business. As a valued support customer, you can benefit by using the support web site to:
l Search for knowledge documents of interest
l Submit and track support cases and enhancement requests
l Download software patches
l Manage support contracts
l Look up HP support contacts
l Review information about available services
l Enter into discussions with other software customers
l Research and register for software training
Most of the support areas require that you register as an HP Passport user and sign in. Many also require a support contract. To register for an HP Passport ID, go to:
http://h20229.www2.hp.com/passport-registration.html
Contents
Wizards Overview 7
What this document covers 7
Prerequisites 7
About creating a wizard 7
Wizard flow 8
Wizards versus scripts 9
Calling Wizards 26
Call a wizard from menus 26
Call a wizard from display options 27
Call a wizard from Format Control 28
Call a wizard from process records 29
Prerequisites
Using the Wizard tool requires a solid understanding of the following areas, which are covered in other
parts of the Service Manager tailoring documentation:
Functionality in a wizard record can include any or all of the following functionality:
• Creating records
You may find it helpful to review the embedded, out-of-box wizards. These wizards offer a variety of
functionality, such as:
• Escalate an Interaction
• Reject a Change
• Add a CI Type
• Add a Contract
You can view these wizards by clicking Tailoring > Wizards, and then clicking the Search button.
In addition to simplifying repetitive user tasks, Wizards are very useful for processes that require the
user to supply prerequisite information. For example, during the interaction creation cycle you could
present a wizard panel flow for the operator to enter data. Based on how the caller replies to questions
regarding the problem, the wizard determines which panels the operator sees next. While the wizard is
executing, the operator-entered data may be accumulated in a file variable that is returned to the calling
application when the wizard is complete.
The wizard can display a form and execute a Format Control record or process. The instructions in the
Format Control record where there is a condition on “initial” that evaluates to true will be executed
before the form opens. The instructions where there is a condition on “add” that evaluates to true will be
executed after the user clicks OK.
Wizards are also very helpful when multiple complex decisions must be made in order to reach a
conclusion. For example, Change Management approval requirement conditions are normally based on
the data contents of one field in the change record. An example of such a condition is
risk.assessment in $L.file="1." However, there may be circumstances where the approval
requirement condition is based on the values of several different fields. For instance, there may be
three fields that affect the approval requirements: division, area, and department. Hard coding all the
possible combinations of these field values into condition statements requires a great deal of work and
would be difficult to maintain. You can define these conditions in wizard records that do not display
forms but that allow you to call a subroutine or execute standard Service Manager processing
statements (similar to Format Control calculation statements). These options allow for the manipulation
of record data. At runtime, the wizard acts as a decision tree that results in significant processing
reductions compared to that involved in the original method of coding.
Wizard flow
Wizard flow defines the order in which wizard panels execute. Wizard panels can move in a straight
line from start to finish, or branch into several different process flows.
The more complex wizard flows use condition statements that must evaluate to true before certain
wizard panels can execute. If none of the specified conditions evaluate to true, the wizard flow is
considered complete, and control passes back to the calling application.
It is very helpful to develop a map of the entire flow showing the name of the form (if any) displayed by
each wizard panel and the conditions controlling the flow from panel to panel. You can follow the map
throughout the wizard creation process to avoid simple errors that could prevent your wizard from
operating properly.
A major advantage of wizards over scripts is security. Wizards are more robust and ensure data
integrity, which scripts cannot do.
Unlike scripts, wizards allow you to specify the format control and display screen; you are not limited to
the format control for a particular form, or to a particular display screen.
In addition, wizards themselves can call Format Control records and processes. Wizards do not allow
direct calls to RAD applications.
When you are ready to create the wizard, you use the Wizard tool to create each successive panel of
the complete wizard. Generally each panel represents a screen or step of the wizard that the end user
will see, although some panels are not visible to the user and instead perform background activities,
such as calling a Document Engine process.
To access the Wizard tool, click Tailoring > Wizards or type wizards in the Service Manager
command line field.
l Wizard Info
l File Selection
l Usage
l Actions
l Messaging
l Variables
l Next Wizard
l Comments
l Cancel Expressions
The diagram labeled Order of Execution of Wizard Tabs illustrates this order. On the Usage tab, the
developer determines whether the wizard panel is displayed to the end user. If the panel is displayed,
the order of execution then depends on which button the end user clicks, Next, Previous, Cancel, or
Finish, as indicated in the diagram.
If the end user clicks the Previous button, the previous wizard panel is displayed, or some other panel
as set by the developer using the Previous Wizard tab in the wizard tool.
The Finish button is intended to be used at the end of the workflow. If the user clicks it in the middle of
the workflow, the wizard will proceed through the rest of the sequential wizard panels without prompting
the user for further input.
The Comments tab is used for internal development comments, and has no effect on the wizard
processing flow.
Within the File Selection tab, the Initial Expressions and Javascript evaluate after the Select $L.file by
tab. The means that you cannot populate a query variable in Initial Expressions and then use it in
"Select $L.file by."
About variables
It is best to use local variables in a wizard in order to eliminate the chance of a variable collision
between threads (or even in the same thread if the wizard calls an external application). However,
variables local to the wizard application cannot be used by the display application or in Process records
called by the wizard.
Specifying a local variable as a wizard variable increases the scope of the variable to include the
display application and called Processes. The variable will automatically be cleaned up by the server
when the entire wizard flow is complete, so there is no danger of namespace collisions with variables
from other threads or processes.
The variables to avoid using when creating a wizard are listed below.
$error
Field Description
Wizard Name This field forms the unique key for the wizard in the wizard dbdict. Enter a brief
descriptive name for the wizard as the unique identifier for this wizard record. As a
name
best practice, include the table (or module) for the wizard, the action the wizard
panel performs, and other detail such as whether the wizard is the Start Node. For
example, your first wizard panel name for creating a wizard panel for SLA could be
something like "SLA Create 1 - Start - Type."
Start Node? Selecting this checkbox (setting it to true), indicates that this is the first in a series
of wizard panels. When a wizard set as the Start Node also requests user input,
start
the Previous button is automatically disabled when the wizard panel is displayed
to the user.
Note: If the Start Node wizard is not displayed to the user, be sure to disable
the Previous button on the first wizard panel that is displayed.
Brief Enter a brief, meaningful description of the wizard, including any important
Description identifying information.
brief.description
Window Title The window title is displayed on the tab that holds the wizard thread when
displaying the wizard panel to the user. This field also takes a message number
window.title
from the scmessage database. For example, scmsg(18,"wizard").
Note: If the wizard you are creating will be localized (translated to another
language or languages), then using the scmessage database is the preferred
method.
Title The title of the wizard entered in this field appears in bold in the upper left of the
wizard panel when displayed. The title can be entered as a message number from
title
the scmessage database such as scmsg(18,"wizard"). Enter a title that makes
indicates the purpose of the panel to the user, such as "Create SLA." If more detail
is needed, you can enter something like "Create SLA - Enter Description."
Prompt Enter a prompt that instructs the end user if this is a wizard panels that will be
displayed to the user. HP Service Manager displays this information in the center
prompt
of the panel, between the title and the wizard subformat, to give the user more
detailed instructions on what kind of information should be entered in the panel.
The prompt should be in large type.
Field Description
Bitmap The image to display on the left side of the wizard panel. The default image is
located in the Service Manager Install Directory at:
bitmap Client\plugins\com.hp.ov.sm.client.common_<SM version and build
number>\src\resources\icons\obj16\wizard<1,2,3>.gif
If you want to use a different image, add it to the installation path above and enter
the image file name in this field.
Global Lists Click Fill to select the global lists to be built or updated so that they are available
when the wizard is run.
global.list
Field Description
Initial Expressions Enter expressions using system language syntax that will be evaluated
subtab after the $L.file is initialized. Use these expressions to initialize variables.
init.expressions
JavaScript subtab Enter the JavaScript code that will run after the $L.file is initialized. Use this
section to initialize variables or select values from related tables.
javascript.init
Select $L.file by You must choose one of the four main options listed below to designate
subtab how the wizard will select the $L.file variable.
No $L.file (use This option means that the wizard should not expect a file variable to be
typecheck) passed in from wherever the wizard is called; in fact, if one is passed in, it
will be ignored. Instead it creates $L.file by initializing it as a record in the
file.selection
"typecheck" table, which is an internal table that contains fields
corresponding to different field types supported by the system.
This is often used in simple wizards that require only a small amount of
input that does not need to be saved into the database.
$L.file passed in Selecting this option indicates that the file variable ($L.file) was passed into
this wizard as a parameter from the calling application or wizard. If a wizard
file.selection
is called as a next wizard, the file variable is automatically passed on. This
option should be selected if you plan to continue to work on the current
record stored in $L.file.
Field Description
Create a record Selecting this option indicates that the wizard will create a new record. You
must enter or select the dbdict name in the record of type field. This
file.selection
initializes $L.file with the structure of the record from the table selected in
the "of type" option.
of type (for Create a Click Fill to select the dbdict that defines the record to be created.
record)
create.record.filename
Select records Select this option to use a query statement to select one or many records.
file.selection
of type (for Select This field determines the record type for a query. Enter the dbdict name of
records) the table from which the records should be selected, such as location. Click
Fill to select a name from a list of all dbdict names.
select.record.filename
using query Enter a query, using system language syntax, to search for records that will
be used to select records. For example:
select.query
"agreement.id="+$G.new.sla
Resolve Variables Select this box (set to true) to ensure that any variables entered in the
resolve.variables Select Records field are evaluated before running the query.
No Records Message The text to display to the user if the query returns no records. This field also
takes a message number from the message database.
select.no.records
For example: scmsg(111,"wizard").
Field Description
Wizard Usage Determines the action that HP Service Manager should take when
section the wizard is run. You must select one of the five main options
presented on the screen.
Select one record from list Choose from the Selection Criteria listed below.
wizard.type
Field Description
Selection Criteria When you choose to Select one record from list, selecting one of
the following options allows you to select a record from a list. The
list is formed based on the options selected.
Use $L.file as This option uses the $L.file variable to form the list of records where
$L.selection the selection is to be performed.
use.file.as.selection
Query for records This option allows you to specify a query to form the list of records.
The fields that are needed for the query are noted below.
query.for.records
of type Enter the name of the table (dbdict name) that the query should run
against. Check that the dbdict for field names is valid for the query.
query.for.records.filename
using query This option is used in conjunction with the options "Query for
Records" and "of type." Enter the query using Service Manager
query.for.records.query
system language syntax.
sort by This option allows you to present the list, sorted in order, based on
the fields specified in this option. Enter field names that are valid for
query.for.records.sort
the selected dbdict and sorted in ascending order.
If no records This option allows you to specify an action if there are no records on
the list. The actions are as follows:
query.select.no.records
return: Returns to the previous wizard panel if there is one, or to the
place from which the wizard was called (if this is the first panel).
skip display: Skips the wizard panel and goes to the following
panel, if applicable.
No records message This option allows you to display a message to present if there are
no records in the list. An scmessage record can be used to
query.no.records.msg
construct the message.
If one record This option allows you to specify an action if there is just one record
in the list. The one record can be displayed in a list, or it can be used
query.select.one.record
as the current file variable without being presented to the user for
selection.
Allow "Skip" option? If selected (set to true), enables users to skip the panel.
allow.skip
Field Description
Request user input This field indicates that the user will be prompted for information.
When this option is selected, the Sub Format to display entry
wizard.type
becomes required and a prompt with instructions needs to be
entered in the Wizard Info tab.
Skip Display Skip Display should be used when the current wizard manipulates
the current record without the need for user input. Typically, a
wizard.type
wizard that is not displayed to the user is part of a complex wizard
workflow.
Select multiple records Selecting this option displays a list and allows the user to select
from list multiple records from the list. The list is formed based on the
options selected in the "Selection Criteria" section.
wizard.type
Multiple Selection field This option determines which field in the list becomes available for
the user to select multiple records from.
mult.field.name
Sub Format to Display Enter the name of the format for user input to display within the
wizard format.
sub.format
Field Description
Main Format The wizard creation tool offers several format choices that effect
the size of the wizard and the placement of buttons. HP Service
(Defaults to Medium)
Manager offers the following wizard format options. If no format is
form.Name selected, the default is "Medium."
Display Screen (Defaults Enter a display screen, if you want to customize the button and
to wizard.display) menu options available within the wizard. The default display
screen is wizard.display.
display.screen
Field Description
Activate "Finish" option? Use this option for the final wizard in the series. Selecting this
checkbox makes a Finish button appear on the wizard panel.
allow.finish
Turn off Next and Selecting this checkbox makes the Next and Previous buttons
Previous buttons? unavailable in the wizard, so the user cannot click "Next" or
"Previous" to move forward or backward in the wizard.
disable.next.previous
Turn off Next button only? Selecting this checkbox makes the Next button unavailable in the
wizard, so the user cannot click "Next" to move forward in the
disable.next
wizard.
Turn off Previous button Selecting this checkbox makes the Previous button unavailable in
only? the wizard, so the user cannot click "Previous" to move backward
in the wizard.
disable.previous
Use Conditional Previous When you select this option, the Previous Wizard tab appears on
Exits? the form. In the Previous Wizard tab, you define the different
possible exits when the Previous button is clicked.
previous.cond
Never prompt on cancel? Determines whether the user is prompted when canceling out of the
wizard. The Return prompt can send the user back to the panel.
Field Description
Initial Process This option lets you specify a process definition to be executed prior to the
actions to be performed. For information on process definitions, see the
initial.process
Document Engine documentation.
Perform Actions On You must select one of the three options to specify which record(s) will be
affected by the action you are going to perform. The file is either the current
section
file, the whole list selected, or an action to be performed on every single
record selected. Actions are defined in the wizard, and define what will
happen when a user clicks Next on a wizard.
Note: Depending on what you selected in the File Selection tab, you
can choose whether the actions performed when a user clicks Next
will be performed on the current file or a record selection. Record
selection ($L.selection) must only be chosen if the $L.selection file
variable was filled when you chose Select Records on the File
Selection tab, and if you chose either "select one" or "select multiple
records" from the list on the Usage tab.
Current File ($L.file) The actions will be performed on the single record represented by the
$L.file file variable. The current file may have been passed in, created, or
perform.action.on
selected with a query returning only a single record.
Selection The actions defined in the Actions to Perform section apply to the group of
($L.selection) records selected in the File Selection tab.
perform.action.on
Each record in The actions defined in the Actions to Perform block apply to each record
selection ($L.selection) selected.
perform.action.on
Actions to Use the three subtabs in this section to indicate the actions to perform on
Perform the selected file.
section
Field Description
Expressions subtab Enter any expressions that should be run as part of the wizard after the
initial process, before the JavaScript and Format Control (or process).
expressions
These expressions use Service Manager system language syntax, such
as:
name in $L.file="Test"
JavaScript subtab The JavaScript expressions will run as part of the wizard and are executed
after the initial process and expressions, but before the Format Control or
javascript.actions
process entered on the next subtab. These JavaScript language
expressions can be used to manipulate the current file variable or initialize
variables.
Format
Control/Process
Name subtab
Format Control The Format Control record to use. You can enter a Format Control record to
execute queries, calculations, validations, or subroutines after running
format.control
through the expressions and JavaScript, and before calling the process.
of type The Format Control type to use for this wizard to evaluate the applicable
conditions, so that Format Control can be executed on the action (Add,
format.control.type
Update, or Delete) that is evaluated in the Format Control record.
on bad validation When data validation in Format Control fails, choose to return the user to
the current wizard panel to enter the correct information, or choose to let
bad.validation.action
the wizard continue to the next panel, ignoring the failed validation.
*Return sends the user back to the panel. Should only be used if the user
has the opportunity to fix the failed validation. If the wizard does not
request information from the user by displaying a subformat to enter
information, selecting Return will end up in an infinite loop.
Process Name Enter the name of a process to execute on this wizard panel. For more
information, refer to the Document Engine documentation.
process.name
Field Description
Reset Current File to If selected (set to true), replaces the current file variable ($L.file) with the
Selections? value selected by the user ($L.selection).
reset.to.selections
Note: This field depends on the selections in the Usage tab. If "Select
one record fromlist" or "Select multiple records from list" are chosen,
those options generate $L.selection.
Restart Panel if Under some circumstances it may be necessary to run the wizard panel
again. For example, an expected field may not have been filled in correctly,
restart.condition
or an error code may have been returned from Format Control or the
process. Enter a condition that evaluates to true or false to determine if this
panel needs to be rerun.
Display Record(s) Determines whether to display the record to the user when the wizard
when complete? completes. If the condition is true, HP Service Manager displays the record
to the user when complete. If the condition is false, no record is displayed.
display.when.complete
Mode This field determines how a record will be displayed to the user.
display.mode *Browse: (This is the default.) Browse mode does not have any buttons to
store a modified record.
Return Current File to This option returns the current record to the application that called the
calling application? wizard for further processing.
reset.current.file
Field Description
Message Message to be displayed when a certain condition occurs. This field will also take a
message number from the scmessage database. For example: scmsg(106,"fc").
message
Condition Enter a condition for the message that evaluates to true or false to determine if the
message should be issued. For example:
message.cond
not nullsub($L.finish,false)
Field Description
Type Select the format of the message to display to users (pop-up or on- screen). The
default is on-screen.
message.type
*Action needed
*Error message: The error message issued to the user when a serious error is
encountered.
Field Description
Wizard variables Use this tab to define variables for use within the wizard. Variables can be
passed to applications or formats being created by the wizard, but must be
wizard.variables
assigned. For example, a variable such as $L.return.action must be defined
here, if it will be used within the wizard. The data type and value of a variable can
be different at different times, and can have a primitive or compound data type as
its value. Service Manager contains three types of variables: 1) local, 2) global,
and 3) thread. Local variables begin with $L and persist only within the currently
executing RAD application. The server automatically cleans up local variables
when it exits a RAD application.
Field Description
Wizard Name Name of the next wizard to execute within the workflow (series of wizard
panels).
next.wizard
Condition Enter a condition that evaluates to true or false. The next wizard in the workflow
is determined by the first condition that evaluates to true, regardless of the
next.wizard.cond
conditions that follow (even if they evaluate to true as well). If all conditions
evaluate to false, the wizard workflow will exit and finish.
Field Description
Wizard Name Specify the name of the wizard to which the user should exit.
prev.wizard
Condition Set the condition for when the user should be taken to this previous wizard. The
condition must evaluate to true or false.
prev.wizard.cond
Field Description
Comments Enter any developer comments concerning the wizard here. As a best practice, use the
Comments tab to describe details, such as the purpose of the wizard panel, the
comments
settings selected to implement that purpose, variables used, wizard workflow, and exit
conditions.
Field Description
Expressions Enter any expressions that will execute when a user cancels the wizard
Executed on process. This provides the wizard creator an opportunity to reset values or
Cancel subtab clean up variables initialized in the wizard.
cancel.expressions
Field Description
JavaScript Enter any JavaScript code that should be used to reset values and clean up
Executed on variables that were initialized in the wizard.
Cancel subtab
javascript.cancel
l Menus
l Display Options
l Format Control
l Process Records
The sections following this one explain the steps required in calling wizards from these areas.
l Processes
l Other wizards.
Warning: It is possible to send a wizard into an infinite loop. For example, this would happen if you
called wizard.run from a process to execute a wizard that in turn calls the originating process.
3. Add an option number; a group, if necessary; and a description with the name that you want to
display on the menu.
5. In the Parameter Name field, specify the name of the parameters to pass to the application. The
name of the parameters to pass to the application should be enclosed with quotes "" and curly
brackets {}. The available parameters for the wizard.run application are: file, name, text, and
prompt.
6. In the Parameter Value field, specify the value of the parameter being passed, enclosed with
quotes "" and curly brackets {}. For example, {"createUser Pre"}.
Example:
In this example, a wizard is set up to be called from the SYSTEM ADMINISTRATION menu through
the option Quick Add Utility. Once the wizard is set up, the user clicks the following:
System Administration > Ongoing Maintenance > User Quick Add Utility.
When the user clicks User Quick Add Utility on the menu, a wizard opens with a predefined set of
steps that assist the user in populating information and completing the task of adding an operator.
To see how this wizard has been set up to be called from menus:
4. The Application field specifies wizard.run, the RAD application called from the menu.
5. The Parameter Name field specifies the name of a single parameter to pass to the menu item. In
this example, {"name"} represents the name of the wizard. The name is enclosed with quotes ""
and curly brackets {}.
6. The Parameter Value field specifies the value of the parameter being passed. In this example,
{"createUser Pre"}. The name is enclosed with quotes "" and curly brackets {}.
2. Select the display option that you want to use to call a wizard.
5. The Names field specifies the parameters to pass to the RAD application. The available
parameters are: file, name, text, and prompt. The name parameter is required.
6. The Values field specifies the values of the parameters being passed to the RAD application.
7. Click Save.
8. Click OK.
In this example, a wizard is set up to be called from the display application wizard.display.kmsearch,
so that when an operator selects the "Search Again" option, the wizard "KM choose shared content" is
called.
5. The Names field specifies the parameters to pass to the RAD application. The available
parameters are: file, name, text, and prompt. The name parameter is required.
6. In this example, the following values are specified for each parameter named.
file $L.file
7. Click Save.
8. Click OK.
3. Click Subroutines.
The Format Control Maintenance - Subroutines form opens.
5. In the Names field, enter the name of the parameter(s) to pass data to the subroutine application
(name, file, text, and prompt).
6. In the Values field, enter the parameters to pass to the subroutine application. The type of
parameters in this field must match the type of parameters in the Names field.
7. Specify the condition for each parameter. When a condition is set to "true" and a user clicks Save,
Format Control runs every section or expression where the Update field is set to true before it
updates the record.
4. In the RAD Application field, enter the RAD Application wizard.run to associate the wizard with
this record.
5. In the Condition field, enter the condition associated with the RAD Application field. For example,
"true".
6. In the Parameter Names field, enter the parameter names to pass to the RAD application.
7. In the Values field, enter the parameter values to pass to the RAD application.
8. Click Save.
9. Click OK.
Example:
In this example, a wizard is set up to be called from the add.device Process record. The add.device
Process record is opened to evaluate the RAD call.
4. In the RAD Application field, enter the RAD Application wizard.run to associate the wizard with
this record.
5. The Condition field contains the name of the parameters to be used (file and name).
6. In the Parameter Names field, enter the parameter names to pass to the RAD application.
7. The Values field specifies the values of the parameters being passed to the RAD application. In
this example, the following values are specified for each parameter named.
file $L.file
8. Click Save.
9. Click OK.
Out of box, a Service Manager user creates a new SLA by clicking Service Level Management >
Service Level Agreements > Create New SLA. The user then fills in the required fields and any
relevant optional fields in the Service Level Agreement entry form.
The new wizard will guide users through supplying the necessary SLA record information by presenting
a series of wizard panels. When all the information has been supplied by the user, the wizard process
saves the SLA record to the database.
After creating an SLA by filling out the Service Level Agreement form, the user can then go to the SLA
record and click the Add SLO buttons in the Response and Availability tabs to launch the out-of-box
Add Response and Add Availability SLO wizards. The Create SLA wizard will call the out-of-box Add
SLO wizards so that the user can go seamlessly from creating a new SLA to adding any SLOs related
to it.
In this case, we will need to create a series of consecutive wizard steps or panels to display to users to
prompt them to enter the basic information needed for the new SLA record. When the required
information has been gathered, the new SLA record must be saved by a Document Engine process to
the database.
The wizard must then ask users if they want to add any availability or response SLOs. If they do, it will
call the out-of-box SLO wizards, first for availability SLOs, and then for response SLOs.
Finally the wizard should display the record number and title of the newly-created SLA, and then
provide a button for the user to view the record details.
The overall design of the new Create SLA wizard is shown in the following flowchart.
• Customer
In addition, although it is not required, many users will want to copy and paste from the Agreement
documents into the SLA record , so the wizard will also present panels to prompt the user for that
information.
The names of the wizard panels will be consecutive (SLA Create 1, SLA Create 2, and so on) so that it
is clear that these individual wizard panels connect together to form the Create SLA wizard that will be
displayed to the end user.
The flowchart below shows the planned wizard panels and the function that each will perform. Each of
the boxes in the flowchart also corresponds to the steps required to build the SLA wizard, described in
the Building the SLA wizard section.
Most of the panels involve prompting the user to provide information, so they also require us to use the
Forms Designer to design the form controls for the subformat that is displayed within the wizard panel.
Each of the overview steps listed below corresponds to a box on the flowchart in the previous section.
These steps, along with the specific tasks that need to be done using the Wizard Tool and Forms
Designer, are listed below.
"Step 14: Set menu to call the new SLA wizard" on page 82
3. In the Wizard Name field, type SLA Create 1, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following fields:
Field Value
Create a record Select this option to indicate that the wizard will create a record. You
must enter or select the record type in the record "of type" field. This
becomes $L.file.
of type Click Fill to select the type of record to be created, and select sla.
(for Create a record)
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
Sub Format to Display Enter a subformat name of the format to display. Type:
sla.create.type
7. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLACreate 2
Condition The condition determines what happens next. In this case, you can
enter the next wizard in sequence and an expression that evaluates to
"true." Alternatively, you can specify different wizards, based on user
actions or selections. Type:
true
You have created the first wizard panel. However to improve the appearance and behavior of the panel
you will use Forms Designer to create the subformat to display in this wizard panel.
Use the Forms Designer to design the subformat that is displayed in the wizard panel:
For this task, you will use Forms Designer to create the form controls that prompt the user to select the
SLA type. These form controls, together with the window title, prompt, buttons, and other choices you
made in the wizard record, will be displayed to the end user as the screen shown above.
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Wrap Label
Caption Type:
Select the SLA type. The available types are Service and Customer.
A Service SLA is related to the Service CI, and a Customer SLA is
related to the specific contract.
Visible Select.
Label
Caption Type:
SLA Type :
Visible Select.
Combo Box The Combo Box should be place to the right of the Regular label box and
contains a list of choices that are associated with the label.
Display List Type two entries (each with an initial capital letter):
n Service
n Customer
Property Value
Input Type:
type
Mandatory Select.
n service
n customer
Visible Select.
You have completed creating the form for the first panel of the Create New SLA wizard.
Note: You can use the record you just created, SLA Create 1, as a starting point, and revise the
fields to reflect the information below. It is very important to remember to click the Add button after
you start to make changes so that you do not overwrite the SLA Create 1 record.
Perform the following two tasks to design a wizard panel that gathers customer information:
3. In the Wizard Name field, type SLA Create 2, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than Save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
$L.file passed in Select this option to indicate that the $L.file variable should be passed to
the wizard from a previous wizard.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
7. Select the Actions tab and the Format Control/Process Name subtab to define the actions
when a user clicks Next, Cancel, or Previous within the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
is being performed. This can either be the current file, the list selected
(as a whole) or an action to be performed on every single record selected.
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLACreate 3
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizards, based on user actions or
selections. Type:
true
You have created the customer information wizard panel. Next, you will create the new wizard form in
Forms Designer.
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Label
Caption Type:
Visible Select.
Comfill
Input customer
Mandatory Select.
$lo.colist
Visible Select.
Label
Caption Type:
Visible Select.
Property Value
Comfill
Input Type:
service.contract
select
("contract.id","servicecontract","provider",
[customer])
Visible Select.
Label
Caption Type:
Visible Select.
Comfill
Input Type:
service.hours
$G.calendars
Visible Select.
Property Value
You have completed creating one of the forms needed for the SLA wizard.
Perform the following two tasks to design a wizard panel for the user to enter an SLA title and
description:
3. In the Wizard Name field, type SLA Create 3, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Field Value
This wizard panel will prompt the user to enter a title and
description for the SLA.
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
$L.file passed in Select this option to indicate that the $L.file variable should be passed to
the wizard from a previous wizard.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
is going to be performed. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single
record selected.
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLACreate 4
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizards, based on user actions
or selections. Type:
true
You have created the new wizard panel. Next, you will create the new wizard form in Forms Designer.
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Label
Caption Type:
Enter a title.
Visible Select.
Text
Input Type:
title
Visible Select.
Label
Caption Type:
Visible Select.
Text Area
Input Type:
description
Visible Select.
You have created one of the forms needed for the SLA wizard.
Perform the following two tasks to design a wizard panel for the user to indicate the effective dates of
the SLA:
3. In the Wizard Name field, type SLA Create 4, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard panel will prompt the user to enter the beginning and
ending dates of the SLA.
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following fields:
Field Value
$L.file passed in Select this option to indicate that the $L.file variable should be passed to
the wizard from a previous wizard.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
7. Select the Actions tab and the Format Control/Process Name subtab to define the actions
when a user clicks Next, Cancel, or Previous within the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
is going to be performed. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single
record selected.
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLACreate 5
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizards, based on user actions
or selections. Type:
true
You have created the valid From and To dates wizard panel. Next, you will create the new wizard form
in Forms Designer.
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Label
Caption Type:
Visible Select.
Comfill
Input start
Mandatory Select.
Visible Select.
Label
Caption Type:
Visible Select.
Comfill
Input Type:
expiration
Mandatory Select.
Visible Select.
You have finished creating one of the forms needed for the SLA wizard.
Perform the following two tasks to design a wizard panel asks users about agreements and other
documents related to the SLA:
3. In the Wizard Name field, type SLA Create 5, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard will ask the user whether they want to copy text from
Agreement documents or attach other documents to the SLA.
Title Type:
Field/Subtab Value
Select $L.file by Select the $L.file passed in option to indicate that the $L.file variable
subtab should be passed to the wizard from a previous wizard.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
you are going to perform. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single record
selected.
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLA Create 6a
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizazrds, based on user actions
or selections. Type:
$L.agreement.docs=true
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLA Create 7
Condition Type:
true
This completes the wizard panel that asks users about attachments. The next step creates the
corresponding new wizard form in Forms Designer.
To create a new form for the SLA wizard that asks about agreements:
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Group
Caption Type:
Visible Select.
Radio Button
Caption Type:
Yes
Input Type:
$L.agreement.docs
Value Type:
true
Visible Select.
Radio Button
Caption Type:
No
Input Type:$L.agreement.docs
Value Type:
false
Visible Select.
You have finished creating one of the forms needed for the SLA wizard.
Perform the following two tasks to design a wizard panel to prompt the user to add agreements:
3. In the Wizard Name field, type SLA Create 6a, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than Save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard will prompt the user to copy and paste text from
Agreement documents.
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
$L.file passed in Select this option to indicate that the $L.file variable should be passed to
the wizard from a previous wizard.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
you are going to perform. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single
record selected.
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLA Create 7
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizards, based on user actions
or selections. Type:
true
You have created the wizard panel that prompts users to attach agreement documents. Next, you will
create the new wizard form in Forms Designer.
To create a new form to display the wizard that prompts users to add agreement document text:
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Label
Caption Type:
Copy and paste text from Agreement documents related to this SLA:
Property Value
Visible Select.
Text
Area
Input Type:
agreements
Visible Select.
You have finished creating one of the forms needed for the SLA wizard.
Additionally this task asks the user if they want to add SLOs to the SLA.
1. Click Tailoring > Document Engine > Processes. The Process Definition form opens.
3. In the RAD tab, type the following expressions in the first two rows of the Expressions evaluated
before RAD call section:
$L.action="add"
4. In the RAD Application section of the RAD tab, type se.view.engine as the RAD application to
be called, and true as the condition to execute it. Then enter the following parameter names and
values:
file Type:
$L.file
description $L.action
6. Click Add.
You have created the process to save the new SLA record to the database.
To create a wizard to call the save process and check SLO requirements:
3. In the Wizard Name field, type SLA Create 7, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Field Value
This wizard panel will ask the user if they want to create
Availability or Response SLOs.
Title Type:
Field/Subtab Value
$L.create.avail.slo=false
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions Here you can specify which record(s) will be affected by the action that you
On are going to perform. This can either be the current file, the list selected (as
a whole), or an action to be performed on every single record selected.
Format Define the actions when a user clicks Next, Cancel, or Previous within the
Control/Process wizard. Complete the following field:
Name subtab
Process Name To specify that this wizard can run a process after completing, type:
sla.save.from.wizard
$L.crate.avail.slo
$L.new.sla
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizazrds, based on user actions
or selections. Type:
$L.create.response.slo=true
Wizard Name This is the name of the next wizard in a series of wizards. Type:
Condition Type:
$L.create.avail.slo=true
SLA Create 8
Field Value
Condition Type:
true
You have created the wizard panel that calls the save process and checks SLO requirements. Next,
you will create the new wizard form in Forms Designer.
To create a new form for the wizard that calls the save process and checks SLO requirements:
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Group
Caption Type:
Visible Select.
Radio Button
Caption Type:
Yes
Input Type:
$L.create.response.slo
Value Type:
true
Visible Select.
Radio Button
Caption Type:
No
Input Type:
$L.create.response.slo
Property Value
Value Type:
false
Visible Select.
Group
Caption Type:
Visible Select.
Radio Button
Caption Type:
Yes
Input Type:
$L.create.avail.slo
Value Type:
true
Visible Select.
Radio Button
Caption Type:
No
Input Type:
$L.create.avail.slo
Value Type:
false
Visible Select.
You have finished creating one of the forms needed for the SLA wizard.
Because this wizard panel only performs the background task of calling another wizard, there is no
screen to show the end user. Thus there is no task requiring the use of Forms Designer in this step.
To create a wizard that calls the existing out-of-box Availability SLO wizard:
3. In the Wizard Name field, type SLA Create Availability 1, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click Add rather
than Save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Skip Display Select this option as this panel does not include a form that needs to be
displayed to the user.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
you are going to perform. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single
record selected.
Format Define the actions when a user clicks Next, Cancel, or Previous within
Control/Process the wizard. Complete the following field:
Name subtab
Process Name To specify that this wizard can run a process after completing, type:
slo.add.avail.sla
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard This is the name of the next wizard in a series of wizards. Type:
Name
SLA Create Availability 2
Condition The condition determines what happens next. In this case, you entered the next
wizard in sequence and an expression that evaluates to "true." Alternatively, you
can specify different wizazrds, based on user actions or selections. Type:
true
You have created a wizard panel that calls the existing out-of-box Availability SLO. A new form is not
needed for this wizard.
Perform the following two tasks to design a wizard panel to prompt for another Availability SLO:
3. In the Wizard Name field, type SLA Create Availability 2, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
Brief Type:
Description
This wizard panel asks the user if they want to create another
Availability SLO.
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
No $L.file (use Select this option to initialize a typecheck file, which acts as a
typecheck) holding file.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
Sub Format to Display Enter a subformat name of the format to display. Type:
sla.create.ask.other.avail
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Here you can specify which record(s) will be affected by the action that you are
Actions going to perform. This can either be the current file, the list selected (as a whole), or
On an action to be performed on every single record selected.
Wizard $L.create.avail.slo
Variables:
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard This is the name of the next wizard in a series of wizards. Type:
Name
SLA Create Availability 1
Field Value
Condition The condition determines what happens next. In this case, you entered the next
wizard in sequence and an expression that evaluates to "true." Alternatively, you
can specify different wizazrds, based on user actions or selections. Type:
$L.create.avail.slo=true
Wizard This is the name of the next wizard in a series of wizards. Type:
Name
SLA Create 8
Condition true
You have created the wizard so users can create more Availability SLOs. Next, you will create the new
wizard form in Forms Designer.
To create a new form for the wizard that creates more Availability SLOs:
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Group
Caption Type:
Visible Select.
Radio Button
Caption Type:
Yes
Input Type:
$L.create.avail.slo
Value Type:
true
Visible Select.
Radio Button
Caption Type:
No
Input Type:
$L.create.avail.slo
Property Value
Value Type:
false
Visible Select.
You have finished creating one of the forms needed for the SLA wizard.
Because this wizard panel only performs the background task of calling another wizard, there is no
screen to show the end user. Thus there is no task requiring the use of Forms Designer in this step.
3. In the Wizard Name field, type SLA Create Response 1, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click "Add" rather
than save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard will call the out-of-box wizard that creates a Response
SLO.
Field Value
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Skip Display Select this option as this panel does not include a form that needs to be
displayed to the user.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions Here you can specify which record(s) will be affected by the action that you
On are going to perform. This can either be the current file, the list selected (as
a whole), or an action to be performed on every single record selected.
Format Define the actions when a user clicks Next, Cancel, or Previous within the
Control/Process wizard. Complete the following field:
Name subtab
Process Name To specify that this wizard can run a process after completing, type:
slo.add.resp.sla
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizazrds, based on user actions
or selections. Type:
true
You have created the wizard that will call the existing out-of-box Response SLO wizard. A new form is
not needed for this wizard.
Perform the following two tasks to design a wizard panel to prompt for another Response SLO:
3. In the Wizard Name field, type SLA Create Response 2, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click Add rather
than Save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard panel will ask the user if they want to add another
Response SLO.
Title Type:
5. Select the File Selection tab and the Select $L.file by subtab to complete the following field:
Field Value
No $L.file (use Select this option to initialize a typecheck file, which acts as a holding
typecheck) file.
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Sub Format to Display Enter a subformat name of the format to display. Type:
sla.create.ask.other.response
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
you are going to perform. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single
record selected.
$L.crate.avail.slo
8. Select the Next Wizard tab and complete the following fields:
Field Value
Wizard Name This is the name of the next wizard in a series of wizards. Type:
Condition The condition determines what happens next. In this case, you entered
the next wizard in sequence and an expression that evaluates to "true."
Alternatively, you can specify different wizazrds, based on user actions
or selections. Type:
$L.create.response.slo=true
Wizard Name This is the name of the next wizard in a series of wizards. Type:
Condition Type:
$L.create.avail.slo=true
Wizard Name This is the name of the next wizard in a series of wizards. Type:
SLA Create 8
Condition Type:
true
You have created the wizard so that users can create more Response SLOs. Next, you will create the
new wizard form in Forms Designer.
To create a new form for a wizard that creates more Response SLOs:
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Group
Caption Type:
Visible Select.
Radio Button
Caption Type:
Yes
Input Type:
$L.create.response.slo
Value Type:
true
Visible Select.
Radio Button
Caption Type:
No
Input Type:
$L.create.response.slo
Value Type:
false
Visible Select.
You have created one of the forms needed for the SLA wizard.
3. In the Wizard Name field, type SLA Create 8, and then click Add.
Caution: If you use an existing SLA record to create a new SLA wizard panel, click Add rather
than Save. If you click Save, you will replace the existing record with the new record you are
attempting to add.
Field Value
This wizard is the final panel the user sees, telling them the record
number and name of the new SLA created.
Title Type:
Field Value
Field Value
Select $L.file by
subtab
Select records "of Select this option and click Fill to select sla as the record type.
type"
"agreement.id="+$L.new.sla
6. Select the Usage tab and complete the following fields to determine the action that HP Service
Manager should take when the wizard is run:
Field Value
Request user input Select this field to prompt the user for information.
Activate "Finish" Since this is the final wizard in a series of wizard panels, select this
option? option to make a "Finish" button appear on this wizard panel.
7. Select the Actions tab to define the actions when a user clicks Next, Cancel, or Previous within
the wizard. Complete the following field:
Field Value
Perform Actions On Here you can specify which record(s) will be affected by the action that
you are going to perform. This can either be the current file, the list
selected (as a whole), or an action to be performed on every single record
selected.
Display Record(s) Select this option (to set to true) to display the record to the user when
when complete? the wizard completes.
You have created the last wizard panel that displays the SLA record number and title of the newly-
created SLA record. Next, you will create format for this wizard step in Forms Designer.
3. Click New.
5. Create the following for this form. When you start to design the new form, make sure the X and Y
coordinates are at 0 (zero).
Property Value
Label
Caption Type:
SLA record
Visible Select.
Text
Input Type:
agreement.id
Visible Select.
Text
Input Type:
title
Visible Select.
Label
Caption Type:
Visible Select.
You have finished creating the final wizard screen that is displayed for the SLA wizard.
2. In the Menu Name field, enter SLA, and then click Search.
Now you can click Service Level Management > Service Level Agreements > Create New SLA to
confirm that the menu changes were effected and the wizard opens and executes as expected.
l Run a trace
l If the Previous button is not displaying as expected, check to see if you selected the "Start Node?"
option in the Wizard Info tab.
Tip: Only the first wizard panel should have the "Start Node?" option selected in the Wizard
Info tab.
l Do not choose the "Next" button as a "Finish" button. If you do, the wizard will stop executing. As a
best practice, disable the "Next" button and enable the "Finish" button in the last panel of the wizard
work flow.
l Check to see if any of the options on the Usage tab were suppressed by mistake.
Cause
In the Select $L.file by subtab on the File Selection tab, the option "$L.file passed in" was selected,
but no file variable was passed in.
Fix
Either call wizard.run with the file parameter passed in correctly, or choose another option in the
Select $L.file by tab on the File Selection tab. For example, select Create a record of type.
Cause
An invalid format name was entered in the Sub Format to Display field on the Usage tab while using
the "Request user input" option in the Wizard Usage section on the Usage tab.
Fix
Enter a valid format name in the Sub Format to Display field on the Usage tab, so a valid subformat
will be displayed. Or, select the Skip Display option to bypass attempting to display the form.
Cause
Invalid syntax was entered in a JavaScript tab. The RAD application and panel will give you a hint as
to which JavaScript tab the syntax error was entered. Refer to the table below for help in determining
where to make the fix.
Fix
Correct syntax for JavaScript expressions is discussed in the JavaScript Programmer's Guide. When
using JavaScript, you must define variables before using them. For example:
var <name>=new String()
To compare the values of two fields to each other, use the following syntax:
Table1.field1==table2.field2
For example:
"agreement.id="+G.new.sla
Or
"logical.name=\""+str($group.name.new)+"\""
Cause
Incorrect query syntax was used. For example, agreement.id in $L.file=168. Query
statements should not include the file variable.
Fix
Use correct query syntax. For example, "agreement.id="168.
Cause
These errors are caused by syntax errors in the wizard panels. The panel name gives you a hint as to
where the issue occurred.
Bad arg (x) oper operator <y> indicates improper syntax of a statement or a missing or invalid
parameter that is expected to be supplied to the statement.
Bad arg (1 or 2) oper <operator>: arg 1 indicates that the issue is to the left of the <operator>. If it is
arg 2, then the issue is to the right of the <operator>. For example, operator can be defined as follows: =
, < , > , ~= , ~< , ~> , etc.
Bad arg (1 or 2) oper <in> arg 1 indicates that the issue is to the left of "in" within the statement. If
arg is 2, then the issue is to the right of "in" within the statement.
Bad arg (x) oper <function> indicates that the number of the parameter that was passed to the
function is invalid.
The following table will help you find where in the wizard panel the error occurred and where to make the
fix.
Fix
Correct syntax for RAD expressions is discussed in the System Language topics in the Service
Manager Online Help. You can view this help by clicking Help > Help Contents if you are using a
Windows client, or pressing F1 if you are using a web client.
To compare the values of two fields to each other, use the following syntax:
<field1> in $L.file=<field2> in $L.file
Any concatenated statement containing a field name and a variable needs to be entered as follows:
Cause
The type of field needed for the query (dbdict name) is invalid.
Fix
Enter a valid sort field in the record type dbdict.
Error Cause/Fix
Cannot create record of type Cause: The record type entered does not exist as a record
"test." in the dbdict table.
Cannot select from record of Cause: The record type entered does not exist as a record
type "test." in the dbdict table.
Cannot initialize record of type Cause: On the Usage tab, Query for Records of type
"slas." has an invalid record type entered.
Invalid selection query: Cause: On the Usage tab, an invalid field name was used
agreement=$G.test. in the Query for Records statement.
Wizard "test" does not exist. Cause: An invalid wizard name was entered on the Next
Contact your System Wizard tab. When a nonexistent wizard evaluates to true,
Administrator.
the wizard workflow will be caught in an infinite loop and
the session thread will be killed.
Display application could not Cause: An invalid display screen name was selected on
find screen. the Usage tab.
Query=screen.id="wizard.test.me"
and language="ENG" Fix: On the Usage tab, enter a valid display screen name
or leave the field empty for the default option.
Unrecoverable error in
application: se.call.process on
panel call.rad.1
Display application error exit
has been taken.
$L.ds.ids=L.ds.desc=
Run a trace
If you receive an error message, use the following to trace the error to get more detail on the message
you receive. You can also run a trace when the wizard flow does not take the expected path.
To run a trace:
1. Enter the RTM:3 and debugdbquery:999 parameters in the Service Manager sm.ini file.
For complete details, see the instructions in the Diagnostics and Tuning white paper.
3. Within the trace, search for the first call to the wizard.run RAD application.
4. Next, follow the flow of the wizard, checking the dbquery statements against the wizard table to
see which wizard is called next.
5. Follow the trace to the error message if one was received, or follow the trace to understand which
path the application took through the wizard flow.
6. Use print statements in the JavaScript expressions within the wizard panels, to write additional
information to the log file. For example, the content of variables that will influence which wizard
will be run next or statements as to which wizard is executed at the time.
Note: Remember to remove these debug statements before putting the wizard into
production.
If no email client is available, copy the information above to a new message in a web mail client, and
send your feedback to [email protected].