Académique Documents
Professionnel Documents
Culture Documents
Management - 14.1
Technical Reference
Date: 02-Aug-2016
CA Service Management - 14.1
This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as
the Documentation) is for your informational purposes only and is subject to change or withdrawal by CA at any time. This
Documentation is proprietary information of CA and may not be copied, transferred, reproduced, disclosed, modified or
duplicated, in whole or in part, without the prior written consent of CA.
If you are a licensed user of the software product(s) addressed in the Documentation, you may print or otherwise make
available a reasonable number of copies of the Documentation for internal use by you and your employees in connection with
that software, provided that all CA copyright notices and legends are affixed to each reproduced copy.
The right to print or otherwise make available copies of the Documentation is limited to the period during which the applicable
license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to
certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed.
TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION AS IS WITHOUT WARRANTY OF ANY
KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE,
DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST
INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE
POSSIBILITY OF SUCH LOSS OR DAMAGE.
The use of any software product referenced in the Documentation is governed by the applicable license agreement and such
license agreement is not modified in any way by the terms of this notice.
Provided with Restricted Rights. Use, duplication or disclosure by the United States Government is subject to the restrictions
set forth in FAR Sections 12.212, 52.227-14, and 52.227-19(c)(1) - (2) and DFARS Section 252.227-7014(b)(3), as applicable, or
their successors.
Copyright 2016 CA. All rights reserved. All trademarks, trade names, service marks, and logos referenced herein belong to
their respective companies.
02-Aug-2016 3/403
Table of Contents
Technical Reference 4
View_Contact_Full .................................................................................................................................... 48
View_Contact_to_Environment ........................................................................................................... 50
View_Group ............................................................................................................................................... 51
View_Group_to_Contact ..................................................................................................................... 51
View_Issue ................................................................................................................................................ 52
View_Issue_Act_Log ........................................................................................................................... 55
View_Issue_to_Assets ........................................................................................................................ 56
View_Issue_to_Issue_Act_Log ........................................................................................................... 57
View_Issue_to_Issue_WF ................................................................................................................... 58
View_Issue_to_Properties ................................................................................................................... 59
View_Request ........................................................................................................................................... 60
View_Request_to_Act_Log ................................................................................................................. 64
View_Request_to_Properties .............................................................................................................. 64
View_Request_to_Request_WF ......................................................................................................... 65
View_Request_to_Request_WF ......................................................................................................... 66
Technical Reference 5
pdm_task--Set Environment Variables ...................................................... 82
Technical Reference 6
Modify the jsrvr.log Appender ........................................................................................................... 113
Modify the jstd.log Appender ............................................................................................................. 114
Technical Reference 7
OBJECT Statement ................................................................................................................................. 161
Technical Reference 8
REST HTTP Methods .............................................................................. 195
Sample URI Paths for CRUD Operations ................................................................................................ 197
REST Considerations .............................................................................................................................. 198
REST Limitations ..................................................................................................................................... 198
REST and Object Access ........................................................................................................................ 198
rest_access resource ........................................................................................................................ 199
REST_OPERATIONS Keyword .............................................................................................................. 199
REST_OPERATIONS Syntax Examples ................................................................................................ 200
Working with BLRELs .............................................................................................................................. 200
WHERE Clause Resource Search .......................................................................................................... 201
Valid URI Path Patterns .......................................................................................................................... 202
Search Result Sorting ............................................................................................................................. 203
Search Result Navigation ........................................................................................................................ 203
Example Request Returns a Specific Number of Records ................................................................ 203
HTTP Status and Error Codes ................................................................................................................ 204
Code Matching Limitations ................................................................................................................ 205
Known Status Codes ......................................................................................................................... 205
Atom Feeds ............................................................................................................................................. 206
Additional REST Support when Requesting Data Formats ..................................................................... 208
CA SDM Role Authorization .................................................................................................................... 208
REST Java Sample Code ....................................................................................................................... 209
Build and Execute the Sample Programs ......................................................................................... 210
CA SDM Authentication Scheme ...................................................................................................... 210
REST Secret Key Authentication ............................................................................................. 210
REST BOPSID Authentication ................................................................................................. 212
REST Basic Authentication ...................................................................................................... 212
External CA EEM Artifact Authentication ................................................................................. 213
CRUD Operations on Tickets ............................................................................................................ 213
BREL, QREL, and BLREL Processing .............................................................................................. 213
Managing Attachments for Tickets .................................................................................................... 214
CA SDM Resource Examples ................................................................................................................. 214
Example Create a Change Order With an Attachment ..................................................................... 214
Example Create a Resource ............................................................................................................. 215
Example Delete a Resource ............................................................................................................. 216
Example Delete an Access Key ........................................................................................................ 216
Example Mark a Resource Inactive .................................................................................................. 216
Example Obtain a BOPSID Token .................................................................................................... 217
Example Obtain an Access Key ........................................................................................................ 218
Example Retrieve a Collection of Resources .................................................................................... 218
Example Retrieve a Collection of Resources Using a Where Clause ............................................... 219
Technical Reference 9
Example Retrieve a Specific Resource ............................................................................................. 220
Example Retrieve a Subresource ..................................................................................................... 221
Example Update a Resource ............................................................................................................ 221
Example Get a BLREL Record ......................................................................................................... 222
Example Retrieve a List of LREL Records Associated with a Group ................................................ 224
Example Create a BLREL Record .................................................................................................... 225
Example Update a BLREL Record .................................................................................................... 226
Example Delete a BLREL Record ..................................................................................................... 227
Technical Reference 10
Table Types ............................................................................................................................................. 244
Knowledge Management General Methods ............................................................................................ 245
faq ..................................................................................................................................................... 246
search ............................................................................................................................................... 247
doSelectKD ....................................................................................................................................... 248
createDocument ................................................................................................................................ 249
modifyDocument ............................................................................................................................... 252
deleteDocument ................................................................................................................................ 255
Use the Knowledge Management Web Services .............................................................................. 255
Access the Knowledge Management Web Services ......................................................................... 255
addComment ..................................................................................................................................... 256
deleteComment ........................................................................................................................ 257
rateDocument .................................................................................................................................... 257
updateRating ............................................................................................................................ 258
getQuestionsAsked ........................................................................................................................... 258
getBookmarks .......................................................................................................................... 259
addBookmark ........................................................................................................................... 260
deleteBookmark ....................................................................................................................... 260
getStatuses .............................................................................................................................. 260
getPriorities .............................................................................................................................. 261
getDocumentTypes .................................................................................................................. 261
getTemplateList ........................................................................................................................ 262
getWorkflowTemplateList ......................................................................................................... 263
Technical Reference 11
createLrelRelationships ........................................................................................................................... 274
removeLrelRelationships ......................................................................................................................... 275
Technical Reference 12
clearNotification ....................................................................................................................................... 301
Technical Reference 13
Generate Stub Classes with WSDL2Java ............................................................................................... 326
Technical Reference 14
EBR_DICTIONARY Table ....................................................................... 353
EBR_DICTIONARY_ADM Table ............................................................................................................. 353
Technical Reference 15
CA Service Management - 14.1
Technical Reference
This section lists all the CA Service Desk Manager commands:
CA SDM Text API Interface (see page 18)
The Configuration File (see page 30)
View Field Descriptions (see page 33)
RFC 2251 LDAP Result Codes (see page 67)
pdm_configure--Open the Configuration Window (see page 75)
pdm_key_refresh--Refresh Cached Key Information (see page 76)
pdm_lexutil--Modify CA SDM Lexicons (see page 77)
pdm_listconn--List Active Connections (see page 78)
pdm_logfile--Change stdlog Cutover Size (see page 81)
pdm_task--Set Environment Variables (see page 82)
pdm_uconv--Convert Local Charset to UTF-8 (see page 83)
pdm_webstat--Return Web Usage Statistics (see page 86)
pdm_mail Utility--Send Email Information (see page 89)
CA SDM PDM Database Commands (see page 91)
CA SDM Report Command (see page 115)
CA SDM Form Groups (see page 118)
Contents of the Samples Directory (see page 149)
Schema Files Syntax (see page 153)
Object Definition Syntax (see page 159)
STANDARD_LISTS Optional Statement (see page 164)
FACTORY Optional Statement (see page 167)
Where Clauses (see page 173)
Attribute Data Types (see page 179)
Web Services Methods (see page 182)
REST HTTP Methods (see page 195)
Web Services Attachment-Related Methods (see page 228)
Web Services Knowledge Attachment Methods (see page 231)
Web Services Miscellaneous Methods (see page 238)
Web Services Knowledge Management (see page 244)
getCategory Method (see page 264)
LREL Methods (see page 272)
dbmonitor_nxd--Database Monitoring Daemon (see page 277)
List/Query Methods (see page 279)
Asset Management Methods (see page 287)
Web Services Business Methods (see page 291)
notifyContacts Method (see page 301)
attachChangeToRequest Method (see page 303)
createTicket Method (see page 305)
Group Management Methods (see page 309)
02-Aug-2016 16/403
CA Service Management - 14.1
02-Aug-2016 17/403
CA Service Management - 14.1
Important! CA SDM requires that all input be in UTF-8 format, or data can be corrupted.
The pdm_unconv utility (see page 83) lets you convert data from a local charset to UTF-8
and from UTF-8 to a local charset.
You can access the Text API by using the following interfaces:
Command line
CA NSM
Note: You can use web services as the alternative to the Text API for cross-application
integration.
02-Aug-2016 18/403
CA Service Management - 14.1
The input to the Text API is passed to the pdm_text_cmd command in the form of an input file, or
directly from STDIN.
Note: When passing the parameters from command prompt, use Ctrl+Z in Windows and
Ctrl+D in POSIX.
Important! You cannot use single or double quotation marks as parameters for the
bop_cmd and pdm_text_nxd commands.
Note: You need to update the Text_API.cfg file for all additional fields that are passed from
CA NSM Alert Management Systems to CA SDM. This file is used for integrations with web
services, email and AHD.DLL.
Input Format
Input to the Text API is specified in the following ways:
In the command-line interface, input is typically specified in a text file passed to the
pdm_text_cmd command.
In the email interface, input is specified in the text of the email. You specify a regular expression
to find the target object identifiers.
You format the Text API input in the same way no matter which interface you use.
02-Aug-2016 19/403
CA Service Management - 14.1
%keyword=value
or
%PROPERTY={{property_label}}value
The normal behavior of Text API commands has the following exceptions, where the last-appearing of
two or more conflicting commands takes precedence:
When a message contains multiple valid ticket ID artifacts matching the mailbox rule filter string,
or multiple Text API ticket ID commands, the first one encountered is used. Also, a ticket ID
artifact, which is identified using the mailbox rule filter string, overrides any Text API ticket ID
command, regardless of which appears first.
When a message contains multiple log comment Text API commands, all comments are posted,
although the order in which they appear in the ticket activity log can vary.
All ticket ID artifacts that match the filter, valid or otherwise, and Text API ticket ID commands within
the message, applicable or otherwise, applied or otherwise, are commented out before the message
is posted. The ticket ID artifacts identified through the mailbox rule filters appear as -((...))-. Leading
percentage signs (%) in Text API ticket ID commands are converted to two opening parentheses ((,
and two closing parentheses )) follow the command. If a Text API ticket ID command appears after
another Text API command with a log comment (%LOG=), then the commented-out Text API ticket
ID command is made into a separate log comment.
Note: The log comment is the only Text API command that can appear multiple times in
one message and still have each occurrence applied. For any other commands, the Text API
uses the last occurrence only, because multiple occurrences of other commands conflict
with each other. Multiple log comment commands post separate log comment messages
to the ticket, and not necessarily in any particular order.
In addition, if a Text API ticket ID command appears in the message either at the beginning of the
message or in between two other Text API commands, it is converted into a log comment. If the
previous command is a log comment (%LOG=) or update description (%DESCRIPTION=), it is
appended to that command, rather than becoming a separate log comment.
Incoming messages that are sent HTML-only, without a plain-text version included, lose their
message body. If the message matches any mailbox rule filters with an empty message body, a ticket
can be created with an empty Description, or with the quoted message subject as the entirety of the
ticket description.
02-Aug-2016 20/403
CA Service Management - 14.1
Definitions in the [KEYWORDS] section of the text_api.cfg file -- This type is a group of keywords
that are related directly to the fields for the various tables that you can update. For example,
most of the fields on the Issue Detail form are defined the [KEYWORDS] section. Using these
keywords, you can set values for fields in the record that you are updating or creating. For
example, the following line sets the priority of the issue to 5:
%PRIORITY=5
The [KEYWORDS] section of the text_api.cfg file lists all keywords. You can define additional
keywords (for example, to allow Text API access to fields that you have added when customizing
your database schema).
The following special keywords are always defined as follows, regardless of the contents of the
text_api.cfg file:
Keyword Description
ASSET Used to attaches an item to a ticket (valid for requests, issues, and change orders). The
value specified is the item name, which must already exist. You can specify this keyword
multiple times, because a ticket can have multiple items attached to it.
ATTACHM Used internally by the email interface to add email attachments to a ticket.
ENT
DESCRIPTI Specifies the value to use for the tickets description field. This keyword is assumed if
ON input is sent to the Text API without an explicit keyword. This keyword is applied
automatically by the Mail Eater when the message does not begin with a keyword but
does contain a ticket ID artifact or keyword.
You can change how the DESCRIPTION keyword is handled for updates using the following
entry in the [OPTIONS] section of text_api.cfg:
UPDATE_DESC_IS_LOG
If this option is set to YES, the value is used to create a log comment. If the value is set to
NO, the value overwrites the existing description field.
FROM_EM Used by the email interface to match against the Email Address field in the ca_contact
AILFROM_ record. It is also used as the log_agent for the ticket. If both are supplied, FROM_EMAIL is
EMAIL_OV ignored.
ERRIDE
Note: FROM_EMAIL is set automatically by the Mail Eater with the sender
address of the message.
FROM_PE Used by the command line interface to define the log_agent for an operation (for
RSID example, when a ca_contact record does not have a User ID). This keyword is passed
automatically by pdm_text_cmd if the -p parameter is specified. The value is matched to a
ca_contact record persistent_id.
FROM_US Used only in the command line interface to define the log_agent for an operation. This
ERID keyword is passed automatically by pdm_text_cmd if the -u parameter is specified. The
value is matched to a contacts User ID.
02-Aug-2016 21/403
CA Service Management - 14.1
Keyword Description
LOG Used to create a log entry (valid for requests, change orders, issues, and contacts). This
keyword is applied automatically by the Mail Eater when the message does not begin with
a keyword but does contain either a ticket ID artifact or keyword, or a DESCRIPTION
keyword.
LOG_AGE Used by the CA NSM interface to define the log_agent for an operation. The value is
NT matched to a contact records ID field.
PROPERTY Used to set the value of a property (valid only for requests, change orders, and issues).
Unlike other keywords, which are followed by an equal sign and a value, the PROPERTY
keyword syntax must include the property label, as follows:
PROPERTY={{property_label}}value
You must specify the property_label exactly as it appears in the database.
SEARCH Used only in the command-line interface and the CA NSM interface to supply a list of
keywords for use in a query to update multiple tickets for an asset. The value is a list of
keywords used in the search.
The SEARCH keyword is automatically set by the CA NSM interface.
SEARCH_E Used only in the CA NSM interface to override the SEARCH keyword supplied by the CA
XPLICIT NSM interface. The values supplied are the same as the SEARCH keyword.
Prefix every keyword (including PROPERTY) with a percent (%) sign. The percent sign must be in
column position one. If the first nonempty line of the input does not have a percent sign at the
start of the line, either %DESCRIPTION= or %LOG= is used as the prefix for the incoming data,
depending on whether a ticket ID artifact or keyword was found. If %DESCRIPTION is set, the
contents of the message up to the first Keyword is posted as a ticket description. If %LOG= is set,
the contents of the message up to the first Keyword is posted as a log comment.
Do not use any intervening spaces within the keyword between the percent sign and the
keyword, or between the keyword and the equal (=) sign.
Do not quote values; all data after the equal sign is assumed to be the value.
If the input includes duplicate keywords, the last keyword is used; otherwise, the order in which
you specify the keyword/value pairs is unimportant.
Specify keyword values as you would for the corresponding field in the web interface. For
example, to specify an Analyst contact type, you use %CONTACT_TYPE=Analyst, even though in
the database this value is stored as an integer. The CONTACT_TYPE keyword is defined in text_api.
cfg so that it converts the specified value (see page 27) to match the stored value.
Note: Whether the value is case sensitive depends on your underlying DBMS.
02-Aug-2016 22/403
CA Service Management - 14.1
To format an email message to create or update a ticket, use the following fields:
To
Specifies the mailbox name assigned to the CA SDM contact set up for the privileged user.
From
Specifies the person sending the email. The person must be defined in the ca_contact table unless
the Allow Anonymous option is specified in the applicable mailbox rule.
Note: The From address is typically part of your email program configuration, and it is not
typically set on a per-message basis.
Attachments
Attaches documents and other files to the email to send attachments to the Text API.
Subject
Matches keywords in a mailbox rule filter string, particularly when creating a ticket.
Body
Specifies the message body of the email using the Text API. You can specify the keyword
ISSUE_ID, REQUEST_ID, or CHANGE_ID, depending on the type of ticket to create or update a
ticket.
Note: The Mail Eater does not support emails in the RTF or HTML-only formats.
"start-request"
message_body
"end-request"
02-Aug-2016 23/403
CA Service Management - 14.1
Follow the {{object_id}} keyword with a character which is not a letter, number, comma, forward-
slash (/), plus sign (+), or equals (=) sign, because these characters can appear within an artifact.
Otherwise, it is possible that characters which follow the artifact can be misinterpreted as part of the
value of the artifact, or that a character within the value of the artifact can be misinterpreted as the
character which follows the value.
1. Finds the artifact within an email (such as Incident:1234) that maps to the appropriate ticket
or other object supported by the Text API.
3. Mail Eater submits the tagged message to the Text API. The Text API processes the email,
applies the text, commands, or both which it contains to the appropriate ticket, and generates
an automatic response email indicating whether the email message it received was
successfully applied. Depending on the actions performed, a notification email message is also
sent separately to indicate certain specific events, such as the creation of a ticket.
1. Set the notification method that the contact uses to pdm_mail - T reply_email_address or
pdm_mail - F reply_email_address. The reply_email_address specifies the incoming address
for the mailbox. When the contact clicks reply on an email that address is filled in from the
From or Reply-To address of the message to which they are replying.
-T sets the Reply-To address. -F sets the From address, which is used as the reply address if a
separate one is not specified.
02-Aug-2016 24/403
CA Service Management - 14.1
3. Update the mailbox rule that you created in Step 2 to specify the message template that you
created or updated in Step 4.
After the user receives the notification and replies to it, the following actions occur:
1. When the filter string is found, the relevant ticket ID keyword and value denoted by the
placeholder, if any, are appended to the message.
2. If a matching ticket ID artifact is found, the corresponding ticket is updated, with either a log
comment, a new description, or other values in accordance with the text, keywords, and
commands in the message.
3. If a matching ticket ID artifact is not found, a ticket is created with a description and other
parameters in accordance with the text, keywords, and commands in the message.
02-Aug-2016 25/403
CA Service Management - 14.1
Code -- IncidentReply
Active -- Active
%Incident:{call_req_id.ref_num}%
Note: In auto-reply text of the mailbox rule, omit the call_req_id. prefix. This prefix
applies a context which the mailbox rule text is already in, and such a context
change is not valid when already acting within that context.
3. Create or update a message template that uses the notification phrase as follows:
@{notification_phrase[IncidentURL1].phrase}
4. Update the mailbox rule that you created in Step 1 to specify the message template that you
created in Step 3, as follows:
Message Template -- mailbox rule name
The Body or Subject of the email includes the object identifier. The {{object_id}} placeholder within
the filter string denotes the object identifier.
In order to add a comment to your incident, just reply to this email or include
the line below (on a line by itself).
%Incident:1234%
This is my response...
02-Aug-2016 26/403
CA Service Management - 14.1
3. The Mail Eater receives the following text version of the John Smith's email:
This is my response...
From: Service Desk
Sent: Wednesday, September 18, 2009 10:22 AM
To: Smith, John
Subject: Simple Notification
This is a simple notification.
In order to add a comment to your incident, just reply to this email or include
the line below (on a line by itself).
%Incident:1234%
4. The Mail Eater processes rules in order and finds the %Incident:1234% artifact:
This is my response...
From: Service Desk
Sent: Wednesday, September 18, 2009 10:22 AM
To: Smith, John
Subject: Simple Notification
This is a simple notification.
In order to add a comment to your incident, just reply to this email or include
the line below (on a line by itself).
%INCIDENT_ID=1234
5. The Mail Eater adds the Text API keywords and the {{object_id}} value to an %INCIDENT_ID=
statement and leaves a marker where the {{object_id}} value was found. The following text
shows the data that is sent to the Text API. The bold text shows values added by the Mail
Eater.
%LOG=This is my response...
From: Service Desk
Sent: Wednesday, September 18, 2009 10:22 AM
To: Smith, John
Subject: Simple Notification
This is a simple notification.
In order to add a comment to your incident, just reply to this email or include
the line below (on a line by itself).
%Incident:-((...))-%
%FROM_EMAIL=john.smith@company.com
%INCIDENT_ID=1234
02-Aug-2016 27/403
CA Service Management - 14.1
The configuration file has several examples of this type of keyword definition, including ISSUE.
PRIORITY and CONTACT.CONTACT_TYPE. If you need to define additional keywords (for example, to
allow Text API access to fields that you have added when customizing your database schema), you
can use one of the following predefined methods:
02-Aug-2016 28/403
CA Service Management - 14.1
If the value you need to convert is not addressed by any of these predefined methods, you need to
write a customized method. The method should take a STRING value as its input and return a value
(either INTEGER, STRING or UUID) as its output. Return a value of -1 (or -1) to denote that the value
cannot be determined and is therefore, not set. For UUID, return a (uuid) NULL.
For example, you might develop a method to convert a user ID to a ca_contact table reference. The
incoming value, such as Administrator, would be passed to the method, and the method would
return the ca_contact table id for the user ID of Administrator.
The manner in which you define keywords in the configuration file offers you the advantage of
defining multiple keyword mappings to the same field, including different conversion methods,
depending on the value being specified. For example, assignee can have several different keyword
mappings to define how to set its value based on different input values. One input might be user ID,
another might be last name, first name, middle name, and still another might be the actual
ca_contact id (for example, 793ED69B4E87A545BD8E911834D829FC). Each keyword maps to a
different conversion method, except the last one, which does not need to be converted.
02-Aug-2016 29/403
CA Service Management - 14.1
The text_api.cfg file defines the keywords that are related directly to the fields of the various tables
that you can update. You use this file both as a reference to find certain predefined values, such as
keywords, and as a mechanism for configuring the Text API, although the default configuration file
works for most installations without modification.
UNIX -- $NX_ROOT/site
The configuration file is divided into sections, with particular attributes defined within each section.
Attribute definitions are of the following form:
keyword=value
None of the keywords are case-sensitive, whereas all values (except in the [OPTIONS] section) are
case-sensitive.
Note: You can view and modify the text_api.cfg file using any text editor.
Important! If you are integrating with the CA NSM Alert Management Systems component,
you must update text_api.cfg for any additional fields that are passed to CA SDM.
Options
The [OPTIONS] section of the text_api.cfg file defines processing options that may differ from one site
to another. For example, there are options to determine the incoming date format, which fields allow
linefeeds to be retained, and whether to allow issues, requests, or change orders to be updated using
the email interface. All options in this section are configurable. Be aware that although you can
remove table names from the VALID_TABLE_LIST, if you do not want to support Text API access to
those tables, you cannot add table names to this list.
02-Aug-2016 30/403
CA Service Management - 14.1
Defaults
Use the [XX_DEFAULTS] section provided in the text_api.cfg file for each interface using the Text API
(for example, [EMAIL_DEFAULTS] for the email interface and [CMD_DEFAULTS] for the command line
interface). The [XX_DEFAULTS] section defines the default values for fields and properties that are
required in case the user does not supply them directly. XX refers to the interface type, such as CMD
or EMAIL.
table_name.keyword=value
The keyword must be defined either in the [KEYWORDS] section or as properties in your database.
Any method associated with the keyword is automatically applied to the value. For example:
ISSUE.PRIORITY=1
The PRIORITY keyword is defined in text_api.cfg so that it performs a lookup to convert the value
you specify to match the corresponding value that is stored in the database. Here, value 1 is
converted to 5, which is the underlying database value for the priority symbol 1. This feature lets
users specify the value just as they would in the web interface.
table_name.PROPERTY={{property_label}}value
The property_label must be defined as a property in your database.
In both formats, the table_name must be one of the values defined by VALID_TABLE_LIST in the
[OPTIONS] section, such as Issue, Request, or Contact.
Ignore Incoming
There are several [..._IGNORE_INCOMING] sections in the text_api.cfg file, one for each interface that
uses the Text API (for example [TNG_IGNORE_INCOMING] for the CA NSM interface and
[EXT_IGNORE_INCOMING] for the external interface used by other CA products). These sections
define fields and properties that are ignored in the input (the format is the same as described in
Defaults, except no =value is specified). This feature lets you prevent users from setting certain
values, which in turn, provides you with more security for such times as letting customers use the
email interface.
The IGNORE sections work well when used in conjunction with the corresponding [..._DEFAULTS]
sections because you can prevent the user from setting a particular value and supply a default value
at the same time. For example, if you want to prevent email interface users from setting the priority
of an issue, you could set the following values:
[EMAIL_DEFAULTS]
ISSUE.PRIORITY=2
[EMAIL_IGNORE_INCOMING]
ISSUE.PRIORITY
02-Aug-2016 31/403
CA Service Management - 14.1
In this case, any priority that the user specifies in the email message body is ignored, and all issues
created by the email interface are automatically assigned a priority of 2.
Example Input
The following examples show input that you can use in the body of an email message or in a file
serving as input to the command-line interface.
In this example, because the first line is missing a %keyword in the first column, the literal %
DESCRIPTION= is added to the beginning of the message. This addition sets the description field to
This entire text goes to the description field (with the line break intact, because ISSUE.DESCRIPTION
is included in the list of fields for the LINEFEEDS_ALLOWED entry in the [OPTIONS] section of text_api.
cfg).
In this example, the PRIORITY keyword is defined in text_api.cfg so that it performs a lookup to
convert the value you specify to match the corresponding value that is stored in the database. Here,
the value None is converted to 0, which is the underlying database value for the priority symbol 1.
This feature lets users specify the value as they would in the web interface.
%description=This is my description
%priority=None
%CATEGORY=Upgrade.PC
%PROPERTY={{Current CPU}}266 mhz
%PROPERTY={{Current Harddrive}}1 gig
%PROPERTY={{Requested Upgrade}}4 gig harddrive
The specified values are used to set the description and priority fields for the ticket, similar to the
previous example (notice that keyword case is unimportant).
The value of Upgrade.PC is searched, and the category field for the ticket is set appropriately.
Current CPU
Requested Upgrade
02-Aug-2016 32/403
CA Service Management - 14.1
You can use the field description information in the basic and advanced views that are supplied with
CA SDM.
You must turn on audit logging, found in Administration, Options Manager, Audit Log, to see data
in the advanced views.
pdmtime refers to date/time fields that are in GMT format (the number of elapsed seconds since
1/1/1970).
The terms change request and change order are used interchangeably.
02-Aug-2016 33/403
CA Service Management - 14.1
View_Act_Log
The following is a basic view of the request activity log table. Activity type and the analysts full name
are also listed in the view. The activity log table (act_log) was joined with the activity type table
(act_type) and the contact table (ca_contact) to give the actual activity type of each activity log entry,
and the analyst who performed the activity. Extracted fields from the joins that might be useful are
located at the end of this list.
Field Remarks
id act_log.id: The unique identifier for this record in the act_log table.
persid act_log.persid: The unique identifier for this record in the act_log table, preceeded by
the object identifier (alg for act_log) and a colon.
call_req_id act_log.call_req_id: Pointer to call request persid to which this activity belongs. act_log.
call_req_id = call_req.persid.
last_mod_d act_log.last_mod_dt: The last modify date/time (pdmtime).
t
time_spent act_log.time_spent: The duration of time spent on this activity, stored as the total
number of seconds. For example, 80 = 1 minute, 20 seconds.
time_stamp act_log.time_stamp: User modifiable date/time of activity (pdmtime).
system_tim act_log.system_time: The date/time of record creation (pdmtime).
e
analyst act_log.analyst: The uuid pointer to the contact uuid to get the analyst who performed
the activity. act_log.analyst = ca_contact.contact_uuid.
description act_log.description: The text description of this activity, which can be modified by the
user.
action_desc act_log.action_desc: The text description of automated action, which cannot be
modified by the user.
type act_log.type: The text pointer to a record in the activity type table. For example, act_log.
type = act_type.code.
knowledge act_log.knowledge_session: An identifier for a particular session of a particular user.
_session
knowledge act_log.knowledge_tool: An indicator of the knowledge management tool used for the
_tool search, such as NLS_FAQ or EXPERT, etc.
internal act_log.internal: An integer flag (1 or 0), which indicates if this log entry is intended for
all to see or just for internal use.
activity_typ act_type.symActivity: The type derived from act_log.type = act_type.code.
e
analyst_last View_Contact_Full.last_name: The analyst's last name, derived from act_log.analyst =
name ca_contact.contact_uuid.
analyst_firs View_Contact_Full.first_name: The analyst's first name.
tname
analyst_mi View_Contact_Full.middle_name: The analyst's middle name.
ddlename
02-Aug-2016 34/403
CA Service Management - 14.1
View_Audit_Assignee
The following is an advanced view of the audit log where assignee is tracked. This view shows the
duration of time between assignee changes for every request and change order. Requests or change
orders that are changed from a particular assignee to a null assignee, and then from null assignee
back to a particular assignee, do not have the duration of the null assignee listed in this view. This
view lists the following fields for both requests and change orders. There may be more than one
entry for each audobj_uniqueid (request or change order).
Field Remarks
audobj_uniqu audit_log.audobj_uniqueid: The audit log object unique id representing the chg.id or
eid the call_req.id.
from_val audit_log.attr_after_val: The changed from assignee value.
to_val audit_log.attr_after_val: The changed to assignee value.
from_time audit_log.attr_from_time: The beginning time an assignee was assigned (pdmtime).
to_time audit_log.attr_from_time: The ending time the same assignee was assigned
(pdmtime).
View_Audit_Group
The following is an advanced view of the audit log where group is tracked. This view shows the
duration of time between group changes for every request and change order. Requests or change
orders that are changed from a particular group to null group, and then from null group back to a
particular group, do not have the duration of the null group listed in this view. This view lists the
following fields for both requests and change orders. There may be more than one entry for each
audobj_uniqueid (request or change order).
Field Remarks
audobj_uniqu audit_log.audobj_uniqueid: The audit log object unique id which represents chg.id or
eid call_req.id.
from_val audit_log.attr_after_val: The changed from group value.
to_val audit_log.attr_after_val: The changed to group value.
from_time audit_log.attr_from_time: The beginning time group was assigned (pdmtime).
to_time audit_log.attr_from_time: The ending time same group was assigned (pdmtime).
View_Audit_Priority
The following is an advanced view of the audit log where priority is tracked. This view shows the
duration of time between priority changes for every request and change order. This view lists the
following fields for both requests and change orders. There may be more than one entry for each
audobj_uniqueid (request or change order).
02-Aug-2016 35/403
CA Service Management - 14.1
Field Remarks
audobj_uniq audit_log.audobj_uniqueid: The audit object unique id, represents a request call_req.id
ueid or change order chg.id.
from_val audit_log.attr_after_val: The changed from value of priority.
to_val audit_log.attr_after_val: The changed to value of priority.
from_time audit_log.attr_from_time: The beginning time priority was in a particular state
(pdmtime).
to_time audit_log.attr_from_time: The ending time priority was in the same state (pdmtime).
View_Audit_Status
The following is an advanced view of the audit log where status is tracked. This view shows the
duration of time between status changes for every request and change order. This view lists the
following fields for both requests and change orders. There may be more than one entry for each
audobj_uniqueid (request or change order).
Field Remarks
audobj_uni audit_log.audobj_uniqueid: The audit object unique id, which represents a request
queid call_req.id or change order chg.id.
from_val audit_log.attr_after_val: The changed from value of priority.
to_val audit_log.attr_after_val: The changed to value of priority.
from_time audit_log.attr_after_time: The beginning time status was in a particular state (pdmtime).
to_time audit_log.attr_after_time: The ending time status was in the same state (pdmtime).
View_Change_Act_Log
The following is a basic view of all change order activity logs. This is a view of the change request
activity log table (chgalg) joined with the activity type table (act_type) and the contact table
(ca_contact) to give more meaningful data, such as the actual activity type description and full name
of the analyst who performed the activity.
Field Remarks
id chgalg.id: The unique identifier for this record in the chgalg table.
persid chgalg.persid: The unique identifier for this record in the chgalg table, preceded by the
object identifier (chgalg for chgalg) and a colon.
change_id chgalg.change_id: The pointer to the change order id to which this activity belongs.
chgalg.change_id = chgalg.id
last_mod_d chgalg.last_mod_dt: The last modify date/time (pdmtime).
t
02-Aug-2016 36/403
CA Service Management - 14.1
Field Remarks
time_spent chgalg.time_spent: The duration of time spent on this activity, stored as the total
number of seconds. For example, 80 = 1 minute, 20 seconds.
time_stamp chgalg.time_stamp: The user modifiable date/time of activity (pdmtime).
system_tim chgalg.system_time: The date/time of record creation (pdmtime).
e
analyst chgalg.analyst: The uuid pointer to the contact uuid to get the analyst who performed
the activity.chgalg.analyst = ca_contact.contact_uuid
description chgalg.description: The text description of this activity, which can be modified by the
user.
action_desc chgalg.action_desc: The text description of the automated action, which cannot be
modified by the user.
type chgalg.type: The text pointer to a record in the activity type table.chgalg.type = act_type.
code
internal chgalg.internal: The integer flag (1 or 0), which indicates if this log entry is intended for
all to see or just for internal use.
knowledge chgalg.knowledge_session: An identifier for a particular session of a particular user.
_session
knowledge chgalg.knowledge_tool: An indicator of the knowledge management tool used for the
_tool search, such as NLS_FAQ or EXPERT, and so on.
analyst_last View_Contact_Full.last_name: The analyst's last name, derived from chgalg.analyst =
name ca_contact.contact_uuid.
analyst_firs View_Contact_Full.first_name: The first name of the analyst.
tname
analyst_mi View_Contact_Full.middle_name: The middle name of the analyst.
ddlename
activity_typ act_type.sym: The activity type referenced by chgalg.type = act_type.code.
e
View_Change
The following is a basic view of all change orders, listing the status, priority, category, organizations,
the affected end users full name, the requesters full name, the assignees full name, the group name
and ID, and so on. Here, the change request table (chg) was joined with many other tables to give
some more meaningful data about the change order.
Field Remarks
id chg.id: The unique identifier for this record in the chg table.
persid chg.persid: The unique identifier for this record in the chg table, preceded by the object
identifier (chg for table chg) and a colon.
chg_ref_nu chg.chg_ref_num: The change order reference number, which is used by analysts and
m customers to refer to a particular change order.
description
02-Aug-2016 37/403
CA Service Management - 14.1
Field Remarks
chg.description: The long description of a change order, as dictated by an analyst or
customer.
status chg.status: The unique identifier of a change order status, which is a pointer to the
chgstat table.chg.status = chgstat.code.
active_flag chg.active_flag: The integer flag to determine whether this change record is active or
not (1 or 0).
start_date chg.start_date: The date the first task goes to a pending status (pdmtime).
open_date chg.open_date: The change order creation date (pdmtime).
last_mod_d chg.last_mod_dt: The last modified date (pdmtime).
t
last_mod_b chg.last_mod_by: The pointer to the contact uuid who was the last contact to modify
y this change order.chg.last_mod_by = ca_contact.contact_uuid.
close_date chg.close_date: The date the change order was set to inactive (pdmtime).
resolve_dat chg.resolve_date: The date the change order was set to a status configured to indicate
e the change was resolved (pdmtime).
rootcause chg.rootcause: A pointer to a record in the rootcause table, which represents the
original situation which required this change order to be executed.chg.rootcause =
rootcause.id.
est_total_ti chg.est_total_time: The estimated total time (pdmtime) it will take to complete this
me change.
actual_total chg.actual_total_time: The actual total time (pdmtime) it took to complete this change.
_time
log_agent chg.log_agent: A binary unique identifier referencing the ca_contact table, referencing
the person who was the change's original creator.chg.log_agent = ca_contact.
contact_uuid.
assignee chg.assignee: The pointer to the contact uuid who is currently assigned to the change
order.chg.assignee = ca_contact.contact_uuid.
organization chg.organization: The pointer to internal organization uuid, which represents the
organization to whom this change order belongs.chg.organization = ca_organization.
organization_uuid.
group_id chg.group_id: The pointer to contact uuid, which represents the group currently
assigned to the change order.chg.group_id = ca_contact.contact_uuid
affected_co chg.affected_contact: The pointer to the contact uuid, which represents the affected
ntact contact for this change order.chg.affected_contact = ca_contact.contact_uuid
requestor chg.requrestor: The pointer to the contact uuid, which represents the person who
ordered the change.chg.requestor = ca_contact.contact_uuid
category chg.category: The pointer to the change category code to get the category into which
this change falls.chg.category = chgcat.code
priority chg.priority: The pointer to priority enum, which represents the priority into which this
change falls.chg.priority = pri.enum
need_by chg.need_by: The date which indicates when the affected_end_user needs to have the
change completed (pdmtime).
chg.est_comp_date: The estimated completion date (pdmtime) for this Change Order.
02-Aug-2016 38/403
CA Service Management - 14.1
Field Remarks
est_comp_d
ate
actual_com chg.actual_comp_date:The actual completion date (pdmtime) of this change order.
p_date
est_cost chg.est_cost: The estimated cost of this change order.
actual_cost chg.actual_cost: The actual cost to implement this change order.
justification chg.justification: A text field which allows a requestor to document the reason(s) this
change is required.
backout_pla chg.backout_plan: A text field that allows an analyst to document a backout plan for
n this change.
impact chg.impact: A pointer to an impact table record, which indicates the scope of resources
that this change affects.chg.impact = impact.enum
parent chg.parent: A pointer to another change request id, which allows creation of a hierarchy
of change orders.chg.parent = chg.id
effort chg.effort: A text field which explains the plan for implementing this change order.
support_lev chg.support_lev: A pointer to a service desc record, which automates some constraints
for which this change must be completed.chg.support_lev = srv_desc.code
template_n chg.template_name: The name of and pointer to a change order template.chg.
ame template_name = chg_template.template_name
sla_violatio chg.sla_violation: The integer to count the number of times slas attached to this
n "change has been violated".
predicted_sl chg.predicted_sla_viol: (r5.5) Neugent related technology field.
a_viol
macro_pred chg.macro_predict_viol: (r5.5) Neugent related technology field.
ict_viol
created_via chg.created_via: A pointer to a record in the interface table, which indicates from which
interface the change order originated. chg.created_via = interface.id
call_back_d chg.call_back_date:A date/time field (pdmtime), which indicates a future date/time the
ate requestor is to be contacted.
call_back_fl chg.call_back_flag: A boolean indicator displayed as a checkbox to the user, indicating
ag whether or not to notify the analyst at the chg.call_back_date.
string1 This is a user-definable text field.
string2 This is a user-definable text field.
string3 This is a user-definable text field.
string4 This is a user-definable text field.
string5 This is a user-definable text field.
string6 This is a user-definable text field.
service_dat chg.service_date: The Date/ Time (pdmtime) that an outside vendor is expected to
e spend to service this change order.
service_nu chg.service_num: The text field to document an outside vendor's service or purchase
m order number.
02-Aug-2016 39/403
CA Service Management - 14.1
Field Remarks
product chg.product: A pointer to a record in the product table, which indicates the product that
is affected by this change.chg.product = product.id
actions chg.actions: A big text field for documenting actions.
type_of_co chg.type_of_contact: A pointer to a record in the toc table, which indicates a general
ntact categorization of the affected_end_user's perspective of the change order.chg.
type_of_contact = toc.id
reporting_m chg.reporting_method: A pointer to a record in the repmeth table, which classifies the
ethod origination of the change order, and is selected by the person creating the change order.
chg.reporting_method = repmeth.id
person_con chg.person_contacting: A pointer to a record in the perscon table, which indicates the
tacting role of the affected_end_user or requestor.chg.person_contacting = perscon.id
status_nam chgstat.sym: The description of the status as seen by a user.chg.status = chgstat.code
e
priority_nu pri.sym: The description of the priority as seen by a user.chg.priority = pri.enum
m
category_na chgcat.sym: The name of the Change Category as viewed by a user.chg.category =
me chgcat.code
organization ca_organization.org_name: The name of an organization as viewed by a user.chg.
_name organization = ca_organization.organization_uuid
affected_en ca_contact.last_name: The affected end user's last name.chg.affected_end_user =
d_user_last ca_contact.contact_uuid
name
affected_en ca_contact.first_name: The affected end user's first name.chg.affected_end_user =
d_user_first ca_contact.contact_uuid
name
affected_en ca_contact.middle_name: The affected end user's middle name.chg.affected_end_user
d_user_mid = ca_contact.contact_uuid
dlename
requester_l ca_contact.last_name: The requestor's last name.chg.requestor = ca_contact.
astname contact_uuid
requester_fi ca_contact.first_name: The requestor's first name.chg.requestor = ca_contact.
rstname contact_uuid
requester_ ca_contact.middle_name: The requestor's middle name.chg.requestor = ca_contact.
middlenam contact_uuid
e
business ca_organization.org_name: The name of the Requester's organization as seen by users.
chg.requestor = ca_organization.organization_uuid
assignee_las ca_contact.last_name: The assignee's last name.chg.assignee = ca_contact.contact_uuid
tname
assignee_fir ca_contact.first_name: The assignee's first name.chg.assignee = ca_contact.
stname contact_uuid
assignee_mi ca_contact.middle_name: The assignee's middle name.chg.assignee = ca_contact.
ddlename contact_uuid
groupID
02-Aug-2016 40/403
CA Service Management - 14.1
Field Remarks
ca_contact.contact_uuid: A binary representation of the internal id used for the group
assigned to this change order.chg.group_id = ca_contact.contact_uuid
group_nam ca_contact.last_name: The name of the group assigned to this change order.chg.group
e = ca_contact.contact_uuid
service_typ srv_desc.sym: The name of the service type applied to this change order.chg.
e support_lev = srv_desc.code
impact_nu impact.sym: The description of the impact as seen by users.chg.impact = impact.enum
m
product_sy product.sym: The product description as seen by users.chg.product = product.id
m
type_of_co toc.sym: The Type Of Contact description as seen by users.chg.type_of_contact = toc.id
ntact_sym
rpting_meth repmeth.sym: The Reporting method description as seen by users.chg.
od_sym reporting_method = repmeth.id
person_con perscon.sym: The Person Contacting description as seen by users.chg.person_contacting
tacting_sym = perscon.id
View_Change_to_Assets
The following list of fields is a basic view of change orders and their assets. The change request table
(chg) is indirectly joined with the network resource table (ca_owned_resource) to get a list of each
change orders assets. This view may not list all change orders, particularly those that have no assets.
Field Remarks
View_C All fields listed in the View_Change view defined earlier in this document.
hange.
*
assetID ca_owned_resource.own_resource_uuid: The binary field which serves as the internal,
unchanging unique identifier for an asset record.
asset_s ca_owned_resource.serial_number: The serial number for an asset record.
erial_n
um
asset_cl ca_resource_class.name: A short description of the class to which an asset belongs.
ass ca_owned_resource.resource_class = ca_resource_class.id
asset_f ca_resource_family.name: The family of assets to which this asset belongs.
amily ca_owned_resource.resource_class = ca_resource_class.id AND ca_resource_class.family_id
= ca_resource_family.id
asset_n ca_owned_resource.resource_name: The network name by which this asset is known.
ame
02-Aug-2016 41/403
CA Service Management - 14.1
View_Change_to_Change_Act_Log
The following is a basic view of all change orders and the activity logs that go with them. This view
joins the View_Change view with the Change Order Activity Log (chgalg) to give detailed information
about change orders and their activity logs.
Field Remarks
View_Chan This shows all fields listed in the View_Change view defined earlier in this document.
ge.*
chgalg_id chgalg.id: The unique identifier for this record in the chgalg table.
chgalg_per chgalg.persid: The unique identifier for this record in the chgalg table, preceded by the
sid object identifier (chgalg for chgalg) and a colon.
change_id chgalg.change_id: This is a pointer to change the order id to which this activity belongs.
chgalg.change_id = chgalg.id
chgalg_last chgalg.last_mod_dt: The last modify date/time (pdmtime).
_mod_dt
time_spent chgalg.time_spent: The duration of time spent on this activity, stored as the total
number of seconds. For example, 80 = 1 minute, 20 seconds.
time_stam chgalg.time_stamp: The user modifiable date/time of activity (pdmtime).
p
system_tim chgalg.system_time: The date/time of record creation (pdmtime).
e
analyst chgalg.analyst: The uuid pointer to contact uuid to get the analyst who performed the
activity.chgalg.analyst = ca_contact.contact_uuid
chgalg_des chgalg.description: The text description of this activity, which can be modified by the
cription user.
action_des chgalg.action_desc: The text description of automated action, which cannot be modified
c by the user.
type chgalg.type: The text pointer to a record in the activity type table.chgalg.type = act_type.
code
internal chgalg.internal: The integer flag (1 or 0), which indicates if this log entry is intended for
all to see or just for internal use.
knowledge chgalg.knowledge_session: This is an identifier for a particular session of a particular
_session user.
knowledge chgalg.knowledge_tool: This is an indicator of the knowledge management tool used for
_tool the search, such as NLS_FAQ or EXPERT, and so on.
chgalg_ana chgalg.analyst: This is the uuid pointer to contact uuid to get the analyst who performed
lyst_id the activity.chgalg.analyst = ca_contact.contact_uuid
02-Aug-2016 42/403
CA Service Management - 14.1
View_Change_to_Change_WF
This view is a result of the View_Change view joined with the Workflow task table (wf) to give a basic
view of change orders and their workflow tasks. This may not list all change orders, particularly when
there are no workflow tasks assigned.
Field Remarks
View_C This shows all fields listed in the View_Change view defined earlier in this document.
hange.
*
wf_id wf.id: The unique identifier for a record in the wf table.
wf_per wf.persid: This is a unique identifier for this record in the wf table, preceded by the object
sid identifier (wf for wf) and a colon.
del wf.del: This is a boolean indicator. It specifies whether this record is to be displayed to the
user.
object_ wf.object_type: This is the factory name, which is used to identify the type of record (for
type example, chg) to which this workflow task is attached.
object_ wf.object_id: This is the unique identifier used to identify the specific record to which this
id workflow task is attached.wf.object_id = chg.id
task wf.task: This is an identifier, which references the type of task this record represents.wf.task
= tskty.code
wf_tem wf.wf_template: This is an identifier, which references from which template this workflow
plate task record was created.wf.wf_template = wftpl.id
sequen wf.sequence: This is an integer, which indicates the order this particular workflow task
ce record should be displayed and executed by CA SDM (for example, Ascending).
wf_stat wf.status: This is an identifier, which references a tskstat record that indicates the current
us status of this workflow task.wf.status = tskstat.code
group_ wf.group_task: This is a Boolean, which indicates whether this task belongs to a group.
task
asset wf.asset: This is a UUID (binary) identifier, which references a record in the
ca_owned_resource table.wf.asset = ca_owned_resource.own_resource_uuid
creator wf.creator: This is a UUID (binary) identifier, which references a record in the ca_contact
table. It indicates the person who created this workflow task.wf.creator = ca_contact.
contact_uuid
date_cr wf.date_created: This is the Date/timestampe this workflow task was created (pdmtime).
eated
wf_assi wf.assignee: This is the UUID (binary) identifier, which references a record in the ca_contact
gnee table. It indicates the person who is currently assigned to this workflow task.wf.assignee =
ca_contact.contact_uuid
done_b wf.done_by: This is the UUID (binary) identifier, which references a record in the ca_contact
y table. It indicates the person who completed or approved this workflow task.wf.done_by =
ca_contact.contact_uuid
02-Aug-2016 43/403
CA Service Management - 14.1
Field Remarks
wf_star wf_start_date: This is the timestamp when the workflow task moved into an active status
t_date (pdmtime).
wf_est wf.est_comp_date: This is the timestamp (pdmtime) when users believe this task will be
_comp completed.
_date
est_dur wf.est_duration: This is the estimated duration for this workflow task.
ation
comple wf.completion_dat: This is the timestamp (pdmtime) when this workflow task was
tion_da completed.
te
actual_ wf.actual_duration: This is the actual amount of time it took to complete this workflow task.
duratio
n
wf_est wf.est_cost: This is the estimated cost of this workflow task.
_cost
cost wf.cost: This is the actual cost required to complete this workflow task.
wf_des wf.description: This is the description of the workflow task.
cription
wf_last wf.last_mod_dt: This is the timestamp (pdmtime) when this workflow task was last changed.
_mod_
dt
wf_last wf.last_mod_by: This is the UUID (binary) unique identifier referencing a record in the
_mod_ contact table, which indicates the last person to make changes to this workflow task.wf.
by last_mod_by = ca_contact.contact_uuid
View_Change_to_Properties
This view is a result of the View_Change view joined with the Properties table (prp) to give a basic
view of change orders and their assigned properties. This may not list all change orders, particularly
when there are no properties assigned.
Field Remarks
View_C This shows all fields listed in the View_Change view defined earlier in this document.
hange.
*
prp_id prp.id: This is an integer unique identifier for the property record.
prp_pe prp.persid: This is a unique identifier for this record in the wf table, preceded by the object
rsid identifier (prp for prp) and a colon.
object_ prp.object_type: This is the factory name, which is used to identify the type of record (for
type example, chg) to which this property record is attached.
object_ prp.object_id: This is the unique identifier used to identify the specific record to which this
id property is attached.prp.object_id = chg.id
02-Aug-2016 44/403
CA Service Management - 14.1
Field Remarks
sequen prp.sequence: This is an integer that indicates the order for which this particular property
ce record should be displayed by CA SDM (for example, Ascending).
propert prp.property: This is an identifier, which references a record in the prptpl table. It represents
y the template from which this property was created.prp.property=prptpl.code
value prp.value: This is the value entered by the user in response to the prp_description and prp.
label fields.
prp_las prp.last_mod_dt: This is the timestamp (pdmtime) when this property was last modified.
t_mod_
dt
prp_las prp.last_mod_by: This is a binary identifier, which references a record in the ca_contact
t_mod_ table. It represents the person who last modified this record.prp.last_mod_by = ca_contact.
by contact_uuid
require prp.required: This is a Boolean indicating whether this property must have a prp.value
d before the record is saved.
sample prp.sample: This is a text field, which displays example values to guide the user in typing the
most useful value in prp.value.
prp_de prp.description: This is a text field, which explains what kind of value should be entered in
scriptio prp.value.
n
label prp.label: This is a short description of what should be placed in the prp.value field.
View_Change_to_Request
The following is a basic view of change orders that have assigned requests only. This view is a result
of the View_Change view joined with the request table (call_req) to give details about the change
order and its associated request.
Field Remarks
View_C This shows all fields listed in the View_Change view defined earlier in this document.
hange.
*
cr_id call_req.id: This is the unique identifier for this record in the call_req table.
ref_nu call_req.ref_num: This is the Request reference number, which is used by analysts and
m customers to refer to a particular Request.
cr_sum call_req.summary: This is a brief description of the request for quick reference.
mary
cr_persi call_req.persid: This is a unique identifier for this record in the call_req table, preceded by
d the object identifier (cr for table call_req) and a colon.
cr_desc call_req.description: This is the long description of a request, as dictated by an analyst or
ription customer.
cr_statu call_req.status: This is a unique identifier referencing a record in the cr_stat table. It
s indicates the status of this request:call_req.status = cr_stat.code
02-Aug-2016 45/403
CA Service Management - 14.1
Field Remarks
cr_activ call_req.active_flag: This is the Integer flag used to determine whether this request record is
e_flag active (1 or 0).
time_sp call_req.time_spent_sum: This is the derived total of all act_log records' time_spent fields,
ent_su stored in seconds (i.e. 80 = 1 minute 20 seconds).
m
cr_open call_req.open_date: This is the Request creation timestamp (pdmtime).
_date
cr_last_ call_req.last_mod_dt: This is the last modified timestamp (pdmtime).
mod_dt
cr_close call_req.close_date: This is the Timstamp for when the request was set to inactive
_date (pdmtime).
cr_log_ call_req.log_agent: This is a binary unique identifier referencing the ca_contact table. It
agent references the person who was the request's original creator.call_req.log_agent =
ca_contact.contact_uuid
cr_grou call_req.group_id: This is a binary unique identifier referencing a record in the ca_contact
p_id table. It represents the group currently assigned to the request.call_req.group_id =
ca_contact.contact_uuid
cr_assig call_req.assignee: This is a binary unique identifier referencing a record in the ca_contact
nee table. It represents the person currently assigned to the request.call_req.assignee =
ca_contact.contact_uuid
custom call_req.customer: This is a binary unique identifier referencing a record in the ca_contact
er table. It represents the affected end user for this request.call_req.customer = ca_contact.
contact_uuid
charge_ charge_back_id: This is a text field available for use as an indicator of accounting jargon for
back_id expensing this request to the appropriate cost center.
affected call_req.affected_rc: This is a binary unique identifier referencing a row in the
_rc ca_owned_resource table. It represents the asset to which this request applies.call_req.
affected_rc = ca_owned_resource.own_resource_uuid.
cr_supp call_req.support_lev: This is a pointer to a service desc record, which automates some
ort_lev constraints under which this request must be completed.call_req.support_lev = srv_desc.
code
cr_cate call_req.category: This is a unique identifier referencing a record in the prob_ctg table,. It
gory represents the category to which this request belongs.call_req.category = prob_ctg.persid
solution call_req.solution: This is a pointer to call solution to get solution.call_req.solution = crsol.
persid
cr_impa call_req.impact: This is an integer unique identifier referencing a row in the impact table. It
ct indicates the scope this request is affecting.call_req.impact = impact.enum
cr_prior call_req.priority: This is an integer unique identifier referencing a record in the pri table. It
ity indicates how analysts will prioritize the work associated with this request.call_req.priority =
pri.enum
urgency call_req.urgency: This is an integer unique identifier referencing a row in the urgncy table. It
documents the user's feeling of urgency for having this request resolved.call_req.urgency =
urgncy.enum
severity
02-Aug-2016 46/403
CA Service Management - 14.1
Field Remarks
call_req.severity: This is an integer unique identifier referencing a row in the severity table.
It indicates the severity of the consequences of this unresolved request.call_req.severity =
sevrty.enum
extern_ This specifies an associated ticket.
ref
last_act This is the id of the last activity.
_id
cr_ttick This is a pointer to a trouble ticket to get the associated ticket.
et
cr_pare call_req.parent: This is a persid pointer to another request persid, which facilitates creation
nt of a hierarchy of change orders.call_req.parent = call_req.persid
cr_tem call_req.template_name: This is a text value, which indicates this request is designated for
plate_n and can be chosen from a list as a template for other similar requests.cr_template.template
ame = call_req.persid
cr_sla_v call_req.sla_violation: This is an integer, which counts number of times slas attached to this
iolation request have been violated.
cr_predi call_req.predicted_sla_viol: (r5.5) Neugent related technology field.
cted_sla
_viol
cr_creat call_req.created_via: This is an integer pointer to a record in the interface table. It indicates
ed_via from which interface the change order originated.call_req.created_via = interface.id
cr_call_ call_req.call_back_date: This is a timestamp field (pdmtime), which indicates a future date
back_da /time the affected_end_user is to be contacted.
te
cr_call_ call_req.call_back_flag: This is a Boolean indicator displayed as a checkbox to the user,
back_fla indicating whether to notify the analyst at the call_req.call_back_date.
g
event_t call_req.event_token: This is used by CA NSM for message matching.
oken
type call_req.type: This is a text field referencing a record in the crt table. It indicates the ITIL
type of this request.call_req.type = crt.code
cr_strin This is a user-definable string.
g1
cr_strin This is a user-definable string.
g2
cr_strin This is a user-definable string.
g3
cr_strin This is a user-definable string.
g4
cr_strin This is a user-definable string.
g5
cr_strin This is a user-definable string.
g6
change
02-Aug-2016 47/403
CA Service Management - 14.1
Field Remarks
call_req.change: This is an integer unique identifier, referencing a row in the chg table. It
indicates the change order that was created as a result of this request.call_req.change = chg.
id.
View_Contact_Full
The following of fields is a basic view of all contacts. This view lists all fields in the ca_contact table,
plus referenced fields such as short descriptions for contact type, location name, organization names,
and service type for each contact. This view has already been joined with the ca_location,
ca_organization, srv_desc, and ca_contact_type tables to get the actual names and symbols for some
of the fields in the ca_contact table. The actual names and symbols are located at the end of this
views field list.
Field Remark
contact ca_contact.contact_uuid: A binary-unique identifier for each ca_contact record.
_uuid
middle ca_contact. middle_name: The middle name of this contact.
_name
alias ca_contact.alias: The alternate, often informal name for this contact.
last_na ca_contact.last_name: This contact's surname.
me
first_na ca_contact.first_name: This contact's formal first name.
me
pri_pho ca_contact.pri_phone_number: The contact's primary phone number.
ne_nu
mber
alt_pho ca_contact.alt_phone_number: The contact's alternate phone number.
ne_nu
mber
fax_nu ca_contact.fax_number: The contact's facsimile number.
mber
mobile ca_contact.mobile_phone: The contact's mobile phone number.
_phone
pager_ ca_contact.pager_number: The number for issuing a page to the contact's page.
number
email_a ca_contact.email_address: The contact's email address.
ddress
locatio ca_contact.location_uuid: A binary-unique identifier referencing a record in the ca_location
n_uuid table, which indicates the contact's static location.ca_contact.location_uuid = ca_location.
location_uuid
floor_lo ca_contact.floor_location: A contact's floor number.
cation
02-Aug-2016 48/403
CA Service Management - 14.1
Field Remark
pager_ ca_contact.pager_email_address: A contact's email address for their pager.
email_a
ddress
room_l ca_contact.room_location: The contact's specific room on the floor at the static location.
ocation
contact ca_contact.contact_type: An unique integer-identifier, referring to a row in the
_type ca_contact_type table, which indicates the general function of this contact within the service
desk application.ca_contact.contact_type = ca_contact_type.id
inactive ca_contact.inactive: A boolean indicator of the state of this record, determining its inclusion
or exclusion from standard searches within service desk.
creatio ca_contact.creation_user: The userid of the contact who created this record.ca_contact.
n_user creation_user = ca_contact.userid
creatio ca_contact.creation_date: A timestamp (pdmtime), indicating the date and time this contact
n_date was created.
last_up ca_contact.last_update_user: The userid of the contact who last updated this contact record.
date_us ca_contact.last_update_user = ca_contact.userid
er
last_up ca_contact.last_update_date: A timestamp (pdmtime), indicating the date and time this
date_d record was last modified.
ate
version ca_contact.version number: The internal version indicator.
_numb
er
depart ca_contact.department: An integer-unique identifier, referencing a row in the
ment ca_resource_department table, that indicates the contact's department.ca_contact.
department = ca_resource_department.id
comme ca_contact.comment: A freeform text comment field for analysts to document important
nt facts that influence the handling of this particular contact.
compa ca_contact.company_uuid: A binary-unique identifier, which references a row in the
ny_uui ca_company table. It indicates this contact's affiliation with a company.ca_contact.
d company_uuid = ca_company.company_uuid
organiz ca_contact.organizaiton_uuid: A binary-unique identifier which references a row in the
ation_u ca_organization table. It indicates this contact's working organization.ca_contact.
uid organizaiton_uuid = ca_organization.organization_uuid
admin_ ca_contact.admin_organization_uuid: A binary-unique identifier, which references a row in
organiz the ca_organization table. It indicates this contact's administrative organization.ca_contact.
ation_u admin_organization_uuid = ca_organization.organization_uuid
uid
alternat ca_contact.alternate_identifier: A user-defined identifier, usually an entity used by human
e_ident resources to uniquely identify this contact.
ifier
job_titl ca_contact.job_title: An integer-unique identifier, which references the ca_job_title table. It
e indicates the standardized job title for this contact.ca_contact.job_title = ca_job_title.id
job_fun
ction
02-Aug-2016 49/403
CA Service Management - 14.1
Field Remark
ca_contact.job_function: An integer-unique identifier, which references the ca_job_function
table. It indicates a standardized general description of the contact's job function.ca_contact.
job_function = ca_job_function.id
mail_st ca_contact.mail_stop: Mail Stop.
op
cost_ce ca_contact.cost_center: An integer-unique identifier, which references the
nter ca_resource_cost_center table. It indicates this contact's primary cost center.ca_contact.
cost_center = ca_cost_center.id
userid ca_contact.userid: The user identifier this contact will use for logging into service desk.
supervi ca_contact.supervisor_contact_uuid: A binary-unique identifier, referencing a row in the
sor_con ca_contact table, that creates a hierarchy of contacts to indicate the reporting structure of
tact_uu each contact.ca_contact.supervisor_contact_uuid = ca_contact.contact_uuid
id
exclude ca_contact.exclude registration: An internal flag.
_registr
ation
delete_ ca_contact.delete_time: A timestamp indicating when the inactive flag was set to 1.
time
contact ca_contact_type.name: A short description of this contact's ca_contact.contact_type.
_type_
name
locatio ca_location.name: A short description of this contact's static location.
n_nam
e
organiz ca_organization.org_name: A short description of this contact's ca_contact.
ation organizaiton_uuid.
admin_ ca_organization.org_name: A short description of this contact's organization name.
organiz ca_contact.admin_organization_uuid
ation
service srv_desc.sym: A short description of this contact's usp_contact.c_service_type.ca_contact.
_type contact_uuid = usp_contact.contact_uuid AND usp_contact.c_service_type = srv_desc.code
state_s ca_location.state: An integer-unique identifier, referencing a row in the ca_state_provice
ym table, that indicates the State, Province, or other artificially defined geographic region.
ca_contact.location_uuid = ca_location.location_uuid AND ca_location.state =
ca_state_province.id
View_Contact_to_Environment
The following list of fields is a basic view of contacts and their environment (assets). This view is a
view of the contact table (ca_contact), but is also joined with the owned resource table
(ca_owned_resource) to get a list of all assets associated with a contact. This view may be joined with
the View_Contact_Full view to get the contact type, service type, organizations and location of each
contact. Or, this view may be joined with the individual tables to get that same information.
02-Aug-2016 50/403
CA Service Management - 14.1
Field Remarks
ca_contac The ca_contact fields that are defined in the View_Contact_Full view definition.
t.*
asset_uui ca_owned_resource.own_resource_uuid: A binary-unique identifier for an asset in the
d ca_owned_resource table.
asset_na ca_owned_resource.resource_name: The designated network name of this asset.
me
View_Group
The following list of fields is a basic view of the contact table, but lists only group contacts. Contact
type id = 2308, which is for group types. You may want to join this view with other CA SDM tables to
get more meaningful data for reporting. For example, you can join it with the Location (ca_location)
table to find the name and address for the groups location. You can also join this view with the
Organization (ca_organization) table to get the functional and administrative organization names for
the group.
Field Remarks
ca_contact.* The ca_contact fields that are defined in the View_Contact_Full view definition.
The following example shows how joining tables works, and how reporting fields are extracted. The
field from one table (on the right) is joined (->) with a field from another table (on the left). To join
properly between tables and views, you need to understand the differences in joins for the database.
The field defined in the parentheses, as follows, is what you may want to use in your reports if the
previous tables are joined with the View_Group view:
View_Group_to_Contact
The following list of fields is a basic view of all group contacts (members). It also includes managers.
Here, View_Group is joined with the Group_Member table, and then joined with the ca_contact
table. All fields in View_Group are listed, as well as the first, middle and last name from the
ca_contact table. The Group_Member manager flag is also listed. The group member manager flag is
1 or 0, which means that the member is either (yes - 1) a manager, or (no - 0) not a manager. Most of
the information in this view pertains to the group itself, not the actual members. This view is used to
find information on a particular group, including the names of its members.
02-Aug-2016 51/403
CA Service Management - 14.1
Field Remarks
View_Group.* The View_Group fields that are defined in the View_Group definition.
member_lastname ca_contact.last_name: The surname of the group member.
member_firstname ca_contact.first_name: The formal first name of the group member.
member_middlename ca_contact.middle_name: The middle name of the group member.
grpmem_manager_flag ca_contact.manager_flag: The Group Member Manager (1 or 0) indicator.
View_Issue
The following is a basic view of all issues, listing the status, priority, category, organizations, the
requesters full name, the assignees full name, the group name and ID, and so on. Here, the issue
table is joined with many other tables to give some more meaningful data about the issue.
Field Remarks
id issue.id: The unique identifier for this record in the issue table.
persid issue.persid: The unique identifier for this record in the issue table, preceded by the
object identifier (iss for table issue) and a colon.
issue_ref_nu issue.iss_ref_num: The Issue reference number, which is used by analysts and
m customers to refer to a particular issue.
description issue.description: The long description of an issue as dictated by an analyst or
customer.
status issue.status: The unique identifier of an issue status, which is a pointer to the issstat
table.issue.status = issstat.code
active_flag issue.active_flag: The integer flag used to determine whether this issue is active (1 or
0).
start_date issue.start_date: The date the first task goes to a pending status (pdmtime).
open_date issue.open_date: The issue creation date (pdmtime).
last_mod_dt issue.last_mod_dt: The last modified date (pdmtime).
last_mod_by issue.last_mod_by: The pointer to the contact uuid, which indicates the last contact to
modify this issue.issue.last_mod_by = ca_contact.contact_uuid
close_date issue.close_date: The date the issue was set to inactive (pdmtime).
resolve_date issue.resolve_date: The date the issue was set to a status configured to indicate the
issue was resolved (pdmtime).
rootcause issue.rootcause: A pointer to a record in the rootcause table, which represents the
original situation that required this issue to be logged.issue.rootcause = rootcause.id
est_total_ti issue.est_total_time: The estimated total time (pdmtime) it will take to complete this
me issue.
actual_total_ issue.actual_total_time actual: The total time (pdmtime) it took to complete this issue.
time
02-Aug-2016 52/403
CA Service Management - 14.1
Field Remarks
log_agent issue.log_agent: A binary-unique identifier, this references the ca_contact table, which
in turn references the person who was the issue's original creator.issue.log_agent =
ca_contact.contact_uuid
assignee issue.assignee: A pointer to the contact uuid who is currently assigned to the change
order.issue.assignee = ca_contact.contact_uuid
organization issue.organization: A pointer to the internal organization uuid, which represents the
organization to whom this issue belongs.issue.organization = ca_organization.
organization_uuid
group_id issue.group_id: A pointer to the contact uuid, which represents the group currently
assigned to the issue.issue.group_id = ca_contact.contact_uuid
affected_con issue.affected_contact: A pointer to the contact uuid, which represents the affected
tact contact for this issue.issue.affected_contact = ca_contact.contact_uuid
requestor issue.requrestor: A pointer to the contact uuid, which represents the person who asked
this issue to be logged.issue.requestor = ca_contact.contact_uuid
category issue.category: A pointer to the issue category code to reference the category into
which this issue falls.issue.category = isscat.code
priority issue.priority: A pointer to priority enum, which represents the priority into which this
issue falls.issue.priority = pri.enum
need_by issue.need_by: The date, which indicates when the affected_end_user needs to have
the issue completed (pdmtime).
est_comp_d issue.est_comp_date: The estimated completion date (pdmtime) for this Issue.
ate
actual_comp issue.actual_comp_date: The actual completion date (pdmtime) of this issue.
_date
est_cost issue.est_cost: The estimated cost of this issue.
actual_cost issue.actual_cost: The actual cost to implement this issue.
justification issue.justification: A text field, which allows a requester to document the reason(s) this
issue is required.
backout_pla issue.backout_plan: A text field that allows an analyst to document a backout plan for
n this issue.
impact issue.impact: A pointer to an impact table record, which indicates the scope of
resources that this issue affects.issue.impact = impact.enum
parent issue.parent: A pointer to another issue id, which allows creation of a hierarchy of
issues.issue.parent = issue.id
effort issue.effort: A text field which explains the plan for implementing this issue.
support_lev issue.support_lev: A pointer to a service desc record, which automates some
constraints under which this issue must be completed.issue.support_lev = srv_desc.
code
template_na issue.template_name: The name of and pointer to an issue template.issue.
me template_name = iss_template.template_name
sla_violation issue.sla_violation: The integer to count the number of times slas attached to this issue
have been violated.
issue.predicted_sla_viol: (r5.5) Neugent related technology field.
02-Aug-2016 53/403
CA Service Management - 14.1
Field Remarks
predicted_sl
a_viol
macro_predi issue.macro_predict_viol: (r5.5) Neugent related technology field.
ct_viol
created_via issue.created_via: A pointer to a record in the interface table. This indicates from which
interface the issue originated.issue.created_via = interface.id
call_back_da issue.call_back_date: A date/time field (pdmtime), which indicates a future date/time
te the requester is to be contacted.
call_back_fla issue.call_back_flag: A boolean indicator displayed as a checkbox to the user, to
g indicate whether to notify the analyst at the issue.call_back_date.
string1 This is a user-definable text field.
string2 This is a user-definable text field.
string3 This is a user-definable text field.
string4 This is a user-definable text field.
string5 This is a user-definable text field.
string6 This is a user-definable text field.
service_date issue.service_date: The Date/ Time (pdmtime) that an outside vendor is expected to
service this issue.
service_num issue.service_num: The text field to document an outside vendor's service or purchase
order number.
product issue.product: A pointer to a record in the product table, which indicates the product
that is affected by this issue.issue.product = product.id
actions issue.actions: A big text field for documenting actions.
type_of_con issue.type_of_contact: A pointer to a record in the toc table, which indicates a general
tact categorization of the affected_end_user's perspective of the issue.issue.
type_of_contact = toc.id
reporting_m issue.reporting_method: A pointer to a record in the repmeth table, which classifies
ethod the origination of the issue, and is selected by the person creating the issue.issue.
reporting_method = repmeth.id
person_cont issue.person_contacting: A pointer to a record in the perscon table, which indicates the
acting role of the affected_end_user or requester.issue.person_contacting = perscon.id
status_name issstat.sym: The description of the status as seen by a user.issue.status = issstat.code
priority_num pri.sym: The description of the priority as seen by a user.issue.priority = pri.enum
category_na isscat.sym: The name of the issue category as viewed by a user.issue.category = isscat.
me code
organization ca_organization.org_name: The name of an organization as viewed by a user.issue.
_name organization = ca_organization.organization_uuid
affected_end ca_contact.last_name: The affected End User's last name.issue.affected_end_user =
_user_lastna ca_contact.contact_uuid
me
ca_contact.first_name: The affected End User's first name.issue.affected_end_user =
ca_contact.contact_uuid
02-Aug-2016 54/403
CA Service Management - 14.1
Field Remarks
affected_end
_user_firstna
me
affected_end ca_contact.middle_name: The affected End User's middle name.issue.
_user_middl affected_end_user = ca_contact.contact_uuid
ename
assignee_last ca_contact.last_name: The assignee's last name.issue.assignee = ca_contact.
name contact_uuid
assignee_firs ca_contact.first_name: The assignee's first name.issue.assignee = ca_contact.
tname contact_uuid
assignee_mi ca_contact.middle_name: The assignee's middle name.issue.assignee = ca_contact.
ddlename contact_uuid
groupID View_Group.contact_uuid: A binary representation of the internal id used for the
group assigned to this issue.issue.group_id = ca_contact.contact_uuid
group_name View_Group.last_name: The name of the group assigned to this issue.issue.group =
ca_contact.contact_uuid
service_type srv_desc.sym: The name of the service type applied to this issue.issue.support_lev =
srv_desc.code
impact_num impact.sym: The description of the impact as seen by users.issue.impact = impact.
enum
product_sym product.sym: The product description as seen by users.issue.product = product.id
type_of_con toc.sym: The Type Of Contact description as seen by users.issue.type_of_contact = toc.
tact_sym id
rpting_meth repmeth.sym: The Reporting method description as seen by users.issue.
od_sym reporting_method = repmeth.id
person_cont perscon.sym: The Person Contacting description as seen by users.issue.
acting_sym person_contacting = perscon.id
created_via_ interface.sym: issue.created_via = interface.id.
sym
rootcause_sy rootcause.sym: issue.rootcause = rootcause.id.
m
View_Issue_Act_Log
The following is a basic view of all issue activity logs. This is a view of the issue activity log table
(issalg) joined with the activity type table (act_type) and the contact table (ca_contact) to give more
meaningful data, such as the actual activity type and full name of the analyst who performed the
activity.
Field Remarks
id issalg.id: The unique identifier for this record in the issalg table.
persid issalg.persid: The unique identifier for this record in the issalg table, preceded by the
object identifier (issalg for issalg) and a colon.
02-Aug-2016 55/403
CA Service Management - 14.1
issue_id issalg.issue_id: The pointer to issue id to which this activity belongs.issalg.issue_id = issalg.
id
last_mod_ issalg.last_mod_dt: The last modify date/time (pdmtime).
dt
time_spen issalg.time_spent: The duration of time spent on this activity, stored as the total number
t of seconds. For example, 80 = 1 minute, 20 seconds.
time_stam issalg.time_stamp: The user modifiable date/time of activity (pdmtime).
p
system_ti issalg.system_time: The date/time of record creation (pdmtime).
me
analyst issalg.analyst: A binary-unique identifier referring to the contact uuid to get the analyst
who performed the activity.issalg.analyst = ca_contact.contact_uuid
description issalg.description: The text description of this activity, which can be modified by the user.
action_des issalg.action_desc: The text description of the automated action, which cannot be
c modified by the user.
type issalg.type: The text pointer to a record in the activity type table.issalg.type = act_type.
code
internal issalg.internal: The integer flag (1 or 0), which indicates if this log entry is intended for all
to see or just for internal use.
knowledge issalg.knowledge_session: An identifier for a particular session of a particular user.
_session
knowledge issalg.knowledge_tool: An indicator of the knowledge management tool used for the
_tool search, such as NLS_FAQ or EXPERT, and so on.
analyst_las View_Contact_Full.last_name: The Analyst's last name, derived from issalg.analyst =
tname ca_contact.contact_uuid.
analyst_fir View_Contact_Full.first_name: The analyst's first name.
stname
analyst_mi View_Contact_Full.middle_name: The middle name of the analyst.
ddlename
activity_ty act_type.sym: The activity type referenced by issalg.type = act_type.code.
pe
View_Issue_to_Assets
The following list of fields is a basic view of issues and their assets. The issue table (issue) is indirectly
joined with the owned resource table (ca_owned_resource), and other asset-related tables, to get a
list of each issues assets. This may not list all issues, particularly those that have no assets.
Field Remarks
View_Issu The View_Issue view which defines all fields listed in the View_Issue view.
e.*
02-Aug-2016 56/403
CA Service Management - 14.1
Field Remarks
assetID ca_owned_resource.own_resource_uuid: The binary field which serves as the internal,
unchanging unique identifier for an asset record.
asset_seri ca_owned_resource.serial_number: The serial number for an asset record.
al_num
asset_clas ca_resource_class.name: A short description of the class to which an asset belongs.
s ca_owned_resource.resource_class = ca_resource_class.id
asset_fami ca_resource_family.name: The family of assets to which this asset belongs.
ly ca_owned_resource.resource_class = ca_resource_class.id AND ca_resource_class.
family_id = ca_resource_family.id
asset_nam ca_owned_resource.resource_name: The network name by which this asset is known.
e
View_Issue_to_Issue_Act_Log
The following is a basic view of all issues and the activity logs that go with them. This view joins the
View_Issue view with the View_Issue_Act_Log view to give detailed information about issues and
their activity logs. Actual data is at the end of the fields list.
Field Remarks
View_Issu Please refer to the View_Issue view defined earlier in this document.
e.*
issalg_id issalg.id: The unique identifier for this record in the issalg table.
issalg_pers issalg.persid: The unique identifier for this record in the issalg table, preceded by the
id object identifier (issalg for issalg) and a colon.
issue_id issalg.issue_id: The pointer to issue id to which this activity belongs.issalg.issue_id = issalg.
id
issalg_last issalg.last_mod_dt: The last modify date/time (pdmtime).
_mod_dt
time_spen issalg.time_spent: The duration of time spent on this activity, stored as the total number
t of seconds. For example, 80 = 1 minute, 20 seconds.
time_stam issalg.time_stamp: The user modifiable date/time of activity (pdmtime).
p
system_ti issalg.system_time: The date/time of record creation (pdmtime).
me
analyst issalg.analyst: The unique binary pointer to the contact uuid to get the analyst who
performed the activity.issalg.analyst = ca_contact.contact_uuid
issalg_des issalg.description: The text description of this activity, which can be modified by the user.
cription
action_des issalg.action_desc: The text description of the automated action, which cannot be
c modified by the user.
type issalg.type: The text pointer to a record in the activity type table.issalg.type = act_type.
code
02-Aug-2016 57/403
CA Service Management - 14.1
internal issalg.internal: The integer flag (1 or 0), which indicates if this log entry is intended for all
to see or just for internal use.
knowledge issalg.knowledge_session: An identifier for a particular session of a particular user.
_session
knowledge issalg.knowledge_tool: An indicator of the knowledge management tool used for the
_tool search, such as NLS_FAQ or EXPERT, and so on.
issalg_anal issalg.analyst: The unique binary pointer to the contact uuid to get the analyst who
yst_id performed the activity.issalg.analyst = ca_contact.contact_uuid
View_Issue_to_Issue_WF
This view is a result of the View_Issue view joined with the workflow task table (isswf) to give a basic
view of issues and their workflow tasks. This may not list all issues, particularly if there are no
workflow tasks assigned to them.
Field Remarks
View_Is Please refer to the View_Issue definition earlier in this document for a description of each
sue.* field.
wf_id isswf.id: This is a unique identifier for a record in the isswf table.
wf_per isswf.persid: This is a unique identifier for this record in the isswf table, preceded by the
sid object identifier (isswf) and a colon.
del isswf.del: This is a boolean indicator of whether this record is to be displayed to the user.
object_ isswf.object_type: This is the factory name, which is used to identify the type of record (for
type example, iss) to which this workflow task is attached.
object_ isswf.object_id: This is a unique identifier used to identify the specific record to which this
id workflow task is attached.isswf.object_id = issue.id
task isswf.task: This is an identifier, which references the type of task this record represents.isswf.
task = tskty.code
wf_tem isswf.wf_template: This is an identifier, which references from which template this workflow
plate task record was created.isswf.wf_template = wftpl.id
sequen isswf.sequence: This is an integer that indicates the order for which this particular workflow
ce task record should be displayed and executed by CA SDM (for example, Ascending).
wf_stat isswf.status: This is an identifier, which references a tskstat record. It indicates the current
us status of this workflow task.isswf.status = tskstat.code
group_ isswf.group_task: This is a boolean, which indicates whether this task belongs to a group.
task
asset isswf.asset: This is a unique binary identifier, which references a record in the
ca_owned_resource table.isswf.asset = ca_owned_resource.own_resource_uuid
creator isswf.creator: This is a unique binary identifier, which references a record in the ca_contact
table. It indicates the person who created this workflow task.isswf.creator = ca_contact.
contact_uuid
02-Aug-2016 58/403
CA Service Management - 14.1
Field Remarks
date_cr isswf.date_created: This is the date/timestamp that this workflow task was created
eated (pdmtime).
wf_assi isswf.assignee: This is a unique binary identifier, which references a record in the ca_contact
gnee table. It indicates the person who is currently assigned to this workflow task.isswf.assignee =
ca_contact.contact_uuid
done_b isswf.done_by: This is a unique binary identifier, which references a record in the ca_contact
y table. It indicates the person who completed or approved this workflow task.isswf.done_by =
ca_contact.contact_uuid
wf_star wf_start_date: This is the timestamp when the workflow task moved into an active status
t_date (pdmtime).
wf_est isswf.est_comp_date: This is a timestamp (pdmtime) indicating when users believe this task
_comp will be completed.
_date
est_dur isswf.est_duration: This is the estimated duration for this workflow task.
ation
comple isswf.completion_date: This is a timestamp (pdmtime) indicating when this workflow task
tion_da was completed.
te
actual_ isswf.actual_duration: This is the actual amount of time it took to complete this workflow
duratio task.
n
wf_est isswf.est_cost: This is the estimated cost of this workflow task
_cost
cost isswf.cost: This is the actual cost required to complete this workflow task.
wf_des isswf.description: This is a description of the workflow task.
cription
wf_last isswf.last_mod_dt: This is the timestamp (pdmtime) indicating when this workflow task was
_mod_ last changed.
dt
wf_last isswf.last_mod_by: This is the unique binary identifier, which references a record in the
_mod_ contact table. It indicates the last person to make changes to this workflow task.isswf.
by last_mod_by = ca_contact.contact_uuid
View_Issue_to_Properties
This view is a result of the View_Issue view joined with the issue properties table (issprp) to give a
basic view of issues and their assigned properties. This may not list all issues, particularly if there are
no properties assigned to them.
Field Remarks
View_I Please refer to the View_Issue definition earlier in this document, for a description of each
ssue.* field.
02-Aug-2016 59/403
CA Service Management - 14.1
Field Remarks
prp_id issprp.id: This is an integer-unique identifier for the property record.
prp_pe issprp.persid: This is a unique identifier for this record in the prp table, preceded by the
rsid object identifier (prp) and a colon.
sequen issprp.sequence: This is an integer that indicates the order for which this particular property
ce record should be displayed by CA SDM (for example, Ascending).
label issprp.label: This is a short description of what should be placed in the issprp.value field.
value issprp.value: This is a value entered by the user in response to the prp_description and issprp.
label fields.
prp_las issprp.last_mod_dt: This is the timestamp (pdmtime) indicating when this property was last
t_mod modified.
_dt
prp_las issprp.last_mod_by: This is a binary identifier, which references a record in the ca_contact
t_mod table. It represents the person who last modified this record.issprp.last_mod_by =
_by ca_contact.contact_uuid
require issprp.required: This is a boolean, indicating whether this property must have a issprp.value
d before the record is saved.
sample issprp.sample: This is a text field, which displays example values to guide the user in entering
the most useful value in issprp.value.
owning issprp.owning_iss: This is a unique identifier used to identify the specific record to which this
_iss property is attached.issprp.object_id = issue.persid
prp_de issprp.description: This is a text field, which explains the type of value that should be entered
scriptio in issprp.value.
n
View_Request
The following is a basic view of all requests. Here, the Request table has been joined with other CA
SDM tables to give you more specific information, such as the request service type, severity, urgency,
category, and priority. There is some additional information about the request listed, as well. All
fields from the Request (call_req) table are selected. The extracted fields that are a result of the
joined tables are listed at the end of this fields list.
Field Remarks
id call_req.id: This is the unique identifier for this record in the call_req table.
persid call_req.persid: This is a unique identifier for this record in the call_req table, preceded by
the object identifier (cr for table call_req) and a colon.
ref_num call_req.ref_num: This is a Request reference number, which is used by analysts and
customers to refer to a particular Request.
summary call_req.summary: This is a brief description of the request for quick reference.
descriptio call_req.description: This is the long description of a request, as dictated by an analyst or
n customer.
02-Aug-2016 60/403
CA Service Management - 14.1
Field Remarks
status call_req.status: This is a unique identifier referencing a record in the cr_stat table. It
indicates the status of this request. call_req.status = cr_stat.code
active_fla call_req.active_flag: This is an integer flag to determine whether this request record is
g active (1 or 0).
open_dat call_req.open_date: This is the Request creation timestamp (pdmtime).
e
time_spe call_req.time_spent_sum: This is the derived total of all of the act_log records' time_spent
nt_sum fields, stored in seconds (i.e. 80 = 1 minute 20 seconds).
last_mod call_req.last_mod_dt: This is the last modified timestamp (pdmtime).
_dt
close_dat call_req.close_date: This is the timstamp when the request was set to inactive (pdmtime).
e
resolve_d This is the date for when the request was resolved (pdmtime).
ate
rootcause This is a pointer to the rootcause.id.
log_agent call_req.log_agent: This is a binary-unique identifier, referencing the ca_contact table. It
references the person who was the request's original creator.call_req.log_agent =
ca_contact.contact_uuid
assignee call_req.assignee: This is a binary-unique identifier, referencing a record in the ca_contact
table. It represents the person currently assigned to the request.call_req.assignee =
ca_contact.contact_uuid
group_id call_req.group_id: This is a binary-unique identifier, referencing a record in the ca_contact
table. It represents the group currently assigned to the request.call_req.group_id =
ca_contact.contact_uuid
customer call_req.customer: This is a binary-unique identifier, referencing a record in the
ca_contact table. It represents the affected end user for this request.call_req.customer =
ca_contact.contact_uuid
charge_b charge_back_id: This is a text field available for use as an indicator of accounting jargon
ack_id for expensing this request to the appropriate cost center.
affected_ call_req.affected_rc: This is a binary-unique identifier, referencing a row in the
rc ca_owned_resource table. It represents the asset to which this request applies.call_req.
affected_rc = ca_owned_resource.own_resource_uuid.
support_l call_req.support_lev: This is a pointer to a service desc record, which automates some
ev constraints under which this request must be completed.call_req.support_lev = srv_desc.
code.
category call_req.category: This is a unique identifier, referencing a record in the prob_ctg table. It
represents the category to which this request belongs.call_req.category = prob_ctg.persid
solution call_req.solution: This is a pointer to call solution to get solution.call_req.solution = crsol.
persid
impact call_req.impact: This is an integer-unique identifier, referencing a row in the impact table.
It indicates the impact scope of the request.call_req.impact = impact.enum
priority call_req.priority: This is an integer-unique identifier, referencing a record in the pri table.
It indicates how analysts will prioritize the work associated with this request.call_req.
priority = pri.enum
02-Aug-2016 61/403
CA Service Management - 14.1
Field Remarks
urgency call_req.urgency: This is an integer-unique identifier, referencing a row in the urgency
table. It indicates the user's feeling of urgency for having this request resolved.call_req.
urgency = urgncy.enum
severity call_req.severity: This is an integer-unique identifier, referencing a row in the severity
table. It indicates the severity of the consequences of this unresolved request.call_req.
severity = sevrty.enum
extern_re This is an external reference to an associated ticket.
f
last_act_i This identifies the id of the last activity.
d
cr_tticket This is a pointer to the trouble ticket to get the associated ticket.
parent call_req.parent: This is a ersid pointer to another request persid, which facilitates creation
of a hierarchy of change orders.call_req.parent = call_req.persid
template_ call_req.template_name: This is a text value, which indicates this request is designated for
name and can be chosen from a list as a template for other similar requests.cr_template.
template = call_req.persid
sla_violati call_req.sla_violation: This is an integer, which counts the number of times that slas
on attached to this request have been violated.
predicted This specifies that a request has been predicted by neugents to likely violate SLA.
_sla_viol
macro_pr This indicates that the request has been predicted by neugents to likely violate SLA.
edicted_v
iolation
created_v call_req.created_via: This is an integer pointer to a record in the interface table that
ia indicates from which interface the change order originated.call_req.created_via =
interface.id
call_back call_req.call_back_date: This is a timestamp field (pdmtime), which indicates a future date
_date /time that the affected_end_user is to be contacted.
call_back call_req.call_back_flag: This is a boolean indicator, displayed as a checkbox to the user,
_flag indicating whether to notify the analyst at the call_req.call_back_date.
event_tok call_req.event_token: This is used by CA NSM for message matching.
en
sched_tok call_req.sched_token: This is used by CA NSM for message matching.
en
type call_req.type: This is a text field referencing a record in the crt table. It indicates the ITIL
type for this request.call_req.type = crt.code
string1 This is a user-definable string.
string2 This is a user-definable string.
string3 This is a user-definable string.
string4 This is a user-definable string.
string5 This is a user-definable string.
string6 This is a user-definable string.
02-Aug-2016 62/403
CA Service Management - 14.1
Field Remarks
problem This is an ITIL problem.
incident_ This is an ITIL incident priority.
priority
change call_req.change: This is an integer-unique identifier, referencing a row in the chg table. It
indicates the change order that was created as a result of this request.call_req.change =
chg.id.
service_ty srv_desc.sym: This indicates the actual Service Type.call_req.support_lev = srv_desc.code
pe
severity_ sevrty.sym: This is the actual Severity number.call_req.severity = sevrty.enum
num
urgency_ urgncy.sym: This indicates the actual Urgency number.call_req.urgency = urgncy.enum
num
category_ prob_ctg.sym: This is the actual Request Area (problem category).call_req.category =
name prob_ctg.id
asset ca_owned_resource.resource_name: This is the actual Asset name.call_req.affected_rc =
ca_owned_resource.own_resource_uuid
impact_n impact.sym: This is the actual Impact number.call_req.impact = impact.enum
um
assignee_ ca_contact.last_name: This is the actual Assignee last name.call_req.assignee = ca_contact.
lastname contact_uuid
assignee_ ca_contact.first_name: This is the actual Assignee first name.call_req.assignee =
firstname ca_contact.contact_uuid
assignee_ ca_contact.middle_name: This is the actual Assignee middle name.call_req.assignee =
middlena ca_contact.contact_uuid
me
customer ca_contact.last_name: This is the actual last name of the Affected End User.call_req.
_lastnam customer = ca_contact.contact_uuid
e
customer ca_contact.first_name: This is the actual first name of the Affected End User.call_req.
_firstnam customer.ca_contact.contact_uuid
e
customer ca_contact.middle_name: This is the actual middle name of the Affected End User.call_req.
_middlen customer = ca_contact.contact_uuid
ame
group_na View_Group.last_name: This is the actual Group name.
me
GroupID View_Group.contact_uuid: This is the actual Group key ID.
status_na cr_stat.sym: This is the actual status.
me
priority_n pri.sym: This is the actual Priority number.
um
02-Aug-2016 63/403
CA Service Management - 14.1
View_Request_to_Act_Log
The following is a basic view of all requests with their activity logs. The View_Request view is joined
with the View_Act_Log view to give more detailed information about each activity per request.
Field Remarks
View_Request. Please refer to the field defined in the View_Request section earlier in this
* document.
View_Act_Log. Please refer to the fields defined in the View_Act_Log section earlier in this
* document.
View_Request_to_Properties
The following is a basic view of call requests and their properties. This view lists everything from the
call request (call_req) table and the request property (cr_prp) table.
Field Remarks
View_R Please refer to the fields defined in the View_Request section of this document.
equest.
*
crprp_id cr_prp.id: This is an integer-unique identifier for the property record.
crprp_p cr_prp.persid: This is a unique identifier for this record in the cr_prp table, preceded by the
ersid object identifier (cr_prp) and a colon.
sequenc cr_prp.sequence: This is an integer that indicates the order for which this particular
e property record should be displayed by CA SDM (for example, Ascending).
label cr_prp.label: This is a short description of what should be placed in the cr_prp.value field.
value cr_prp.value: This is a value entered by the user in response to the prp_description and
cr_prp.label fields.
crprp_la cr_prp.last_mod_dt: This is the timestamp (pdmtime) identifying when this property was
st_mod last modified.
_dt
crprp_la cr_prp.last_mod_by: This is a binary identifier, which references a record in the ca_contact
st_mod table. It represents the person who last modified this record.cr_prp.last_mod_by =
_by ca_contact.contact_uuid
require cr_prp.required: This is the boolean, indicating whether this property must have a cr_prp.
d value before the record is saved.
sample cr_prp.sample: This is a text field, which displays example values to guide the user in
entering the most useful value in cr_prp.value.
owning cr_prp.owning_cr: This is the unique identifier used to identify the specific record to which
_cr this property is attached.cr_prp.object_id = call_req.persid
crprp_d cr_prp.description: This is a text field, which explains the type of value that should be
escripti entered in cr_prp.value.
on
02-Aug-2016 64/403
CA Service Management - 14.1
View_Request_to_Request_WF
Note: This feature will only be available if you apply a patch for CA Service Management
Release 14.1.01. Find the patch and the download details from CA Support Online.
This view is a result of the View_Request view joined with the workflow task table (crwf) to give a
basic view of requests and their workflow tasks. This may not list all requests, particularly if there are
no workflow tasks assigned to them.
Field Remarks
View_R Please refer to the View_Request definition earlier in this document for a description of each
equest. field.
*
wf_id crwf.id: This is a unique identifier for a record in the crwf table.
wf_per crwf.persid: This is a unique identifier for this record in the crwf table, preceded by the
sid object identifier (crwf) and a colon.
del crwf.del: This is a boolean indicator of whether this record is to be displayed to the user.
object_ crwf.object_type: This is the factory name, which is used to identify the type of record (for
type example, cr) to which this workflow task is attached.
object_ crwf.object_id: This is a unique identifier used to identify the specific record to which this
id workflow task is attached.cr.object_id = issue.id
task crwf.task: This is an identifier, which references the type of task this record represents.crwf.
task = tskty.code
wf_tem crwf.wf_template: This is an identifier, which references from which template this workflow
plate task record was created.crwf.wf_template = wftpl.id
sequen crwf.sequence: This is an integer that indicates the order for which this particular workflow
ce task record should be displayed and executed by CA SDM (for example, Ascending).
wf_stat crwf.status: This is an identifier, which references a tskstat record. It indicates the current
us status of this workflow task.crwf.status = tskstat.code
group_ crwf.group_task: This is a boolean, which indicates whether this task belongs to a group.
task
creator crwf.creator: This is a unique binary identifier, which references a record in the ca_contact
table. It indicates the person who created this workflow task.crwf.creator = ca_contact.
contact_uuid
date_cr crwf.date_created: This is the date/timestamp that this workflow task was created
eated (pdmtime).
wf_assi crwf.assignee: This is a unique binary identifier, which references a record in the ca_contact
gnee table. It indicates the person who is currently assigned to this workflow task.crwf.assignee =
ca_contact.contact_uuid
done_b
y
02-Aug-2016 65/403
CA Service Management - 14.1
Field Remarks
isswf.done_by: This is a unique binary identifier, which references a record in the ca_contact
table. It indicates the person who completed or approved this workflow task.isswf.done_by =
ca_contact.contact_uuid
wf_star wf_start_date: This is the timestamp when the workflow task moved into an active status
t_date (pdmtime).
wf_est crwf.est_comp_date: This is a timestamp (pdmtime) indicating when users believe this task
_comp will be completed.
_date
est_dur crwf.est_duration: This is the estimated duration for this workflow task.
ation
comple crwf.completion_date: This is a timestamp (pdmtime) indicating when this workflow task
tion_da was completed.
te
actual_ crwf.actual_duration: This is the actual amount of time it took to complete this workflow
duratio task.
n
wf_est crwf.est_cost: This is the estimated cost of this workflow task
_cost
cost crwf.cost: This is the actual cost required to complete this workflow task.
wf_des crwf.description: This is a description of the workflow task.
cription
wf_last crwf.last_mod_dt: This is the timestamp (pdmtime) indicating when this workflow task was
_mod_ last changed.
dt
wf_last crwf.last_mod_by: This is the unique binary identifier, which references a record in the
_mod_ contact table. It indicates the last person to make changes to this workflow task.crwf.
by last_mod_by = ca_contact.contact_uuid
View_Request_to_Request_WF
02-Aug-2016 66/403
CA Service Management - 14.1
02-Aug-2016 67/403
CA Service Management - 14.1
02-Aug-2016 68/403
CA Service Management - 14.1
02-Aug-2016 69/403
CA Service Management - 14.1
02-Aug-2016 70/403
CA Service Management - 14.1
02-Aug-2016 71/403
CA Service Management - 14.1
RFC Description
1274 The COSINE and Internet X.500 Schema
1275 Replication Requirements to provide an Internet Directory using X.500
1276 Replication and Distributed Operations extensions to provide an Internet Directory using X.500
1308 Executive Introduction to Directory Services Using the X.500 Protocol
1309 Technical Overview of Directory Services Using the X.500 Protocol
1430 A Strategic Plan for Deploying an Internet X.500 Directory Service
1488 The X.500 String Representation of Standard Attribute Syntaxes
1558 A String Representation of LDAP Search Filters
02-Aug-2016 72/403
CA Service Management - 14.1
RFC Description
1617 Naming and Structuring Guidelines for X.500 Directory Pilots
1777 Lightweight Directory Access Protocol v2
1778 The String Representation of Standard Attribute Syntaxes
1779 A String Representation of Distinguished Names
1804 Schema Publishing in X.500 Directory
1823 The LDAP Application Program Interface
1959 An LDAP URL Format
1960 A String Representation of LDAP Search Filters
2044 UTF -8, a transformation format of Unicode and ISO 10646
2164 Use of an X.500/LDAP Directory to support MIXER address mapping
2218 A Common Schema for the Internet White Pages Service
2247 Using Domains in LDAP/X.500 Distinguished Names
2251 Lightweight Directory Access Protocol (v3)
2252 Lightweight Directory Access Protocol (v3): Attribute Syntax Definitions
2253 Lightweight Directory Access Protocol (v3): UTF-8 String Representation of Distinguished Names
2254 The String Representation of LDAP Search Filters
2255 The LDAP URL Format
2256 A Summary of the X.500(96) User Schema for use with LDAPv3
2279 UTF-8, a transformation format of ISO 10646
2293 Representing Tables and Subtrees in the X.500 Directory
2294 Representing the O/R Address hierarchy in the X.500 Directory Information Tree
2307 An Approach for Using LDAP as a Network Information Service
2377 Naming Plan for Internet Directory-Enabled Applications
2531 Content Feature Schema for Internet Fax
2559 Internet X.509 Public Key Infrastructure Operational Protocols - LDAPv2
2587 Internet X.509 Public Key Infrastructure LDAPv2 Schema
2589 Lightweight Directory Access Protocol (v3): Extensions for Dynamic Directory Services
2596 Use of Language Codes in LDAP
2649 An LDAP Control and Schema for Holding Operation Signatures
2657 RFC 2657 - LDAPv2 Client vs. the Index Mesh
2696 LDAP Control Extension for Simple Paged Results Manipulation
2713 Schema for Representing Java(tm) Objects in an LDAP Directory
2714 Schema for Representing CORBA Object References in an LDAP Directory
2739 Calendar Attributes for vCard and LDAP
2798 Definition of the inetOrgPerson LDAP Object Class
2820 Access Control Requirements for LDAP
02-Aug-2016 73/403
CA Service Management - 14.1
RFC Description
2829 Authentication Methods for LDAP
2830 Lightweight Directory Access Protocol (v3): Extension for Transport Layer Security
2849 The LDAP Data Interchange Format (LDIF) - Technical Specification
2879 Content Feature Schema for Internet Fax (V2)
2891 LDAP Control Extension for Server Side Sorting of Search Results
3045 Storing Vendor Information in the LDAP root DSE
3062 LDAP Password Modify Extended Operation
3112 LDAP Authentication Password Schema
3296 Named Subordinate References in Lightweight Directory Access Protocol Directories
3377 Lightweight Directory Access Protocol (v3): Technical Specification
3384 Lightweight Directory Access Protocol (version 3) Replication Requirements
02-Aug-2016 74/403
CA Service Management - 14.1
Syntax
pdm_configure
Restrictions
pdm_configure can be run on any CA SDM server or a CA SDM Linux client. You must be the
privileged user or root to run pdm_configure.
02-Aug-2016 75/403
CA Service Management - 14.1
Important! Changing the key control table may cause data corruption. You should not
attempt to change the key control without specific instructions from CA Technical Support.
Syntax
pdm_key_refresh
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 76/403
CA Service Management - 14.1
Syntax
-a
Add words.
-d
Delete words.
-f
File or lexicon containing list of words to be added or deleted.
-l
Lexicon name.
Default: userdict.tlx
wordlist
Words to be added or deleted.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 77/403
CA Service Management - 14.1
Syntax
The default command has the following format if no parameters are specified:
pdm_listconn -s -t 2
-c
Lists connections by client. The utility displays two lines for each client:
For example:
-s
Lists connections by server (default). The utility displays two lines for each server:
02-Aug-2016 78/403
CA Service Management - 14.1
For example:
-s -c
Lists connections by server, including client detail for each server. The utility displays several lines for
each server:
where:
For example:
02-Aug-2016 79/403
CA Service Management - 14.1
-t nn
Specifies a timeout interval in seconds. Because pdm_listconn receives information from an unknown
number of clients and servers, it terminates when the specified timeout interval elapses after the last
message received.
Default: 2
proc1
Specifies one or more slump procnames, separated by spaces. The utility displays client or server
information from them, as appropriate.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 80/403
CA Service Management - 14.1
Syntax
pdm_logfile [-L|-h]
or
Example
To change your stdlog.x files to cutover at 500,000 bytes, issue the following command:
-L
-q
-b bytes
Restrictions
You can run pdm_load while CA SDM is active, but performance can become very slow. It is best to
run pdm_load when no one is using CA SDM.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 81/403
CA Service Management - 14.1
The pdm_task utility sets environment variables for commands that do not have wrappers. For
example, the pdm_task command must precede the report command on the same command line
only when the command is invoked through a script or the command line. If you issue the report
command from a menu, you do not need to include pdm_task, because all environment variables are
set by the application.
Syntax
pdm_task command
command
Specifies a command that does not have a wrapper and, therefore, does not automatically set
environment variables. See report--Generate Reports (see page 116) for more information about
issuing pdm_task with a command.
02-Aug-2016 82/403
CA Service Management - 14.1
Syntax
-h
Opens the help menu.
-V
Prints the program version.
-s
Uses silent operation and suppresses messages.
-v
Displays the progress information of the utility.
-l
Lists all available encoding. The following are valid:
--list-code
Lists only the given encoding.
--default-code
Lists only the default encoding.
-L
Lists all available transliterators.
--cannon
Prints the list in cnvrtrs.txt(5) format.
-x
Runs the progress through transliteration.
--to-callback callback
Uses callback on destination encoding.
-c
Omits invalid characters from the output.
02-Aug-2016 83/403
CA Service Management - 14.1
--from-callback callback
Uses callback on original encoding.
-i
Ignores invalid sequences in the input.
--callback callback
Uses callback on both encoding.s.
-b
Specifies the block size.
Default: 4096
--fallback
Uses fallback mapping.
--no-fallback
Does not use fallback mapping.
-f
Sets theoriginal encoding.
-t
Sets the destination encoding.
--add-signature
Adds U+FEFF Unicode signature character (BOM).
--remove-signature
Removes U+FEFF Unicode signature character (BOM)
-o
Writes output to file.
Examples:
substitute
skip
02-Aug-2016 84/403
CA Service Management - 14.1
stop
escape
escape-icu
escape-java
escape-c
escape-xml
escape-xml-hex
escape-xml-dec
escape-unicode
02-Aug-2016 85/403
CA Service Management - 14.1
Syntax
pdm_webstat [-r] [-d | -D] [-i] [-t timeout] [-p webengine process] [-n] [-h]
-r
Specifies raw text mode, without titles and other formatting. Within the output for a single web
engine process there are no line breaks; however, the output for each web engine process always
starts on a new line.
Raw text mode displays data in exactly the same order as when you use pdm_webstat without the -r
option. Use raw text mode if you want to use the resulting data in a spreadsheet or other type of
report. For example, the following syntax:
pdm_webstat -r
-d
Specifies detailed output that displays user sessions. The -d option lists all current sessions in the
form of userid@IPaddress. If a session is displayed without a user ID, it usually means that the session
has not logged on yet. For example, the following syntax:
pdm_webstat -d
02-Aug-2016 86/403
CA Service Management - 14.1
=========================================
Cumulative sessions so far = 7
Most sessions at a time = 2
Currently active sessions = 2
SrvcPlus@192.168.1.14
userx@192.168.1.8
-D
Provides more detailed output for debugging purposes. This option should be specified only when
specifically requested by CA support. It adds internal information about each session to the detailed
output. For example, the following syntax:
pdm_webstat -D
-i
Specifies an interval in seconds between successive reports. When the -i argument is specified,
pdm_webstat runs continuously. The pdm_webstat command outputs its report in the format
requested by other arguments, waits for the interval specified, and outputs the report again.
With - i, pdm_webstat terminates only when explicitly cancelled, normally with Ctrl+C. For
example, the following syntax:
pdm_webstat - i 5 - p web:local - r
-t timeout
02-Aug-2016 87/403
CA Service Management - 14.1
Specifies a time-out value in seconds. This parameter causes pdm_webstat to wait for a number of
seconds for a response before terminating. The default is 30 seconds.
-p webengine_process
Specifies the process name of the web engine for which you want to report. By default, all web
engine processes are reported. The process name (also called slump-name) is the same name that
would be viewed in an slstat output and always starts with "web:".
-n
Suppresses the normal log entry for each reported web engine. By default, a log entry summarizing
each web engine is created.
Note: By default, if you do not specify any parameters, pdm_webstat displays summary
data for all running processes.
pdm_webstat returns zero if the command completes successfully, and a nonzero value if errors
occur (for example, a time-out or no active web engine processes).
The following example shows the output of pdm_webstat when it is executed with no parameters:
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 88/403
CA Service Management - 14.1
pdm_mail [-i [-s subject] [-e email_address] [-q]] [-p] [-M] [-F] [-T] [-B] [-H] [-N]
[-R] [-h]
-i
Uses STDIN instead of NTF variables. The following parameters are used for STDIN email behavior
only:
-e
Specifies the email address (for recipient).
-s
Specifies the subject for the email.
-q
Disables the display prompt for STDIN.
-p
Utilizes pager logic. This option includes using the pager email address instead of the regular
email address. Only the plain text version of the notification is used (no HTML).
-M
Uses plain text only (no MIME) in body.
-F
Specifies the From address of the email.
-T
Specifies the Reply-To address of the email.
-B
Specifies the body charset. This might be useful for pagers that do not support the UTF-8.
-H
Specifies the header charset. This might be useful for pagers that do not support the UTF-8.
-N
Specifies the Delivery Status Notification (DSN) Notify option.
-R
Specifies the Delivery Status Notification (DSN) Return option.
-h
02-Aug-2016 89/403
CA Service Management - 14.1
-h
Displays help on the utility.
check_interval
(-x only) Changes the check mail interval to a specified value (in seconds).
report_interval
Changes the report interval to a specified value (in seconds).
report_now
Forces a report to the logs. The counter is not reset.
send_q
(-c only) Sends local mail queue to remote mail server.
trace
Turns tracing on or off.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
02-Aug-2016 90/403
CA Service Management - 14.1
pdm_replace deletes a table in a CA SDM database and replaces it with a table from a temporary file
you specify with the -f option; the data from the input file is the only data that is in that table after
running pdm_replace. Back up your table before running pdm_replace.
Note: As part of its processing, pdm_replace first shuts down the daemons (UNIX) or
services (Windows).
02-Aug-2016 91/403
CA Service Management - 14.1
pdm_replace accepts a text file as input, which is the same file format used by pdm_userload. You
can create an input file for pdm_replace using pdm_extract; however, you cannot use the output of
pdm_backup as input to pdm_replace.
Important! Be sure to name your input file with a name different from the table name you
are attempting to replace. For example, if you are replacing a table named ca_contacts and
you name the input file ca_contacts.dat, after you execute the pdm_replace command to
point to the input file (ca_contacts.dat), it deletes the file after execution because it has
the same name as the table.
Restrictions
pdm_replace can be run only on the following servers, depending on your CA SDM configuration:
Important! Ensure that you have stopped all application and standby servers before
running this command on the background server.
Syntax
-v
-f filename
TABLE table_name
fieldname1 fieldname2 . . . . fieldnameN
{ "value11", "value12", . . . "value1N" }
{ "value21", "value22", . . . "value2N" }
.
.
.
{ "valueN1", "valueN2", . . . "valueNN" }
02-Aug-2016 92/403
CA Service Management - 14.1
This format is the same file format used by pdm_userload. You can create an input file for
pdm_replace using pdm_extract; however, you cannot use the output of pdm_backup as input to
pdm_replace.
pdm_restore--Restore a Database
pdm_restore stops CA SDM and then deletes all records from a CA SDM database and replaces them
with records from a file you specify with the -f option. The data from the input file is the only data
that will be in the CA SDM database after running pdm_restore.
The input file must be created using pdm_extract or pdm_backup, or otherwise formatted for
pdm_restore. pdm_backup can back up non-database data, and pdm_restore can restore this data
also. pdm_backup and pdm_restore are not recommended when other backup and restoration tools
are available.
Note: As part of its processing, pdm_restore first shuts down the daemons (UNIX) or
services (Windows).
Syntax
Restrictions
pdm_restore can be run only on a CA SDM server. Only the privileged user or root can run
pdm_restore. The following restrictions are applicable if you are using the advanced availability
configuration:
If you are restoring the database, run the pdm_restore command only on the background server.
Ensure that you have stopped all servers (application, background, and standby) before you run
the pdm_restore command.
Important! Use pdm_restore only with a full database backup created by pdm_backup,
because your current database is deleted and replaced by the backup file. Do not run
pdm_restore when users are logged in to CA SDM.
-d
Specifies that only database data is restored.
02-Aug-2016 93/403
CA Service Management - 14.1
-g
Specifies that only non-database data be restored. Only windows (forms) and other non-database
data are restored.
-n
Specifies that NX.env is restored if restoring non-database data. By default, NX.env is not
restored. We recommend that the NX.env file not be restored unless the restore is to the same
server the backup came from. Restoring an incorrect NX.env can affect unintended databases.
-w
Specifies that web.cfg is restored if restoring non-database data. By default, web.cfg is not
restored.
-v
Specifies verbose mode.
-f filename
pdm_load updates a CA SDM database using an input file you specify, up to a maximum of 112
attributes.
Whenever you upload tickets (such as requests or issues), your ticket number should include a unique
prefix or suffix in its string. CA SDM views this number as a string of characters not as a sequential
number, and thus cannot guarantee that it will assign a unique number to the uploaded tickets. As
long as you assign a unique prefix or suffix using awk or another text processor, you can upload
tickets without CA SDM writing over previously assigned numbers.
Syntax
TABLE table_name
fieldname1 fieldname2 . . . . fieldnameN
02-Aug-2016 94/403
CA Service Management - 14.1
table_name is the name of the table to be loaded, as listed in the CA SDM database schema file,
which is located in $NX_ROOT/site/sch/schema.sch (UNIX) or installation-directory\site\sch\schema.
sch (Windows). $NX_ROOT or installation-directory is the directory where you installed CA SDM.
-f filename
-c
Checks the input file against the database and reports on the updates that would be made, but does
not make the updates.
-m
Specifies mass update. Specify when you are using pdm_load to add or delete a large number of
records. This option suppresses all client notifications of updates and sends a cache refresh message
for a table when pdm_load finishes processing the table.
-r
Important! Make a backup copy of the database before running pdm_load with this
option. After old database records are removed, you must restore the CA SDM database
with this backup copy if you want to recover any deleted records.
-u
Updates existing records, but does not insert new records into the database.
Syntax
02-Aug-2016 95/403
CA Service Management - 14.1
Syntax
-w
Waits for the daemons to stop.
-a
Stops all proctors defined in the pdm_startup file.
[time]
Specifies the number of seconds to wait until the command executes.
Restrictions
pdm_halt can be run on a CA SDM server or a CA SDM UNIX client. You must be the privileged user to
run pdm_halt.
pdm_init--Start Daemons
Applies to UNIX only
pdm_init starts all CA SDM automatic processes on the system from which pdm_init is executed.
These automatic processes are called daemons and run continually in the background while you
work. Not all of the daemons are started; some are applicable only to certain operating systems.
Note: Use pdm_d_refresh to start daemons that failed to start the first time after
remedying the problem that caused them not to start initially. In most cases you do not
need to terminate the daemons running to start ones that initially failed.
Syntax
pdm_init
Restrictions
pdm_init can be run on a CA SDM server or a CA SDM UNIX client. You must be the privileged user to
run pdm_init.
02-Aug-2016 96/403
CA Service Management - 14.1
Syntax
pdm_d_refresh
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
Syntax
pdm_status
02-Aug-2016 97/403
CA Service Management - 14.1
When CA SDM is integrated with CA NSM, you can use uniconv to send generic event data to filter
daemons in CA SDM. uniconv is used in a message action in CA NSM Event Management.
Syntax
Restrictions
uniconv must be run from $NX_ROOT/bin on UNIX. Your site must be integrated with CA NSM to use
this utility.
-h &opnode
Specifies the node name of the machine on which you are executing uniconv (required).
-e &'text'
Specifies the full text of the message (required).
-n &nodeid
Specifies the node name from which the message originated (required).
-u &userid
Specifies the login ID of the person who originated the message.
-d &datem
Specifies the system date in mm/dd/yy format.
-t &'time'
Specifies the system time.
02-Aug-2016 98/403
CA Service Management - 14.1
Use pdm_proctor_init to start the proctor on secondary servers. All secondary servers should be
started prior to starting the daemons from the primary server. After all daemons have been stopped
from the primary server, use pdm_halt on the secondary server to stop this proctor.
Syntax
pdm_proctor_init
-h
Displays the help page.
-b
Notifies a local standby server to become the background server. The standby server must be
running. If the server is not running, it is started but no failover is performed. To start a failover,
run the command again.
-t
Displays the type of this CA SDM advance availability Server.
02-Aug-2016 99/403
CA Service Management - 14.1
-c [-s server_name]
Notifies a local or remote application server to cancel the previous quiesce the request.
-h
Prints command-line help.
-deploy
Generates, compiles, and deploys all Majic factories.
-undeploy
Undeploys REST Web Services on the local server.
pdm_rest_util -undeploy
Important! If you undeploy the REST application with this utility, REST can redeploy
automatically when CA SDM restarts. We recommend that you use the CA SDM
configuration to disable REST indefinitely.
02-Aug-2016 100/403
CA Service Management - 14.1
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
2. Enter the following command at the command prompt to run the knowledge reindex:
For example:
pdm_k_reindex
-D
Defines the debug mode, such as printing to the command window.
-v
Defines the verbose mode, such as printing to the stdlog file.
-i
Does not create table indexes in the reindex table after reindexing.
Note: Parameters with a dash as a prefix, such as " - D", must precede other parameters
that do not have this prefix.
02-Aug-2016 101/403
CA Service Management - 14.1
File:reindex.txt
Documents are reindexed to the specified file.
+i
Creates the indexes of the reindexed table only, which is the search table after reindexing. The
old indexes are dropped before reindexing.
+t
Switches the names of search and reindex tables only.
sdtout
Defines the frequency of statistic appearing in the command window. By default the knowledge
reindex utility provides statistics into the command window for every 1000 documents processed.
However, sometimes statistics are required to be provided more often. Use the following
parameter:
pdm_k_reindex -i sdtout:10
In this case, statistics display in the command window for every ten documents.
Noise words
Synonyms
Special terms
Language
An appropriate message appears on Knowledge node of Administration tab when a change occurs.
02-Aug-2016 102/403
CA Service Management - 14.1
Re-Index Tracking
While the re-index is running, you can view the status of the process in the Re-Index Tracking section
in the lower half of the page. Each field is described as follows:
Document #
Specifies the number of documents already processed.
Rate (Docs/Sec)
Specifies the number of documents processed, per second.
Time Remaining
Specifies the estimated amount of time remaining for the process, based on the current rate and
the remaining number of documents.
Failures #
Represents the number of failed documents (maximum=100). When the maximum number of
failures is reached, the administrator is prompted to either continue or cancel the process.
Note: If changes have been made to Noise Words, Special Terms, Synonyms or Parse
Settings and you do not re-index, you are prompted the next time you access the
Knowledge node of the Administration tab. Changes will take effect only after the
Knowledge Re-index utility is run.
02-Aug-2016 103/403
CA Service Management - 14.1
The number of documents you can process is limited; the limit depends on the size of the documents
and the linked attachments. The document size is calculated based on the pure text and its
attachments. Imagine and format elements are not calculated.
Note: You can limit the size of attachments by navigating to Attachments Library,
Repositories on the Administration tab and editing the repository to set the File Limit Size
(KB).
The recommended batch maximum size is between 2-12 MB (per the EBR_MAX_INDEX_BATCH_SIZE
parameter of the NX.env file and the average document size).
If the average size of your document (including attachments) is approximately 0.1 MB, keep the
default setting in NX.env:
@EBR_MAX_INDEX_BATCH_SIZE=128
@NX_EBR_INDEX_QUEUE_TIMEOUT=10
@NX_EBR_REINDEX_QUEUE_TIMEOUT=1
@NX_EBR_INDEX_QUEUE_ONLINE=Yes
@NX_EBR_NON_KD_INDEX_QUEUE_ONLINE=Yes
This setting means that one batch processes 128 documents, that batch executions have ten
second intervals, and when in reindex, the wait interval between two batches is one second.
If the average size of your document (including attachments) is approximately 0.5 MB, keep the
default setting in NX.env
@EBR_MAX_INDEX_BATCH_SIZE=25
@NX_EBR_INDEX_QUEUE_TIMEOUT=10
@NX_EBR_REINDEX_QUEUE_TIMEOUT=10
@NX_EBR_INDEX_QUEUE_ONLINE=No
@NX_EBR_NON_KD_INDEX_QUEUE_ONLINE=No
This setting means that one batch processes 25 documents, that batch executions have ten
second intervals, and when in reindex, the wait interval between two batches is ten seconds.
02-Aug-2016 104/403
CA Service Management - 14.1
Syntax
Where
t
Test
v
Verbose/diagnostic mode.
d
Object manager (domsrvr) to use for processing.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
Logic is similar to Discovered Assets dialog that can be launched from Asset Search/List web form.
That is an interactive and batch process.
This program will query the ca_logical_asset, ca_asset, and ca_logical_asset_property tables, using
various parameters, and attempt to register new CA SDM Assets from the discovered values.
Syntax
pdm_discimp [-l label] [-s serial number] [-t asset tag] [-n hostname] [-d dns name]
[-m mac address] [-c asset class] [-v] [-r] [-o object manager]
02-Aug-2016 105/403
CA Service Management - 14.1
l
Match this asset label.
s
Match this serial number.
t
Match this asset tag.
n
Match this hostname.
d
Match this dns name.
m
Match this mac address.
Other options:
c
Asset class to assign when registering new owned assets defaults to Discovered Hardware.
v
Verbose/diagnostic mode.
r
Register assets, otherwise runs in simulate mode.
h
Displays this information.
o
Object manager (domsrvr) to use for processing.
Note: If processing results in a blank Asset Label, the value found for the host name or DNS
Name will be used as the Asset Label. Assets must have at least a Label and Asset Class to
be registered for use in CA SDM.
Because of the structure of the MDB and CA SDM architecture limitations, two queries are
performed to select the appropriate records to process. It is important to understand this
as it could affect performance. The first query retrieves the rows from a join between the
ca_logical_asset and ca_asset tables that match label, serial number, tag and hostname.
Then for each resulting row, a query is performed against ca_logical_asset_property to
match dns_name and mac_address. The asset from the first query is chosen for registration
if the second query results in rows being returned.
02-Aug-2016 106/403
CA Service Management - 14.1
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
Important! You cannot use a single or double quote as the parameter of the pdm_text_nxd
or bop_cmd commands.
Syntax
-t table
(Required) Specifies the table to process. The table name can be one of the following values (not case
sensitive):
Asset
Contact
Change
Issue
Request
Note: See the [OPTIONS] section of the text_api.cfg file for a complete list of valid table
names.
-u from_userid | -p from_persid
02-Aug-2016 107/403
CA Service Management - 14.1
-u from_userid | -p from_persid
-u from_userid
Identifies the contact using the User ID value.
-p from_persid
Identifies the contact using the unique object identifier for the contact record. from_persid must
be of the form cnt:xxxx. xxxx is the persistent ID of the object.
Note: The value that you specify with this option is appended to the end of the input for
the pdm_text_cmd command using the appropriate keyword, %FROM_USERID or %
FROM_PERSID.
-o operation
Specifies the operation to perform. The operation must be one of the following values (not case
sensitive):
UPDATE | UPD -- Creates an object if not found or updates an existing object if found.
Both UPDATE and UPDATE_ONLY require the %SEARCH keyword in the command input. You can
perform only one operation transaction with each invocation of pdm_text_cmd.
-f input_file
Specifies the full path of the file to process, which is a text file containing valid Text API commands. If
you omit this parameter, commands are used from STDIN. The Text API uses the following basic
format for input:
%keyword=value
You can issue multiple commands within the input by separating the command request by at least
five percent signs (%%%%%).
Note: For more information about valid keywords and about formatting input to the Text
API, see the file text_api.cfg.
-T timeout
02-Aug-2016 108/403
CA Service Management - 14.1
Specifies the number of seconds to wait for a response from the server before timing out. The default
is 30 seconds.
Note: pdm_text_cmd shows the text-based replies received back from the Text API, which
include success or error messages, and the original text sent using the API for processing.
pdm_text_cmd returns zero if the command completes successfully without warnings or
errors or one if the command completes successfully, but with warnings. Any other return
value indicates that an error occurred.
Important! On UNIX, the LIBPATH must be set before running several CA SDM utilities. Use
pdm_task to set the LIBPATH before running a utility. For example, input "pdm_task
pdm_clean_attachments ...".
Note: When passing the parameters from command prompt, use Ctrl+Z in Windows and
Ctrl+D in POSIX.
Input Examples
pdm_text_cmd is the command line interface for the Text API that you can use to create and update
various objects such as requests, change orders, issues, assets, and contacts.
The following example demonstrates how to use a pdm_text_cmd input file to create an issue:
%DESCRIPTION=This is my Test.
%PRIORITY=3
To process this file, assuming its full path is c:\input.txt, issue the following command:
The following example demonstrates an input file to update issue 123 to a priority of 2:
%SEARCH=ISSUE_ID
%ISSUE_ID=123
%PRIORITY=2
To process this file, assuming its full path is c:\update.txt, issue the following command:
02-Aug-2016 109/403
CA Service Management - 14.1
The following example demonstrates creating multiple requests with one input file. This command
can be helpful creating test data on a test system.
%DESCRIPTION=This is Test 1.
%PRIORITY=3
%%%%%
%DESCRIPTION=This is Test 2.
%PRIORITY=2
%%%%%
%DESCRIPTION=This is Test 3.
%PRIORITY=None
To process this file, assuming its full path is c:\testdata.txt, issue the following command:
pdm_log4j_config - f <component> -d
pdm_log4j_config -h
pdm_log4j_config - f <component> [-a | -n <name>] [-l <log level>] [I <max # of log
files>] [-s <max size of log files>] [-t <log level threshold>]
-f
Specifies the log4j configuration of CA SDM or the component of CA SDM that you want to
change. Enter one of the following values:
SDM_WEB, SDM_RPC, REST, SA, or Viz.
Note: Use the mandatory option along with the other options.
-d
Displays the current log4j.properties configuration.
-h
Displays help for the utility.
-a
Completes all changes to log4j.properties globally.
-n
02-Aug-2016 110/403
CA Service Management - 14.1
-n
Specifies that you only want to modify a specific class or package name.
Specify a specific class name, such as bop_logging, or a complete package name, such as com.ca.
ServicePlus.
-l
Specifies the log level that you want to set.
Note: For the -l, -I, -s, and -t parameters, specify the -a or -n option.
-i
Specifies the max file number index that you want to set.
-s
Specifies the max file size that you want to set.
Important! Change the appender in the log4j.properties file of Visualizer to Rolling File
Appender before you execute the command with this parameter. If you do not change the
appender, MaxFileSize generates logs in the same file.
-t
Specifies the log level threshold.
Modify the log verbosity level for all loggers configured in the properties file by using the -l and -a
variables.
For example, set all of the loggers configured in Support Automation to a level of DEBUG:
pdm_log4j_config - f SA -a -l DEBUG
Modify the log verbosity level for a specific logger class or package name in the CA SDM log4j
properties file by using the -l and -n variables.
For example, set the logger for the pdm_rpc package to DEBUG using one of the following code
samples:
Modify the maximum number of log files to create for all the appenders (MaxBackupIndex
property) by using the -i and -a variables in the log4j properties file of REST.
For example, set the maximum number of files for all appenders to 9.
02-Aug-2016 111/403
CA Service Management - 14.1
pdm_log4j_config - f REST -a -i 9
Modify the maximum number of log files configured in the CA SDM log4j properties file to create
for an appender for a specific class or set of classes (MaxBackupIndex property) by using the -i
and -n variables.
For example, set the maximum number of files for bop_logging to 7.
Modify the maximum size of each log file configured in the REST log4j properties file to create for
any appender (MaxFileSize property) by using the -s and -a variables.
For example, set the maximum size of files for all appenders to 9 MB.
Modify the maximum size of each log file configured in the CA SDM log4j properties file to create
for an appender for a specific class or set of classes (MaxFileSize property) by using the -s and -n
variables.
For example, set the maximum size of files for bop_logging to 7 MB.
Modify the log level threshold for all the appenders configured in the Support Automation log4j
properties file (Threshold property) by using the -t and -a variables.
For example, set the log level threshold to DEBUG.
pdm_log4j_config - f SA -a -t DEBUG
Note: The -t parameter log level threshold overrides the -l parameter log level. If you
modify the log level and the threshold level, the DEBUG logs from the servlet do not
appear in the file.
Modify the log level threshold for an appender for a specific class or set of classes (Threshold
property) configured in the CA SDM log4j properties file by using the -t and -n variables.
For example, set the log level threshold to WARN.
Execute the following command to view the current logger and appender configuration of the
REST log4j properties file:
pdm_log4j_config - f REST -d
Important! Use -l, -i, -s, and -t variables together with one of the -a or -n options, Do not
use both the options. The -f option is mandatory. The -h and -d options are mutually
exclusive to any other option.
02-Aug-2016 112/403
CA Service Management - 14.1
NX_ROOT
Note: If you enter a negative or nonnumeric value, the value defaults to 60 seconds.
log4j.appender.jsrvrlog.Threshold=debug
log4j.logger.com.ca.ServicePlus.uploadservlet=debug, jsrvrlog
02-Aug-2016 113/403
CA Service Management - 14.1
Note: If you modify the log level without modifying the threshold level, the DEBUG logs
from the servlet do not appear in the file. Not all servlets have explicit loggers attached.
For example, the log4j.properties file does include pdmweb, BOServlet, pdm_export,
pdm_report, and pdm_cache, which are part of the pdmweb servlet. To see DEBUG logs
from these servlets, modify the pdmweb log level.
log4j.logger.com.ca.ServicePlus.pdm_rpc=debug
02-Aug-2016 114/403
CA Service Management - 14.1
rpt_srv--Generate Reports
Valid for Windows only
The report program lets you generate a report from the command line on the server. To issue the
report command at the command line or in a script, you must include pdm_task. The pdm_task
command sets up environment variables for commands that do not have a wrapper. Enter pdm_task
with the report command on the same command line only when the report is invoked through a
script or the command line. If you issue the report command from a menu, you do not need to
include pdm_task, because all environment variables are set by the application.
Syntax
rpt_srv - m [-h] [-e] [-f] [-F ffstring] [-p pagelength] [-C] [-B] filename [
command line arguments]
-m
Signifies that the report is manually being run from the command line.
-e
Echoes compiled script (for debugging purposes).
-f
Uses form feeds between pages.
-F ffstring
Sets the optional form-feed string.
-p pagelength
Sets the page length. The default page length is 66.
-C
Changes encoding from UTF-8 to another charset. The default output is UTF-8.
Example: To convert the output to JIS, you would run "-C iso-2022-jp"
Example: To encode to the operating system's native charset, use "DEFAULT" or "NATIVE".
02-Aug-2016 115/403
CA Service Management - 14.1
-B
Suppresses the Byte Order Mark if the variable NX_ADD_UTF8_BYTE_ORDER_MARK is set.
The NX_ADD_UTF8_BYTE_ORDER_MARK option is a signature into a file. It allows editors that
support UTF-8 to maintain the UTF-8 integrity of the file.
Note: This is only needed for non-ASCII data. If this is not installed, the default behavior
omits the Byte Order Mark (BOM). If installed, set it to "1" or "Yes".
filename
Specifies the report template. If you are not running the report command from the directory in
which the template file is located, include the complete file path name. The command sends the
output as standard output (stdout).
In the next example, Jane Smith does not have a middle initial:
report--Generate Reports
Applies to UNIX only
The report program lets you generate a report from the command line on the server. To issue the
report command at the command line or in a script, you must include pdm_task. The pdm_task
command sets up environment variables for commands that do not have a wrapper. Enter pdm_task
with the report command on the same command line only when the report is invoked through a
script or the command line. If you issue the report command from a menu, you do not need to
include pdm_task, because all environment variables are set by the application.
Syntax
pdm_task report [-h] [-e] [-f] [-F ffstring] [-p pagelength] filename [ command line
arguments]
-e
02-Aug-2016 116/403
CA Service Management - 14.1
-f
-F ffstring
-p pagelength
filename
The report template. If you are not running the report command from the directory in which the
template file is located, include the complete file path name. The command sends the output as
standard output (stdout).
Specifies parameters received by the report template. If the report is designed to accept command
line arguments, you must enter a command line argument for each parameter in the report template.
If the argument is empty, enter the null string.
For example, the following command supplies the command line arguments Smith, Jane, and L. The
report template requires these three parameters to generate the Affected Contacts Report.
In the next example, Jane Smith does not have a middle initial:
02-Aug-2016 117/403
CA Service Management - 14.1
about.htmpl
bin_form_np.htmpl
chg_lr.htmpl
cr_lr.htmpl
detail_iss.htmpl
detail_issalg.htmpl
detail_KD.htmpl
generic.htmpl
home.htmpl
iss_lr.htmpl
issue_status_change.htmpl
list_iss.htmpl
list_isscat.htmpl
list_KD.htmpl
menu_frames.htmpl
std_body.htmpl
std_body_site.htmpl
std_footer.htmpl
std_footer_site.htmpl
02-Aug-2016 118/403
CA Service Management - 14.1
std_footer_site.htmpl
std_head.htmpl
std_header.htmpl
std_head_site.htmpl
about.htmpl
bin_form_np.htmpl
buttons.htmpl
change_status_change.htmpl
chg_lr.htmpl
cr_lr.htmpl
detail_alg.htmpl
detail_chg.htmpl
detail_chgalg.htmpl
detail_cr.htmpl
detail_in.htmpl
detail_KD.htmpl
generic.htmpl
home.htmpl
iss_lr.htmpl
list_chg.htmpl
list_chgcat.htmpl
list_cr.htmpl
list_in.htmpl
list_KD.htmpl
02-Aug-2016 119/403
CA Service Management - 14.1
list_pcat.htmpl
list_pcat_cr.htmpl
list_pcat_in.htmpl
menu_frames.htmpl
request_status_change.htmpl
show_error.htmpl
std_body.htmpl
std_body_site.htmpl
std_footer.htmpl
std_footer_site.htmpl
std_head.htmpl
std_header.htmpl
std_head_site.htmpl
about.htmpl
acctyp_role_tab.htmpl
acctyp_web_auth_tab.htmpl
acctyp_wsp_tab.htmpl
admin_empty.htmpl
admin_main_role.htmpl
admin_tab_dflt.htmpl
admin_tree.htmpl
attmnt_content_tab.htmpl
attmnt_fields.htmpl
02-Aug-2016 120/403
CA Service Management - 14.1
attmnt_permissions_tab.htmpl
attmnt_upload_popup.htmpl
att_mgs_event.htmpl
att_stype_event.htmpl
aty_chg_ntfr_tab.htmpl
aty_chg_svy_tab.htmpl
aty_cr_ntfr_tab.htmpl
aty_cr_svy_tab.htmpl
aty_iss_ntfr_tab.htmpl
aty_iss_svy_tab.htmpl
aty_kdComment_ntfr_tab.htmpl
aty_kd_ntfr_tab.htmpl
aty_mgs_ntfr_tab.htmpl
bhvtpl_todo_tab.htmpl
bhvtpl_trans_info_tab.htmpl
bin_form_np.htmpl
cancel.htmpl
cancel_empty.htmpl
category_content_tab.htmpl
category_permissions_tab.htmpl
chgcat_auto_assignment_tab.htmpl
chgcat_prptpl_tab.htmpl
chgcat_wftpl_tab.htmpl
chg_accumulate.htmpl
chg_causedreq_tab.htmpl
02-Aug-2016 121/403
CA Service Management - 14.1
chg_close_all_child.htmpl
chg_expedite.htmpl
chg_lr.htmpl
chg_relchg_tab.htmpl
chg_relreq_tab.htmpl
cia_bmhier_tab.htmpl
cia_export_bmhier.htmpl
cia_export_nr.htmpl
cia_nr_tab.htmpl
cia_pwd_tab.htmpl
cia_sync_stat.htmpl
cnote_tracker.htmpl
cnt_addr_tab.htmpl
cnt_auto_assignment_tab.htmpl
cnt_env_tab.htmpl
cnt_grp_tab.htmpl
cnt_mem_tab.htmpl
cnt_notif_tab.htmpl
cnt_org_tab.htmpl
cnt_rem_tab.htmpl
cnt_role_tab.htmpl
cr_attach_chg.htmpl
cr_close_all_child.htmpl
cr_detach_chg.htmpl
cr_lr.htmpl
cr_relreq_tab.htmpl
02-Aug-2016 122/403
CA Service Management - 14.1
dcon_constraint_tab.htmpl
dcon_sql_tab.htmpl
detail.template
detail_acctyp.htmpl
detail_act_type_assoc.htmpl
detail_ADMIN_TREE.htmpl
detail_alg.htmpl
detail_arcpur_rule.htmpl
detail_asset.htmpl
detail_atev.htmpl
detail_atomic_cond.htmpl
detail_attmnt_edit.htmpl
detail_attmnt_error.htmpl
detail_attmnt_folder.htmpl
detail_attmnt_ro.htmpl
detail_attr_alias.htmpl
detail_aty.htmpl
detail_audlog.htmpl
detail_bhvtpl.htmpl
detail_bmcls.htmpl
detail_bmhier.htmpl
detail_bmrep.htmpl
detail_BU_TRANS.htmpl
detail_ca_cmpny.htmpl
detail_chg.htmpl
detail_chgalg.htmpl
detail_chgcat.htmpl
02-Aug-2016 123/403
CA Service Management - 14.1
detail_chgstat.htmpl
detail_chgtype.htmpl
detail_CI_ACTIONS.htmpl
detail_CI_ACTIONS_ALTERNATE.htmpl
detail_CI_DOC_TEMPLATES.htmpl
detail_CI_STATUSES.htmpl
detail_CI_WF_TEMPLATES.htmpl
detail_cmth.htmpl
detail_cnote.htmpl
detail_cnt.htmpl
detail_cost_cntr.htmpl
detail_country.htmpl
detail_cr.htmpl
detail_crs.htmpl
detail_crsq.htmpl
detail_cr_prptpl.htmpl
detail_ctab.htmpl
detail_ctimer.htmpl
detail_ctp.htmpl
detail_dcon.htmpl
detail_dept.htmpl
detail_dmn.htmpl
detail_doc_rep.htmpl
detail_DOC_VERSIONS.htmpl
detail_EBR_ACRONYMS.htmpl
detail_EBR_LOG.htmpl
detail_EBR_NOISE_WORDS.htmpl
02-Aug-2016 124/403
CA Service Management - 14.1
detail_EBR_SYNONYMS_ADM.htmpl
detail_event_log.htmpl
detail_evt.htmpl
detail_fmgrp.htmpl
detail_grc.htmpl
detail_g_cnt.htmpl
detail_g_loc.htmpl
detail_g_org.htmpl
detail_g_prod.htmpl
detail_g_qname.htmpl
detail_g_srvrs.htmpl
detail_g_tblmap.htmpl
detail_g_tblrule.htmpl
detail_help_set.htmpl
detail_hier_edit.htmpl
detail_hier_ro.htmpl
detail_ical_event_template.htmpl
detail_imp.htmpl
detail_in.htmpl
detail_iss.htmpl
detail_issalg.htmpl
detail_isscat.htmpl
detail_issstat.htmpl
detail_iss_wf.htmpl
detail_kc.htmpl
detail_KCAT.htmpl
detail_KD.htmpl
02-Aug-2016 125/403
CA Service Management - 14.1
detail_KD_FILE.htmpl
detail_KD_QA.htmpl
detail_KD_SAVE_AS.htmpl
detail_KD_TASK.htmpl
detail_KD_TASK_cancel_rework.htmpl
detail_KD_TASK_retire.htmpl
detail_KD_template.htmpl
detail_KEIT_TEMPLATES.htmpl
detail_KT_ACT_CONTENT.htmpl
detail_KT_BLC.htmpl
detail_KT_FILE_TYPE.htmpl
detail_KT_FLG_TYPE.htmpl
detail_ldap.htmpl
detail_ldap_group.htmpl
detail_loc.htmpl
detail_LONG_TEXTS.htmpl
detail_lr_ro.htmpl
detail_macro.htmpl
detail_macro_type.htmpl
detail_menu_bar.htmpl
detail_menu_tree_name.htmpl
detail_mfrmod.htmpl
detail_mgs.htmpl
detail_mgsalg.htmpl
detail_mgsstat.htmpl
detail_NOTIFICATION.htmpl
detail_no_contract_sdsc.htmpl
02-Aug-2016 126/403
CA Service Management - 14.1
detail_nr.htmpl
detail_nrf.htmpl
detail_nr_com.htmpl
detail_ntfl.htmpl
detail_ntfm.htmpl
detail_ntfr.htmpl
detail_options.htmpl
detail_org.htmpl
detail_O_COMMENTS.htmpl
detail_O_EVENTS.htmpl
detail_pcat.htmpl
detail_perscnt.htmpl
detail_position.htmpl
detail_pr.htmpl
detail_prefs.htmpl
detail_pri.htmpl
detail_prod.htmpl
detail_projex.htmpl
detail_prptpl.htmpl
detail_prpval.htmpl
detail_prpval_rule.htmpl
detail_prp_edit.htmpl
detail_QUERY_POLICY.htmpl
detail_rc.htmpl
detail_response.htmpl
detail_role.htmpl
detail_role_go_form.htmpl
02-Aug-2016 127/403
CA Service Management - 14.1
detail_rptmeth.htmpl
detail_rrf.htmpl
detail_rss.htmpl
detail_sapolicy.htmpl
detail_saprobtyp.htmpl
detail_sdsc.htmpl
detail_sdsc_map.htmpl
detail_seq.htmpl
detail_sev.htmpl
detail_site.htmpl
detail_slatpl.htmpl
detail_srvr_aliases.htmpl
detail_srvr_zones.htmpl
detail_state.htmpl
detail_svc_contract.htmpl
detail_svy_atpl.htmpl
detail_svy_qtpl.htmpl
detail_svy_tpl.htmpl
detail_tab.htmpl
detail_tenant.htmpl
detail_tenant_group.htmpl
detail_tskstat.htmpl
detail_tskty.htmpl
detail_tspan.htmpl
detail_typecnt.htmpl
detail_tz.htmpl
detail_urg.htmpl
02-Aug-2016 128/403
CA Service Management - 14.1
detail_USP_PREFERENCES.htmpl
detail_usp_servers.htmpl
detail_vpt.htmpl
detail_web_form.htmpl
detail_wf.htmpl
detail_wftpl.htmpl
detail_wrkshft.htmpl
dmn_dcon_tab.htmpl
edit_prop_dyn.htmpl
ed_image_pane.htmpl
evt_action_info.htmpl
evt_config_info.htmpl
generic.htmpl
get_comment.htmpl
g_profile_browser.htmpl
g_profile_browser2.htmpl
g_profile_browser3.htmpl
g_profile_browser_frameset.htmpl
g_profile_jump.htmpl
g_profile_scratchpad.htmpl
hierload_admin_tree.htmpl
hierload_KCAT.htmpl
hiersel_admin_tree.htmpl
hiersel_KCAT.htmpl
hourglass.htmpl
02-Aug-2016 129/403
CA Service Management - 14.1
html_editor_create_change_order.htmpl
html_editor_create_ticket.htmpl
html_editor_frames.htmpl
html_editor_insert_image.htmpl
html_editor_insert_link.htmpl
html_editor_insert_table.htmpl
html_editor_tabs.htmpl
html_editor_toolbar.htmpl
insert_iss_wf.htmpl
insert_wf.htmpl
in_relreq_tab.htmpl
isscat_auto_assignment_tab.htmpl
isscat_prptpl_tab.htmpl
isscat_wftpl_tab.htmpl
issue_status_change.htmpl
iss_accumulate.htmpl
iss_close_all_child.htmpl
iss_custfld_tab.htmpl
iss_expedite.htmpl
iss_lr.htmpl
iss_reliss_tab.htmpl
iss_resol_tab.htmpl
kd_action_forward.htmpl
kd_action_publish.htmpl
kd_action_reject.htmpl
02-Aug-2016 130/403
CA Service Management - 14.1
kd_action_unpublish.htmpl
kd_action_unretire.htmpl
kd_attachments_tab.htmpl
kd_attributes_tab.htmpl
kd_categories_tab.htmpl
kd_content_tab.htmpl
kd_file_prop_tab.htmpl
kd_permissions_tab.htmpl
kd_qa_attributes_tab.htmpl
kd_qa_content_tab.htmpl
keit_tmpl_export_fields_tab.htmpl
keit_tmpl_export_filter_tab.htmpl
keit_tmpl_import_settings_tab.htmpl
keit_tmpl_name_tab.htmpl
kt_admin_attachments.htmpl
kt_admin_automated_policies.htmpl
kt_admin_document_settings.htmpl
kt_admin_faq_options.htmpl
kt_admin_general_settings.htmpl
kt_admin_integration.htmpl
kt_admin_knowledge.htmpl
kt_admin_parse_settings.htmpl
kt_admin_report_card.htmpl
kt_admin_search_config_cr.htmpl
kt_admin_search_config_iss.htmpl
kt_admin_search_options.htmpl
kt_admin_survey_settings.htmpl
02-Aug-2016 131/403
CA Service Management - 14.1
kt_admin_survey_settings.htmpl
kt_admin_workflow_settings.htmpl
kt_architect.htmpl
kt_architect2.htmpl
kt_architect3.htmpl
kt_architect_delete_KCAT.htmpl
kt_architect_delete_KD.htmpl
kt_architect_frameset.htmpl
kt_architect_init.htmpl
kt_architect_javascript.htmpl
kt_architect_KCATs.htmpl
kt_architect_KCAT_path.htmpl
kt_architect_KDs.htmpl
kt_dtbuilder.htmpl
kt_dtbuilder2.htmpl
kt_dtbuilder3.htmpl
kt_dtbuilder_frameset.htmpl
kt_dtbuilder_node.htmpl
kt_dtbuilder_prompt_window.htmpl
kt_dtbuilder_save_dialog_window.htmpl
kt_dtbuilder_save_tree_form.htmpl
kt_dtbuilder_tree.htmpl
kt_email_document.htmpl
kt_faq_tree.htmpl
kt_main.htmpl
kt_main2.htmpl
kt_main3.htmpl
kt_main_role.htmpl
02-Aug-2016 132/403
CA Service Management - 14.1
kt_main_role.htmpl
kt_permissions.htmpl
list.template
list_acctyp.htmpl
list_act_type_assoc.htmpl
list_alg.htmpl
list_all_fmgrp.htmpl
list_all_lr.htmpl
list_architect_KDs.htmpl
list_architect_KDs_Pref.htmpl
list_arcpur_hist.htmpl
list_arcpur_rule.htmpl
list_atev.htmpl
list_atomic_cond.htmpl
list_attmnt.htmpl
list_attr_alias.htmpl
list_aty.htmpl
list_audlog.htmpl
list_bmcls.htmpl
list_bmhier.htmpl
list_bmrep.htmpl
list_bm_task.htmpl
list_bool.htmpl
list_ca_cmpny.htmpl
list_ca_logical_asset.htmpl
list_chg.htmpl
02-Aug-2016 133/403
CA Service Management - 14.1
list_chgalg.htmpl
list_chgcat.htmpl
list_chgsched.htmpl
list_chgsched_config.htmpl
list_chgstat.htmpl
list_chgtype.htmpl
list_CI_ACTIONS.htmpl
list_CI_ACTIONS_ALTERNATE.htmpl
list_CI_DOC_TEMPLATES.htmpl
list_CI_STATUSES.htmpl
list_CI_WF_TEMPLATES.htmpl
list_cmth.htmpl
list_cnote.htmpl
list_cnt.htmpl
list_cost_cntr.htmpl
list_country.htmpl
list_cr.htmpl
list_crs.htmpl
list_crsq.htmpl
list_crs_cr.htmpl
list_crs_in.htmpl
list_crs_pr.htmpl
list_crt.htmpl
list_cr_kt.htmpl
list_ctab.htmpl
list_ctimer.htmpl
list_ctp.htmpl
02-Aug-2016 134/403
CA Service Management - 14.1
list_dcon.htmpl
list_dept.htmpl
list_dmn.htmpl
list_DOC_VERSIONS.htmpl
list_EBR_ACRONYMS.htmpl
list_EBR_LOG.htmpl
list_EBR_NOISE_WORDS.htmpl
list_EBR_SYNONYMS_ADM.htmpl
list_event_log.htmpl
list_evt.htmpl
list_evtdly.htmpl
list_grc.htmpl
list_grpmem.htmpl
list_g_chg_queue.htmpl
list_g_cnt.htmpl
list_g_cr_queue.htmpl
list_g_iss_queue.htmpl
list_g_loc.htmpl
list_g_org.htmpl
list_g_prod.htmpl
list_g_qname.htmpl
list_g_srvrs.htmpl
list_g_tblmap.htmpl
list_g_tblrule.htmpl
list_g_tenant.htmpl
list_help_item.htmpl
list_help_set.htmpl
02-Aug-2016 135/403
CA Service Management - 14.1
list_ical_event_template.htmpl
list_imp.htmpl
list_in.htmpl
list_iss.htmpl
list_issalg.htmpl
list_isscat.htmpl
list_issstat.htmpl
list_iss_kt.htmpl
list_iss_wf.htmpl
list_kc.htmpl
list_KCAT_LINKED.htmpl
list_KCAT_QA.htmpl
list_KCAT_tree.htmpl
list_KD.htmpl
list_kdsched.htmpl
list_kdsched_config.htmpl
list_KD_ATTMNT.htmpl
list_kd_CI_DOC_LINKS.htmpl
list_KD_FILE.htmpl
list_kd_INDEX_DOC_LINKS.htmpl
list_KD_QA.htmpl
list_KEIT_export_transactions.htmpl
list_KEIT_IMPORT_PACKAGES.htmpl
list_KEIT_import_transactions.htmpl
list_KEIT_TEMPLATES.htmpl
list_KT_ACT_CONTENT.htmpl
list_KT_BLC.htmpl
02-Aug-2016 136/403
CA Service Management - 14.1
list_KT_FILE_TYPE.htmpl
list_KT_FLG_TYPE.htmpl
list_KT_FREE_TEXT.htmpl
list_KT_LIFE_CYCLE_REP.htmpl
list_ldap.htmpl
list_ldap_group.htmpl
list_loc.htmpl
list_LONG_TEXTS.htmpl
list_lr.htmpl
list_macro.htmpl
list_macro_type.htmpl
list_menu_bar.htmpl
list_menu_tree_name.htmpl
list_mfrmod.htmpl
list_mgs.htmpl
list_mgsalg.htmpl
list_mgsstat.htmpl
list_NOTIFICATION.htmpl
list_no_contract_sdsc.htmpl
list_nr.htmpl
list_nrf.htmpl
list_nr_com.htmpl
list_ntfl.htmpl
list_ntfm.htmpl
list_ntfr.htmpl
list_OA_TABLES.htmpl
list_options.htmpl
02-Aug-2016 137/403
CA Service Management - 14.1
list_org.htmpl
list_O_EVENTS.htmpl
list_pcat.htmpl
list_pcat_cr.htmpl
list_pcat_in.htmpl
list_pcat_pr.htmpl
list_perscnt.htmpl
list_position.htmpl
list_pr.htmpl
list_pri.htmpl
list_prod.htmpl
list_prod_list.htmpl
list_prpval.htmpl
list_prpval_rule.htmpl
list_QUERY_POLICY.htmpl
list_QUERY_POLICY_ACTIONS.htmpl
list_rc.htmpl
list_rel_cat.htmpl
list_response.htmpl
list_role.htmpl
list_role_tab.htmpl
list_rptmeth.htmpl
list_rrf.htmpl
list_rss.htmpl
list_sapolicy.htmpl
list_saprobtyp.htmpl
list_sdsc.htmpl
02-Aug-2016 138/403
CA Service Management - 14.1
list_sdsc_map.htmpl
list_seq.htmpl
list_sev.htmpl
list_showgrp.htmpl
list_site.htmpl
list_srvr_aliases.htmpl
list_srvr_zones.htmpl
list_state.htmpl
list_svc_contract.htmpl
list_svy_atpl.htmpl
list_svy_qtpl.htmpl
list_svy_tpl.htmpl
list_tab.htmpl
list_tenant.htmpl
list_tenant_group.htmpl
list_tskstat.htmpl
list_tskty.htmpl
list_tspan.htmpl
list_typecnt.htmpl
list_tz.htmpl
list_urg.htmpl
list_usp_servers.htmpl
list_vpt.htmpl
list_web_form.htmpl
list_wf.htmpl
list_wrkshft.htmpl
load_properties.htmpl
02-Aug-2016 139/403
CA Service Management - 14.1
load_wait.htmpl
loc_address_tab.htmpl
loc_auto_assignment_tab.htmpl
log_reader.htmpl
log_reader_banner.htmpl
log_reader_fs.htmpl
log_sol_4itil.htmpl
macro_atomic_cond_tab.htmpl
macro_cnt_tab.htmpl
macro_ctp_tab.htmpl
macro_ntfl_tab.htmpl
macro_rrf_tab.htmpl
mactyp_exescript_tab.htmpl
mactyp_valscript_tab.htmpl
mapped_contracts_tab.htmpl
menubar.template
menubar_admin.htmpl
menubar_architect.htmpl
menubar_chg_sched.htmpl
menubar_dtbuilder.htmpl
menubar_html_editor.htmpl
menubar_kt.htmpl
menubar_no.htmpl
menubar_sd.htmpl
menubar_sd_chg_manager.htmpl
menubar_sd_cust_mgr.htmpl
02-Aug-2016 140/403
CA Service Management - 14.1
menubar_sd_cust_rep.htmpl
menubar_sd_hd_manager.htmpl
menubar_sd_inc_manager.htmpl
menubar_sd_know_analyst.htmpl
menubar_sd_know_manager.htmpl
menubar_sd_l1_analyst.htmpl
menubar_sd_l2_analyst.htmpl
menubar_sd_prb_manager.htmpl
menubar_sd_vendor_analyst.htmpl
menu_frames.htmpl
menu_tree_editor.htmpl
menu_tree_editor2.htmpl
menu_tree_editor3.htmpl
mgs_cnt_tab.htmpl
mgs_ctp_tab.htmpl
mgs_ini_tab.htmpl
mgs_ntfl_tab.htmpl
mgs_rem_tab.htmpl
multiframe.template
multiframe_reports_admin.htmpl
multiframe_reports_chg_manager.htmpl
multiframe_reports_cust_mgr.htmpl
multiframe_reports_inc_mgr.htmpl
multiframe_reports_know_analyst.htmpl
multiframe_reports_know_mgr.htmpl
multiframe_reports_prb_mgr.htmpl
multiframe_reports_sd_mgr.htmpl
02-Aug-2016 141/403
CA Service Management - 14.1
new_lr.htmpl
nf.htmpl
nosession.htmpl
nr_bm_tab.htmpl
nr_chg_tab.htmpl
nr_contact_tab.htmpl
nr_inc_tab.htmpl
nr_inv_tab.htmpl
nr_iss_tab.htmpl
nr_loc_tab.htmpl
nr_log_tab.htmpl
nr_org_tab.htmpl
nr_prb_tab.htmpl
nr_projex_tab.htmpl
nr_rel_tab.htmpl
nr_reqitil_tab.htmpl
nr_req_tab.htmpl
nr_serv_tab.htmpl
ntfl_ntfr_tab.htmpl
ntfr_aty_tab.htmpl
ntfr_cnt_tab.htmpl
ntfr_ctp_tab.htmpl
ntfr_ntfl_tab.htmpl
order_status_change.htmpl
org_address_tab.htmpl
02-Aug-2016 142/403
CA Service Management - 14.1
org_env_tab.htmpl
pcat_auto_assignment_tab.htmpl
pcat_prptpl_tab.htmpl
pcat_wftpl_tab.htmpl
power_user_tips.htmpl
profile_browser.htmpl
profile_browser2.htmpl
profile_browser3.htmpl
profile_browser_frameset.htmpl
profile_envcnt.htmpl
profile_envorg.htmpl
profile_histcnt_chg.htmpl
profile_histcnt_cr.htmpl
profile_histcnt_in.htmpl
profile_histcnt_iss.htmpl
profile_histcnt_pr.htmpl
profile_historg_chg.htmpl
profile_historg_cr.htmpl
profile_historg_in.htmpl
profile_historg_iss.htmpl
profile_historg_pr.htmpl
profile_infocnt.htmpl
profile_infoorg.htmpl
profile_menu.htmpl
profile_qtemplate.htmpl
pr_attinc_tab.htmpl
02-Aug-2016 143/403
CA Service Management - 14.1
pr_relreq_tab.htmpl
reports.htmpl
reports.htmpl.tpl
request_status_change.htmpl
role_auth_tab.htmpl
role_fnacc_tab.htmpl
role_goform_tab.htmpl
role_kt_ct_tab.htmpl
role_kt_docs_tab.htmpl
role_webform_tab.htmpl
role_web_interface_tab.htmpl
sapolicy_ac_tab.htmpl
sapolicy_pt_tab.htmpl
saprobtyp_dh_tab.htmpl
saprobtyp_rd_tab.htmpl
scoreboard.htmpl
scratchpad.htmpl
screen_reader_usage.htmpl
sdsc_chg_slatpl_tab.htmpl
sdsc_chg_wf_slatpl_tab.htmpl
sdsc_cr_slatpl_tab.htmpl
sdsc_iss_slatpl_tab.htmpl
sdsc_iss_wf_slatpl_tab.htmpl
sdsc_map_cnt_tab.htmpl
sdsc_map_grp_tab.htmpl
02-Aug-2016 144/403
CA Service Management - 14.1
sdsc_map_nr_tab.htmpl
sdsc_map_pri_tab.htmpl
sdsc_map_urg_tab.htmpl
sd_kt_admin.htmpl
sd_main.htmpl
sd_main_role.htmpl
search_child_KCATs_filter.htmpl
show_error.htmpl
show_main_detail.htmpl
std_body.htmpl
std_body_site.htmpl
std_footer.htmpl
std_footer_site.htmpl
std_head.htmpl
std_head_site.htmpl
suggest_knowledge_isscat.htmpl
suggest_knowledge_list_isscat.htmpl
suggest_knowledge_list_pcat.htmpl
suggest_knowledge_pcat.htmpl
sugggest_knowledge_search_options.htmpl
tab_detail.template
tenant_address_tab.htmpl
tenant_groups_tab.htmpl
tenant_group_members_tab.htmpl
tskty_tskstat_tab.htmpl
02-Aug-2016 145/403
CA Service Management - 14.1
update_lrel_bmrep.htmpl
update_lrel_chg.htmpl
update_lrel_chgcat.htmpl
update_lrel_cnt.htmpl
update_lrel_cr.htmpl
update_lrel_ctp.htmpl
update_lrel_goform.htmpl
update_lrel_help_content.htmpl
update_lrel_in.htmpl
update_lrel_iss.htmpl
update_lrel_isscat.htmpl
update_lrel_loc.htmpl
update_lrel_macro.htmpl
update_lrel_nr.htmpl
update_lrel_ntfl.htmpl
update_lrel_ntfr.htmpl
update_lrel_org.htmpl
update_lrel_pcat.htmpl
update_lrel_pr.htmpl
update_lrel_role.htmpl
update_lrel_tab.htmpl
update_lrel_tenant.htmpl
update_lrel_tenant_group.htmpl
update_lrel_tskstat.htmpl
update_lrel_webform.htmpl
update_lrel_wrkshft.htmpl
upd_chg_sched.htmpl
02-Aug-2016 146/403
CA Service Management - 14.1
upload_file.htmpl
upload_success.htmpl
usq_update.htmpl
usq_update_control.htmpl
usq_update_fin.htmpl
usq_update_select.htmpl
usq_update_tree.htmpl
v30_date_helper.htmpl
wfdef.htmpl
wftpl_auto_assignment_tab.htmpl
wftpl_bhvtpl_tab.htmpl
working.htmpl
workitems.htmpl
wrkshft_auto_assignment_tab.htmpl
wrkshft_schedule_tab.htmpl
wspmain.htmpl
xfer_esc_chg.htmpl
xfer_esc_cr.htmpl
xfer_esc_iss.htmpl
xx_attmnt_tab.htmpl
xx_candp_tab.htmpl
xx_nr_tab.htmpl
xx_prop_tab.htmpl
xx_solnalg_tab.htmpl
02-Aug-2016 147/403
CA Service Management - 14.1
xx_stype_tab.htmpl
xx_template_tab.htmpl
xx_wf_tab.htmpl
02-Aug-2016 148/403
CA Service Management - 14.1
You can modify several files in the $NX_ROOT/samples directory for use with various external
interfaces. These files are grouped into various subdirectories. None of the files in the samples
directory are executable as originally shipped.
3. Add, modify, or add and modify messages in the XML message files from the previous step.
call_mgt
Contains samples for customization in request management.
gencr.frg
This file can be used in conjunction with bop_cmd to create requests from a command line. All
notifications and activity log entries will occur, however no Request Form will display on the
server when created. You must use the -u parameter to execute gencr.frg with the bob_cmd
utility. Be sure to read the gencr_readme.txt file to learn the syntax, and how to modify it if
necessary. The file should be placed in $NX_ROOT/site/mods/interp, if the directory does not
exist, you should create it. Example: bop_cmd -d domsrvr -u nsm -f gencr.frg "gencr( 'My
Description' )"
02-Aug-2016 149/403
CA Service Management - 14.1
iss_site.mod
This file can be used to enable activity logging of site-adapted fields in issues. This file should be
placed in $NX_ROOT/site/mods/majic after it has been changed for the site-adapted fields.
cr_site.mod
This file can be used to enable activity logging of site-adapted fields in requests. This file should
be placed in $NX_ROOT/site/mods/majic after it has been changed for the site-adapted fields.
chg_site.mod
This file can be used to enable activity logging of site-adapted fields in change orders. This file
should be placed in $NX_ROOT/site/mods/majic after it has been changed for the site-adapted
fields.
gencr_readme.txt
This file contains instructions on how to use the gencr.frg file.
chg_site.spl
This file may be modified to change the mapping of attributes when creating a change order from
a request. This file should be placed in $NX_ROOT/site/mods/majic after the appropriate changes
have been made.
audlog_site.mod
This file can be used to enable audit logging of site-adapted fields. This file should be placed in
$NX_ROOT/site/mods/majic after it has been changed for the site-adapted fields.
data
This directory contains files depicting the Logical Data Model for most database tables in CA SDM.
This data directory also includes sample data for Knowledge Management.
macro_lock
This file contains a spel fragment that can be run using a bop_cmd to turn off locks that are being
held by macros.
multi-tenancy
This directory contains sample files for administering multi-tenancy.
02-Aug-2016 150/403
CA Service Management - 14.1
pdmconf
web.xml.tpl
pdm_startup.tpl
pdm_edit_usage_notes.htm
alias_install.bat
web.cfg.tpl
pdm_startup.i.tpl
pdm_edit.pl
README_files
All of these files are used by pdm_edit.pl to create startup files for a primary server and
secondary servers that are configured to run a variety of daemons.
reporting
This directory contains documentation and samples for configuring offline reporting.
sdk
This directory contains a sample file for making CA SDM SOAP web service calls.
$NX_ROOT\samples\sdk\websvc
$NX_ROOT\samples\sdk\websvc\java\test1_pki
The following lists PERL and JAVA samples, examples, and locations:
PERL samples
$NX_ROOT\samples\sdk\websvc\perl\test1_pki
Example: loginServiceManaged() web service call
02-Aug-2016 151/403
CA Service Management - 14.1
JAVA samples
$NX_ROOT\samples\sdk\websvc\java\test1_pki
Example: loginServiceManaged() and getBopsid() web service call
$NX_ROOT\samples\sdk\websvc\java\test2_basic
Example: Combined CreateRequest() and CreateChangeOrder() web service call
views
This directory contains database scripts uses for migration, multi-tenancy administration, and other
processes.
pdm_load - f sd_content.dat
02-Aug-2016 152/403
CA Service Management - 14.1
The CA SDM database schema is defined in multiple .sch files in the $NX_ROOT/site (UNIX) or
installation-directory/site (Windows) directory. During configuration, these .sch files along with any
customized .sch files you may create are merged together into a single file called $NX_ROOT/site
/ddict.sch (UNIX) or installation-directory/site/ddict.sch (Windows).
Note: Do not modify any .sch files in the $NX_ROOT/site (UNIX) or installation-directory
/site (Windows) directory. Any changes you make to these files will be lost when upgrading
to a new release or when certain patches are applied. If you want to make schema
changes, you must create a file in the $NX_ROOT/site/mods (UNIX) or installation-directory
/site/mods (Windows) directory with the file suffix .sch. Then add your changes to your .
sch file, and your changes will then be merged with delivered schema during configuration.
This is the only way to preserve your modifications when you upgrade to a new release.
TABLE Statement
Defines the logical tables in the CA SDM database schema and the logical columns (fields) in those
tables. These logical tables and columns are then mapped to the physical tables and columns used by
your database management system in a mapping statement that follows the TABLE statement.
Note: If you define a new table, you must define a mapping statement for that table. The
Mapping Statement (see page 157) is illustrated at the end of this chapter, followed by an
example that combines the TABLE, TABLE_INFO, and mapping statements.
Syntax
Arguments
02-Aug-2016 153/403
CA Service Management - 14.1
TABLE
Introduces the TABLE statement. Must be uppercase. You must have one TABLE statement for
each logical table in the schema.
table_name
The name of the database table, for example, Call_Req. If adding a database table, you can
specify any name beginning with a lowercase letter z. (This avoids possible conflict with existing
and future CA SDM table names.) If changing an existing table, find the table in one of the .sch
files and use the same name.
field
The name of a logical column in the table, for example, id or desc. You must identify each column
by name. If adding a table or adding a column to an existing table, you can specify any name
beginning with a lowercase letter z; however, field names must not end with the characters _f.
(This avoids possible conflict with existing and future CA SDM column names.) If changing an
existing column, find the column in one of the .sch files and use the same name.
value_type
The fields data type. Valid values are:
Value Description
STRIN A string that is nn characters long.
G nn
INTEG A 32-bit number.
ER
LOCAL The number of seconds since January 1, 1970. CA SDM automatically reformats this data type
_TIME to the designated date format, for example: mm/dd/yy hh:mm:ss.
DURA A period of time, measured in seconds.
TION
REAL A floating point number
UUID A 16 byte binary value.
field_attributes
Value Description
KEY Identifies this field as the primary key to be used for identifying records to be updated with
pdm_load. This is used if the default primary key, id, is not specified. Must be specified if
the field is the primary key in the table.
NOT_NU Indicates that the field must contain a value. Must be specified if the field is the primary key
LL in the table. Optional if the field is not the primary key.
REF Indicates that the field references another table. Optional whether the field is the primary
other_ta key or not.
ble_nam
e
S_KEY
02-Aug-2016 154/403
CA Service Management - 14.1
Value Description
Optionally identifies this field as the secondary key to be used for identifying records to be
updated with pdm_load.
UNIQUE Indicates that the values in the field must be unique. Must be specified if the field is the
primary key in the table. Optional if the field is not the primary key.
Macros are synonyms that will be converted during configuration to the value the macro represents.
You can use macros for either data types or attributes. If you wish to use macros, you must add in
#include statement to include the file that defines the macro including the path name (usually
relative to your schema file). The include statement must be defined prior to using the macro.
Example of an include statement:
#include "../schema.mac"
The following are some of the macros defined in .mac files located in the $ NX_ROOT/site (UNIX) or
installation-directory/site (Windows) directory.
Examples
This TABLE statement in the database schema defines severities. The macro nn indicates that a value
is required in the del field. The macro uniq indicates that values are required and must be unique:
#include :../schema.mac"
TABLE Severity {
id INTEGER uniq KEY; // key id
02-Aug-2016 155/403
CA Service Management - 14.1
This modified TABLE statement makes the Priority field on the Request Detail window required:
This TABLE statement adds a resolution code field to the Call_Req table. The content of the field is
numeric and references the Resolution_Code table. This reference allows users to double-click the
Resolution Code field on the Request Detail window to display the values in the Resolution_Code
table:
TABLE_INFO Statement
This instructs your database management system how to store and index data in the logical tables.
The extent to which these instructions are followed depends on the database management system. If
no instructions are provided, the database management system follows its own storage and indexing
instructions.
Syntax
TABLE_INFO table_name {
Arguments
TABLE_INFO
Introduces the TABLE_INFO statement. Must be uppercase. The TABLE_INFO statement is
optional, but if specified, you can have only one TABLE_INFO for each TABLE statement, and it
must follow the TABLE statement.
table_name
The name of the database table in the TABLE statement.
STORAGE storage_mtd
Identifies the storage method. Valid values are listed as follows, but note that some database
management systems ignore these values:
Value Description
BTRE Indicates to use the balanced tree storage method.
E
HASH Indicates to use the hash table storage method. This is valid only if the field is the primary key.
HEAP Indicates to use the heap storage method.
field
02-Aug-2016 156/403
CA Service Management - 14.1
field
Identifies the column that is to be stored according to the specified storage method (STORAGE
storage_mtd). Must be specified the same way as the name of the column in the TABLE
statement.
INDEX ndx_props
Identifies one or more properties for an index that consists of the fields specified. Valid values
are:
Value Description
SORT Indicates whether to sort the data in the fields in ascending or descending order.
ASCENDING | Data is sorted in ascending order by default; therefore, only SORT DESCENDING need
DESCENDING be specified.
PRIMARY Indicates to use this index as the default sort order for the table.
CLUSTER Identifies this as a clustering index.
UNIQUE Indicates that values in the index must be unique.
field1 [field2 . . .]
Identifies the column or columns that are to be indexed according to the specified index properties
(INDEX ndx_props). Must be specified the same way as the name of the columns in the TABLE
statement.
Examples
This TABLE_INFO statement instructs the database management system to use a hash table to store
values in the id field in the Contact_Type table, and to sort the table in descending order according to
the values in the sym field. It also indicates that values must be unique:
TABLE_INFO Contact_Type {
Mapping Statement
Defines the correspondence between the logical tables and columns in the CA SDM database schema
and the physical tables and columns used by your database management system. This statement
follows each TABLE statement in a.sch file. You must define it when you define a new table.
Syntax
Arguments
p1
Introduces the mapping statement. Must be specified as p1.
logical_table_name
02-Aug-2016 157/403
CA Service Management - 14.1
logical_table_name
The name of the database table in the TABLE statement, for example, zManufacturer.
CURR_PROV
A required keyword.
physical_table_name
The name of the table used by your database management system, for example, man. Short
names improve performance and are required by some database management systems.
logical_field
The name of the column in the CA SDM database schema, for example, desc. Must be the same
as field in the TABLE statement. Omit this when the logical columns and physical columns have
identical names. When omitted, the semicolon follows physical_table_name.
physical_field
The name of the column used by your database management system, for example, nx_desc. Omit
this when the logical columns and physical columns have identical names. When omitted, the
semicolon follows physical_table_name.
Examples
This example illustrates how TABLE, mapping (p1), and TABLE_INFO statements define a
zManufacturer table:
TABLE zManufacturer {
id INTEGER uniq KEY; // key id
del INTEGER nn; // 0=present,1=gone
sym HIER_SYM uniq S_KEY; // manufacturer name
desc ENT_DESC; // manufacturer description
}
TABLE_INFO zManufacturer {
02-Aug-2016 158/403
CA Service Management - 14.1
Many of the components of CA SDM consist of business objects. These objects are defined in a
metalanguage named Majic. You can use Majic statements to create new objects and modify existing
objects, thus customizing these objects to meet your needs.
Directories
The Majic files are organized in two directories:
Directory Description
bopcfg/majic (UNIX) Contains the .maj files that have been used to create windows defined in the
or bopcfg\majic database. These files should not be changed because changes will be
(Windows) overwritten by new releases of CA SDM.
site/mods/majic Contains the .mod files you use to customize windows.
(UNIX) or
site\mods\majic
(Windows)
Types of Statements
The following Majic statements are used in screen painter and database customization procedures.
Statement Description
OBJECT Defines a business object
MODIFY Changes existing object attributes
MODIFY FACTORY Changes existing factories
02-Aug-2016 159/403
CA Service Management - 14.1
MODIFY Statement
Changes the way attributes are defined on OBJECT statements. MODIFY statements are read after
OBJECT statements.
Syntax
Arguments
obj_name
Identifies the object whose attribute is being modified.
att_name
Identifies the attribute being modified.
status_type
Modifies the properties of the attribute to allow or prohibit null values. There are two valid
options for this keyword:
REQUIRED
Indicates that the attribute is required.
NOT_REQUIRED
Indicates that the attribute is not required.
ON Statements
See ON Statements for a description of these statements.
Example
The following example changes the salary attribute in the emp object so that it is now a required
attribute:
Example
The following example changes the address2 attribute in the emp object so that is now not required.
02-Aug-2016 160/403
CA Service Management - 14.1
Syntax
Arguments
fac_name
Identifies the factory, if included on the original OBJECT statement.
Optional Statements
FUNCTION_GROUP name
Indicates which security access groups are permitted to access the object. For example:
FUNCTION_GROUP "admin" ;
DISPLAY_NAME name
Defines an external name for the table.
DISPLAY_NAME "Call Request" ;
STANDARD_LISTS
Creates lists of objects that are kept in a cache. The parameters determine whether the lists are
master lists or restricted lists, whether the objects included in the list must meet specified
conditions, and how the lists can be sorted. Refer STANDARD_LISTS Optional Statements for a
description of the syntax.
OBJECT Statement
Defines a business object.
Syntax
OBJECT obj_name {
02-Aug-2016 161/403
CA Service Management - 14.1
[ATTRIBUTES [table_name]{
att_name [field_name] value_type [access_type[status_type]][DISPLAY_NAME
string][{
[ON_NEW DEFAULT|SET value|NOW ;]
[ON_CI DEFAULT|SET value|NOW ;]
[ON_DB_INIT DEFAULT|SET value|NOW ;]} ;]};]
[FACTORY [fac_name]{
[REL_ATTR name ;]
[COMMON_NAME name ;]
[DISPLAY_NAME name ;]
[FUNCTION_GROUP name ;]
[STANDARD_LISTS {
[SORT_BY index_att ;]
[FETCH fetch_att ;]
[WHERE string ;]
[MLIST ON|OFF;]
[RLIST ON|OFF;] } ;]};]
};
Arguments
obj_name
The objects name (for example, cnt for contact or cr for request).
Optional Statements
ATTRIBUTES [table_name] { }
Defines the properties of the object. Most attributes map to a field (column) in a database table.
The ATTRIBUTES Optional Statement describes its syntax.
FACTORY [fac_name] { }
Defines access to the object, like its relation attribute, a common name, the security group that
can access it, the type of lists produced, and how those lists can be sorted. The FACTORY Optional
Statement describes its syntax.
Example
This example defines an object named ctp. The ATTRIBUTES statement defines attributes named sym,
delete_flag, and description whose values are stored in the Contact_Type table in the database. The
FACTORY statement creates a master list of objects, sorted by values in the field that corresponds to
the sym attribute, and specifies that the id attribute will represent ctp when it is referenced by an
SREL:
OBJECT ctp {
ATTRIBUTES Contact_Type {
sym STRING REQUIRED ;
delete_flag del INTEGER {
ON_NEW DEFAULT 0 ;
} ;
02-Aug-2016 162/403
CA Service Management - 14.1
02-Aug-2016 163/403
CA Service Management - 14.1
The optional statement on the FACTORY statement that defines the objects standard lists.
SORT_BY index_att
Defines the attributes that can be used to sort the standard lists. If specified, a master list is
produced. Attributes must be enclosed in quotes and separated by commas. When displayed in a
list or select window, the list is sorted by the first attribute, by default. For example:
FETCH fetch_att
Specifies additional attributes to keep in the cache, besides those used to sort the list. They must
be enclosed in quotes and separated by commas. For example:
FETCH "description" ;
WHERE string
Specifies a condition, in SQL format and surrounded by quotes, that must be met for an object to
be included in a restricted list. If specified, a restricted list is produced. This example specifies that
the restricted list contain only records that were not deleted:
02-Aug-2016 164/403
CA Service Management - 14.1
MLIST ON|OFF
Indicates whether to produce a master list, which includes all objects, using one of the following
values:
Value Description
ON Produces a master list (default if SORT_BY is specified)
OFF Does not produce a master list (default if SORT_BY is not specified or has no value defined)
Note: CA SDM web engine only uses the MLIST to populate the data in the web forms.
MLIST is created on the domsrvr cache.
RLIST ON|OFF
Indicates whether to also produce a restricted list, which includes only the objects that meet the
criteria in the WHERE clause, using one of the following values:
Value Description
ON Produces a restricted list (default if WHERE is specified)
OFF Does not produce a restricted list (default if WHERE is not specified or has no value defined.)
Note: RLISTs can speed up access and display but they use memory. They are usually used
in select windows.
STANDARD_LISTS {
SORT_BY "sym,code" ;
FETCH "description" ;
WHERE "delete_flag = 0" ;
};
02-Aug-2016 165/403
CA Service Management - 14.1
The STANDARD_LISTS statement alone does not necessarily create entries that are listed in a
dropdown field. To create the dropdown list in a web interface form, you need to customize the
statement.
02-Aug-2016 166/403
CA Service Management - 14.1
Defines access to the object, like its relation attribute, a common name, the security group that can
access it, the type of lists produced, and how those lists can be sorted. If omitted, the object is
treated according to default specifications.
02-Aug-2016 167/403
CA Service Management - 14.1
REL_ATTR name
Identifies the attribute that will represent this object when it is referenced (used as an SREL) by
another object. Here is an example:
REL_ATTR id ;
srel_name
matches the "named" SREL name
attr1
is mapped to by the first attribute in the "named" SREL attribute list.
attr2
is mapped to by the second attribute in the "named" SREL attribute list.
DISPLAY_NAME name
Defines an external name for the table.
DISPLAY_NAME "Call Request" ;
COMMON_NAME name
Defines the attribute to be displayed in drop-down lists or when the user double-clicks a field, as
well as when the tag does not specify a complete attribute. In the first example, the value for sym
appears on the window instead of the value for the REL_ATTR. The second example allows you to
specify a tag as cr.customer instead of cr.customer.combo_name.
COMMON_NAME sym ;
COMMON_NAME combo_name ;
FUNCTION_GROUP name
Indicates which security access group is permitted to access the object. For example:
FUNCTION_GROUP "admin" ;
STANDARD_LISTS { }
Creates lists of objects that are kept in a cache and can be displayed on list or select windows. The
parameters determine whether the lists are master lists or restricted lists, whether the objects
included in the list must meet specified conditions, how the lists can be sorted, and what
additional attributes are stored. Refer STANDARD_LISTS Optional Statement (see page 164) for
the description of the syntax.
02-Aug-2016 168/403
CA Service Management - 14.1
FACTORY {
STANDARD_LISTS {SORT_BY "sym,code"} ;
REL_ATTR code ;
COMMON_NAME sym ;
FUNCTION_GROUP "admin" ;
};
Syntax
ATTRIBUTES [table_name]{
att_name [field_name] value_type [access_type[status_type][DISPLAY_NAME string]]{
[ON_NEW DEFAULT|SET value|NOW ;]
[ON_CI DEFAULT|SET value|NOW ;]
[ON_DB_INIT DEFAULT|SET value|NOW ;];]};]
Arguments
table_name
The name of the table in the database that stores the values associated with the attributes in the
object. If the table name is not specified, the obj_name in the OBJECT statement is used.
att_name
The name of the attribute. Each attribute usually maps to a field (column) in the database table.
field_name
The name of the field in the database table or LOCAL if the attribute does not map to a field or
DERIVED (derived-expr) if the attribute is derived from other attributes. If neither LOCAL,
DERIVED nor a field name is specified, the name of the field is assumed to be the same as the
name of the attribute.
A variable declared as DERIVED is constructed only when its value is retrieved. The operand of
DERIVED contains a list of attribute names and string constants separated by spaces. All attributes
in a derived value must be simple values (that is, they cannot be xRELs), and should be declared
prior to the derived variable. The derived attribute's value is the concatenation of the values of its
constituent values.
String constants within a derived expression may contain references to environment variables in
the one of the forms:
${var}
02-Aug-2016 169/403
CA Service Management - 14.1
${var}
${var#pattern}
${var#pattern#replacement}
Such specifications are replaced with the value of the environment variable at domsrvr startup
time. The #pattern operand is optional. If provided, it is treated as a regular expression, and
replaced wherever it appears in the environment variable's value. The #replacement operand
defaults to null if not specified. Because # is a fixed delimeter, the pattern cannot contain a #
symbol. There are no restrictions on the use of derived attributes in other messages. They behave
in same way as standard attributes. A hotlink for a derived attribute fires whenever any of the
attributes from which it is built changes.
value_type
Identifies the data type of the attributes value as:
INTEGER
DOUBLE
STRING [length]
DURATION
UUID
DATE
SREL obj2_name
If STRING is specified, the size can be specified in an integer following STRING. If no size is
specified, the value in the database is used.
UUID is 16 bytes of binary data that is used as a unique identifier for certain database records.
SREL refers the attribute to another object. If SREL is specified, obj2_name must be specified to
identify the object that the attribute refers to.
srel_name specifies a "named" SREL. Like a "simple" SREL, a "named" is a type of MAJIC OBJECT
attribute that represents a single relation, which uniquely identifies a row in another table
(ob2_name). A "simple" SREL attribute normally maps to the "id" field in another table, however
a "named" SREL maps two or more attributes ( name, name2, ) to two or more attributes in the
referenced table that uniquely identify a row in the referenced table.
access_type
Defines access to the attribute. Valid values are:
Value Description
CONST Cannot be changed
PRIVATE Read-only
PUBLIC Read/write access (the default)
WRITE_NEW Can be written only when the object is created, before the object is saved
02-Aug-2016 170/403
CA Service Management - 14.1
status_type
Indicates the status of the attribute as:
REQUIRED
DISPLAY_NAME string
Specifies a string to be used in place of the attribute name in messages concerning this attribute,
such as"required attribute missing"
ON Statements
Use one of these only when value_type is INTEGER, STRING, DATE, or SREL.
Value Description
DEFAUL Changes a null current value to value or NOW.
T
SET Changes any current value to value or NOW.
value Specifies a numeric value or a string value, depending on the data type of the attribute.
NOW Specify this if the attribute is of type DATE; it sets the attribute to the current date and time.
In the following example, 90 is the value set as a default when the object is created:
ON_NEW DEFAULT 90 ;
Example
This example defines attributes with names like start_date whose values are stored in fields like
nlh_start in the Notify_Log_Header table in the database. The field names are followed by each
attributes data type. Optional parameters define access to some of the attributes, indicate that the
attribute is required, and tell when to set the value of some of the attributes to the current date and
time.
For example, an attribute named last_mod is defined; its value is set to the current date and time
when the attribute is checked into the database. An attribute named contact is also defined; its value
is a single relation stored in database field nlh_c_addressee. The object referred to is cnt:
ATTRIBUTES Notify_Log_Header {
02-Aug-2016 171/403
CA Service Management - 14.1
};
02-Aug-2016 172/403
CA Service Management - 14.1
Where Clauses
This article contains the following topics:
IN Clause (see page 174)
Lists (see page 176)
Several Web Services methods, such as doSelect() and doQuery(), requir e the Where clauses for
searching by CA SDM and Knowledge Management. A Where clause is the string appearing after the
WHERE keyword in an SQL statement. For example, a where clause to find contacts (the cnt object)
by last name:
last_name = 'Jones'
or
The second example finds all contacts with names beginning with Jone, while the first just finds the
Jones.
CA SDM supports only a subset of the standard SQL parameters for where clauses, and are listed as
follows:
LIKE and IS
NULL
IN
Note: Parenthesis is used for grouping. Explicit joins, EXISTS, and GROUP BY elements are
not supported by CA SDM. String value must be enclosed in quotes, for example, Jones.
The column names denote the object attribute names. CA SDM data types,data and duration, are
treated as integers. For example:
02-Aug-2016 173/403
CA Service Management - 14.1
Note: You must use the attribute names at the object Level. Do not use the actual DBMS
column names.
Dot-notation is allowed in the Where clause to search through SREL (foreign key) types. For example,
a query against the Request (cr) object, returns all Requests assigned to contacts with a specific last
name, as illustrated by the following example:
Dot-notation is very helpful in forming the where clauses, but you must ensure that the query is an
efficient one. The query in the example assignee.last_name like 'Martin%' can be inefficient if the
contacts last_name attribute is not indexed in the DBMS. To ensure indexes are used to their best
advantage when searching through SRELs, make use of the ID attributes of the CA SDM objects. All
tables in CA SDM have an index on the ID attribute.
The ID attribute of an object can be easily obtained from the objects handle. An objects handle is a
string of the form <objectName>:<id>, where <id> is the value of the ID attribute found in every CA
SDM object. Extract the ID portion and use <attributeName>.id in the Where clause.
An objects ID is either an integer or a UUID. If it is an integer, simply use it as such. For example, to
search for Requests with the rootcause pointing to a Root Cause object with handle, rc:1234, the
Where clause is:
rootcause.id = 1234
U'<uuid>'
The string representation of a UUID is enclosed in single quotes and prefixed with capital U. This
string is the <id> part of an object handle. For example, if you know that the handle for a particular
contact is cnt:913B485771E1B347968E530276916387, you can form the query as:
assignee.id = U'913B485771E1B347968E530276916387'
Do not form the Where clauses by querying the persistent_id attribute, as in the following example:
rootcause.persistent_id = 'rc:1234'
IN Clause
The IN clause requires some special explanation. The two syntactic forms are:
02-Aug-2016 174/403
CA Service Management - 14.1
The left side of the clause must begin with an SREL-type attribute of the table being queried, which is
represented by SREL_attr_name. subq_WHERE_attr is an attribute of the foreign object, which itself
may be another SREL pointer.
For example, a query against the request (cr) object may be coded as follows:
SELECT ... FROM cr WHERE cr.category IN (SELECT persistent_id FROM pcat WHERE sym
LIKE 'Soft%' OR sym = 'Email')
In the previous sub query , pcat is the object name pointed to by cr.category.
The second form of the IN clause can search through BREL lists. For example, to find all requests
assigned to an analyst in a specific group, the clause is as follows:
assignee.[member]group_list.group IN (U'913B485771E1B347968E530276916387')
The first part of the clause, assignee, is an SREL (foreign key) of the cr object, pointing to the cnt
object. Next, group_list, which is an attribute of the cnt object, is a list of cnt objects that represent
groups to which a contact belongs. The last part, group, forms the first part of the where clause for
the IN sub query. U913B485771E1B347968E530276916387is the foreign key value to match on
group. The sub query return is specified by [member]. This translates to the following pseudo-SQL
statement:
SELECT ... FROM cr WHERE cr.assignee IN (SELECT member from grpmem WHERE group =
U'913B485771E1B347968E530276916387')
You can specify multiple foreign keys for matching multiple objects by providing a comma-separated
list:
assignee.[member]group_list.group IN (U'913B485771E1B347968E530276916387',
U'913B485771E1B347968E530276916300')
You cannot extend the dot notation for this use of the IN clause, for example, the following is not
valid:
One use of IN is to avoid Cartesian products. For example, the following query results in a Cartesian
product and is very inefficient:
This query does not create a Cartesian product; in fact, it creates no joins at all.
02-Aug-2016 175/403
CA Service Management - 14.1
Note: The parentheses that normally enclose the list of values on the right side of IN can be
omitted if there is only one value in the list. Similarly, you should avoid joins by converting
queries.
to:
assignee = U'913B485771E1B347968E530276916387'
This avoids the join with some loss in clarity. Using IN, the same partition can be written as follows,
with the clarity of the first version and almost the same efficiency as the second version:
assignee.last_name IN 'Smith'
The NOT keyword cannot be in conjunction with IN, for example, NOT IN.
Lists
Some Web Services methods return lists, represented by a unique integer handle. A list is simply a
collection of same-type objects. Lists are especially useful when dealing with a large collection of
objects (for example, all the contacts in the system) because you can retrieve information about
items in a range of the list. The disadvantage is that you must make more method calls to obtain a list
handle, retrieve information, and finally, free the list handle. If the expected number of list rows is
small, use methods that do not involve list handles, such as doSelect().
List Handles
A request for a list returns an integer handle representing the list of same-type objects. No other
information is sent to the client. The client may query the list for specific information about its
rows. When a client is finished with a list, the handle must be released with freeListHandles(). The
CA SDM server maintains the list, consuming system resources. Therefore, it is important to free
lists. Unlike object handles, list handles are not persistent across sessions.
Integer Index
Several methods require an integer index into a list. Lists are zero-based so the first element is at
index = 0.
02-Aug-2016 176/403
CA Service Management - 14.1
As previously mentioned, using list handles is most useful for larger sets of data that may be queried
multiple times. For some operations, however, lists are excessive. Several methods are provided, but
the most notable is doSelect(), as it returns requested information about a set of data without the
overhead of list handles.
The decision to use list handles versus methods, such as doSelect(), is one of performance and
convenience. For example, suppose your application does processing on all 15,000 Contacts in your
system. The doSelect() method can retrieve all the contact data in one call, but the reply will be
delayed and will negatively impact overall system performance while it assembles and returns a very
large data set. The doQuery() method, in this case, will return a list reference very quickly. Ranges of
data can be queried from the list to improve response times from the server. A good practice to
follow is to use list references if the data set exceeds 250 items.
Sometimes it does not make sense to use list handles. For example, an issue has a list of Activity Logs.
Depending on the installation, the number of logs can range from a few to several dozen. It is
probably faster to request the data all at once instead of requesting a list reference, querying it for
data, and then releasing the list.
Examples of methods that return data sets instead of list references include the following:
doSelect()
getRelatedListValues()
getLrelValues()
getTaskListValues()
getValidTaskTransitions()
As previously stated, queries that return a large number of rows can severely impact the
performance of the server. To protect against this, CA SDM limits the number of rows returned to
250. This affects all CA SDM Web Services methods that return lists of objects, including the
following:
doSelect()
doSelectKD()
getGroupMemberListValues()
getListValues()
getPropertyInfoForCategory()
getRelatedListValues()
getTaskListValues()
getValidTaskTransitions()
This limit applies even if you request one of these methods to retrieve more than 250 rows.
02-Aug-2016 177/403
CA Service Management - 14.1
To retrieve large numbers of rows, you should obtain a handle to the list of results and use
getListValues() to retrieve chunks of 250 or fewer rows each. This strategy helps keep the server from
becoming slow while serving huge amounts of data.
02-Aug-2016 178/403
CA Service Management - 14.1
Each attribute of an object is of a specific type that has meaning to the CA SDM application, such as
string, date, or integer. Knowing the attribute type is essential to correctly retrieving and updating
attribute values.
The CA SDM uses an enumeration to identify each data type. These enumeration values are returned
in various web methods, as illustrated by the following table:
Integer 2001
String 2002
Duration 2003
Date 2004
SREL 2005
UNKNOWN 2006
List (QREL/BREL) 2007
Lrel (many-to-many) 2008
UUID 2009
Integer
The Integer data type represents a 32-bit signed integer. Null an integer attribute by passing the
empty string.
02-Aug-2016 179/403
CA Service Management - 14.1
String
The String data type represents a character string, where the maximum length is defined by the
database storage allocated for a particular string attribute.
If you attempt to set a string attribute to a value that exceeds its length, the value is truncated and an
error message is written to the CA SDM log.
Duration
The Duration data type is an integer representing time duration in seconds. For example, 90
represents one minute and 30 seconds. To set a duration type, use an integer representing the
number of seconds for the duration. Negative values are not permitted. To make a duration attribute
null, pass the empty string.
Date
The Date data type represents a date value. This is stored as a UNIX-like UTC value in the database
(the number of seconds since 1-1-1970). When retrieving date values, the integer UTC is returned.
Similarly, use a UTC value to set a date. Negative values are not permitted. Null a date attribute by
passing the empty string.
SREL
The SREL data type represents an SREL (Single RELation), which is a pointer to another object. It is a
foreign key to another table in a database. For example, an Issue object has a pointer attribute to a
Contact representing the Assignee.
Most CA SDM Web Services methods permit dot-notation to retrieve information about objects to
which an SREL points. For example, to specify the name of a Contacts organization from the context
of the Contact, use the following:
organization.name
You may expand to an arbitrary number of levels as shown in the following example:
organization.contact.first_name
Dot-notation can only be used to retrieve attribute values, such as using getObjectValues(), or in a
Where clause. You cannot use dot-notation to set values.
02-Aug-2016 180/403
CA Service Management - 14.1
To set an SREL attribute, such as with updateObject(), you can pass the persistent id of the object to
which you want to point. In order to simplify this action, this release of CA SDM has been enhanced
so that the REL_ATTR (foreign key) value may be used to set an SREL.
For example, as the REL_ATTR of the crt object (Request Type) is its code attribute, the values R, I
and P can be used to set the type attribute of a cr object to specify that the ticket is a Request,
Incident or Problem. The crs type attribute can be set to R instead of crt:180, I instead of crt:
182 and P instead of crt:181.
List (QREL/BREL)
An object can have a list attribute that represents a one-to-many relationship. These are defined in
majic files with the QREL or BREL keywords. A list exists at the object level -- it does not take any
additional storage in the DBMS.
The CA SDM system handles list collections as abstract data types. The Web Services provides several
methods to interact with lists -- for references and queries to lists defined in an object, use
getRelatedList() and getRelatedListValues(). For more information about lists, see CA SDM Lists in this
chapter.
LREL
The LREL data type represents a many-to-many relationship between two object types. An LREL has
two names, one for each side of the relationship. The CA SDM Web Services provides special
functions for interacting with LRELs.
UNKNOWN
The Unknown data type represents an unknown data type.
UUID
A UUID is a 128-bit integer (16 bytes) or a 32-byte character that can be used across all computers
and networks wherever a unique identifier is required. Such an identifier has a very low probability of
being duplicated (for example, a contact ID). UUIDs are used mostly with primary keys.
02-Aug-2016 181/403
CA Service Management - 14.1
This section provides the details for using the Web Services methods. Each method explains the
parameters, description, and returns.
02-Aug-2016 182/403
CA Service Management - 14.1
02-Aug-2016 183/403
CA Service Management - 14.1
02-Aug-2016 184/403
CA Service Management - 14.1
02-Aug-2016 185/403
CA Service Management - 14.1
02-Aug-2016 186/403
CA Service Management - 14.1
02-Aug-2016 187/403
CA Service Management - 14.1
02-Aug-2016 188/403
CA Service Management - 14.1
02-Aug-2016 189/403
CA Service Management - 14.1
02-Aug-2016 190/403
CA Service Management - 14.1
02-Aug-2016 191/403
CA Service Management - 14.1
<UDSObject>
02-Aug-2016 192/403
CA Service Management - 14.1
For example, a call to getObjectValues() can return information illustrated by the following:
<UDSObject>
<Handle>cnt:555A043EDDB36D4F97524F2496B35E75</Handle>
<Attributes>
<Attribute DataType="2003">
<AttrName>first_name</AttrName>
<AttrValue>first name</AttrValue>
<DisplayValue>Yaakov</DisplayValue>
</Attribute>
<Attribute DataType="2005">
<AttrName>organization</AttrName>
<AttrValue>342</AttrValue>
<DisplayValue>Accounting Crew</DisplayValue>
</Attribute>
</Attributes>
<Lists> <List name="mylist1">
<UDSObject>...</UDSObject>
<UDSObject>...</UDSObject>
</List>
</Lists>
</UDSObject>
Some methods, such as doSelect(), return a sequence of <UDSObject> elements contained inside a
<UDSObjectList> element.
The <Lists> section holds zero or more <List> nodes. A <List> node holds zero or more <UDSObject>
nodes. <List> elements are generally returned only when a specific request for list values is made.
When you want to return a list of values related to a specific object, you should use the
getRelatedListValues method.
If a request is made just for a list with no attribute name, such as actlog, then the entire <UDSObject>
is returned in the <List> section.
02-Aug-2016 193/403
CA Service Management - 14.1
Specialized methods, like getDocument(), can of course be different. When a request is made for an
attribute, the database value is returned. For SREL attributes, this may not be so useful. Requesting
the assignee attribute of a Request returns an integer because the Contact REL_ATTR (foreign key) is
its ID. For CA Service Desk Manager r11.0, the return data for attributes includes elements for the
DBMS and common name value of SREL references.
02-Aug-2016 194/403
CA Service Management - 14.1
02-Aug-2016 195/403
CA Service Management - 14.1
Example Retrieve a Collection of Resources Using a Where Clause (see page 219)
Example Retrieve a Specific Resource (see page 220)
Example Retrieve a Subresource (see page 221)
Example Update a Resource (see page 221)
Example Get a BLREL Record (see page 222)
Example Retrieve a List of LREL Records Associated with a Group (see page 224)
Example Create a BLREL Record (see page 225)
Example Update a BLREL Record (see page 226)
Example Delete a BLREL Record (see page 227)
The REST API supports the following HTTP methods to manipulate resources:
Refer to this basic set of methods as CRUD. Each method works in the same manner on all CA SDM
resources. You require an HTTP client library, available with most programming languages. Use the
HTML client library to complete the following tasks:
Access and modify associated (or related) resources using a multilevel URI path.
Send an HTTP request to the server for the resource that you want to manipulate.
After you update Majic object definitions and recycle CA SDM, the product automatically regenerates
and redeploys the corresponding Plain Old Java Objects (POJOs) into the REST Tomcat webapps
directory.
Note: The pdm_rest_util command line utility lets you manually generate, compile, and
deploy Java code that REST web services require.
Important! Requests for attributes that do not respond indicate a null attribute value.
Modify your client code accordingly because REST does not display null attribute values in
responses.
REST Web Services provide a scalable configuration and better flexibility to our users by letting you
connect to a dedicated domsrvr on the local server. By default, CA SDM Release 12.9 provides the
NX_REST_WEBSERVICE_DOMSRVR variable to domsrvr. You can edit NX.env to change this setting.
CA SDM disables the REST sample mobile user interface and exposes all Majic factories through REST
02-Aug-2016 196/403
CA Service Management - 14.1
CA SDM disables the REST sample mobile user interface and exposes all Majic factories through REST
Web Services by default.
Important! The REST API does not support Majic attributes of type DOUBLE.
The following table shows how the REST API uses HTTP methods on resources.
Important! COMMON_NAME and REL_ATTR are case-sensitive. If you do not use upper
case, REST returns the HTTP-404 error code.
02-Aug-2016 197/403
CA Service Management - 14.1
REST Considerations
Consider the following information about REST methods:
POST operations create a resource from the provided representation, but CA SDM can add or
modify attribute values internally. These values are based on business object logic that attribute
triggers, SPEL code, methods, or both set. The result causes the POST operation to return the
actual representation that it created to the client. This behavior lets clients reconcile the
representation that they sent to the server with the actual representation that they created.
For GET operations, enter %20 instead of a space in the WHERE clause.
REST Limitations
The REST API does not support dotted attribute name references in its resource queries or attributes.
REST does not expose any BREL, QREL or LREL attribute that contains a dotted attribute in its
relationship query. For example, the chg object in base.maj contains the following QREL attributes:
In this example, workload_chg QREL attributes are available. The change_tasks QREL is unavailable
because it contains a dotted attribute (status.allow_task_update) in its WHERE clause.
After you install CA SDM, all objects are accessible through REST. The REST_OPERATIONS keyword
specifies the operations that you can perform on an object. By default, all objects allow the CREATE,
READ, and UPDATE operations. Some default objects also permit the DELETE operation, as indicated
in the REST_OPERATIONS list in their object definition. You do not need to use the REST_OPERATIONS
keyword for the default setup. You can refine object access to perform the following tasks:
02-Aug-2016 198/403
CA Service Management - 14.1
Override the REST_OPERATIONS list by using a Majic MODIFY statement to remove or add
operations, except for the DELETE operation.
Note: You cannot add the DELETE operation to any default object.
Remove an object from REST entirely by specifying NONE in the REST_OPERATIONS list.
rest_access resource
The rest_access resource contains REST API access information for the authenticated users. It is an
administrative table and contains the list of users allowed through the REST API.
The following list shows the deviations from the default behavior:
POST
Creates a REST access object and returns access key, secret key and expiration date as part of
default values.
GET
Retrieves REST access information (except for secret key).
DELETE
Deletes the REST access object.
PUT
Does not allow updates to secret_key, access_key, and contact due to the Majic WRITE_NEW
property.
REST_OPERATIONS Keyword
The Majic keyword, REST_OPERATIONS, uses a parenthesized list of tokens. These tokens let you
specify the REST operations that are permitted for an object. You use an object definition and a
MODIFY clause to customize the keyword.
OP
Specifies the CREATE, READ, UPDATE, and DELETE operations.
At run time, CA SDM allows overrides by using the following Majic MODIFY statement:
MODIFY FACTORY cr {
REST_OPERATIONS "READ, UPDATE";
02-Aug-2016 199/403
CA Service Management - 14.1
};
Important! CA SDM sets the default value for a REST_OPERATIONS property as CREATE
READ UPDATE for most Objects. For example, cr, iss, and chg. For some object, CA SDM
sets the default REST_OPERATIONS value to CREATE READ UPDATE DELETE. For example,
rest_access and KCAT.
MODIFY FACTORY cr {
REST_OPERATIONS "READ UPDATE";
};
Note: You cannot use DELETE in a MODIFY statement. The NONE operation is standalone and not
allowed with the CREATE READ UPDATE combination in the MODIFY statement.
An example of this three-factory relationship is the group and members relationship. This
relationship consists of a grp object, a cnt object, and the LREL table object that the grpmem object
represents. In this three-factory relationship, two BLREL attributes always point to a common LREL
table. In the group/member relationship, both BLREL attributes are frequently part of the same
object, but not always.
The following example shows how CA SDM defines BLREL attributes in Majic files.
OBJECT cnt {
...
member_list BREL grpmem group DYNAMIC { LREL member; } ;
group_list BREL grpmem member DYNAMIC { LREL group; } ;
}
02-Aug-2016 200/403
CA Service Management - 14.1
You can always view the attributes of an object by executing the bop_sinfo command on an active
system:
bop_sinfo -d grpmem
The LREL table record creates an association between records of two other tables. For the group
/member relationship, the grpmem record is the LREL table that creates this association. It is a many-
to-many relationship, where groups can have many members, and members can be part of many
groups.
Use percent-encoding for all requests before you send them to the server. For example, enter %
3D instead of =, the equals sign.
The WC parameter is part of the URI instead of a message header to allow bookmarking.
Example: Search for Contact Records with a Last Name that Equals ServiceDesk
http://<host>:<REST port>/caisd-rest/cnt?WC=last_name%3D'ServiceDesk'
/in?WC=priority%3D4
The 4 value in the example specifies the REL_ATTR value for the Priority 2 record.
Important! Use REL_ATTR values in the WC parameter when you reference SREL attributes
such as priority.
Example: Search for Incidents that Contain test% in the Summary Field
/in?WC=summary%20LIKE%20'test%25'
02-Aug-2016 201/403
CA Service Management - 14.1
/caisd-rest/<factory>
Example: /caisd-rest/cr
POST creates an object and returns the object that you created.
/caisd-rest/<factory>/<object id>
Example: /caisd-rest/cr/400001
Example: /caisd-rest/chg/400001/status
GET returns Details for the SREL attribute object, same as going directly to the SREL object if you
know the ID. For example, /caisd-rest/crs/5200
Example: /caisd-rest/chg/400001/act_log
GET returns a collection of objects of the type the BREL points to.
Example: /caisd-rest/chg/400001/attachments
GET returns a collection of objects of the type the BLREL points to (the LREL record).
Example: /caisd-rest/chg/400001/workflow
GET returns a collection of objects of the type the QREL points to.
02-Aug-2016 202/403
CA Service Management - 14.1
For default behavior, the SORT parameter provides that same support that the DBMS provides for the
ORDER BY clause. For example, if you omit ASC or DESC, the DBMS may use ASC automatically. If you
do not provide a SORT parameter in the URI, the DBMS uses id ASC by default.
This behavior only applies to collection GET requests, such as the example:
You must encode all requests before sending them to the server. For example, enter %20 instead
of spaces.
All object attributes specified in the SORT parameter add to the X-Obj-Attrs list of object
attributes automatically. This behavior helps ensure that the attributes selected for sorting are
part of the response.
The SORT parameter is part of the URI instead of a message header to allow for bookmarking.
Note: If you do not provide the X-Obj-Attrs header, id, REL_ATTR, and COMMON_Name list by
default, as they always appear as part of the response.
The ATOM links appear only for available records for that purpose. REST does not provide the
previous link if the current page contains the first record in the list. Similarly, REST only provides the
next and all links when you have more available records.
Users can also provide their own list return size with the size parameter. If the user does not provide
size, REST defaults to the value of rest_webservice_list_page_length. If you do not provide start, REST
defaults to 1.
02-Aug-2016 203/403
CA Service Management - 14.1
http://myserver:8050/caisd-rest/cnt?start=11&size=10
Note: When the result set contains more than the maximum number allowed, the all link does not
appear.
The following list shows the successful and error code numbers that the REST API returns for each of
the HTTP methods.
GET (single)
200, 400, 401, 404, 409
GET (collection)
200, 400, 401
PUT
200, 400, 401, 404, 409
DELETE
204, 400, 401, 409
POST
201, 400, 401, 409
Note: For the PUT and DELETE operations, the API does not try to determine the validity of the ID
initially. Instead, the API tries to run the update and delete queries directly. If an error occurs, the API
returns the 409 Conflict code. If the API returns a 404 Not Found code in this situation, performance
degrades.
In addition, the following error messages return under the following cases:
If the HTTP request contains an invalid or inaccessible URI address, the server responds with a
404 Not Found response code.
If the HTTP request contains an unsupported HTTP method for a valid URI, the server responds
with a 405 Method Not Allowed response code.
If the HTTP request requests an unsupported media type (Accept header), the server responds
with a 406 Not Acceptable response code.
02-Aug-2016 204/403
CA Service Management - 14.1
If the HTTP request sends an unsupported media type (Content-Type header), the server
responds with a 415 Unsupported Media Type response code.
Various syntax or internal Web Server errors can return a 500 internal error.
The following error messages match the corresponding HTTP error code. All others use error code
400.
A request for a resource that does not exist in CA SDM returns a 404 Not Found error code.
A request for a resource that returns multiple matches, such as when using a nonunique
COMMON_NAME value returns a 409 Conflict error code.
A request for an unaccessible resource due to Authentication Failure or Function Access security
return a 401 Unauthorized error code.
200
OK
Indicates a successful return.
201
Created
Indicates a new record.
204
No Content
Indicates an empty response body.
304
Not Modified
Indicates that the record did not update.
400
Bad Request
Indicates that an error occurred due to a user or backend server issue.
02-Aug-2016 205/403
CA Service Management - 14.1
401
Unauthorized
Indicates a function Access error or any authentication failure.
404
Not Found
Indicates that a record is not found.
405
Method Not Allowed
Indicates an unsupported HTTP method.
406
Not Acceptable
Indicates an unsupported requested format.
409
Conflict
Indicates that multiple records were found for the given identifier.
415
Unsupported Media Type
Indicates that the provided format is not supported.
500
Internal Server Error
Indicates an error on the server or CXF framework.
Atom Feeds
CA SDM supports Atom feeds through the collection GET URI path because Atom feeds represent a
list of records. This implementation supports all query parameters that REST Web Services support,
such as the WC, start, and size query parameters. This implementation supports two additional query
parameters, EntryTitle and EntrySummary, which let you specify a mapping between the Atom entry
Title and Summary elements to Majic attributes.
Note: If you do not specify these parameters, REST uses the COMMON_NAME as the default title and
summary values.
02-Aug-2016 206/403
CA Service Management - 14.1
<feed xmlns="http://www.w3.org/2005/Atom">
<author>
<name>CA Service Desk Manager</name>
</author>
<title type="text">REST API Atom feed</title>
<id>http://myserver:8050/caisd-rest/cnt</id>
<updated>2012-01-17T17:56:04.301Z</updated>
<link href="http://myserver:8050/caisd-rest/cnt?start=3&size=2"
rel="next"/>
<link href="http://myserver:8050/caisd-rest/cnt?start=1&size=12"
rel="all"/>
<link href="http://myserver:8050/caisd-rest/cnt"
rel="self"/>
<entry>
<author>
<name>CA Service Desk Manager</name>
</author>
<title type="text">System_AM_User</title>
<id>http://myserver:8050/caisd-rest/cnt/U'16226C765005B94E957E0F477DEF1B1C'</id>
<updated>1970-01-01T00:00:00.000Z</updated>
<summary type="text"> User for Asset Management Integration</summary>
<content type="application/xml">
<cnt id="U'16226C765005B94E957E0F477DEF1B1C'" REL_ATTR="
U'16226C765005B94E957E0F477DEF1B1C'"
COMMON_NAME="System_AM_User" xmlns="">
<link href="http://myserver:8050/caisd-rest/cnt
/U'16226C765005B94E957E0F477DEF1B1C'"
rel="self"/>
</cnt>
</content>
</entry>
<entry>
<author>
<name>CA Service Desk Manager</name>
</author>
<title type="text">cavizuser</title>
<id>http://myserver:8050/caisd-rest/cnt/U'17DEA1027C7C3746B6F25DB6604EEE23'</id>
<updated>1970-01-01T00:00:00.000Z</updated>
<summary type="text">Username used by Visualizer for
accessing CA Service Desk Manager using Web Services</summary>
<content type="application/xml">
<cnt id="U'17DEA1027C7C3746B6F25DB6604EEE23'" REL_ATTR="
U'17DEA1027C7C3746B6F25DB6604EEE23'"
COMMON_NAME="System_CMDB_Visualizer_User" xmlns="">
<link href="http://myserver:8050/caisd-rest/cnt
/U'17DEA1027C7C3746B6F25DB6604EEE23'"
rel="self"/>
</cnt>
</content>
</entry>
</feed>
02-Aug-2016 207/403
CA Service Management - 14.1
Example 1:
Example 2:
If the representation format is specified on the URI and through the Accept header, the one in
the URI takes precedence over the Accept header.
If a representation format is not specified in any way, the representation returns in the XML
format by default.
In addition, REST Web Services supports the same list of Attached Roles that are part of the Web
Client interface. A REST user can select a different role from the list of Attached Roles (including the
roles in its Contact record) by passing in an additional message header as part of the request.
02-Aug-2016 208/403
CA Service Management - 14.1
Host: hostname
Date: Mon, 21 Apr 2011 19:37:58 +0000
X-Role: 10002
test1_basic
SampleBasicAuth.java
Demonstrates how to get an Access Key using a username/password through the Basic
Authentication scheme.
SampleCRUDOperations.java
Demonstrates how to perform simple CRUD operations (Create, Read, Update and Delete) on
Incident tickets. The same can be used for any other object in CA SDM.
test2_auths
SampleBOPSIDAuth.java
Demonstrates how to get an Access Key using a BOPSID token. This CA SDM token can be
obtained from other CA SDM Interfaces such as SOAP Web Services.
SampleEEMAuth.java
Demonstrates how to get an Access Key using an CA EEM artifact/token. This token can be
obtained from other applications that use CA EEM as their authentication server.
SampleSDMAuth.java
Demonstrates how to get an Access Key and a Secret Key using a username/password through
the CA SDM custom authentication scheme.
SampleUsingSecretKey.java
Demonstrates how to make a REST API request (get a list of Contacts) using the Secret Key. It uses
the Secret Key obtained from the CA SDM custom authentication operation to encrypt a
configurable amount of data. All requests using this scheme are verified against the Secret Key.
test3_attachments
SampleNewResourceWithAttachment.java
Demonstrates how to create a new Change Order ticket with an attachment document all in one
step.
SampleAttachFileToResource.java
Demonstrates how to attach a document to an existing Change Order ticket.
test4_xrels
02-Aug-2016 209/403
CA Service Management - 14.1
SampleGetQRELDetails.java
Demonstrates how to retrieve details on a QREL attribute. In this sample, details for chg.children
are retrieved. The same approach works for BREL and BLREL attributes.
SampleCreateBRELResource.java
Demonstrates how to create a new record for a BREL attribute. In this sample, a new Log
Comment activity is added to an existing Change Order. The same approach works for creating a
new record for BLREL attributes.
3. Edit the copied file and verify that the first three SET variables are correct for your CA SDM
installation.
4. In addition, edit the Java file that you want to run and verify that the configurable variables
are set for your CA SDM installation. Also, read the comments at the top of the page.
REST Secret Key Authentication (see page 210) that uses SSL and HMAC for login
REST BOPSID Authentication (see page 212) that validates CA SDM BOPSIDs
REST Basic Authentication (see page 212) that uses clear text encoded username and password
External (CA EEM) Artifact Authentication (see page 213) that uses a CA EEM artifact token
02-Aug-2016 210/403
CA Service Management - 14.1
@NX_STRING_TO_SIGN_FIELDS=date,x-obj-attrs,content-type
Note: When you compute the signature on the Client side, use the same fields exactly in the same
order as specified the fields for the STRING_TO_SIGN_FIELDS option.
Access Key
The Access Key is an assigned value to CA SDM clients after a successful login authentication.
Requests use the Access Key to identify the client responsible for the request. However, because
an Access Key is sent as a request parameter, the Access Key is not secret. A possibility exists that
anyone could use the Access Key by sending a request to CA SDM. As a result, this authentication
requires a Secret Key. REST uses the CA SDM session ID as the Access Key.
Secret Key
After you log in to CA SDM successfully, the product assigns a Secret Key and Access Key to the
client. To protect users from impersonation, the client must provide additional information that
CA SDM can use to verify the identity. CA SDM generates the 40-character Secret Key during the
REST Access Key creation automatically.
1. The client obtains the Access Key and Secret Key through the REST URI (POST /caisd-rest
/rest_access) by providing user credentials using the basic authentication style over SSL.
2. For every subsequent HTTP request, the client uses the Secret Key,
NX_STRING_TO_SIGN_FIELDS provides the header fields, and the NX_HMAC_ALGORITHM
variable provides the hash function. This function calculates the request signature, a Keyed-
Hash based Message Authentication Code (HMAC).
3. The client sends the request data, the signature, and the Access Key to CA SDM.
4. CA SDM uses the Access Key to look up the Secret Key from the persistence store.
5. CA SDM uses the request data and the Secret Key to generate the signature using the same
hash algorithm that the client used.
6. If the signature that CA SDM generates matches the signature that the Client sent, CA SDM
considers the request as authentic. Otherwise, CA SDM discards the request and returns an
error response.
02-Aug-2016 211/403
CA Service Management - 14.1
The following example shows the HTTP message header for passing the BOPSID token:
Note: To obtain a BOPSID token through REST Web Services, you send a POST request (see page 217)
to /caisd-rest/bopsid.
If the incoming request does not contain the client credentials, the server sends back a 401 response
that contains an authentication challenge. This challenge consists of the "Basic" token and a name-
value pair that specifies the name of the protected realm, such as the following example:
After receiving the 401 response from the server, the client (such as a browser) prompts for the
username and password associated with that realm. The Authentication header of the client follow-
up request should contain the "Basic" token and the base64-encoded group of the username,
password, and a colon.
REST decodes credentials using base64 and compares them against the username/password and
validates the credentials through boplgin. If this validation succeeds, the server provides access to
the requested resource.
If the user sends the BOPSID instead of the username and password, CA SDM uses the the boplgin
method validate_bopsid(). If you are concerned about using basic authentication scheme, you can
disable it by setting the Options Manager option NX_REST_WEBSERVICE_DISABLE_BASIC_AUTH to
Yes.
02-Aug-2016 212/403
CA Service Management - 14.1
Important! Basic authentication is not as secure as the Secret Key method. However, you can use
Basic authentication over an SSL connection for increased security.
Get a list of Incident numbers using a where clause and display on the console.
Create BREL using the documented, multistep process. For example, add activity logs to a Change
Order. For QREL, create multiple Change Orders as children to a Change Order. For BLREL, add
multiple CIs to a Change Order.
Get a list of attributes that returns the URI for a BREL, QREL, or BLREL attribute, and display them
on the console.
Get the collection of the BREL, QREL, or BLREL attribute with the URI and display it on the
console. For example, /caisd-rest/chg/40001/act_log.
02-Aug-2016 213/403
CA Service Management - 14.1
Create an Incident.
Create an attachment.
Note: For readability, the examples do not show all HTTP message headers -- only the
relevant information.
Note: MIME types application/xml and text/xml are often used interchangeably. We
recommend that you use application/xml. All text/*-MIME types have an us-ascii character
set unless otherwise explicitly specified in the HTTP headers. In effect, any encoding
defined in the XML prolog (for example, <?xml version=1.0 encoding=UTF-8?>) is
ignored.
POST /caisd-rest/chg/?
repositoryId=1002&AttachmentId=att1&serverName=HOSTNAME&mimeType=doc&description=Desc
HTTP/1.1
Content-Type: multipart/form-data
X-AccessKey: 51461077
User-Agent: Jakarta Commons-HttpClient/3.0.1
02-Aug-2016 214/403
CA Service Management - 14.1
Host: hostname:8050
Content-Length: 1045
--Vschb1Sy2JD93ODUnWVAkRxp3IoXIMgXd
Content-Disposition: form-data; name="chg"
Content-Type: application/xml; charset=US-ASCII
Content-Transfer-Encoding: 8bit
02-Aug-2016 215/403
CA Service Management - 14.1
Note: Not all objects are available for deletion. Most objects only support updating the
delete_flag to true or false, or status equal to active or inactive. You perform these actions
using an UPDATE request rather than a DELETE request.
02-Aug-2016 216/403
CA Service Management - 14.1
Note: Most CA SDM objects only support marking them inactive and not actually deleting
them.
<loc id="U'0502D608F9122B48B7C9DAB9E0457F94'">
<delete_flag COMMON_NAME="Inactive"/>
</loc>
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
HTTP/1.1 201 OK
Content-Type: application/xml;charset=UTF-8
02-Aug-2016 217/403
CA Service Management - 14.1
<bopsid>
<bopsid_val>987982618</bopsid_val>
</bopsid>
Note: The root node (for example, collection_chg) also has other link elements such as
previous, next, and all for navigating lists.
02-Aug-2016 218/403
CA Service Management - 14.1
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
GET /caisd-rest/cr?WC=status%3D'cl'
GET /caisd-rest/cr?WC=status%3D'op'%20and%20active%3D0
Host: hostname
Accept: application/xml
X-Obj-Attrs: ref_num, priority
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
02-Aug-2016 219/403
CA Service Management - 14.1
</priority>
<ref_num>AM:12</ref_num>
</cr>
<cr id="2907" REL_ATTR="cr:2907" COMMON_NAME="AM:14">
<link href="http://hostname:8050/caisd-rest/cr/2907"
rel="self"/>
<priority id="502" REL_ATTR="3" COMMON_NAME="3">
<link href="http://hostname:8050/caisd-rest/pri/502"
rel="self"/>
</priority>
<ref_num>AM:14</ref_num>
</cr>
<cr id="3105" REL_ATTR="cr:3105" COMMON_NAME="UAPM:13">
<link href="http://hostname:8050/caisd-rest/cr/3105"
rel="self"/>
<priority id="502" REL_ATTR="3" COMMON_NAME="3">
<link href="http://hostname:8050/caisd-rest/pri/502"
rel="self"/>
</priority>
<ref_num>UAPM:13</ref_num>
</cr>
</collection_cr>
The following example shows the request when you use ID:
The following example shows the request when you use COMMON_NAME:
The following example shows the request when you use REL_ATTR:
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
02-Aug-2016 220/403
CA Service Management - 14.1
rel="self"/>
<chg_ref_num>21</chg_ref_num>
<requestor id="U'793ED69B4E87A545BD8E911834D829FC'"
REL_ATTR="U'793ED69B4E87A545BD8E911834D829FC'"
COMMON_NAME="System_AHD_generated">
<link href="http://hostname:8050/caisd-rest/cnt
/U'793ED69B4E87A545BD8E911834D829FC'"
rel="self"/>
</requestor>
<status id="40020" REL_ATTR="RFC" COMMON_NAME="RFC">
<link href="http://hostname:8050/caisd-rest/chgstat/40020"
rel="self"/>
</status>
<summary>Testing</summary>
02-Aug-2016 221/403
CA Service Management - 14.1
</chg>
HTTP/1.1 200 OK
Content-Type: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8"?>
<collection_grpmem COUNT="3" START="1" TOTAL_COUNT="3">
<grpmem id="400001" REL_ATTR="grpmem:400001" COMMON_NAME="400001">
<link href="http://localhost:8050/caisd-rest/grpmem/400001"
rel="self"/>
<group id="U'CFCC2DC94B3A66448C085B07E7286CAA'" REL_ATTR="
U'CFCC2DC94B3A66448C085B07E7286CAA'"
COMMON_NAME="Unicef">
<link href="http://localhost:8050/caisd-rest/grp
/U'CFCC2DC94B3A66448C085B07E7286CAA'"
rel="self"/>
</group>
<manager_flag>0</manager_flag>
<member id="U'3F05B7450203AD449BFB8088D991A03E'" REL_ATTR="
U'3F05B7450203AD449BFB8088D991A03E'"
COMMON_NAME="System_SD_User">
<link href="http://localhost:8050/caisd-rest/cnt
/U'3F05B7450203AD449BFB8088D991A03E'"
rel="self"/>
</member>
<notify_flag>1</notify_flag>
<persistent_id>grpmem:400001</persistent_id>
02-Aug-2016 222/403
CA Service Management - 14.1
<producer_id>grpmem</producer_id>
</grpmem>
<grpmem id="400002" REL_ATTR="grpmem:400002" COMMON_NAME="400002">
<link href="http://localhost:8050/caisd-rest/grpmem/400002"
rel="self"/>
<group id="U'55E3CCE805756B4F8084D63E05E6C216'" REL_ATTR="
U'55E3CCE805756B4F8084D63E05E6C216'"
COMMON_NAME="Apache">
<link href="http://localhost:8050/caisd-rest/grp
/U'55E3CCE805756B4F8084D63E05E6C216'"
rel="self"/>
</group>
<manager_flag>0</manager_flag>
<member id="U'FCF9A8AC6381AA4386C9B10EE382E10B'" REL_ATTR="
U'FCF9A8AC6381AA4386C9B10EE382E10B'"
COMMON_NAME="System_MA_User">
<link href="http://localhost:8050/caisd-rest/cnt
/U'FCF9A8AC6381AA4386C9B10EE382E10B'"
rel="self"/>
</member>
<notify_flag>1</notify_flag>
<persistent_id>grpmem:400002</persistent_id>
<producer_id>grpmem</producer_id>
</grpmem>
<grpmem id="400003" REL_ATTR="grpmem:400003" COMMON_NAME="400003">
<link href="http://localhost:8050/caisd-rest/grpmem/400003"
rel="self"/>
<group id="U'55E3CCE805756B4F8084D63E05E6C216'" REL_ATTR="
U'55E3CCE805756B4F8084D63E05E6C216'"
COMMON_NAME="Apache">
<link href="http://localhost:8050/caisd-rest/grp
/U'55E3CCE805756B4F8084D63E05E6C216'"
rel="self"/>
</group>
<manager_flag>0</manager_flag>
<member id="U'16226C765005B94E957E0F477DEF1B1C'" REL_ATTR="
U'16226C765005B94E957E0F477DEF1B1C'"
COMMON_NAME="System_AM_User">
<link href="http://localhost:8050/caisd-rest/cnt
/U'16226C765005B94E957E0F477DEF1B1C'"
rel="self"/>
</member>
<notify_flag>1</notify_flag>
<persistent_id>grpmem:400003</persistent_id>
<producer_id>grpmem</producer_id>
</grpmem>
</collection_grpmem>
This sample returns three grpmem records that represent the following associations:
02-Aug-2016 223/403
CA Service Management - 14.1
The WHERE clause (WC) query parameter does not support dotted notation.
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8"?>
<collection_grpmem COUNT="2" START="1" TOTAL_COUNT="2">
<grpmem id="400002" REL_ATTR="grpmem:400002" COMMON_NAME="400002">
<link href="http://hostname:8050/caisd-rest/grpmem/400002"
rel="self"/>
<group id="U'55E3CCE805756B4F8084D63E05E6C216'" REL_ATTR="
U'55E3CCE805756B4F8084D63E05E6C216'"
COMMON_NAME="Apache">
<link href="http://hostname:8050/caisd-rest/grp
/U'55E3CCE805756B4F8084D63E05E6C216'"
rel="self"/>
</group>
<manager_flag>0</manager_flag>
<member id="U'FCF9A8AC6381AA4386C9B10EE382E10B'" REL_ATTR="
U'FCF9A8AC6381AA4386C9B10EE382E10B'"
COMMON_NAME="System_MA_User">
<link href="http://hostname:8050/caisd-rest/cnt
/U'FCF9A8AC6381AA4386C9B10EE382E10B'"
rel="self"/>
</member>
<notify_flag>1</notify_flag>
<persistent_id>grpmem:400002</persistent_id>
<producer_id>grpmem</producer_id>
</grpmem>
<grpmem id="400003" REL_ATTR="grpmem:400003" COMMON_NAME="400003">
<link href="http://hostname:8050/caisd-rest/grpmem/400003"
02-Aug-2016 224/403
CA Service Management - 14.1
rel="self"/>
<group id="U'55E3CCE805756B4F8084D63E05E6C216'" REL_ATTR="
U'55E3CCE805756B4F8084D63E05E6C216'"
COMMON_NAME="Apache">
<link href="http://hostname:8050/caisd-rest/grp
/U'55E3CCE805756B4F8084D63E05E6C216'"
rel="self"/>
</group>
<manager_flag>0</manager_flag>
<member id="U'16226C765005B94E957E0F477DEF1B1C'" REL_ATTR="
U'16226C765005B94E957E0F477DEF1B1C'"
COMMON_NAME="System_AM_User">
<link href="http://hostname:8050/caisd-rest/cnt
/U'16226C765005B94E957E0F477DEF1B1C'"
rel="self"/>
</member>
<notify_flag>1</notify_flag>
<persistent_id>grpmem:400003</persistent_id>
<producer_id>grpmem</producer_id>
</grpmem>
</collection_grpmem>
02-Aug-2016 225/403
CA Service Management - 14.1
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8"?>
<grpmem id="400005" REL_ATTR="grpmem:400005" COMMON_NAME="400005">
<link href="http://hostname:8050/caisd-rest3/grpmem/400005"
rel="self"/>
<group id="U'55E3CCE805756B4F8084D63E05E6C216'" REL_ATTR="
U'55E3CCE805756B4F8084D63E05E6C216'"
COMMON_NAME="Apache">
<link href="http://hostname:8050/caisd-rest3/grp
/U'55E3CCE805756B4F8084D63E05E6C216'"
rel="self"/>
</group>
<manager_flag>1</manager_flag>
02-Aug-2016 226/403
CA Service Management - 14.1
02-Aug-2016 227/403
CA Service Management - 14.1
This section describes the Web Services attachment-related methods. Only file attachments are
handled by these methods; link type attachments are handled by generic methods, such as
CreateObject(). In addition, file uploads through Web Services employ the Direct Internet Message
Encapsulation (DIME) protocol. Your SOAP implementation must support DIME in order to use these
methods.
createAttachment
The following parameters apply to the createAttachment method:
Description
Uploads a file to the back-end server. An uploaded file is stored in a document repository specified by
the repositoryHandle. An attachment object is then created and attached to a ticket object specified
by the objectHandle. The attachment object has all the information for accessing the newly uploaded
file in the repository.
Returns
02-Aug-2016 228/403
CA Service Management - 14.1
Symptom:
When using the createAttachment() web service method to attach a document to an existing request
or incident, you receive this error, even when the web services policy setting for attachments is set to
-1(unlimited), which is the out-of-the-box default setting. You may receive this error when calling the
web service method when there are no attached files in the received SOAP message. You must attach
at least one file to the SOAP message before calling the createAttachment() web service method.
Solution:
Set your SOAP implementation to support Direct Internet Message Encapsulation (DIME), and attach
the file to be uploaded manually using DIME support before calling the createAttachment() method.
You can refer to the examples on how to support DIME from the
$NX_ROOT\samples\sdk\websvc\java\test3_attachments directory.
This code example illustrates sample Visual Basic .NET code to attach a file using DIME support
before calling the createAttachment() web service method.
Note: For information about the DIME attachment methods used in the previous sample
code, see the Microsoft website. For programs written in other languages, see your
documentation for the SOAP implementation that supports DIME.
Example: Java
This code example illustrates sample Java code to attach a file using DIME support before calling the
createAttachment() web service method.
02-Aug-2016 229/403
CA Service Management - 14.1
removeAttachment
The following parameters apply to the removeAttachment method:
Description
Removes an attachment from a ticket object. The attached file is then removed from the repository.
Returns
Nothing.
attachURLLinkToTicket
The following parameters apply to the attachURLLinkToTicket method:
Description
Example:
02-Aug-2016 230/403
CA Service Management - 14.1
createAttmnt
The following parameters apply to the createAttmnt method:
Description
Uploads a file to the back-end server. An uploaded file is stored in a document repository specified by
the repositoryHandle. An attachment object is then created and attached to a document object
specified by the objectHandle. The attachment object has all the information for accessing the newly
uploaded file in the repository.
Returns
02-Aug-2016 231/403
CA Service Management - 14.1
Returns
The following:
attmntFolderLinkCount
The following parameters apply to the attmntFolderLinkCount method:
Description
Returns
attachURLLink
The following parameters apply to the attachURLLink method:
Description
Returns
Returns error codes only for individual errors. For additional information, see Error Codes.
02-Aug-2016 232/403
CA Service Management - 14.1
getKDListPerAttmnt
The following parameters apply to the getKDListPerAttmnt method:
Description
Returns
A <UDSObject> node with zero or more <UDSObject> nodes describing the Knowledge document
with the following <Attributes> child nodes:
getAttmntListPerKD
The following parameters apply to the getAttmntListPerKD method:
Description
Returns
A <UDSObject> node with zero or more <UDSObject> nodes describing the attachment with the
following <Attributes> child nodes:
isAttmntLinkedKD
The following parameters apply to the AttmntLinkedKD method:
02-Aug-2016 233/403
CA Service Management - 14.1
Description
Checks if an attachment is linked to any Knowledge document, and returns the number of links
found.
Returns
createFolder
The following parameters apply to createFolder method:
Description
Creates a new folder in the Service Desk repository that is accessed through the Attachments Library.
Note: Folder types other then 0 are hidden folders and can be viewed only by navigating to
Attachments Library on the Administration tab. These folders are automatically created by the
system during upload and should not be created by the user or Web Services, because their files are
private and cannot be shared with other Knowledge Documents, QA or Knowledge Files.
Returns
A <UDSObject> describing the folder created, with some of the following child <Attributes> nodes:
02-Aug-2016 234/403
CA Service Management - 14.1
getFolderList
The following parameters apply to getFolderList method:
Description
Returns
A <UDSObjectList> with zero or more <UDSObject> describing the attachment folder, with some of
the following child <Attributes> nodes:
getFolderInfo
The following parameters apply to the getFolderInfo method:
Description
Returns
A <UDSObject> describing the attachment folder, with some of the following child <Attributes>
nodes:
02-Aug-2016 235/403
CA Service Management - 14.1
getAttmntList
The following parameters apply to the getAttmntList method:
Description
Returns
A <UDSObjectList> with zero or more <UDSObject> describing the attachment, with some of the
following child <Attributes> nodes:
getAttmntInfo
The following parameters apply to the getAttmntInfo method:
02-Aug-2016 236/403
CA Service Management - 14.1
Description
Returns
A <UDSObject> describing the attachment, with some of the following child <Attributes> nodes:
getRepositoryInfo
The following parameters apply to the getRepositoryInfo method:
Description
Returns
A <UDSObject> describing the repository, with some of the following child <Attributes> nodes:
02-Aug-2016 237/403
CA Service Management - 14.1
callServerMethod
The following parameters apply to the callServerMethod method:
Description
Use this method to invoke an arbitrary server-side method. These are methods defined in the
proprietary spell scripting language.
Only factory methods can be called and the caller must be logged in with full administrative rights.
The format list is a series of zero or more characters that indicate (in order) the data types of the
parameters to follow. The character codes are as follows:
0 S -- string
0 N -- null
02-Aug-2016 238/403
CA Service Management - 14.1
This method is intended for CA Development and services for customizations only; it is not
recommended for most sites.
Returns
Each return message component in its own XML element. The elements are all string representations
of the value. The elements are ordered in the return order from the server using the following
format:
<ServerReturn>
<Paramx>
This call does not support object reference returns. If an object reference is returned by the spell
method, the return data is the string, OBJECT. This is not an error and any other parameters are
also returned.
You can validate BOPSIDs using check_bopsid. This is invoked with callServerMethod as follows:
If the BOPSID validation fails, a SOAP Fault is returned. If validation succeeds, the return value is a
small XML structure of the following form:
<ServerReturn>
<Param0>CONTACT_PERSID</Param0>
<Param1>SESSION_TYPE</Param1>
<Param2>SESSION_ID</Param2>
</ServerReturn>
CONTACT_PERSID
Defines the unique persistent id of the validated/trusted contact. It is of the form, "cnt:<uuid>".
SESSION_TYPE
Defines a small integer id indicating the type of session that generated the BOPSID. This is
typically not used by integrators
02-Aug-2016 239/403
CA Service Management - 14.1
SESSION_ID
Defines an optional session id. This is the id of the session that generated the BOPSID. It may or
may not be set. This is useful to maintain a user's logical session within CA SDM, especially if the
user is "passed" back to CA SDM by another BOPSID.
Note: If the BOPSID validation returns a success, log into CA Support Automation bypassing
the login screen, else the CA Support Automation Login screen will be displayed.
createObject
The following parameters apply to the createObject method:
Description
Creates a CA SDM object. The caller is responsible for setting any required fields in the attrVals
parameter. Dotted-names are not permitted.
ObjectType
Identifies the name for an object type (factory).
attrVals
Describes the array of name-value pairs used to initialize the new object. For example, the
following pseudo-code shows how to create a contact and return a <UDSObject> element with
values for all its attributes:
02-Aug-2016 240/403
CA Service Management - 14.1
attrVals[1] = "Edgar";
attrVals[2] = "last_name";
attrVals[3] = "Martin";
Note: Do not use this method for new assets, issues, requests, or change orders. Use the
specialized createXXX() methods for those object types. This comment also applies if you
are using the ITIL methodology -- use the appropriate methods to create Configuration
Items, Incidents, and Problems.
Returns
A <UDSObject> element containing the new objects handle, along with attribute values specified in
the attributes parameter. If the attributes parameter is empty, all attribute values are returned. List
and LREL types are also returned, but as empty elements.
serverStatus
The following parameter applies to the serverStatus method:
Description
Returns the status of the CA SDM server, that is, whether it is up and ready or shut down.
Note: This method executes rapidly on the server. Calling this method periodically is a good
way to keep a SID active.
Returns
02-Aug-2016 241/403
CA Service Management - 14.1
updateObject
The following parameters apply to the updateObject method:
Description
To set values for the object, the caller passes a single-dimensional array of attribute name-value
pairs. The first half of the pair is an attribute name; the second is the actual value. Dotted-names are
not permitted.
To update an attribute that is a Pointer type (for example, the customer field on a request) a handle
must be used for the value. For Integer, Date, and Duration types, pass the string representation of
an integer.
For example, to update a request with a new assignee, description and priority, the array would
appear as follows:
[0] - "assignee"
[1] - "cnt:555A043EDDB36D4F97524F2496B35E75" (a contact Handle)
[2] - "description"
[3] - "My new description"
[4] - "priority"
[5] - "pri:38903" (a priority Handle)
If the update fails for any reason, the entire operation aborts and no changes occur.
02-Aug-2016 242/403
CA Service Management - 14.1
If the update fails for any reason, the entire operation aborts and no changes occur.
Note: When updating a task, set the status value last in the attribute array.
Returns
A <UDSObject> element containing the updated objects handle, along with attribute values specified
in the attributes parameter. If the attributes parameter is empty, all of the attribute values are
returned. List and LREL types are also returned (see page 192), but as empty elements.
02-Aug-2016 243/403
CA Service Management - 14.1
To use the Web Services Knowledge Management, it is helpful if you are familiar with the database
structure.
Table Types
Some of the more important tables are described as follows:
Table Description
Type
skelet Stores all information pertaining to documents with each row representing one document.
on Field names from this table can be used when passing the PropertyList and SortBy parameters
to methods such as FAQ() and Search(). The field names are case-sensitive so make sure you
pass them just as they are in the database.
Stores all information pertaining to categories with each row representing one category.
02-Aug-2016 244/403
CA Service Management - 14.1
Table Description
Type
o_ind
exes
RELEVANCE
AUTHOR_ID
BU_RESULT
CREATION_DATE
DOC_TYPE_ID
EXPIRATION_DATE
HITS
id
MODIFY_DATE
OWNER_ID
PRIORITY_ID
ACCEPTED_HITS
ASSET_ID
SD_ASSET_ID
ASSIGNEE_ID
PRODUCT_ID
START_DATE
STATUS_ID
SUBJECT_EXPERT_ID
02-Aug-2016 245/403
CA Service Management - 14.1
faq
The following parameters apply to the faq method:
Description
Use to perform a faq search. Documents are retrieved based on the category ID that is passed. Any
documents residing in that category or in any sub-category are returned. To improve performance,
these methods only retrieve detailed information on a user-defined set of documents, which is
controlled through the resultSize parameter. The rest of the documents return their IDs only. Using
this method, you can for example, set up a paging mechanism where the user can click on Top,
Previous, Next, and Bottom links. When you need to retrieve the next set of information, you can
use the getDocumentsByIDs() method. The maximum number of 100 IDs is returned.
Returns
<UDSObject> node from the <UDSObject> Node Description section of this chapter. There is a
<UDSObject> node with all the given properties for the first n documents that the method finds
where n equals the resultSize parameter.
02-Aug-2016 246/403
CA Service Management - 14.1
For example, if the resultSize parameter is 10, the maxDocIDs parameter is 50, and the method finds
100 documents, then there are 10 <UDSObject> with <Attributes> nodes in the first<UDSObject>
section with detail attribute information from propertyList parameter and 40 <UDSObject> nodes
with only ID <Attributes> in the following section. If you want to retrieve detailed ID <AttrName>
information for documents numbering 11-20, you have to make a call to the getDocumentsByIDs()
method and pass it those IDs from <AttrValue>.
search
The following parameters apply to the search method:
02-Aug-2016 247/403
CA Service Management - 14.1
Description
Searches for solutions to a problem. Documents are retrieved based on the problem that is passed.
Any documents matching the description of the problem or a similar description, are returned. To
improve performance, these methods only retrieve detailed information on a user-defined set of
documents, which is controlled through the resultSize parameter. The rest of the documents return
their ids only. Using this method, you can for example, set up a paging mechanism, where the user
can click on Top, Previous, Next, and Bottom links. When you need to retrieve the next set of
information, you can use the getDocumentsByIDs() method.
Returns
<UDSObject> node from the <UDSObject> Node Description section of this chapter. There will be a
<UDSObject> node with all the given properties for the first n documents that the method finds,
where n equals the resultSize parameter. For example, if the resultSize parameter is 10, the
maxDocIds parameter is 50, and the method finds 100 documents, then there are 10 <UDSObject>
nodes with all the properties requested in the <Attributes> section and 40 <UDSObject> with only the
ID property in the <Attributes> section. If you want to retrieve detailed <UDSObject> information for
documents 11-20, you need to make a call to the getDocumentsByIDs() method and pass it those IDs.
If the getRelatedCategories parameter is set to True, the <UDSObjectList> node is included in the
<Attributes> section for related categories. Each <INDEX_DOC_LINKS> node contains the relational ID
of the category, as shown by the following example:
1-70
doSelectKD
The following parameters apply to the doSelectKD method:
02-Aug-2016 248/403
CA Service Management - 14.1
Description
Performs an SQL-like select on a Knowledge Document table. Supply one or more attributes you want
fetched from the objects that match the supplied where clause.
Returns
<UDSObjectList>
<UDSObject>
<Handle>
<Attributes>
<AttributeName0>
<AttributeName1>
createDocument
The following parameters apply to the createDocument method:
02-Aug-2016 249/403
CA Service Management - 14.1
"SUMMARY","Summary text",
"TITLE","Title text"
As part of the createDocument method, the following table reflects examples of valid, commonly
used attribute values for a document. Data in the Type column reflect the actual type, which must be
parsed to the method in string format in the attrVals string array.
02-Aug-2016 250/403
CA Service Management - 14.1
02-Aug-2016 251/403
CA Service Management - 14.1
Description
Returns
modifyDocument
The following parameters apply to the modifyDocument method:
As part of the modifyDocument method, the following table reflects examples of valid, commonly
used attribute values for a document. Data in the Type column reflect the actual type, which must be
parsed to the method in string format in the attrVals string array.
02-Aug-2016 252/403
CA Service Management - 14.1
02-Aug-2016 253/403
CA Service Management - 14.1
02-Aug-2016 254/403
CA Service Management - 14.1
Description
Modifies a document.
Returns
deleteDocument
The following parameters apply to the deleteDocument method:
Description
Flags a document for deletion. The Knowledge Management Windows Service permanently deletes
the document.
Returns
Returns error codes only when there are individual errors. For additional information, see Error
Codes.
02-Aug-2016 255/403
CA Service Management - 14.1
addComment
The following parameters apply to the addComment method:
Description
Returns
A <UDSObject> node with the following<Attributes> child nodes describing the comment most
recently added:
02-Aug-2016 256/403
CA Service Management - 14.1
deleteComment
The following parameters apply to the deleteComment method:
Description
Deletes a comment.
Returns
Returns error codes only for individual errors. For additional information, see Error Codes.
rateDocument
The following parameters apply to the rateDocument method:
Description
02-Aug-2016 257/403
CA Service Management - 14.1
Returns
A <UDSObject> node with the following <Attributes> children nodes describing the rating BU_TRANS
:
updateRating
The following parameters apply to the updateRating method:
Description
Returns
getQuestionsAsked
The following parameters apply to the getQuestionsAsked method:
02-Aug-2016 258/403
CA Service Management - 14.1
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing EBR_LOG with the
following <Attributes> child nodes:
getBookmarks
The following parameters apply to the getBookmarks method:
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing CI_BOOKMARKS with the
following <Attributes> child nodes:
02-Aug-2016 259/403
CA Service Management - 14.1
addBookmark
The following parameters apply to the addBookmark method:
Description
Returns
deleteBookmark
The following parameters apply to the deleteBookmark method:
Description
Returns
Returns error codes only for individual errors. For additional information, see Error Codes.
getStatuses
The following parameter applies to the getStatuses method:
Description
02-Aug-2016 260/403
CA Service Management - 14.1
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing CI_STATUSES with the
following <Attributes> child nodes:
getPriorities
The following parameter applies to the getPriorities method:
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing CI_PRIORITIES with the
following <Attributes> child nodes:
getDocumentTypes
The following parameter applies to the getDocumentTypes method:
02-Aug-2016 261/403
CA Service Management - 14.1
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing CI_DOC_TYPES with the
following <Attributes> child nodes:
getTemplateList
The following parameter applies to the getTemplateList method:
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing CI_DOC_TEMPLATES with
the following <Attributes> child nodes:
02-Aug-2016 262/403
CA Service Management - 14.1
getWorkflowTemplateList
The following parameter applies to the getWorkflowTemplateList method:
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing WF_TEMPLATE with the
following <Attributes> child nodes:
02-Aug-2016 263/403
CA Service Management - 14.1
getCategory Method
This article contains the following topics:
getPermissionGroups (see page 264)
getComments (see page 265)
getDecisionTrees (see page 266)
getDocument (see page 266)
getDocumentsByIDs (see page 267)
getBopsid (see page 268)
getConfigurationMode (see page 269)
getObjectValues (see page 269)
getObjectTypeInformation (see page 270)
getArtifact (see page 271)
Description
Retrieves information for a category, including a listing of all of its child categories.
Returns
getPermissionGroups
The following parameters apply to the getPermissionGroups method:
02-Aug-2016 264/403
CA Service Management - 14.1
Description
Returns
A <UDSObject> node with zero or more <UDSObject> nodes describing Permission Group with the
following <Attributes> child nodes:
getComments
The following parameters apply to the getComments method:
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing O_COMMENTS with the
following <Attributes> child nodes:
02-Aug-2016 265/403
CA Service Management - 14.1
getDecisionTrees
The following parameters apply to the getDecisionTrees method:
Description
Retrieves all Decision Trees. Decision trees are Knowledge Documents that provide users with
resolutions after answering specific questions on the document.
Returns
getDocument
The following parameters apply to the getDocument method:
02-Aug-2016 266/403
CA Service Management - 14.1
Description
Returns
getDocumentsByIDs
The following parameters apply to the getDocumentsByIDs method:
Description
Retrieves information on one or more documents by passing the document IDs for which you want to
02-Aug-2016 267/403
CA Service Management - 14.1
Retrieves information on one or more documents by passing the document IDs for which you want to
retrieve information. This is usually used after calling the faq() or search() methods. In order to
improve performance, these methods only retrieve detailed information on a user-defined set of
documents. The rest of the documents return their IDs only. For example, you can set up a paging
mechanism, where the user can click on Top, Previous, Next, and Bottom links. When you need to
retrieve the next set of information, you can use the getDocumentsByIDs() method.
Returns
You should pass the IDs into the getDocumentsByIDs() docIds parameter in this same format.
getBopsid
The following parameters apply to the getBopsid method:
Description
Facilitate the building of Web Interface URLs, which may be used to launch the Web Interface in the
context of a given user without a login challenge. The URL may look similar to the following:
http://host/CAisd/pdmweb.exe?BOPSID=nnnnn+OP=xxxx...
To launch the Web Interface in the context of a given user (for example, an analyst), a calling
application must first construct a Web Interface URL, which includes a BOPSID token (a web-interface
security token). Failure to provide a BOPSID token may result in an interactive login challenge when
attempting to launch the Web Interface in the chosen context (such as, a detail view of a given
ticket). The getBopsid method allows the BOPSID to be generated in the context of the user provided
by the Name parameter. If the Name parameter is not provided, it uses the user associated with the
current Web Interface BOPSID.
Note: To prevent unauthorized elevation of privileges, the BOPSID of the current login
must have equal or greater access rights than the name of the user entered.
Returns
A BOPSID based on the name of the user entered. You must use the BOPSID to launch the Web
Interface within 30 seconds of it being generated.
02-Aug-2016 268/403
CA Service Management - 14.1
Note: The BOPSID of the current login must have equal or greater access rights than the
name of the user entered.
getConfigurationMode
The following parameters apply to the getConfigurationMode method:
Description
This method returns a string indicating if the CA SDM installation is in the ITIL mode.
Returns
A string "itil" if the installation is in ITIL mode. Otherwise, an empty string is returned.
getObjectValues
The following parameters apply to the getObjectValues method:
Description
This method returns the attribute values of an object. The caller passes one or more attribute names
to fetch the object and dotted-names are permitted.
All values are returned as a string. Empty/null attributes are returned as empty strings.
Returns
02-Aug-2016 269/403
CA Service Management - 14.1
<UDSObject> N/A Contains a <Handle> element and zero or more <AttributeNameX> elements.
getObjectTypeInformation
The following parameters apply to the getObjectTypeInformation method:
Description
A list of all attribute names for a given object type, along with type information for each attribute.
Information returned for the attributes type includes the Integer, String, Date, Pointer, List, and so
on, if the attribute is required for back-storing its storage space requirements (if appropriate).
Callers should cache the type information requested per object type to avoid multiple, redundant
(and expensive) calls. The attribute information can change only after modifications are performed
on the CA SDM server and the service is recycled.
Returns
The following:
02-Aug-2016 270/403
CA Service Management - 14.1
getArtifact
The following parameters apply to the getArtifact method:
Description
Facilitates the building of Web Interface URLs, which may be used to launch the Web Interface in the
context of a given user without a login challenge. The URL may look similar to the following:
http://host/CAisd/pdmweb.exe?USERNAME=xxxxx+ARTIFACT=nnnnn+OP=xxxx....
To launch the Web Interface in the context of a given user (for example, an analyst), a calling
application must first construct a Web Interface URL, which includes an CA EEM ARTIFACT token (a
web-interface security token). Failure to provide a CA EEM ARTIFACT token may result in an
interactive login challenge when attempting to launch the Web Interface in the chosen context (such
as, a detail view of a given ticket). The getArtifact method allows the CA EEM ARTIFACT to be
generated in the context of the user provided by the contact parameter.
Note: Service Desk needs to be integrated with CA EEM to perform this operation.
Returns
An CA EEM ARTIFACT based on the name of the user entered. You can use the ARTIFACT to launch
the Web Interface only once.
02-Aug-2016 271/403
CA Service Management - 14.1
LREL Methods
This article contains the following topics:
getLrelLength (see page 273)
getLrelValues (see page 273)
createLrelRelationships (see page 274)
removeLrelRelationships (see page 275)
LREL methods supply information about object relationships. Objects with relationships have a left-
hand side (lhs) and right-hand side (rhs) definition to describe many-to-many relationships. Some
examples of many-to-many relationships include the following:
When working with LREL methods, the BREL or LREL attribute describe many-to-many relationships.
The BREL attribute replaces the LREL attribute to define many-to-many relationships. However, the
LREL attribute remains backward compatible with previous releases. You declare each relationship in
a .maj file and then your code uses the LREL methods, such as CreateLrelRelationship(), with the
existing web service client code.
Note: When working with group object management, you can use the special web methods
to define a member that belongs to a group.
You declare the relationship using the BREL attribute to define relationships in majic files. For
example, the following statement declares a many-to-many relationship for the Change Order (chg)
object in change.maj:
The BREL attribute for the change order named, "asset" is a list of all associated configuration items.
The optional, LREL flag is an attribute that describes a set of owned resources. The corresponding
majic definition of the Configuration Item (nr) includes the following:
The chgnr attribute is a list of all change orders for a configuration item.
In your code, you can discover how many configuration items are associated with a change order, call
getLrelLength() with the following parameters:
You use the sid parameter for the Service ID from a login method. The ChangeHandle parameter is a
02-Aug-2016 272/403
CA Service Management - 14.1
You use the sid parameter for the Service ID from a login method. The ChangeHandle parameter is a
string handle to a particular change order. Similarly, the following statement describes how to get the
names of all configuration items that are related to a change order:
Note: For more information about LREL tables and objects, see the Data Element
Dictionary and Objects and Attributes.
getLrelLength
The following parameters apply to the getLrelLength method:
Description
contextObject
Specifies it as a handle to an object on one side of the LREL relationship.
LrelName
Specifies it as the name of the side of the relationship identified by ObjHandle.
Returns
The following:
getLrelValues
The following parameters apply to the getLrelValues method:
02-Aug-2016 273/403
CA Service Management - 14.1
Description
Returns attribute values for a range of objects in an LREL relationship. Remember that items involved
in an LREL relationship have no specific ordering. In fact, it is not really a list, as defined in this
document.
The start and end index parameters are there to help throttle a large number of items. The format is
as follows:
Returns
createLrelRelationships
The following parameters apply to the createLrelRelationships method:
02-Aug-2016 274/403
CA Service Management - 14.1
Description
Adds one or more many-to-many relationships. contextObject is one side of the LREL relation. The
caller passes one or more object handles for the other side.
If a relationship already exists between the two objects, no change is made and the system continues
to process the addObjectHandles array. If an invalid object handle is passed, the entire operation is
canceled.
The following example shows how to add several assets to a contacts environment:
Returns
Nothing.
removeLrelRelationships
The following parameters apply to the removeLrelRelationships method:
Description
Removes one or more many-to-many relationships. contextObject is one side of the LREL
relationship. The caller passes one or more object handles for the other side.
It is not an error if no relationship existed between the two objects. If an invalid object handle is
passed, the entire operation is canceled.
02-Aug-2016 275/403
CA Service Management - 14.1
Returns
Nothing.
02-Aug-2016 276/403
CA Service Management - 14.1
dbmonitor_nxd--Database Monitoring
Daemon
The Database Monitoring daemon (dbmonitor_nxd) provides a mechanism to allow CA SDM cache of
specific database tables to be refreshed when changes are made externally from CA SDM.
The main function of dbmonitor_nxd is to generate CHANGE notifications for changes in specified
tables that did not occur through CA SDM. In order to perform this function, the monitor periodically
queries the database, determines what was changed externally and then sends CHANGE notifications
to the bpvirtdb_nxd server. The bpvirtdb_nxd server notifies all domsrvr servers of the change, which
causes each domsrvr to update its cache of specific database objects and then notify all other
processes that subscribe for changes in the specified tables.
This mechanism works well for the occasional external change in tables that are monitored. However,
in cases where mass updates are made externally a storm of CHANGE notifications are broadcast
which leads to many database queries from various CA SDM processes which significantly impacts CA
SDM's performance.
In order to eliminate this impact on CA SDM performance, dbmonitor_nxd has been updated for this
release of the product. The Monitor supports a command line interface that allows the user to start
and stop the monitoring of specified tables.
Syntax
<command>
Enter start or stop.
<tables>
Specifies a table name or a comma delimited list of table names that must match one or more of
the tables specified in the NX_DBMONITOR_TABLES environment variable.
Each request is sent to the dbmonitor_nxd daemon. The daemon takes the appropriate action and
returns a message to the user indicating the action taken.
If a start request is invoked for a table that is already started, no action is taken.
If a stop request is made for a table that is already stopped, no action is taken.
If monitoring is successfully stopped or started for a table, a log message is also written to stdlog.
Note: When the Monitor is paused for a table, all CA SDM processes that cache data from
these tables may become out of date and no provision is made to update this cache.
02-Aug-2016 277/403
CA Service Management - 14.1
For example, BOPLGIN caches Contact records (from the ca_contact and usp_contact tables) and this
cache would not be updated if the Monitor was paused for the ca_contact table during the time
external updates were loaded into the database. In the BOPLGIN case this will have little
consequence because the essential Contact attributes cached in BOPLGIN are taken from the
usp_contact table and not the ca_contact table.
Note: When the Monitor is paused for a table, Web Users will not be able to see changes in
the table while viewing a detail form that were made externally while the Monitor was
paused.
02-Aug-2016 278/403
CA Service Management - 14.1
List/Query Methods
This article contains the following topics:
doSelect (see page 279)
doQuery (see page 281)
getListValues (see page 282)
freeListHandles (see page 283)
getRelatedList (see page 283)
getRelatedListValues (see page 284)
getPendingChangeTaskListForContact (see page 285)
getPendingIssueTaskListForContact (see page 285)
getNotificationsForContact (see page 286)
Two paradigms are available for working with lists. One paradigm uses a list handle for referring to
and making queries on a server-side list and the other simply performs a SQL-like select.
If you need to maintain reference to a static list, use the methods that return list handles. These
methods are especially useful when working with very large lists. For example, your application may
need to perform operations using the entire table of 10,000 Contacts. Downloading values for all
10,000 at once could result in an unacceptable performance lag (this condition is actually prevented
by the system -- see Where Clauses). With a list handle, however, you can select a range of rows
upon which to query.
The primary drawback to using a list handle is the extra method calls it requires. At least two or three
calls are necessary, as indicated by the following:
You need to balance the amount of remote method calls versus the expected amount of data
returned.
Note: CA SDM restricts the amount of data that can be returned from any one list. For
more information, see Where Clauses.
doSelect
The following parameters apply to the doSelect method:
02-Aug-2016 279/403
CA Service Management - 14.1
Description
Performs an SQL-like select on a specified object table. Supply one or more attributes you want
fetched from the objects that match the supplied where clause.
Returns
<UDSObjectList>
<UDSObject>
<Handle>
<Attributes>
<AttributeNameA>
<AttributeValueA0>
<AttributeValueA1>
<AttributeNameB>
<AttributeValueB0>
...
02-Aug-2016 280/403
CA Service Management - 14.1
<UDSObjectList>
<UDSObject>
<Handle>cnt:555A043EDDB36D4F97524F2496B35E75</Handle>
<Attributes>
<AttributeName>last_name</AttributeName>
<AttributeValue>Johnson</AttributeValue>
<AttributeName>first_name</AttributeName>
<AttributeValue>Carol</AttributeValue>
</Attributes>
</UDSObject>
<UDSObject>
<Handle>cnt:555A043EDDB36D4F97524F2496B35E76</Handle>
<Attributes>
<AttributeName>last_name</AttributeName>
<AttributeValue>Jones</AttributeValue>
<AttributeName>first_name</AttributeName>
<AttributeValue>Ron</AttributeValue>
</Attributes>
</UDSObject>
</UDSObjectList>
doQuery
The following parameters apply to the doQuery method:
Description
Performs an SQL-like select for the specified object type. It also returns a list handle that points to a
list of the rows returned from the query, where each row represents a CA SDM object that matched
the supplied where clause. The caller can fetch values for the list rows using getListValues ().
Note: For more information about where clauses, see Where Clauses.
Important! The object list is stored on the CA SDM server and consumes system resources.
The caller is responsible for freeing the list with freeListHandles(). Leaving a list in memory
may increase memory for the process beyond the 2GB limit, resulting in memory leaks and
can cause system failure.
Lists created with this function are homogenous, meaning the objects are all the same type, and they
02-Aug-2016 281/403
CA Service Management - 14.1
Lists created with this function are homogenous, meaning the objects are all the same type, and they
are static, meaning the list never changes even if a data change to an object excludes it from the
initial where clause.
Returns
getListValues
The following parameters apply to the getListValues method:
Description
Returns
02-Aug-2016 282/403
CA Service Management - 14.1
freeListHandles
The following parameters apply to the freeListHandles method:
Description
Frees the server-side resources for a list and invalidates the list handles. This method should be called
whenever a list reference is no longer needed.
Returns
Nothing.
getRelatedList
The following parameters apply to the getRelatedList method:
Description
Returns a list handle for list (QREL or BREL) attribute of an object. For example, the request object
has a related list named children, which is a list of its child requests. The Requests Activity Log
(act_log or act_log_all) is another example.
To retrieve information about an objects list attributes, refer to the object schema (majic)
documentation or use getObjectTypeInformation().
Returns
The following:
02-Aug-2016 283/403
CA Service Management - 14.1
The following:
getRelatedListValues
The following parameters apply to the getRelatedListValues method:
Description
Returns values for lists related to a specific object. The lists must be defined as a QREL or BREL. Use
the LREL methods to query LREL types.
For example, the request object has a related list named children, that is a list of its child requests.
This method is a list handle-free alternative to getRelatedList(). The return format is similar to
getListValues(), as indicated by the following:
<numRowsFound>
< UDSObjectList >
<UDSObject>
<Handle>
<AttributeName0>
<AttributeName1>
You can retrieve information for object list attributes using object schema (majic). An alternative
method is to use getObjectTypeInformation().
Returns
02-Aug-2016 284/403
CA Service Management - 14.1
Returns
getPendingChangeTaskListForContact
The following parameters apply to the getPendingChangeTaskListForContact method:
Description
Returns a list handle representing all the pending change order workflow tasks assigned to a
contact. A pending task is an active workflow task with a status that permits task updates.
Returns
The following:
getPendingIssueTaskListForContact
The following parameters apply to the getPendingIssueTaskListForContact method:
Description
02-Aug-2016 285/403
CA Service Management - 14.1
Description
Returns a list handle representing all the pending Issue tasks assigned to a contact. A pending
task is an active task with a status that permits task updates.
Returns
The following:
getNotificationsForContact
The following parameters apply to the getNotificationsForContact method:
Description
You can query on a specific status for the notifications with the queryStatus field, which is useful for
returning, for example, only non-cleared messages. The possible queryStatus values are as follows:
Returns
The following:
02-Aug-2016 286/403
CA Service Management - 14.1
It is possible for a client site to enhance the asset object using extensions. Asset extensions are
separate tables that hold extra attribute information for an asset. The extension table is linked to a
particular asset by using the asset ID as a foreign key. CA SDM Web Services ships two predefined
extensions, Computer and Software. For more information, read the text executed by the following
command:
/bopcfg/majic/assetx.maj
The assets family attribute determines if the asset has an extension. Setting the Class attribute
generally sets the family at asset creation time. To determine if an asset has an extension, query the
extension_name attribute of the assets family (for example, family.extension_name).
To retrieve values from an extension object, query it like any other object by using the following
method:
getObjectValues()
To get the handle for a particular extension object, use the following method:
getAssetExtensionInformation()
Update an extension object like you would any other object by using the following method:
updateObject()
We do not recommend that you create your own extension objects. One is created for you, if
needed, when createAsset() is called. Because of this automatic creation, we recommend that you
only use createAsset() to create asset objects.
Note: If you are using the ITIL methodology, remember that Asset and Configuration Item
are interchangeable in this context.
createAsset
The following parameters apply to the createAsset method:
02-Aug-2016 287/403
CA Service Management - 14.1
Description
Describes the recommend method for creating an asset. If you intend to create an asset with an
extension, be sure to set the Asset Class attribute in the attrVals section.
Note: If you are using the ITIL methodology, use this method to create a Configuration
Item.
Returns
A <UDSObject> element containing the handle for the new object, with attribute values specified in
the attributes parameter. If the attributes parameter is empty, all attribute values are returned (see
page 192). List and LREL types are also returned, but as empty elements.
02-Aug-2016 288/403
CA Service Management - 14.1
getAssetExtensionInformation
The following parameters apply to the getAssetExtensionInformation method:
Description
Returns extension information for an asset. If the asset does not have an extension, nothing is
returned.
An asset has an extension if a value exists for its family.extension_name property. This property is
empty if the asset does not have an extension.
Returns
The following elements return (see page 192)with empty values when the asset does not have an
extension:
addAssetLog
The following parameters apply to the addAssetLog method:
02-Aug-2016 289/403
CA Service Management - 14.1
Description
Adds a new log entry for an asset. The logs author is the user associated with the SID.
Returns
Nothing.
createAssetParentChildRelationship
The following parameters apply to the createAssetParentChildRelationship method:
Description
Makes assetParent a parent of assetHandle. Web Services creates a separate object (the hier object,
which is the Assignment table) for parent-child relationships between assets. These are stored in
related lists, child_hier and parent_hier, in the Asset (nr) object.
Returns
02-Aug-2016 290/403
CA Service Management - 14.1
createIssue
The following parameters apply to the createIssue method:
Description
02-Aug-2016 291/403
CA Service Management - 14.1
Creates a CA SDM Issue (iss) object. For more information about creating an Issue object with
properties, see createRequest().
Note: You must use this function to create a Issue; do not use createObject().
Returns
Returns the new object handle, along with all of its attribute values. List and LREL types are also
returned, but as empty elements.
createRequest
The following parameters apply to the createRequest method:
02-Aug-2016 292/403
CA Service Management - 14.1
Description
Creates a CA SDM Request (cr) object. You must use this function to create a Request; do not use
createObject().
propertyValues is a list of values for each Property object that will be attached to the new Request.
The Properties that are attached are determined by the new Requests category attribute value. All
properties created from the CA SDM Web Services interface will have a default value (for more
information, see Categories and Properties), which is important because a Request will not save until
all of its Properties marked required have a value.
You may override the default by supplying values for any properties that will be attached when the
Request is created. You must supply this information before the Request is created, since
createRequest() attempts to back-store the object you most recently create. Use
getPropertyInfoForCategory() to get a list of properties for a specific Category. This function returns
the properties in order of their sequence attribute, which is the expected order of the
propertyValues array. For example, if the sequences and symbols of the properties are as follows:
The propertyValues array, depending on the programming language, may appear as follows:
If you do not set the Request category or do not want to set any Property values, pass an empty
string for propertyValues.
If you do not want to rely on the default property values, the following is the suggested order for
creating a new Request (or Issue or Change Order):
1. Retrieve a list of Categories/Areas. The object name for Request Area is pcat.
2. Call getPropertyInfoForCategory() and examine the list of properties for the category of the
new Request/Issue/Change.
3. Create a value array for each of the properties returned. This is identified by the
propertyValues parameter for the create operation.
As an alternative to the previous procedure, you can retrieve the list of properties using
getRelatedListValues() after createRequest() returns. Properties are stored in the properties list for a
Request.
Depending upon the application, it may be faster to at least cache the list of Categories, since this
02-Aug-2016 293/403
CA Service Management - 14.1
Depending upon the application, it may be faster to at least cache the list of Categories, since this
data does not change often at many client sites.
Note: By default, this method creates a Request. If you are using the ITIL methodology, you
need to set the type attribute in the attrVals array to define whether you are creating an
Incident or a Problem ticket. For more information about ITIL procedures, see ITIL
Methodology (https://docops.ca.com/display/CASM1401/ITIL+Methodology).
Returns
Returns the new objects handle with all of its attribute values. List and LREL types are also returned,
but as empty elements.
createChangeOrder
The following parameters apply to the createChangeOrder method:
02-Aug-2016 294/403
CA Service Management - 14.1
Description
Creates a CA SDM Change Order (chg) object. You must use this function to create a change order
(see page 292); do not use createObject().
Returns
The new object handle with all of its attribute values. List and LREL types are also returned (see page
192), but as empty elements.
createActivityLog
The following parameters apply to the createActivityLog method:
02-Aug-2016 295/403
CA Service Management - 14.1
Description
Creates an activity log for a specified request, issue or change order. This method corresponds to,
Activities - Log Comment/Research/Callback on a Change/Request/Issue detail in the CA SDM
interface. LogType is the code attribute for the activity type of the new log. The most common codes
are as follows:
CB (Callback)
RS (Research)
The CA SDM Administrative Client also shows the code values. To access the code values, select from
the Main Menu Administration, then select Notification, Activity Notifications.
Returns
transfer
The following parameters apply to the transfer method:
02-Aug-2016 296/403
CA Service Management - 14.1
Description
Performs a transfer activity on an Issue, Request or Change Order. This method corresponds to the
Activities -- Transfer command in the CA SDM interface. This method generates an activity log and
optionally sets a new assignee, group, or organization.
The assignee, group or organization is not updated unless one or more of the corresponding
setAssignee/setGroup/setOrganization parameters is set to true.
If the companion parameter is false, then transfer will not attempt to update the field, even if a value
is passed for that field. For example, if setAssignee is passed as false, transfer will not update the
assignee even if newAssignee specifies a value. If the setXXXX parameter is true, then the field is
updated. Pass the empty string to set a field to empty/null.
Returns
One or more handles to the activity log objects created. The returns are under a parent element
named <Logs>.
escalate
The following parameters apply to the escalate method:
02-Aug-2016 297/403
CA Service Management - 14.1
Description
Performs an escalate activity on an Issue, Request or Change Order. This method generates an
activity log and optionally sets a new assignee, group, priority and/or organization.
The assignee, group, or organization is not updated unless one or more of the corresponding
setAssignee/setGroup/setOrganization parameters is set to true. If the companion parameter is false,
then escalate will not attempt to update the field, even if a value is passed for that field. For example,
if setAssignee is passed as false, escalate will not update the assignee even if newAssignee specifies a
value. If the setXXXX parameter is true, then the field is updated. Pass the empty string to set a field
to empty/null.
Returns
changeStatus
The following parameters apply to the changeStatus method:
02-Aug-2016 298/403
CA Service Management - 14.1
Description
Performs a status change activity on an issue, request, or change order. This method generates an
activity log and optionally sets the status value. It corresponds to the Activites -- Update Status
command in the CA SDM interface.
Returns
getPropertyInfoForCategory
The following parameters apply to the getPropertyInfoForCategory method:
Description
Information about Properties for the specified category. This method is used to help pre-populate
Request/Issue/Change Order properties on insert operations with user-defined data.
02-Aug-2016 299/403
CA Service Management - 14.1
Depending on the category, this method queries either the prptpl or the cr_prptpl object types.
Both types are nearly identical. The suggested attributes to fetch are sequence, label, description
and required.
Returns
logComment
The following parameters apply to the logComment method:
Description
Returns
Nothing.
02-Aug-2016 300/403
CA Service Management - 14.1
notifyContacts Method
This article contains the following topics:
clearNotification (see page 301)
Description
Sends a notification to one or more contacts. This is equivalent to the Manual Notify activity on
requests, issues, and change orders.
Returns
clearNotification
The following parameters apply to the clearNotification method:
02-Aug-2016 301/403
CA Service Management - 14.1
Description
Returns
02-Aug-2016 302/403
CA Service Management - 14.1
attachChangeToRequest Method
This article contains the following topics:
detachChangeFromRequest (see page 304)
Description
Attaches a new or existing change order to a request. It corresponds with Activities -- New Change
Request or Activities -- Attach to Existing Request on a Request detail in the CA SDM interface.
To create a new change order, pass the empty string in changeHandle. The system will create a new
change order with values initialized from the request, including the changes Requestor, Affected End
User, Description, and Priority (you can see this effect in the CA SDM interface). You can override
these or set additional values with changeAttrVals, which is a name-value array similar to what is
passed for createObject().
To attach an existing change order, specify a handle in the changeHandle parameter. In this case,
changeAttrVals is ignored.
If a new change order is created, description is used on the new change orders activity log. If an
existing change is attached, description is used on the requests activity log.
If the request already has an attached change order, the following error is returned:
UDS_CREATION_ERROR
Note: This method works exactly the same for the ITIL methodology -- simply verify that
you are passing the appropriate handle of an ITIL Incident or Problem to the method.
Returns
02-Aug-2016 303/403
CA Service Management - 14.1
Returns
detachChangeFromRequest
The following parameters apply to the detachChangeFromRequest method:
Description
Detaches a change order from a request. This method corresponds with Activities -- Detach Change
Order on the CA SDM client. The change order is not deleted from the system.
Returns
02-Aug-2016 304/403
CA Service Management - 14.1
createTicket Method
This article contains the following topics:
createQuickTicket (see page 306)
closeTicket (see page 307)
Description
02-Aug-2016 305/403
CA Service Management - 14.1
Creates a ticket based on the rules defined in both the Service Aware Policy and the specified
Problem Type. The Problem Type specifies the type of ticket created by a Request/Change/Issue
template. The supplied description is copied in and the user is set from the access policy proxy
contact.
If input problem_type does not exist, the policy default problem type is used. The problem type also
defines how to handle duplicate ticket creation, and additional returned data.
Returns
Returns the new ticket handle, ticket number, and the user-specified return data defined in the
problem type that is used to create the ticket.
createQuickTicket
The following parameters apply to the createQuickTicket method:
02-Aug-2016 306/403
CA Service Management - 14.1
newTicketN String String Holder object for capturing returned data. See the XML Element Return
umber Holder list on this page for details.
Description
Creates a ticket based on the preferred document type of the user represented by customerHandle.
Contact access rights are determined by an Access Type record, which also sets the contact preferred
document type (Request, Incident, Problem, Issue or Change Order). If a contact document type is
Issue, this method will create an Issue; if the document type is Request, a Request is created, and so
on. The contact represented by customerHandle is used to set the end user/customer field of the
new ticket. The ticket description is set to the input description value.
Returns
Returns the new ticket handle, ticket number, and a brief representation of the new ticket in
<UDSObject> format.
closeTicket
The following parameters apply to the closeTicket method:
Description
02-Aug-2016 307/403
CA Service Management - 14.1
Sets the status of the ticket to Closed and adds an activity log with the input description.
Returns
The handle to the activity log object created. It provides the same return as the changeStatus()
method.
02-Aug-2016 308/403
CA Service Management - 14.1
addMemberToGroup
The following parameters apply to the addMemberToGroup method:
Description
Returns
Nothing.
removeMemberFromGroup
The following parameters apply to the remove MemberFromGroup method:
Description
Removes a contact from a group. Nothing happens if the contact is not a member.
Returns
Nothing.
02-Aug-2016 309/403
CA Service Management - 14.1
Nothing.
getGroupMemberListValues
The following parameters apply to the getGroupMemberListValues method:
Description
Functions similarly to getListValues(), except that it queries the systems group and member
relationships. The system uses a special Group Member (grpmem) object for each group/member
relationship. The CA SDM system administers grpmem objects behind the scenes (you do not
manipulate them directly), and they are essential for certain queries.
The grpmem object simply contains two pointers, one to a Contact and the other to a Group, which in
itself is a Contact object. The attribute names are member and group, respectively. Because these
are pointers, you must use dot-notation to form a query as normal. For example, to find all Contacts
with a last name beginning with B and in a group with the name, Seattle, you would use the
following:
It is important to note that this method can retrieve values from all members and groups, not just a
single group. To simply get information about all the members of a specific group or member, just
specify a handle in the where clause. For example, the following would retrieve values from a specific
group:
group.id = U'555A043EDDB36D4F97524F2496B35E75'
grpmem object contains two pointer attributes, one is to member and the other is to group
02-Aug-2016 310/403
CA Service Management - 14.1
The grpmem method actually queries the grpmem object table, thereby returning an object
representing a relationship between two contacts. Therefore, the attribute values you want to fetch
in attributes must use dot-notation from the grpmem object. To fetch values from the member, all
your attribute names should be of the form, member.ATTRNAME, as illustrated by the following
example:
'member.last_name'
Note: For an example of efficient querying of groups and members, see Where Clauses.
Returns
Automatically returns no handles. The <Handle> element in the return is always empty. To request
the member or group handle for each row, use one of the following in the attributes parameter
described in the table.
member.persistent_id
group.persistent_id
02-Aug-2016 311/403
CA Service Management - 14.1
login
The following parameters apply to the login method:
Description
Login validates a user with CA SDM login validation and returns a unique session ID that is required
for most other web method calls. This key should be freed with logout(). A SID may expire if it is not
used before a time out elapses.
The username/password is validated exactly the same as the CA SDM Web client; the contacts
Access Type specifies the validation method. The default access policy will be applied to control and
manage all subsequent accesses after a successful call of this function. The login user (not proxy
contact specified in the default policy) is then responsible for subsequent web service activities. All
function group security and data partition are enforced for the login user.
Returns
loginService
The following parameters apply to the loginService method:
02-Aug-2016 312/403
CA Service Management - 14.1
Description
Lets users log in with a conventional username/password authentication scheme where if valid, the
system returns a unique session ID. This key should be freed with logout(). A SID may expire if it is not
used before a timeout elapses.
User authentication is performed on the username and password while access control is applied
based on the policy specified. The authentication is performed as described in login(). Empty policy
will allow default policy to be applied automatically. The login user (not the proxy contact specified in
the policy) is responsible for subsequent web service activities. All function group security and data
partitions are enforced for the login user.
Returns
impersonate
The following parameters apply to the impersonate method:
Description
Lets an administrator switch the user responsible for all web services activities in a current web
services session without additional user authentication. Invoking this method is allowed only if the
current web services session is started by using the PKI access authentication scheme and the access
policy is defined to allow impersonation.
The Access Type of the user to be impersonated is checked against the Access Type of the proxy user
of the policy used in the current web services session. If the access_level of the new users access
type is less than or equal to the grant_level of the proxy users access type, this method will replace
the current user with the new user. A new web services session starts while the old session ends. A
new SID is then returned. In addition, the new user is given the responsibility for all subsequent
02-Aug-2016 313/403
CA Service Management - 14.1
new SID is then returned. In addition, the new user is given the responsibility for all subsequent
activities initiated in this new session. The function group security and data partition are enforced for
the new user.
Returns
logout
The following parameter applies to the logout method:
Description
Returns
Nothing.
loginWithArtifact
The following parameters apply to the loginWithArtifact method:
Description
Performs the user authentication by the provided CA EEM Artifact and opens a session with the back-
end server. The Artifact can be used only once for authentication. The returned session ID (SID) can
be used for subsequent web services method invocations. The Artifact can be acquired directly from
CA EEM or can be obtained by the getArtifact method.
Note: Service Desk needs to be integrated with CA EEM to perform this operation.
02-Aug-2016 314/403
CA Service Management - 14.1
The SID should be freed with logout(). A SID may expire if it is not used before a timeout elapses.
Returns
02-Aug-2016 315/403
CA Service Management - 14.1
getPolicyInfo
This article contains the following topics:
getTaskListValues (see page 317)
getValidTaskTransitions (see page 317)
getValidTransitions (see page 318)
getDependentAttrControls (see page 319)
getHandleForUserid (see page 320)
getAccessTypeForContact (see page 320)
getContact (see page 321)
findContacts (see page 322)
Description
Returns information about the access policy that is controlling and managing the current CA SDM
Web Services session.
Returns
<SAPolicy>
<Name> name of policy </Name>
<Code> policy code </Code>
<ContactName> policy proxy contact's combo name </ContactName>
<ContactHandle> handle of policy's contact </ContactHandle>
<Access>
<TicketCreation> limitation </TicketCreation>
<ObjectCreation> limitation </ObjectCreation>
<ObjectUpdate> limitation </ObjectUpdate>
<Attachments> limitation </Attachments>
<Queries> limitation </Queries>
<Knowledge> limitation </Knowledge>
</Access>
02-Aug-2016 316/403
CA Service Management - 14.1
getTaskListValues
The following parameters apply to the getTaskListValues method:
Description
Returns values for all the tasks associated with the specified issue or change order.
Note: This is a convenience method. The same list could be obtained using doSelect().
Returns
getValidTaskTransitions
The following parameters apply to the getValidTaskTransitions method:
02-Aug-2016 317/403
CA Service Management - 14.1
Description
Returns all of the possible values for the status attribute of a particular task. The Status codes to
which a task may be set depend upon several factors, such as the current status of the task, and
restrictions set by the administrator.
Note: taskHandle can be a task owned by either a change order or an issue. The objects
returned are Task Status (tskstat) objects used for both types of tasks.
Returns
getValidTransitions
The getValidTransitions method lets you list the transitions for a ticket.
02-Aug-2016 318/403
CA Service Management - 14.1
Description
Returns all of the possible transition values for the status of a ticket. Administrators can configure
valid status transitions for all ticket types.
Returns
getDependentAttrControls
The getDependentAttrControls method lets you list the locked and required attributes for the Status
record (either the tickets current status or any status record). At this time, the only attribute
supported is the Status attribute. If the attrVals parameter is passed as empty, the method returns
the dependent attributes for the current status of the ticket (assuming that a valid handle is used).
Otherwise, you can request the dependent attributes for any status record by using the attrVals
parameter.
For the second item, specify the code of the status record, for example, WIP.
Description
Returns all of the possible dependent attribute controls for the Status field of a ticket. Administrators
can configure attribute restrictions.
Returns zero or more attribute control objects depending on the values specified. If zero objects are
02-Aug-2016 319/403
CA Service Management - 14.1
Returns zero or more attribute control objects depending on the values specified. If zero objects are
returned, there are no attribute restrictions on the object.
Returns
The following:
getHandleForUserid
The following parameters apply to the getHandleForUserid method:
Description
Returns
getAccessTypeForContact
The following parameters apply to the getAccessTypeForContact method:
Description
02-Aug-2016 320/403
CA Service Management - 14.1
Every Contact is assigned an Access Type object, which defines a Contacts permissions and security.
Note the access_type field on a Contact is not required. To accommodate this, a single Access Type is
marked as the default for Contacts who do not have an object specifically assigned.
This method returns the Access Type directly assigned to a Contact (that is, the information to which
the access_type field points in the Contact record) or it returns the default. Typical value methods,
such as getObjectValues() or getListValues(), may not return the correct Access type; therefore, these
are not the accurate methods for retrieving the Contacts Access.
Returns
getContact
The following parameter applies to the getContact method:
Description
Returns
A <UDSObject> node with a <UDSObject> node describing a contact with some of the following child
<Attributes> nodes:
02-Aug-2016 321/403
CA Service Management - 14.1
findContacts
The following parameters apply to the findContacts method:
02-Aug-2016 322/403
CA Service Management - 14.1
Description
Returns
A <UDSObjectList> node with zero or more <UDSObject> nodes describing contacts with the
following <Attributes> child nodes:
02-Aug-2016 323/403
CA Service Management - 14.1
loginServiceManaged Method
This article contains the following topics:
Implement loginServiceManaged in Java (see page 324)
Generate Stub Classes with WSDL2Java (see page 326)
Description
Performs the user authentication by locating the policy through the plain text policy code, finding the
policyholders public key associated with the policy, decrypting the encrypted policy code, matching
decrypted content with the policy code, and finally, opening a session with a back-end server. The
returned session ID (SID) can be used for subsequent web services method invocations. Proxy contact
specified in the policy is responsible for all subsequent web service activities initiated. All function
group security and data partition are enforced for the proxy contact defined in the policy.
It is also important to note that the encrypted_policy parameter is in the BASE64 text format, and it is
necessary to perform proper conversion from the binary format. The SID should be freed with
logout(). A SID may expire if it is not used before a timeout elapses.
Returns
In the following example, the login process completes using the CA SDM Certificate and then
performs two common web services calls. The getBopsid() web services method call allows you to
obtain a token that is linked to a specific user. This token can be used to login to the CA SDM web
interface as the linked user without being prompted for a password. This allows seamless integration
to be enabled between different applications.
02-Aug-2016 324/403
CA Service Management - 14.1
Important! The generated BOPSID token expires after 30 seconds, so it must be used
promptly.
Important! There is a known issue when using the 1.4 version of the AXIS tool. For more information,
see the Release Notes.
1. Generate the stub classes with AIXS Tool WSDL2Java. For more information, see the
Generating Stub Classes with AXIS Tool WSDL2Java section from the
PKI_loginServiceManaged_JAVA_steps file. Find the file in the following location:
$NX_ROOT/samples/sdk/websvc/java/test1_pki
Note: This command will also add the Certificate's public key to the field pub_key
field (public_key attribute) in the sapolicy table/object.
6. Click DEFAULT.
The SOAP Web Services Access Policy Detail page opens.
7. Complete the Proxy Contact field (in this example, ServiceDesk) and confirm that the
DEFAULT policy record Has Key field displays "Yes."
8. Copy DEFAULT.p12 (from the directory where command pdm_pki is executed), the JSP file
called pkilogin.jsp and the HTML file called pkilogin.htm (from the $NX_ROOT/samples/sdk
/websvc/java/test1_pki directory) to the following directory:
$NX_ROOT/bopcfg/www/CATALINA_BASE/webapps/axis
9. Open the HTML form (from the axis directory). For example, http://localhost:8080/axis
/pkilogin.htm
Complete the appropriate fields.
Note: The Directory field identifies the location of the Certificate file. Modify the
02-Aug-2016 325/403
9.
Note: The Directory field identifies the location of the Certificate file. Modify the
path to the correct location.
Important! Click this immediately! The BOPSID has a limited life token of about 30
seconds.
Note: In order to use the loginServiceManaged method for a Java client program running
on AIX, you may need to replace a pair of security policy files within your JAVA_HOME. Go
to http://www.ibm.com (http://www.ibm.com) and search for "developerworks java
technology security information AIX". In the "developerWorks : Java technology : Security"
document, follow the link to "IBM SDK Policy files". Download the unrestricted policy files,
local_policy.jar and US_export_policy.jar. Use these files to replace the original files in your
JAVA_HOME/lib/security directory."
3. Search for javac.exe on all of the server's local drives. If you locate the file, make note of its
location because you will need to reference it in a batch file.
Note: If you do not locate javac.exe, go to Http://java.sun.com and search for Java
J2SE SDK to download. This may require a reboot.
4. Build a batch file called build_wsdl.bat and place it in the following directory:
02-Aug-2016 326/403
CA Service Management - 14.1
4. Build a batch file called build_wsdl.bat and place it in the following directory:
$NX_ROOT\bopcfg\www\CATALINA_BASE\webapps\axis
5. Use the following code for the batch file, updating the bold items as appropriate:
@echo off
::##################################################################
::# Simple bat file to Build Unicenter Service Desk Version 11.0 USD Stub classes
::# Use it to create the required USD Unicenter Service Desk Version 11.0 Java Web
Services classes
::#
::# Usage: build_wsdl
::#################################################################
@REM Update this with the PATH to USD NX_ROOT location
@SET USD_SHORT_PATH=C:\Progra~1/CA/Servic~1/
@REM Update this with the PATH to the JDK javac.exe compiler
@REM (this is used in the 2nd part of this file)
@SET JAVAC_EXE="C:\j2sdk1.4.2_13\bin\javac.exe"
@REM Update this to the path to the USD <USDK> <rellevel> NX_ROOT/java/lib location
@SET USD_TOMCAT=%USD_SHORT_PATH%java/lib
@SET CP=%USD_TOMCAT%/axis.jar;%USD_TOMCAT%/commons-discovery.jar;%USD_TOMCAT%/commons-
logging.jar;%USD_TOMCAT%/jaxrpc.jar;%USD_TOMCAT%/saaj.jar;%USD_TOMCAT%/log4j-1.2.8.
jar;%USD_TOMCAT%/xml-apis.jar;%USD_TOMCAT%/xercesImpl.jar;%USD_TOMCAT%/wsdl4j.jar;%
USD_TOMCAT%/axis-ant.jar
@REM Please specify the path to java.exe file below
@REM You can obtain this by reviewing the NX.env file use the @NX_JRE_INSTALL_DUR
@REM variable to derive this info
@SET JAVA_PATH=C:\Program Files(x86)\CA\SC\JRE\1.6.0_30
@SET JAVA_EXE="%JAVA_PATH%\bin\java.exe"
@cd WEB-INF\classes
%JAVA_EXE% -cp %CP% org.apache.axis.wsdl.WSDL2Java http://localhost:8080/axis/services
/USD_Unicenter Service Desk Version 11.0_WebService?wsdl
@cd ..\..
::##################################################################
::# This next section compiles the Service Desk stub code
::# Once complete, you should recycle tomcat with the following
::# commands or by recycling Service Desk:
::# pdm_tomcat_nxd -c STOP
::# pdm_tomcat_nxd -c START
::##################################################################
@SET CP=".\classes;%CP%"
@SET STUBS_DIR=classes\com\ca\www\UnicenterServicePlus\ServiceDesk
@cd WEB-INF
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\ArrayOfInt.java
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\ArrayOfString.java
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\ListResult.java
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\USD_WebService.java
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\USD_WebServiceLocator.
java
%JAVAC_EXE% -classpath %CP% -deprecation -d classes %STUBS_DIR%\USD_WebServiceSoap.
java
02-Aug-2016 327/403
CA Service Management - 14.1
After running the batch file from the command prompt, the stub classes are in place and compiled.
pdm_tomcat_nxd -c STOP
pdm_tomcat_nxd -c START
02-Aug-2016 328/403
CA Service Management - 14.1
You can author, debug, test, and upload automated tasks in your support environment using the
Automated Tasks Editor. You can create automated tasks by customizing default templates and
components. Modifying these defaults requires minimal or no coding, but if any errors occur, the
application displays the line of code reporting the error.
The editor uses web services to access automated tasks depending on provided credentials during CA
SDM authentication. An Administrator can permit analysts to access the server with the Automated
Task Editor, and allow analysts to modify and upload public or tenant-specific scripts. The editor
provides dialogs to edit the basic automated task settings, security settings, and dependencies on
libraries and static content items. The automated task framework implements three objects used by
the automated task author: Task, Step, and Logger.
Create and customize steps based on automated task step templates provided by CA
Technologies.
Customize an automated task by editing the step template properties in a property sheet, or by
editing the code directly. The code editor supports syntax highlighting and automatic code
completion functionality while typing.
An Administrator can run reports that show whether automated tasks were successful or not. The
definition of success varies considerably depending on what the automated task is trying to do.
CA SDM provides the Functions.SetExecutionState() function call that enables the task to declare
its execution state as being success, fail, or not setting it at all. The automated task execution
state field filters the report.
Send emails to end users or to an external system using the CA SDM mail daemon.
Localize automated tasks by declaring all strings to localize as automated task step properties. You
can edit these step properties in the Automated Task Editor for each supported locale separately. The
values of these properties are accessed from automated task step script code using Step.
GetProperty() which returns the correct localized version of the specified property based on the
localization ID of the customer running the automated task.
02-Aug-2016 329/403
CA Service Management - 14.1
02-Aug-2016 330/403
CA Service Management - 14.1
CA SDM provides a framework which is a block of script code responsible for the code that deals with
presenting user interfaces and retrieving user input from user interface steps. The framework exists
so that you can do complex things with automated tasks, interface-related, using simple code, rather
than complex code that would otherwise be necessary. The framework includes two objects (Task
and Step). You can use these objects to interact with the framework and control how automated
tasks execute, including setting up and accessing the user interface.
Note: When running an automated task in the Automated Task Editor, the editor acts as both server
and client.
The following process describes what happens when you execute an automated task:
1. Use the framework to assemble the script code to execute together with the step code in the
automated task definition, and any dependent library code.
2. The server assembles and distributes the code to the end-user environments.
3. Both the end user and the analyst receive the entire assembled automated task.
Use Functions.SetAcquiredData() to store data (text), associated with a task execution. Support
Automation allows one such text field of any length to be stored for each execution of an automated
task. You can store data in one step and access it in a subsequent step as follows:
1. The server sends the initial state of this data storage to the client with the instruction to
execute a step.
2. At the end of the step, the client sends the persisted data state back to the server so the
server can send this data to whichever client is executing the next step.
3. An analyst user interface step can gather input from the analyst and store it.
4. The end-user user interface step can access the data that was supplied by the analyst.
02-Aug-2016 331/403
CA Service Management - 14.1
You create automated tasks by defining steps in an automated process. Automated tasks predefine
routines with specific actions on the end-user computer without the need for the analyst or end user
to do the process. Common routines include gathering telemetry information, diagnosing problems,
and implementing resolutions.
Task Settings
Specifies the title, description, dimensions of the step windows, HTML headers and footers, and a
CSS style sheet applied to the end-user interface.
Dependencies
Specifies the libraries and static content items that the task depends on, such as images or CSS
files.
Task Steps
Specifies the executed code for each step. You can author steps by selecting automated task step
templates and modify them to fit your needs.
Security Settings
Specifies the appropriate security settings to run the automated task on an end-user computer,
such as read/write permissions, registry privileges, and so on.
XSDF Files
Specifies automated task definitions saved to an XML schema in XSDF files (XML Script Definition
Format). The XSDF file contains all automated task settings, dependencies, security settings, and
step code information.
If the automated task is dependent on a particular library, the full script code of that library is
written to the XSDF file, not only the dependency information. Dependencies are also imported
when XSDF files are loaded into the Automated Task Editor or imported into CA SDM, unless a
later version of the same dependent library exists in the target environment. The same is true for
dependent static content. Script libraries can also be saved on their own to XSDF files for
distribution between systems.
02-Aug-2016 332/403
CA Service Management - 14.1
The editor lets you define CSS styles for all automated task elements. You can control the appearance
by using CSS Styles.
Note: If you use a custom CSS file, you can override the default values.
#header {
padding: 2px 8px;
font-size: 16pt;
font-weight: bold;
border-bottom: 2px solid green;
}
#title {
background-color: #eee;
padding: 2px 8px;
font-size: 12pt;
font-weight: bold;
border-bottom: 1px solid green;
}
#content {
padding: 8px;
}
#buttons {
background-color: #eee;
border-top: 1px solid green;
text-align: right;
padding: 2px 8px;
}
#buttons input {
font-family: Verdana;
font-size: 10pt;
}
#footer {
border-top: 2px solid green;
padding: 2px 8px;
font-size: 9pt;
}
The supplied HTML components declare a CSS Style for an HTML DIV that encloses the component.
This declaration allows all elements of the components to be styled through CSS.
The name of this style can usually be set through automated task step template properties for steps
that use these HTML components.
02-Aug-2016 333/403
CA Service Management - 14.1
Methods
Task Description
End() Ends the Task immediately.
GetNam Returns the value previously stored with the specified key.
edDataIt
em(key)
SetName Stores the value against the specified key. These values can be stored in one step and
dDataIte accessed in another using GetNamedDataItem(). The specified value can be JavaScript
m(key, primitive type (number, boolean, string) or an object or an array of objects. In VBScript,
value) only primitive types can be stored.
GetNext Returns a unique identifier that can be used for HTML DOM objects.
ElementI
d()
GetPage Returns the HTML DOM object corresponding to the specified ID.
BodyEle
mentByI
d(id)
Replace Returns a copy of the specified string with all instances of stored data items in the format
DataIte ${key} replaced by their stored values.
ms
(string)
CloseIE Closes the UI window if it is open.
Window(
)
Properties
Property Description
Title The title of the automated task.
HeaderHtml The HTML placed in the header section of the UI window.
FooterHtml The HTML placed in the footer section of the UI window.
Height The height, in pixels, of the UI window.
Width The width, in pixels, of the UI window.
NextStepIndex The index (0-based) of the next step to be executed.
02-Aug-2016 334/403
CA Service Management - 14.1
Methods
Properties
Prope Description
rty
Title The title of the step - displayed in the UI header section.
NextB The label for the "Next" button. Defaults to "Next".
utton
Label
NextB True to show the "Next" button. False to hide it.
utton
Visibl
e
Previ The label for the "Previous" button. Defaults to "Previous."
ousB
utton
Label
Previ True to show the "Previous" button. False to hide it.
ousB
utton
Visibl
e
Finish The label for the "Finish" button. Defaults to "Finish."
Butto
nLabe
l
True to show the "Finish" button. False to hide it.
02-Aug-2016 335/403
CA Service Management - 14.1
Finish
Butto
nVisib
le
Event When a UI event is raised (by calling raiseUIEvent() from HTML within the IE window) the
Data event handler function previously registered with RegisterEvenHandler() is invoked. The data
stored as the "tag" when the event handler was registered will be available as Step.EventData
when the handler is dispatched.
Example:
Methods
Logger Description
Object
Fatal(msg) Log the specified message if the current trace level is set at Fatal, Error, Warning, Info,
Debug, or Verbose.
Error(msg) Log the specified message if the current trace level is set at Error, Warning, Info, Debug,
or Verbose.
Warning Log the specified message if the current trace level is set at Warning, Info, Debug, or
(msg) Verbose.
Info(msg) Log the specified message if the current trace level is set at Info, Debug, or Verbose.
Debug Log the specified message if the current trace level is set at Debug or Verbose.
(msg)
Verbose Log the specified message if the current trace level is set at Verbose.
(msg)
Properties
Prope Description
rty
Level The current trace level. Set to one of the values in the TraceLevels enumeration (None, Fatal,
Error, Warning, Info, Debug, or Verbose).
02-Aug-2016 336/403
CA Service Management - 14.1
Global Functions
The following global functions are used in Support Automation procedures.
Function Description
AnyArrayToV Converts any array (VBScript or JavaScript) to a VBArray. Arrays in JavaScript are
BArray different objects to VBScript arrays so it is necessary to convert between them.
(array)
AnyArrayToJS Converts any array to JavaScript array.
Array(array)
CreateHashM Returns an object that can be used as a hashmap for storing arbitrary data (key/value
ap() pairs). The returned object implements the following methods:
Get(key) - Returns the value stored against the specified key.
Set(key,value) - Stores the value for the specified key.
GetAllKeys() - Returns an array of the keys.
Steps are end-user action steps or user interface steps that show either to the end user or analyst.
The automated task step templates are either end-user action, analyst interface, or end-user
interface templates. CA Technologies provides automated task step templates, both action and user
interface, to form the building blocks of tasks and enable you to create functional automated tasks
with minimal coding.
For steps that define properties, you are prompted to provide values for these properties when the
step is first created from the template. You can modify these values using the property sheet.
You can control the visibility of the buttons on the step footer using Step.NextButtonVisible, Step.
FinishButtonVisible, and Step.PreviousButtonVisible. When you set these properties to True, it makes
the button appear. If a button is shown, a handler must be implemented for it. You can add the
actual user interface controls to the page body using HTML components.
02-Aug-2016 337/403
CA Service Management - 14.1
HTML components let you write complex user interfaces without extensive HTML knowledge. Using
an HTML component, you can create and configure commonly used controls with minimal coding.
An example of an HTML component is a text input box. The following example combines a label
called PromptText and an HTML input box. If you want to prompt the customer or technician to
supply a user name for example, the user interface page is constructed in an OnLoad function as
follows:
Function OnLoad
Dim myInputBox
Set myInputBox = UI.MakeInputBox()
myInputBox.PromptText = "Please enter your name:"
Step.Controls.Add(myInputBox)
End Function
CA Technologies supplies samples, but you can also create custom HTML components. An HTML
component is a script object that implements a method called GetHtml. Here, for example, is the
implementation of that MakeInputBox() method call used in the previous example:
function InputBox() {
// public properties
this.PromptText = "";
this.CssClass = "UIInputBox";
this.InputMaxLength =50;
this.InputSize = 50;
// privileged methods
// (For example, publicly accessible with access to private props)
this.GetHtml = function () {
var inputHtml =
"<DIV class = '" + this.CssClass + "'>\n";
if(this.PromptText.length>0) {
inputHtml +=
"<SPAN class ='PromptText'>" + this.PromptText + "</SPAN>\n" +
"<BR>\n";
}
inputHtml +=
"<INPUT type = text class = 'InputText' id = '"+textboxId+
"' size = '"+this.InputSize+
"' maxlength='"+this.InputMaxLength+"'></INPUT>" +
02-Aug-2016 338/403
CA Service Management - 14.1
"<BR><BR>\n" +
"</DIV>\n";
return inputHtml;
}
this.GetUserInput = function() {
var textBox = Task.GetPageBodyElementById(textboxId);
if (textBox) {
return textBox.value;
}
else {
throw new Exception (Severity.Error,
"Could not read textbox value",
"Could not read textbox value");
}
}
}
return new InputBox();
This automated task library function defines a constructor for an object of type InputBox. The last line
of the function constructs an instance of the InputBox class and returns it.
Object definitions differ in JavaScript and VBScript. In VBScript, the class keyword is used to declare a
class. In JavaScript the function keyword declares the class, because in JavaScript functions are
objects. Both languages let the class have public and private member variables and methods. A full
description of how object syntax is handled in the two languages is beyond the scope of this chapter,
but the internet can provide examples and tutorials on this subject.
In the example above, the code declares the InputBox class with some public and private properties
and two public methods, GetHtml and GetUserInput.
The Framework calls GetHtml when rendering user interface steps. The InputBox control also exposes
GetUserInput which you can use to access the value that the end user enters into the text box. Each
HTML component can expose different methods for configuring it and accessing any user input
values.
The HTML coding is abstracted from you by these HTML components so that creating user interface
pages is simplified.
You can write your own HTML entirely for a particular automated task. In such a case, you have two
choices: Write a new HTML component for the case you require, or construct the HTML code in a
string variable and wrap it in a special HTML component called RawHTMLContainer as follows:
Function OnLoad
Dim myRawHtmlContainer, myHtml
myHtml = "<H1>Hello <B>World</B></H1>"
Set myRawHtmlContainer = UI.MakeRawHtmlContainer(myHtml)
Step.Controls.Add(myRawHtmlContainer)
End Function
02-Aug-2016 339/403
CA Service Management - 14.1
If end-user input is invalid, display an error message and refresh the page
HTML components that wrap input controls, such as the InputBox component, expose methods to
access the values supplied by the end user. In this case, the GeUserInput() function is exposed.
You can control the next step that the framework presents as follows:
Return True from the handler to present the default next step (currentStep+1 for
NextButtonHandler, currentStep-1 for PreviousButtonHandler, end the automated task for
FinishButtonHandler).
You can handle the Next button being clicked by supplying a NextButtonHandler. Because the
NextButtonHandler has to access the HTML component that was created in the OnLoad, the
declaration (Dim statement) of this variable is placed outside these functions. Thus, the entire step
code would look as follows:
Dim myInputBox
Function OnLoad
Set myInputBox = UI.MakeInputBox()
myInputBox.PromptText = "Please enter your name:"
Step.Controls.Add(myInputBox)
End Function
Function NextButtonHandler
Dim userInputValue
02-Aug-2016 340/403
CA Service Management - 14.1
userInputValue = myInputBox.GetUserInput()
02-Aug-2016 341/403
CA Service Management - 14.1
You can use the same script functionality that gathers specific data or impacts certain changes on a
remote machine in many various automated tasks. Support Automation provides the concept of
script library to package such reusable code. You use script libraries to help you reuse and maintain
code. These libraries contain functions written in JavaScript or VBScript that automated tasks can call.
The automatic code completion feature of the Automated Task Editor provides a function description
text and argument descriptions when you edit automated task step script code.
You can create your own libraries. The Automated Task Editor displays defined JavaScript and
VBScript libraries on the left pane. Script libraries let you do the following:
Export and Import from XSDF files or directly from the Support Automation server
In JavaScript, you define classes by declaring a function that is actually the constructor for the class.
Public properties and methods are added to the class using the this keyword. You declare private
properties by using the var keyword. In JavaScript, you can declare a class inside a function definition.
In VBScript, class definitions are not permitted inside functions, however, you can provide the code
that forms the implementation of a given function. You create class definitions using one of the
following techniques:
Constructing the class definition code in a string and executing it with ExecuteGlobal.
Calling a second function and returning whatever it returns. End the function. Declare the class,
then the second function.
02-Aug-2016 342/403
CA Service Management - 14.1
The standard WSH components are used when you write automated tasks for an internal corporate
environment where the end-user computer state is known, and assumed that script blockers are not
present. You can use the functionality in the CA SDM Functions COM component to implement any
file system or registry activity for external environments (customers at home or on the public
Internet) when the organization that is providing support does not control the end-user computer
configuration.
WMI lets you access and modify the operating system. WMI is based upon SQL-style queries that
allow an automated task to query information from the operating system and then, using objects, to
manipulate that data. WMI is a powerful system and is often the preferred method for automated
tasks to carry out their purposes.
Example: Script fragment that enumerates the currently configured Operating System Services.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
02-Aug-2016 343/403
CA Service Management - 14.1
Select an image or text file to import and assign a globally unique identifier (GUID).
Use the Automated Task Editor to assign static content items to automated tasks.
When you assign the static content item, you associate the automated task and it is saved in the XSDF
with the task. The static content automatically deploys to the server when the dependent automated
task deploys.
Static content is stored in the Support Automation database on the server. A servlet provides access
to these images based on their ID. The Functions library call Functions.GetStaticContentItemRef()
returns the URL to that servlet, which takes the ID as a parameter. The Automated Task Editor
provides a toolbar button that brings up the Static Content Items dialog, which allows you to select
the desired item. When you click OK, the Functions.GetStaticContentItemRef() call is automatically
inserted into the code with the relevant ID.
Functions
The functions component is a collection of procedure calls that are used for the following:
Accessing the local file system and or registry without triggering antivirus script blocker programs
02-Aug-2016 344/403
CA Service Management - 14.1
Sending email
02-Aug-2016 345/403
CA Service Management - 14.1
The following Functions COM Object Methods are available for use in Support Automation
automated tasks.
Function Description
B64Encode (BSTR data, VARIANT Base64 encodes the specified data.
*varResult)
B64Decode (BSTR data, VARIANT Decodes the specified data.
*varResult)
CheckIfServerExists (BSTR URL, USHORT Makes a request on the specified server to determine if
port, VARIANT *varResult) it is accepting connections.
Eof (LONG fileno, VARIANT *varResult) Determines if there is unread data in the specified text
file
EscalateToLive (VARIANT *varResult) Escalates the customers session from Self-Serve to Live
Session
ExecuteRC (BSTR MethodName, BSTR Executes a RuleConduit call on the server allowing
ParamStr, int ParamCount, VARIANT arbitrary server methods to be executed.
*varResult)
ExecuteWaitAndCaptureStream (BSTR Executes the specified command and waits for the
strProg, int nStream, VARIANT *varResult) process to exit, capturing the output from the process
execution.
FileAddAttributes (BSTR szFilePath, LONG Call to add attributes (Read-Only, Compressed, Archived,
dwAttr, VARIANT *bvarResult) etc) to a file without changing attributes already there.
FileCloseTextFile (LONG fileno) Closes a text file previously opened with
FileCreateTextFile or FileOpenTextFile.
FileCopyTo (BSTR szSourceFilePath, BSTR Call FileCopyTo to copy a file from one place to another.
szDestFilePath, VARIANT_BOOL
bcanOverwrite, VARIANT *bvarResult)
FileCreateTextFile (BSTR szFilePath, BOOL Creates a new text file in the specified location returning
overwrite, VARIANT *varResult) a handle that can be used to interact with the file.
FileDelete (BSTR szFilePath, VARIANT Call to permanently delete a file.
*bvarResult)
FileExecute (BSTR szCommand, VARIANT Call to execute a file.
*bvarResult)
FileExecuteAndWait (BSTR szCommand, Call to execute a file and wait for it to exit.
LONG dwMilliseconds, VARIANT
*bvarResult)
FileExists (BSTR szFilePath, VARIANT Checks whether a file exists or not.
*bvarResult)
02-Aug-2016 346/403
CA Service Management - 14.1
02-Aug-2016 347/403
CA Service Management - 14.1
02-Aug-2016 348/403
CA Service Management - 14.1
RegCopyValue (BSTR szSourceRoot, BSTR Copy the contents of one key/value to another. The user
szSourceKey, BSTR szSourceValue, BSTR must have the ability to query keys for the root
szDestRoot, BSTR szDestKey, BSTR specified.
szDestValue, VARIANT *bvarResult)
RegCreateKey (BSTR szRootPath, BSTR Creates a key entry in the user's registry.
szKeyPath, VARIANT *bvarResult)
RegDeleteKey (BSTR szRootPath, BSTR Removes a key from the registry. The user must have the
szKeyPath, VARIANT *bvarResult) ability to remove keys from the root specified.
RegDeleteValue (BSTR szRootPath, BSTR Removes a key value from the registry. The user must
szKeyPath, BSTR szValueName, VARIANT have the ability to query keys for the root specified.
*bvarResult)
RegGetDWORD (BSTR szRootPath, BSTR Retrieves the a DWORD value from a specified key in the
szKeyPath, BSTR szValueName, VARIANT registry. The user must have the ability to query keys for
*dwvarResult) the root specified.
RegGetString (BSTR szRootPath, BSTR Retrieves a string value from a registry key. The user
szKeyPath, BSTR szValueName, VARIANT must have the ability to query keys for the root
*szvarResult) specified.
RegGetSubkeyByIndex (BSTR szRoot, BSTR Retrieves the name of a subkey based on its index. The
szKey, LONG idxSubkey, VARIANT user must have the ability to query keys for the root
*varResult) specified.
RegGetSubkeysCount (BSTR szRoot, BSTR Gets the number of keys underneath any given key. The
szKey, VARIANT *varResult) user must have the ability to query keys for the root
specified.
RegGetValueByIndex (BSTR szRoot, BSTR Retrieves a key value given its index. The user must have
szKey, LONG idxValue, VARIANT the ability to query keys for the root specified.
*varResult)
RegGetValuesCount (BSTR szRoot, BSTR Gets the number of values for a given key. The user must
szKey, VARIANT *varResult) have the ability to query keys for the root specified.
RegGetValueType (BSTR szRootPath, BSTR Finds out the type of value for a given Registry key. The
szKeyPath, BSTR szValueName, VARIANT user must have the ability to query keys for the root
*dwvarResult) specified.
RegKeyExists (BSTR szRootPath, BSTR Queries a key from the registry. The user must have the
szKeyPath, VARIANT *bvarResult) ability to query keys from the root specified.
RegMoveKey (BSTR szSourceRoot, BSTR Moves the entire contents of one key to another.
szSourceKey, BSTR szDestRoot, BSTR
szDestKey, VARIANT_BOOL bCanOverwrite,
VARIANT *varResult)
RegMoveValue (BSTR szSourceRoot, BSTR Moves the contents of one key value to another. The
szSourceKey, BSTR szSourceValue, BSTR user must have the ability to query keys for the root
szDestRoot, BSTR szDestKey, BSTR specified and write to the destination.
szDestValue, VARIANT *bvarResult)
RegRenameValue (BSTR szRootPath, BSTR Changes the name of a registry value. Note: The user
szKeyPath, BSTR szOldValueName, BSTR must have the ability to query keys for the root
szNewValueName, VARIANT *bvarResult) specified.
RegRestoreKeyFromFile (BSTR szRootPath, Restores the entire contents of a key from a file into the
BSTR szKeyPath, BSTR szFilePath, VARIANT registry. The user must have the ability to query and
*bvarResult) write keys for the root specified.
02-Aug-2016 349/403
CA Service Management - 14.1
RegSaveKeyToFile (BSTR szRootPath, BSTR Saves the entire contents of a key from the registry into
szKeyPath, BSTR szFileName, VARIANT a file. This file may then be restored using
*bvarResult) RegRestoreKeyFromFile. The user must have the ability
to query keys from the root specified.
RegSetDWORD (BSTR szRootPath, BSTR Sets a DWORD value in the registry. The user must have
szKeyPath, BSTR szValueName, LONG the ability to query keys for the root specified.
dwValue, VARIANT *bvarResult)
RegSetString (BSTR szRootPath, BSTR Sets a string value for a key in the registry. The user
szKeyPath, BSTR szValueName, BSTR must have the ability to query keys for the root
szValue, VARIANT *bvarResult) specified.
RegValueExists (BSTR szRootPath, BSTR Checks for the existence of a key/value pair in the
szKeyPath, BSTR szValueName, VARIANT registry. The user must have the ability to query keys for
*bvarResult) the root specified.
RunCommandAsImpersonatedUser (BSTR Runs an application with the same credentials the script
bapp, BSTR bargs, VARIANT_BOOL block, has (deprecated). Returns 0 on success.
LONG timeout, VARIANT *varResult)
RunCommandAsUser (BSTR domain, BSTR Runs an application as another user. Returns 0 on
user, BSTR password, BSTR app, BSTR args, success.
VARIANT_BOOL block, LONG timout,
VARIANT *varResult)
SaveLog (BSTR fileName) Saves the session log.
SendEmail (BSTR toAddress, BSTR Sends an email via CA Service Desk Manager mail
emailSubject, BSTR emailBody) daemon.
SetAcquiredData (BSTR data) Save a chunk of script specific character data on the
server for later use.
SetScriptSuccess (BOOL bSuccess, VARIANT Indicates whether the script executed successfully from
*varResult) the script's point of view.
ShowFileBrowseDlg (BSTR browseType, Shows the standard windows file browse dialog and
BSTR fileExt, VARIANT *varResult) returns the selected file.
ShowMessage (BSTR szMessage) Displays the message to the user in a message box.
Sleep (LONG time) Causes the execution thread to sleep.
TransferToQueue (BSTR queueID, BSTR Sets the customer's current queue, this is the queue that
queueName) the customer will enter if escalated to live.
UtilAttachDll (BSTR szDllPath, BSTR Loads a dll into the process space so that functions may
szHTTPLocation, VARIANT *varResult) be called from it.
UtilCloseTask (BSTR szProcName, VARIANT Closes a running task.
*bvarResult)
UtilDetachDll (LONG idDll, VARIANT Unloads a DLL from memory.
*varResult)
UtilEndProcess (BSTR szProcName, Terminates the process with the specified name.
VARIANT *bvarResult)
UtilExitWindows (LONG lAction, Exits windows either by log off, restart, or shutdown.
VARIANT_BOOL bForce, VARIANT_BOOL
bRelogin)
Executes a function from a loaded DLL.
02-Aug-2016 350/403
CA Service Management - 14.1
WScript
Many public domain script examples are available from sources such as Microsoft TechNet
ScriptCenter, which are typically aimed at a system administrator audience, but are often useful for
use in automated tasks. They often assume that the existence of an object called WScript, which
Microsoft provides as part of their command-line script execution engine, but not part of the
Windows Script Host in itself.
CA SDM implements a simple version of the WScript object providing the Echo, Sleep, GetObject, and
CreateObject methods, providing compatibility for the most commonly used WScript methods.
WScript.Echo(), which usually writes to the command line, is implemented in CA SDM to write to the
automated task log, and thus WScript.Echo() is synonymous with Functions.LogMessage().
02-Aug-2016 351/403
CA Service Management - 14.1
02-Aug-2016 352/403
CA Service Management - 14.1
EBR_DICTIONARY Table
This article contains the following topic:
EBR_DICTIONARY_ADM Table (see page 353)
Object -- EBR_DICTIONARY
EBR_DICTIONARY_ADM Table
SQL Name -- EBR_DICTIONARY_ADM
Object -- EBR_DICTIONARY_ADM
02-Aug-2016 353/403
CA Service Management - 14.1
EBR_FULLTEXT Table
This topic contains the following topics:
EBR_FULLTEXT_ADM Table (see page 354)
EBR_FULLTEXT_SD Table (see page 355)
EBR_FULLTEXT_SD_ADM Table (see page 356)
Object -- EBR_FULLTEXT
EBR_FULLTEXT_ADM Table
Program control table used by Knowledge Management.
Object -- EBR_FULLTEXT_ADM
02-Aug-2016 354/403
CA Service Management - 14.1
Object -- EBR_FULLTEXT_ADM
EBR_FULLTEXT_SD Table
Program control table used by Knowledge Management.
Object -- EBR_FULLTEXT_SD
02-Aug-2016 355/403
CA Service Management - 14.1
EBR_FULLTEXT_SD_ADM Table
Program control table used by Knowledge Management.
Object -- EBR_FULLTEXT_SD_ADM
02-Aug-2016 356/403
CA Service Management - 14.1
EBR_INDEX Table
This article contains the following topics:
EBR_INDEX_ADM Table (see page 357)
EBR_INDEXING_QUEUE Table (see page 358)
Object -- EBR_INDEX
EBR_INDEX_ADM Table
Program control table used by Knowledge Management.
Object -- EBR_INDEX_ADM
02-Aug-2016 357/403
CA Service Management - 14.1
EBR_INDEXING_QUEUE Table
Program control table used by Knowledge Management.
Object -- EBR_INDEXING_QUEUE
02-Aug-2016 358/403
CA Service Management - 14.1
EBR_SYNONYMS Table
This article contains the following topics:
EBR_SYNONYMS_ADM Table (see page 359)
Object -- EBR_SYNONYMS
EBR_SYNONYMS_ADM Table
Program control table used by Knowledge Management.
Object -- EBR_SYNONYMS_ADM
02-Aug-2016 359/403
CA Service Management - 14.1
Syntax
bop_sinfo [-s server] [-p] [-l] [-d] [f] [-q] [-t] [-m] [-a] object [-h]
-s server
Specifies the server to query.
-p
Displays the producer information.
-l
Displays the domset list.
-d
Displays database object information, including the name and type of all attributes.
-f
Displays factory information, including the rel_attr and common_name.
-q
Displays the schema name of the associated table.
-t
Displays triggers on the object.
-m
Displays methods used by the object.
-a
Displays attribute details.
object
The name of the object to query
-h
Displays help on the utility.
bop_sinfo -d dmn
Factory dmn
Attributes
id INTEGER
02-Aug-2016 360/403
CA Service Management - 14.1
02-Aug-2016 361/403
CA Service Management - 14.1
ES_CONSTANTS Object
This article contains the following topics:
ES_NODES Object (see page 362)
ES_RESPONSES Object (see page 363)
ES_SESSIONS Object (see page 364)
2. Factories: default
3. REL_ATTR: id
5. Function Group:
ES_NODES Object
The object details are as follows:
2. Factories: default
3. REL_ATTR: id
5. Function Group:
02-Aug-2016 362/403
CA Service Management - 14.1
ES_RESPONSES Object
The object details are as follows:
2. Factories: default
3. REL_ATTR: id
02-Aug-2016 363/403
CA Service Management - 14.1
5. Function Group:
ES_SESSIONS Object
The object details are as follows:
2. Factories: default
3. REL_ATTR: id
02-Aug-2016 364/403
CA Service Management - 14.1
BSVC--func_access Object
This article contains the following topics:
BSVC--func_access_level Object (see page 365)
BSVC--func_access_role Object (see page 366)
func_access_type Object (see page 366)
2. Factories: default
3. REL_ATTR: code
BSVC--func_access_level Object
The object details are as follows:
2. Factories: default
3. REL_ATTR: id
02-Aug-2016 365/403
CA Service Management - 14.1
BSVC--func_access_role Object
The object details are as follows:
2. Factories: default
3. REL_ATTR: id
func_access_type Object
The object details are as follows:
2. Factories: default
02-Aug-2016 366/403
CA Service Management - 14.1
3. REL_ATTR: id
02-Aug-2016 367/403
CA Service Management - 14.1
This chapter provides several tables that allow you to easily cross-reference table names, SQL names,
and object names. The chapter Data Element Dictionary lists a complete definition of the tables in
the schema. The chapter Objects and Attributes lists the object definitions.
02-Aug-2016 368/403
CA Service Management - 14.1
02-Aug-2016 369/403
CA Service Management - 14.1
02-Aug-2016 370/403
CA Service Management - 14.1
02-Aug-2016 371/403
CA Service Management - 14.1
02-Aug-2016 372/403
CA Service Management - 14.1
02-Aug-2016 373/403
CA Service Management - 14.1
02-Aug-2016 374/403
CA Service Management - 14.1
02-Aug-2016 375/403
CA Service Management - 14.1
02-Aug-2016 376/403
CA Service Management - 14.1
ca_asset_type ca_asset_type
ca_company ca_company ca_cmpny
ca_company_type ca_company_type vpt
ca_contact ca_contact cnt
ca_contact_type ca_contact_type ctp
ca_country ca_country country
ca_job_function ca_job_function job_func
ca_job_title ca_job_title position
ca_location ca_location loc
ca_model_def ca_model_def mfrmod
ca_organization ca_organization org
ca_owned_resource ca_owned_resource nr
ca_resource_class ca_resource_class grc
ca_resource_cost_center ca_resource_cost_center cost_cntr
ca_resource_department ca_resource_department dept
ca_resource_family ca_resource_family nrf
ca_resource_gl_code ca_resource_gl_code gl_code
ca_resource_operating_system ca_resource_operating_system opsys
ca_resource_status ca_resource_status rss
ca_schema_info ca_schema_info
ca_site ca_site site
ca_state_province ca_state_province state
ca_tenant ca_tenant tenant
ca_tenant_group ca_tenant_group tenant_group
ca_tenant_group_member ca_tenant_group_member tenant_group_member
call_req Call_Req cr
chg Change_Request chg
chg_template Chg_Template chg_tpl
chgalg Change_Act_Log chgalg
chgcat Change_Category chgcat
chgstat Change_Status chgstat
CI_ACTIONS CI_ACTIONS CI_ACTIONS
CI_ACTIONS_ALTERNATE CI_ACTIONS_ALTERNATE CI_ACTIONS_ALTERNATE
CI_BOOKMARKS CI_BOOKMARKS CI_BOOKMARKS
CI_DOC_LINKS CI_DOC_LINKS CI_DOC_LINKS
CI_DOC_TEMPLATES CI_DOC_TEMPLATES CI_DOC_TEMPLATES
02-Aug-2016 377/403
CA Service Management - 14.1
02-Aug-2016 378/403
CA Service Management - 14.1
02-Aug-2016 379/403
CA Service Management - 14.1
02-Aug-2016 380/403
CA Service Management - 14.1
02-Aug-2016 381/403
CA Service Management - 14.1
02-Aug-2016 382/403
CA Service Management - 14.1
02-Aug-2016 383/403
CA Service Management - 14.1
02-Aug-2016 384/403
CA Service Management - 14.1
02-Aug-2016 385/403
CA Service Management - 14.1
02-Aug-2016 386/403
CA Service Management - 14.1
02-Aug-2016 387/403
CA Service Management - 14.1
02-Aug-2016 388/403
CA Service Management - 14.1
02-Aug-2016 389/403
CA Service Management - 14.1
02-Aug-2016 390/403
CA Service Management - 14.1
D_PAINTER D_PAINTER
ext_appl ext_appl
Key_Control kc
Transition_Points nottrn
SQL_Script sql_tab
Table_Name tn
cr_wf Request_Workflow_Task crwf
02-Aug-2016 391/403
CA Service Management - 14.1
02-Aug-2016 392/403
CA Service Management - 14.1
02-Aug-2016 393/403
CA Service Management - 14.1
02-Aug-2016 394/403
CA Service Management - 14.1
02-Aug-2016 395/403
CA Service Management - 14.1
02-Aug-2016 396/403
CA Service Management - 14.1
02-Aug-2016 397/403
CA Service Management - 14.1
02-Aug-2016 398/403
CA Service Management - 14.1
02-Aug-2016 399/403
CA Service Management - 14.1
02-Aug-2016 400/403
CA Service Management - 14.1
02-Aug-2016 401/403
CA Service Management - 14.1
02-Aug-2016 402/403
CA Service Management - 14.1
02-Aug-2016 403/403