LANDesk Service Desk Suite Designer guide - Community
LANDesk Service Desk Suite Designer guide - Community
LANDesk Service Desk Suite Designer guide - Community
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Designer</strong> Guide<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThis document contains information that is the proprietary and confidential property of <strong>LAN<strong>Desk</strong></strong> Software,Inc. and/or its affiliated companies ("<strong>LAN<strong>Desk</strong></strong>"). This document and its contents may not be disclosed orcopied without the prior written consent of <strong>LAN<strong>Desk</strong></strong>. Nothing in this document constitutes a guaranty,warranty, or license, express or implied. <strong>LAN<strong>Desk</strong></strong> disclaims all liability for all such guaranties, warranties,and licenses, including but not limited to: fitness for a particular purpose; merchantability;noninfringement of intellectual property or other rights of any third party or of <strong>LAN<strong>Desk</strong></strong>; indemnity; andall others. <strong>LAN<strong>Desk</strong></strong> products are not intended for use in medical, life saving, or life sustaining applications.The reader is advised that third parties can have intellectual property rights that can be relevant to thisdocument and the technologies discussed herein, and is advised to seek the advice of competent legalcounsel, without obligation of <strong>LAN<strong>Desk</strong></strong>. <strong>LAN<strong>Desk</strong></strong> retains the right to make changes to this document orrelated product specifications and descriptions at any time, without notice. <strong>LAN<strong>Desk</strong></strong> makes no warrantyfor the use of this document and assumes no responsibility for any errors that can appear in the documentnor does it make a commitment to update the information contained herein.Copyright © 2011, <strong>LAN<strong>Desk</strong></strong> Software, Inc. and its affiliates. All rights reserved. <strong>LAN<strong>Desk</strong></strong> and its logos areregistered trademarks or trademarks of <strong>LAN<strong>Desk</strong></strong> Software, Inc. and its affiliates in the United Statesand/or other countries. Other brands and names may be claimed as the property of others.Document number LDSD\003 Issue 1.02
ContentsContents 3About this manual 5Documentation 5Conventions 5Keyboard access 6What are the <strong>Service</strong> <strong>Desk</strong> <strong>Designer</strong>s? 7Overview of the <strong>Designer</strong>s 8Business objects 9Windows 9Processes 10Queries and reports 11Dashboards 12The Shortcut Bar 12Exporting items from your database 14Object <strong>Designer</strong> 19The <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> database 20Tips for designing your database 20Business objects 21Attributes 30Privileging specific attributes 37Persistence types 38Configuring attachments 40Creating a business object using the Object Creation Wizard 41Relationships 47Actions 52Creating new ordered lists 54Creating new reference lists 55Ordered and reference lists for different audiences in Web Access 55Creating items for option buttons and lists 56Data filtering 58Configuring parent-child linking 66Specifying which items of a process are audited 67‘As you type’ spell checking 67Window Manager 69Design concepts 70Using the Window Manager 71Window definitions for Web Access 73Window definitions for Mobile Web <strong>Desk</strong> 77Creating a new window 78Adding controls to a window 81Complex and standard lists 93Customising Web Access lists 96Collections 98Direct lookup from external data sources 101Adding related controls to a window 103Default windows 104Adjusting the layout of controls 105Publishing windows 107Filtering lists by other fields 112Copy related attributes 115Address management 118Process <strong>Designer</strong> 121
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhat is a process? 122The Process <strong>Designer</strong> 122Process components 124Guidelines for developing new processes 125Creating a new process 126Statuses 128Process actions 129Specifying dynamic values for automatic actions 138Sending notifications 143Assignments 148Process Approver 149Tasks 150Decisions 152Preconditions 153Formatting process diagrams 157Validating and activating processes 158Reinitialise: switching between processes 158Administration of Users and CIs from a process 160Adding your process to the shortcut bar 167Templates 169Query and Report <strong>Designer</strong> 171What is the Query and Report <strong>Designer</strong>? 172Designing queries 174Creating a query 176Adding grouping to query results 179Query criteria 184Enhancing the appearance of your Query Results 189Query and Report <strong>Designer</strong> System Settings 200Performing a bulk action on a set of query results 203Filters 203The Report <strong>Designer</strong> 208E-mailing Query results and Reports 212Scheduling Reports 213Dashboards 215The Dashboard <strong>Designer</strong> 216Publishing dashboards 217Accessing dashboards 220Creating a new dashboard 222Adding a Count panel 226Adding a list panel 228Adding a Gauge panel 229Adding a Shortcut List panel 234Adding chart panels 237Modifying the appearance of panel headers 247Adding multiple panels 248Calculations 251Using calculations in <strong>Service</strong> <strong>Desk</strong> 252Creating a calculated attribute 252Using the calculation editor 254Calculation functions 255Calculations when values change 256Calculations as part of a process 256Example calculations 260More calculation examples 267Index 2714
About this manualDocumentationThe <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> <strong>Designer</strong> Guide is a reference manual for all designers of the <strong>LAN<strong>Desk</strong></strong><strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>. This manual is designed for use in conjunction with the <strong>Service</strong> <strong>Desk</strong> software andonline help system.This manual describes how to change the design of <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>.Configuration<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> is highly configurable: you can change the data, the layout of the windowsthat your application uses for entering and displaying information, and even the workflow of the processes.This <strong>guide</strong> describes how to change the design of your system, and any examples given are onlyrepresentative of configured systems – your own requirements may differ widely.Before you beginThe <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> is set up by either your system supervisor or an IT support engineer.ConventionsThis manual contains certain conventions and special symbols that are used throughout.KeyboardInformation you enter using the keyboard is shown as Type or Enter followed by an example in bold text,for example: Type ABC-123.Place holders that you must replace with your own text are shown italicised, for example User Name.Keys you press for special functions are shown in capitals, for example SHIFT.When two function keys are pressed at the same time, for example both the CTRL key and the ALT key arepressed, this is shown as CTRL + ALT.Mouse actionsMouse actions are described as follows:• Click, where the left mouse button is used• Right-click, where the right mouse button is used• Point, where the cursor pointer is moved using the mouse• Select, where the left mouse button is used to make a selection in a box• Drag, where the left mouse button is pressed and held while the mouse is movedScreen ImagesScreen images have been taken from <strong>Service</strong> <strong>Desk</strong> itself. They are provided to help you recognise the partof <strong>Service</strong> <strong>Desk</strong> you are using. Because your system has been set up specifically for your organisation, thescreen details you see may differ, particularly in the examples shown.
LANDESK SERVICE DESK SUITE DESIGNER GUIDEKeyboard accessIn the <strong>Service</strong> <strong>Desk</strong> Console, you can use the keyboard to navigate your way around the user interface.There are a number of shortcuts that we have created for frequently used tasks.KeystrokeENTERSPACEBARF5F6SHIFT+F6F7F8Arrow KeysF8F7CTRL+1, CTRL+2, etcCTRL+SHIFT+LALT+Down ArrowALT+Up ArrowTABDescriptionIf you are viewing Query Results anywhere within the application, pressingENTER opens the selected item. This could be on a dashboard, a QueryResults View, or a tab and so on.If you are viewing Query Results anywhere within the application, pressingthe Spacebar opens the selected item. This could be on a dashboard, aQuery Results View, or a tab and so on.Refreshes a query results list.Moves you around the workspace in a clockwise direction.Moves you around the workspace in an anticlockwise direction.Changes focus to the Shortcut bar.Changes focus to the Query Results panel.If the window that you are working on has collection tabs, when you are onthe tabs, you can use the arrow keys to navigate between the tabs.Changes focus to the Actions list.Changes focus to the Shortcut bar.Moves the focus to the correspondingly ordered group in the Shortcut bar.Takes you to the lookup boxes on the toolbar.When focus is on a drop down list, you can press ALT+Down arrow toexpand the list. Pressing it again, contracts the list. Similarly, ALT+UpArrow, contracts the list, and pressing it again, expands the list.Moves between fields on a window; moves between items in a collectiontab; selects the highlighted item in a drop down list.6
What are the <strong>Service</strong> <strong>Desk</strong> <strong>Designer</strong>s?<strong>LAN<strong>Desk</strong></strong> ® <strong>Service</strong> <strong>Desk</strong> is highly configurable. The tools that you use to customize <strong>Service</strong> <strong>Desk</strong> to suityour own requirements are the Object <strong>Designer</strong>, the Window Manager, the Process <strong>Designer</strong>, the Queryand Report <strong>Designer</strong>, and the Dashboard <strong>Designer</strong>. In this chapter you can find out about:• Overview of the <strong>Designer</strong>s on page 8• Business objects on page 9• Windows on page 9• Processes on page 10• Queries and reports on page 11• The Shortcut Bar on page 12• Exporting items from your database on page 14• Importing items into your database on page 16
LANDESK SERVICE DESK SUITE DESIGNER GUIDEOverview of the <strong>Designer</strong>sNo two organizations are the same, and no two organizations operate in the same way. For this reason,the <strong>Service</strong> <strong>Desk</strong> workspace – the part of the application that your users use for their day-to-day work – ishighly configurable. The result of this is that you can customize <strong>Service</strong> <strong>Desk</strong> yourself to suit the way inwhich your organization works, rather than having to change the way in which your organization works tosuit <strong>Service</strong> <strong>Desk</strong>.Object <strong>Designer</strong>The Object <strong>Designer</strong> enables you to customize which information is stored. For an overview of the Object<strong>Designer</strong> and business objects, see Object <strong>Designer</strong> on page 19.Window ManagerThe Window Manager enables you to customize how that information is presented on windows to the user.For an overview about the Window Manager and customizing windows, see Windows on page 9.NOTE: For an in-depth explanation of creating new windows and modifying existing ones,see Window Manager onpage 69.Process <strong>Designer</strong>The Process <strong>Designer</strong> enables you to create new processes (or workflows), and to customize whichwindows a user can see, and when that user can see them. For an overview of the Process <strong>Designer</strong> andprocesses,see Processes on page 10.NOTE: For an in-depth explanation of creating new processes and modifying existing ones, see Process <strong>Designer</strong>on page 121.Query & Report <strong>Designer</strong>The Query & Report <strong>Designer</strong> enables you to create and edit queries and reports. You can quickly producequeries in response to ad hoc questions from managers, and you can also deliver your query as an HTMLreport.NOTE: For an in-depth explanation of creating and modifying queries and reports,see Query and Report <strong>Designer</strong>on page 171.The later chapters of this manual describe in detail how to customize <strong>Service</strong> <strong>Desk</strong> using these design tools.This first chapter, however, gives a brief overview of the concepts involved.Dashboard <strong>Designer</strong>The Dashboard <strong>Designer</strong> enables you to design dashboards that display lists, data, web pages, andshortcuts that relate to yourself, your role or group, for example your Workload List. These show you at aglance a range of data relevant to your work.NOTE: For an in-depth explanation of how to create and modify dashboards, see Dashboards on page 215.8
WHAT ARE THE SERVICE DESK DESIGNERS?Business objectsBusiness objects are the basic building blocks of the <strong>Service</strong> <strong>Desk</strong> database, representing all of the itemswith which you can work. Business objects can be physical items such as users or assets, or they can beabstract items such as Processes, Incidents, Problems, or Change Requests.AttributesEach business object has a set of attributes that describe the information that you want to record aboutthat business object. Each business object can have a different set of attributes. For example, for thebusiness object USER, you might want to record the attributes NAME, TELEPHONE NUMBER, LOCATION,and so on, whereas for the business object PROBLEM, you might want to record DESCRIPTION,URGENCY, the DATE that the problem was logged and so on.Each instance of a business object can have a different set of values for its attributes.NOTE: For more information about business object attributes, see Attributes on page 30.Creating attributes on child objectsSome objects in the <strong>Service</strong> <strong>Desk</strong> database are subclasses of other objects. For example, Incident andChange are subclasses of Process, Asset is a subclass of Configuration Item, End User is a subclass of User,and so on.Attributes that you add to the parent class are automatically available on the subclass – so if you add anattribute to the Process Management\Process object, it will also be available to IncidentManagement\Incident. However, when you add attributes to the individual subclasses, those attributesare available only to the subclass.NOTE: You can add attributes to objects that have the same name as an existing attribute on a parent or subclassonly if the attributes are of the same type and size.RelationshipsAs well as having attributes, business objects can also have relationships. For example, if a user uses aspecific asset, then you can create an association between an instance of the business object User and aninstance of the business object Asset. This is known as a relationship.NOTE: For more information about business object relationships, see Relationships on page 47.WindowsA major advantage of <strong>Service</strong> <strong>Desk</strong> is that you can easily change the appearance of your system at anytime. This means that your <strong>Service</strong> <strong>Desk</strong> system can grow and evolve along with your company practices.When you first set up <strong>Service</strong> <strong>Desk</strong>, it uses default terminology, window layouts and database structures.However, you will almost certainly want to make some changes to this default setup. You can change<strong>Service</strong> <strong>Desk</strong> to suit your requirements using a combination of the <strong>Service</strong> <strong>Desk</strong> <strong>Designer</strong>s.You can create any number of windows, and add any available attribute for the selected business object. In<strong>Service</strong> <strong>Desk</strong>, items such as Notes, Tasks and so on, link to items such as Changes and Problems in a oneto-manyrelationship. These are known as Collections.9
LANDESK SERVICE DESK SUITE DESIGNER GUIDECollectionsCollections are represented as tabs, or on a tree, or both, on the windows you design. When you view thewindow in the Console workspace, you will see a list of all of the related items, and sometimes, you canpreview the data contained within that collection.NOTE: For information about creating or modifying windows and using the Window Manager, see Window Manageron page 69.1 – Actions list: The available actions will change according to the process you use.2 – Process tree: The Process tree enables you to have quick access to the various components of theprocess, for example, Notes, Assignments and User information and so on. The name of this tree changesdepending upon which business process you are currently using.3 – Collection tabs: The collection tabs display data linked to the item that you are working on. From thelist, you can create, modify and delete items. Depending upon the way your system is configured, you canpreview the data contained within the list.ProcessesIn <strong>Service</strong> <strong>Desk</strong>, processes dictate what a user can do and when. Using the Process <strong>Designer</strong>, you cancreate any number of processes to suit your business practices. For example, you can create changerequests, literature requests, complaints processes, new starters and so on. Basically, anything withinyour company which has a predefined order of doing things is suitable to use as the basis for a new process.To illustrate a simple process, the diagram below describes a process for a holiday request.10
WHAT ARE THE SERVICE DESK DESIGNERS?Before an employee can take holiday, they have to submit a request to their manager. Their manager canthen either accept or deny the request. If the manager denies the holiday request, the request goes backto the employee to possibly amend and resubmit it. If the manager accepts the holiday request, theprocess is not yet finished, as the director has a final say about when holidays can be taken. The directorcan either authorize or reject the holiday request. If the director authorizes the holiday request, theemployee is notified, and the process is finished. If, however, the director rejects the holiday request, it isreturned once more to the employee.1. Employee initiates a holiday request2a. Manager validates holiday request2b. Manager rejects holiday request3. Director authorises holiday requestNOTE: For information about creating processes and using the Process <strong>Designer</strong>, see Process <strong>Designer</strong> on page121.Queries and reportsYou can create a list of data records upon which you can perform certain actions, or review the informationthat they contain using the Query and Report <strong>Designer</strong>. The Query and Report <strong>Designer</strong> enables you toview records that span multiple business objects and provides some basic list manipulation. You can quicklyproduce queries and associated HTML-based reports, which you can then use to access your data.NOTE: For information about creating and modifying queries and reports, see Query and Report <strong>Designer</strong> on page171.11
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDashboardsYou can design dashboards for your system on which you can display lists, for example your Workload List,which relate to yourself, or your role or group. You can also add count lists, Pie and Bar Charts, Gauges,web pages, and shortcuts to your commonly used components and queries. These all show you at a glancea range of data relevant to your work.All of the information displayed on the dashboard is generated from queries that have been created usingthe Query and Report <strong>Designer</strong>.NOTE: For information about designing dashboards, see Dashboards on page 215.The Shortcut BarThe Shortcut Bar provides easy access to <strong>Service</strong> <strong>Desk</strong> components.1 – Shortcut bar2 – Component3 – Shortcut groupsAdding components to the shortcut barYou can add your own components to the shortcut bar.To add a component to the shortcut bar:1. Right-click the <strong>Service</strong> <strong>Desk</strong> Console Shortcut bar, then click Add Component.The Component Maintenance dialog appears.12
WHAT ARE THE SERVICE DESK DESIGNERS?2. In the Select Component list, select the component you want to appear on the shortcut bar.Depending on your selection, the rest of the dialog populates with information.3. Type an appropriate Title.This is the title that appears underneath the shortcut. It can be up to 64 characters long.4. In the View Properties box, select the relevant properties.When you click each property, help information about that item appears at the bottom of the dialog.5. If you are creating the shortcut just for your own use, select the Private Shortcut item checkbox.6. If you want the shortcut to also be available in Web <strong>Desk</strong>, select the Create this Group for Web<strong>Desk</strong> also check box.7. Click OK to implement your changes.Adding shortcut groups to the shortcut barYou can create new shortcut groups for your shortcut bar to contain different components and shortcutsfor different types of users of <strong>Service</strong> <strong>Desk</strong>. For example, you could create a group for your IT SupportDepartment, and one for your front-line analysts.NOTE: To differentiate the different groups, you can specify a different icon for each shortcut group.NOTE: The shortcut bars for the <strong>Service</strong> <strong>Desk</strong> console and Web <strong>Desk</strong> are maintained separately.To add a shortcut group:1. Right-click the Shortcut Bar, then click New Group.The New Group dialog appears.13
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. Specify a Name for the group, for example Front-line.The Name can be up to 64 characters long.3. Select where you want the shortcut group to appear. In the Choose Group Position group box, selectthe required option button.NOTE: We recommend that you choose a different icon so that users can tell the difference between the differentshortcut groups.4. If you also want the group to be available in <strong>LAN<strong>Desk</strong></strong> Web <strong>Desk</strong>, select the Create this Group forWeb <strong>Desk</strong> also check box.5. In the Icon group box, alongside the icon, click .The Open dialog appears.6. Navigate to, and select the required icon, then click Open.7. Click OK.The shortcut group is added to the Shortcut Bar, and opens automatically to enable you to add therequired shortcuts.Exporting items from your databaseYou can export and import specific user-defined items from your <strong>Service</strong> <strong>Desk</strong> database. You can export:• Business objects and attributes• Windows• Templates• Response levels, escalations and calendars• Categories, ordered lists and reference lists• Groups & Roles• Processes• Queries• Dashboards14
WHAT ARE THE SERVICE DESK DESIGNERS?If you export...a window,a group or role,a process,a category,an ordered list or referencelist,Dashboards,then automatically...all of the user defined business objects, attributes and queries are alsoexported.all of the privileges associated with that group or role are also exported.all of the user defined business objects, and attributes are exported.all of its parent categories are selected.only the selected item(s) are selected.all of the queries defined in that dashboard are also exported.NOTE: You export these items (such as windows, business objects, processes and so on) from the <strong>Service</strong> <strong>Desk</strong>database in the same way. You can apply the following procedure to any export.Exporting windowsTo export windows from your database:1. Start the Design Transfer component.2. Expand the Export tree ( ).3. Expand the Windows folder.4. Select the required window, then on the Actions list, click Select.5. On the Export tree, the window icon changes to to indicate that it has been selected.15
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhen you select a window, the related custom defined business objects and attributes associatedwith that window are also exported.6. Repeat as required.NOTE: To remove an item, select it on the tree, then on the Actions list, click Clear Selection.7. On the Actions list, click Export Selected Items.The Save As dialog appears.NOTE: If required, you can select all of the required items, then on the Actions list, click Export Selected Items.8. Navigate to where you want to export the file to, then type a name for the file, then click Save.The selected items are exported. The file is XML format.NOTE: You can click Export Selected Items even if you have not completed selecting all of the required items.You can reopen the export file, and continue selecting the items when it is convenient.Exporting processesWhen you export processes, all of the user-defined items are automatically exported with the process.If the process you are exporting has a dependency on a category, a reference to the category is exported.This means that the actual category business object is NOT automatically exported. You can, however,select them by clicking Select Referenced Items on the Actions list.NOTE: When the process is exported, if the category does not exist, you are prompted to select an existingcategory.Exporting groups and rolesWhen you export groups and roles, all of the privileges associated with them are automatically exportedwith them.To export a group and/or role:1. Start the Design Transfer component.2. Expand the Export tree, then expand the Groups & Roles folder.3. Locate the required group or role, then on the Actions list, click Select.The Results page is updated.4. Repeat as required.NOTE: To remove a group or role, select it, then on the Actions list, click Clear Selection.5. On the Actions list, click Export Selected Items.The Save As dialog appears.6. Navigate to where you want to export the file to, then type a name for the file, then click Save.The selected items are exported. The file is XML format.Importing items into your databaseYou can import items that you have exported from one <strong>Service</strong> <strong>Desk</strong> database into another <strong>Service</strong> <strong>Desk</strong>database. For example, when you are moving from a test system to a ‘live’ database.WARNING: We strongly recommend that you take a backup of your database before you import items into yourdatabase.16
WHAT ARE THE SERVICE DESK DESIGNERS?To import into your database:1. Start the Design Transfer component.2. Expand the Import tree ( ).3. On the Actions list, click Open Import File.The Open dialog appears.4. Locate the file that you want to import.5. This will be a file that you have exported from <strong>Service</strong> <strong>Desk</strong> using the Design Transfer component. Itwill be in an XML format.6. Click Open.You may be prompted to make some decisions.Referenced object missing – This appears where the business object that you are importing hasa link to a business object that does not exist within either the target system or in the file you thatare importing. You have to choose to either select an existing object from the list, or leave the valuenot set.Process privilege mismatch – This appears when the process that the privilege is connected todoes not exist within either the target system or in the file that you are importing. You have tochoose to either discard the privilege or select an existing process from the list.)Object modification is restricted – This appears when you are trying to import a business objectalready exists within your database but that business object cannot be modified. These includeProcesses, Windows and Queries. You have to choose to either not create a new business object andto keep the existing business object, or to update the existing business object with the changes.Object conflict in system – This appears when the target system contains a business object thathas values that conflict with those of a business object that you are importing. For example, aprocess has the name of ABC and you are importing another process with the name of ABC, but theprimary keys are different. You have to choose to either not create a new business object and tokeep the existing business object, or to update the existing business object with the changes.Attempted import of deleted object – This appears when the business object has been ‘soft’deleted from your database. This means that the business object information still exists within yourdatabase. You have to choose to either create a new business object with a modified title, or to notcreate a new business object.If you are not prompted for any decisions, the file is imported.NOTE: If you are prompted for decisions, make them, then on the Actions list, click Import.When the import is complete, a message Import completed successfully appears.7. Click OK to close the message box.17
LANDESK SERVICE DESK SUITE DESIGNER GUIDE18
Object <strong>Designer</strong>This chapter describes the concepts and processes involved in customizing the <strong>Service</strong> <strong>Desk</strong> database tosuit the working practices of your organization. You can find out about:• Tips for designing your database on page 20• Common design problems on page 20• Business objects on page 21• Attributes on page 30• Relationships on page 47• Actions on page 52• User interface properties on page 25• Creating new reference lists on page 55• Creating items for option buttons and lists on page 56• Data filtering on page 58• Parent-child relationships on page 49• Specifying which items of a process are audited on page 67• ‘As you type’ spell checking on page 67
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> databaseThe <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> uses a relational database to store information. The key to understandingthe design process lies in understanding the way relational databases store information. To provide acomprehensive system,<strong>Service</strong> <strong>Desk</strong> needs to have the facts about different subjects stored in businessobjects. For example, you might have one business object that stores information about users only, andanother that stores facts about problems only.When you install the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>, many of the business objects you require already exist.When you use your data, you combine and present the facts in many different ways. For example, youmay want to create a report that shows which users logged which problems, and therefore you need tocombine facts about users and problems.Tips for designing your databaseWhen you design your database, you first need to break down the information you want to keep asseparate subjects (business objects). You then tell the database how the subjects (business objects) arerelated to each other, so that <strong>Service</strong> <strong>Desk</strong> can bring the right information together when you need it.Determine the purpose of your database – This will help you to decide which information you want tostore in the database.The first step in designing your database is to determine the purpose of the database and how it will beused. This tells you what information you want from the database. From that, you can determine whichsubjects you need to store facts about (the business objects) and what facts you need to store about eachsubject (the attributes). Look at the information you want to get out of <strong>Service</strong> <strong>Desk</strong> and divide it intofundamental subjects, such as Users, Problems, Assets, and so on. Each of these subjects is a suitablecandidate for a business object.Determine the business objects you need – When you have a clear purpose for your database, youcan divide the information into separate subjects, such as Users or Problems. Within <strong>Service</strong> <strong>Desk</strong> theseare known as business objects.Determine the attributes you need – Decide what information you want to record about eachbusiness object.Determine the relationships – Look at the information you want to represent and decide how the datain one business object is related to data in other business objects.Common design problemsThere are several common pitfalls you may encounter when designing your database. These problems cancause your information to be more difficult to use and maintain. The following are signs that you need tore-evaluate the design of your database.• You have one business object with a large number of attributes that do not all relate to the samesubject. For example, one business object might have attributes pertaining to your users as well asattributes that contain Problem information. Try to make sure each business object containsinformation about only one subject.• You have attributes that are intentionally left blank in many business object instances because theyaren’t applicable to those business object instances. This usually means that the attributes belongto another business object.20
OBJECT DESIGNER• You have a large number of business objects, many of which contain the same attributes. Forexample, you have separate business objects for January sales and February sales, or for localcustomers and remote customers, in which you store the same type of information. Tryconsolidating all the information pertaining to a single subject in one business object. You may alsoneed to add an attribute, to identify the type of instance, for example, Sales date.Business objectsBusiness objects are the basic building blocks of <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong>, representing all of the items withwhich you can work. Business objects can be physical items such as users or assets, or they can beabstract items such as colours, problems, new starters and so on.Each business object has a set of attributes that describe the information that you want to record aboutthat business object. Each business object can have a different set of attributes. You can link businessobjects together to share, rather than duplicate the same information. The link is called a relationship.NOTE: We recommend that you add Create and Update Date attributes and Create and Update User attributeswhenever you create a new business object. If the business object is to be used as a collection object, then youmust add the Create Date attribute.For more information about adding these types of attributes, see Persistence types on page 38.The Object <strong>Designer</strong> user interfaceWhen you click Object <strong>Designer</strong> in the Shortcut bar, the Object <strong>Designer</strong> starts.1 Business Objects tree – The Business Objects tree contains several folders which represent thedifferent modules of your support operation, for example, Incident Management, Change Managementand so on. You use the Business Objects tree to navigate to the relevant module, then use the Actions list(or right-click shortcut menu) to create a new business object.2 Attributes tree – The Attributes tree displays the current business object attributes. Attributes recordthe different pieces of information you want to store about the business object. Again, you use the Actionslist (or right-click shortcut menu) to create a new attribute.21
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3 Properties grid– Each business object and each attribute of a business object has a set of properties,which are displayed in the Properties grid. Context-sensitive help is provided beneath the Properties grid foreach property. Some properties are predefined and you cannot change them.4 User Interface Properties – You can specify certain properties to appear within the workspace tocontrol what information is taken from the business object.Create a new business objectTo create a new business object:1. On the Business Objects tree, select the required module folder, then on the Actions list, clickNew Business Object.You are asked if you want to specify a behaviour.You can specify that a business object has special behaviour, for example, it is a category or a rankeditem.2. If you do not want to specify the behaviour, click No and proceed to step 6.3. Click Yes if you want to create a business object with special behaviour.The Behaviour Selection dialog appears.4. In the Available Items list, select the required type of behaviour(s), then click .NOTE: For information about the different behaviours, see Object Behaviours on page 25.5. Click OK.A new business object appears on the tree, and the Properties grid updates.22
OBJECT DESIGNER6. Type a relevant name and description, then complete the relevant properties:Behaviours – Specifies whether the business object has a special behaviour (see ObjectBehaviours on page 25).Module – Specifies the module to which the business object belongs. This property is populated bydefault and you cannot modify it.Title – Titles are used in the user interface where a label is required for the business object. Forexample, the window title. The business object title is the name by which you will usually refer tothe business object. Titles can contain any characters (including spaces) and do not need to beunique.NOTE: In certain circumstances, for internal database reasons, the Title attribute is mandatory in the database.Name – Used internally by <strong>Service</strong> <strong>Desk</strong> as a unique identifier for the business object. Businessobject names can consist of up to sixty-four alphanumeric characters, with no spaces. You can useonly the following characters: A through Z, 0 through 9 (not as the first character), and _(underscore).Description – Describes what this business object is used for.Behaviour – Selecting Reference enables you to create an associated reference table, which youcan use to maintain lists, for example of colours or people’s titles. For more information, seeCreating new reference lists on page 55.Locking Policy – Determines whether more than one user can have access to the same businessobject instance or attribute at the same time.The default is None, which means that business objects are not ‘locked’. The alternatives areOptimistic and Optimistic With Warning.NOTE: For more information about locking policies, see Record locking on page 27.23
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDeletion Type – Specifies whether instances of the business object can be deleted. There arethree options: No deletion for if the object stores essential information that must not bedeleted;Soft deletion for if the object instance refers to other objects (such as if you want to deletea user who no longer works for your company, and you do not want processes assigned to them byother user); and Hard deletion for if you want to be able to delete the object instancepermanently.NOTE: Soft deletion removes the user from lists and so on, so the item can no longer be selected by other usersusing <strong>Service</strong> <strong>Desk</strong>.WARNING: You cannot modify the deletion type for existing business objects.Is Process? – Determines whether this business object can be subject to a process. For example,Incident, Problem, Change, Business Process. This is populated by default and you cannot modify it.For more information about designing processes, see Process <strong>Designer</strong> on page 121.Image – Enables you to associate an image with the object.NOTE: For more information about associating an image with an object, see Associating images with businessobjects on page 26.Is Parent? – Indicates whether this business object has child business objects (sub-businessobject) connected to it. For example, the Asset business object could have a child business object ofPC and Laptop.Is Top Level? – Defines if a business object is a top level business object. An object that has bothIs Process? and Is Top Level? set to True can be added as a Workspace shortcut on theShortcut Bar.Editor Type – Defines where this business object can be modified.Is Knowledgeable? – Indicates whether the business object is included in knowledgemanagement searches. Select True if you want it to be included, select False if you do not. Thisapplies to all of the business object attributes.Partition Type – Enables you to prevent end-users from viewing information that is not their own,or prevent analysts from accessing data that is not assigned to their current support group.NOTE: For more information about data partitioning, see the User Management section of the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong><strong>Desk</strong> <strong>Suite</strong> Administrator Guide.Default Query – This is the default query used by <strong>Service</strong> <strong>Desk</strong> for displaying lists of this businessobject.Output Attributes – enables you to change the appearance of drop-down lists in Web Access.NOTE: For information about using the Output Attributes property, see Customising Web Access lists on page96.Reports – enables you to design report templates that change the appearance of query results listsin Web Access.NOTE: For information about using the Reports property, see Creating report templates for Web Access on page28.Is Configuration Item? – Indicates whether this business object is a configuration item. Thisbehaviour is applied to all sub business objects and it cannot be changed.NOTE: A description of the currently selected property appears at the bottom of the Properties grid. This helps youto determine the type of information you must specify, and advises of any rules that you must follow. For example,for some properties, you must specify a unique name, and so on.NOTE: For information about configuring the user interface properties of a business object, see User interfaceproperties on page 25.7. Click .24
OBJECT DESIGNERNOTE: You can now add further attributes to your new object. For more information about this, see Attributes onpage 30.NOTE: We recommend that you add Create and Update Date attributes and Create and Update User attributeswhenever you create a new business object. If the business object is to be used as a collection object, then youmust add the Create Date attribute.For more information about adding these types of attributes, see Persistence types on page 38.Object BehavioursThe available behaviours for an object in Object <strong>Designer</strong> are:Automatic Search – enables you to configure Self <strong>Service</strong> so that when end-users visit the Self <strong>Service</strong>web page, <strong>Service</strong> <strong>Desk</strong> automatically searches for the information that the end-user provides. For moreinformation about configuring automatic searching in Self <strong>Service</strong>, see the <strong>LAN<strong>Desk</strong></strong> Web AccessAdministrator Guide.Category – used for category objects; can be set only when you create a new object. For moreinformation about categories, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide.CC Recipient Container – used for configuring mail to include CC recipients in replies and notifications.For more information, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide.Event Generator – whenever an object with the Event Generator behaviour is created, updated, ordeleted, an entry is added to the tps_event_queue table. This table can then be read by MAP, whichprocesses this data and acts on the information provided. This is the basis of <strong>Service</strong> <strong>Desk</strong>'s automatedrequest fulfilment functionality. For more information, see the <strong>LAN<strong>Desk</strong></strong> Event Manager User Guide.Message Source – enables you to send attachments to users directly from a process on the Attachmentbusiness object. For more information, see Configuring attachments on page 40.Ranked – used for ordered lists; can be set only when you create a new object. For information aboutmaintaining ordered lists, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide. For information aboutcreating new ordered lists, see Creating new ordered lists on page 54.User interface propertiesYou can specify certain properties to control what information is taken from the business object to appearwithin the workspace.Object Linking? – obsolete.Detailed Diagnostics On? – Specifies whether to turn on detailed diagnostics in message boxes. This canhelp you to determine the cause of any problems you are encountering with the business object. You willusually set this to False.Expand Collections Off? – Determines whether collections of this type are initially expanded in the tree.Business Object Title Attribute – Specifies which attribute to use as the business object title. Thisappears as the window title within the workspace. For example:25
LANDESK SERVICE DESK SUITE DESIGNER GUIDEBusiness Object Title Length – Specifies how many characters to limit the business object title to.<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> Console Title Attributes – Specifies which attributes to display in the <strong>Service</strong><strong>Desk</strong> title bar. Click to select the required attributes.Tree Node Description Attributes – Specifies which attributes appear in the Process Tree.Tree Node Title Separator – Specifies the sequence of characters used to separate the title attributeson the Process tree. This is visible if you have added more than one attribute to be displayed on the tree.Results Output Attributes – Specifies which attributes are displayed on a results list, and enables you tospecify the column title and width when the attribute appears on a list. The attributes that you specify hereare automatically added to a query based upon this business object, and are also displayed when you arelinking Incidents, Problems and Changes together.NOTE: For more information about the Results Output Attributes and process linking, see Parent-Child linking onpage 130.On the File menu, you can see the most recently viewed processes. For example, Incidents, Articles and soon. The latest three items are displayed at the bottom of the File menu. You can access additional items(up to 10) from the relevant File sub-menus.Associating images with business objectsYou can associate a different image (.png or .gif) with each business object using Object <strong>Designer</strong>. Forexample, you can have a different icon for each type of configuration item, and different icons forIncidents, Changes and so on.NOTE: If you associate images with processes, these icons will appear in the Knowledge Search Results so that youcan distinguish them easily. You can also associate images with configuration items and you can see them in theConfiguration Item Structure component.To associate an image with a business object:1. Start Object <strong>Designer</strong>.2. On the Business Objects tree, navigate to and open the required business object, for example,Configuration Item | Printer.3. On the Attributes tree, ensure that the business object is selected, then in the Properties grid,alongside the Image property, click .The Open dialog appears.4. Select the required image, then click Open.5. Click .26
OBJECT DESIGNERRecord lockingThe locking policy for an object enables you to configure how <strong>Service</strong> <strong>Desk</strong> behaves if a user tries to open arecord (for example, an incident) that another user already has open.There are three locking policies available, which you set in the Properties grid of Object <strong>Designer</strong>:• None – the default. Two users can open the same record, and will be unaware that another userhas the record open. When the users save their changes, their version of the record is saved -potentially overwriting the other user's changes without warning.For example, Users A and B both open incident 123 and make different changes to the Description.User A saves their changes. Moments later, User B saves their different changes. User A has nowlost the changes that they made; User B does not know that they have overwritten their colleague'swork.If Users A and B update different fields from each other, then both sets of changes are saved.• Optimistic – optimistic locking allows multiple users to access the same record, but the system isaware of changes that other users have made, and prevents another user's changes from beingoverwritten.For example, Users A and B both open incident 123 and make different changes to the Description.User A saves their changes. Moments later, User B tries to save their different changes. User B iswarned that the incident has been updated by another user and that their changes will be lost. UserB can either click Yes and lose their changes and see the updated incident; or they can first click Noand copy the changes that they have made, before redisplaying the updated incident.If Users A and B update different fields from each other, then both sets of changes are saved.• Optimistic With Warning – if a user tries to open a record that another user already has open,they are warned that the record is being updated by someone else, and their access to the record iscontrolled. The level of access the second user has can be configured as a system option. You canprevent further users from accessing locked records completely, give them read-only access, or givethem read-only access with the ability to run any optional actions (that is any action that does notchange the status of the process).The rest of this section describes how to configure the Optimistic With Warning locking policy.NOTE: For more information about creating objects, see Create a new business object on page 22.27
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo configure the Optimistic With Warning locking policy:1. In Object <strong>Designer</strong>, open the object that you want to set the locking policy for.2. In the Properties grid, alongside Locking Policy, select OptimisticWithWarning, then click .3. On the Settings menu, click System.The System Settings property grid appears.4. Under Locking Policy Settings, alongside Locked Object Action, select how you want tocontrol access to objects that have the Optimistic With Warning locking policy set:No Access – if the record is locked, no one else has access to itRead Only – if the record is locked, other users can open it for viewing, but will not be able to makeany changesRead Only with Optional Actions – if the record is locked, other users can open it for viewing,but will only be able to use any optional actions available at its current status (for example, adding anote)5. Click .The locking policy is set.NOTE: Analysts that are members of the Administrators support group can unlock items using the Unlock Itemcommand on the File menu. We recommend that you use this command with great care.Creating report templates for Web AccessUsing Object <strong>Designer</strong>, you can design report templates that change the appearance of query results listsin Web Access.NOTE: For more information about using these report templates in Web Access, see the <strong>LAN<strong>Desk</strong></strong> Web AccessAdministrator Guide.28
OBJECT DESIGNERTo create a report template:1. In Object <strong>Designer</strong>, open the object that you want to create a report template for.To display a query result in Web Access as a report, you need to have a report template for theobject that the query is based on.2. Click the object name at the top of the Attributes tree, then alongside Reports in the Propertiesgrid, click .The Report Templates dialog appears.3. Click New.The New Attribute Template dialog appears.4. In the Name box, type a name for the template, then click OK.The name you typed appears in the Templates list.5. In the Text box, type the text that you want to appear as part of the report. Drag attributes thatyou want to appear in the report from the Attributes tree to the appropriate place in the Text box.6. Click New to define other report templates that format the information in other ways, and whichreport different information, as required.7. Click OK to close the Report Templates dialog, then click .The changes to the object are saved.29
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: You can use simple HTML in the Text box, including HTML tables. If you want to specify table and columnwidths in pixels, you need to include a table class called reportFixedWidth in your HTML. Some examples aregiven below.NOTE: Web Access enables you to set a Report Template and an Expanded Report Template for a queryresults list. This enables you to choose to show more information for a specific row in the report by specifying anExpanded Report Template that returns more information.NOTE: You can use report templates to display information that is not displayed by the query that the report isbased on.Example Report TemplatesThis section gives examples of report templates:Here is a title: {Title}, and here is a description: {_Description}.The above example displays the text for the query result in the default font, with the Title value for thequery result replacing the {Title} place holder, and the Description value replacing the {_Description}place holder. We recommend that you add the place holders by dragging them from the Attributes tree.Here is a title: {Title}, and here is a description: {_Description}.The above example is the same as the first example, but the Title and Description are now in bold (usingthe HTML bold tags).{Title}Here are twoattributes in the table's second row: {_Attribute1}, {_Attribute2}The above example displays a table, where the first cell spans two table rows, and includes an imageattribute. The second cell in the first row contains a Title, and the second row's cell contains some text andtwo attributes. The use of class="reportFixedWidth" in the table tag enables table and column widthsin pixels to be specified:imageTitleHere are two attributes in the table's second row: Attribute1, Attribute2AttributesThe next step in designing your database is to determine the attributes for the business objects. That is, todecide what you need to know about people, things or events you want to record in <strong>Service</strong> <strong>Desk</strong>.NOTE: We recommend that you add Create and Update Date attributes and Create and Update User attributeswhenever you create a new business object. If the business object is to be used as a collection object, then youmust add the Create Date attribute.For more information about adding these types of attributes, see Persistence types on page 38.To create a new attribute:1. On the Business Objects tree, select the relevant business object, then on the Actions list, clickNew Attribute.A new attribute appears with the default name, [New Attribute], selected.30
OBJECT DESIGNER2. Type a name for the new attribute, then press ENTER.This is entered as the Title property and does not need to be unique. The Name is generatedautomatically from the Title removing any spaces. The Name must be unique.3. In the Properties grid, complete the relevant information for the attribute.Title – Titles are used in the user interface where a label is required for the attribute. For example,if an attribute is included in a multi-column list, its title is used as the column title. The attribute titleis the name by which you will usually refer to the attribute.Titles can contain any characters (including spaces) and do not need to be unique.Name – Used in the user interface by <strong>Service</strong> <strong>Desk</strong> as a unique identifier for the business objectattribute. Attribute Names can consist of up to sixty-four alphanumeric characters, with no spaces.You can use only the following characters: A through Z, 0 through 9 (not as the first character).Description – Describes the function of the attribute. When a user holds their mouse over therequired field, a tooltip appears. This is the information that appears as the ToolTip.Data Type – Identifies the type of data stored by the attribute. The data types supported dependon the database system you are using. For information about the available data types, refer to theonline help for the database system that you are using.Max. Length – Applies only to String and Binary data types – you do not need to explicitly specify itfor other data types. If you want a limitless length, type -1. If the attribute is not a string or binarydata type, the maximum length does not apply.Is Mandatory? – Indicates whether this attribute must be populated before you can save thebusiness object instance.NOTE: If you change the Is Mandatory? value from False to True for an existing attribute, another property,Backfill value, appears. Mandatory attributes cannot have empty (null) values in the database. This means thatwhen you add a new mandatory attribute to an existing object, you need to specify a backfill value to fill all of theexisting values for that attribute.Is Name? – Indicates whether this attribute is used as the Name for the business object. Eachbusiness object is identified by a unique identification number, known as a GUID. As this is not veryuser friendly, you can specify that a specific attribute is the Name attribute. The Is Name attribute isthe attribute that you usually use to refer to the business object. Only String attributes can be setas Is Name attributes, and you must specify one Is Name attribute for each business object.Is Unicode? – Applies only to String data types. Select True if you want to support double-bytecharacter sets, such as Japanese. Select False if you do not. By default, the value is set to False.31
LANDESK SERVICE DESK SUITE DESIGNER GUIDEPersistence type – Relates only to specific attribute types: DateTime, user, and identity. Specifieswhether the attribute’s value is automatically generated by <strong>Service</strong> <strong>Desk</strong>. For example, a DateTimeattribute can record the creation date and time, or the time a record was updated. Similarly, a userattribute can record the user who created the item, or the user who last updated it. CreateIdentityis used to increment identifiers, such as a Change ID. For more information, see Persistence typeson page 38.This applies only to values automatically generated by <strong>Service</strong> <strong>Desk</strong>. If you want to specify a value,for example, date of birth or due date or similar, leave this property blank.Adjust Value For Time Zone – To avoid issues when accessing records across time zones oracross changes in daylight saving time, you can set a date/time attribute to be stored in UTC. Thisattribute is then adjusted for time zone differences when it is displayed. Select True if you want toadjust date/time values for time zone.NOTE: You can set this value only when you create the attribute. After you have saved it, you cannot change itusing Object <strong>Designer</strong>. To update existing date/time attributes, you need to run the Time Zone Adjuster tool on the<strong>Service</strong> <strong>Desk</strong> Web server. For more information, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Upgrade Guide.Propagate Actions – This property is only available on Children or Parent collections, and is usedfor Parent-Child linking. Indicates whether actions on the parent item are added (or propagated) toits linked children. For more information, see Parent-Child linking on page 130.Business Object – Identifies the business object to which the attribute belongs. This is generatedautomatically and cannot be modified.SubDataType – Applies only to String, Int16 and Int32 data types – further identifies the typeof data stored by this attribute. For example, Colour, Timezone and so on.Is Owner – set to True if the related object is the parent object.Search Type – If you have set the business object Is Knowledgeable property to True, you canthen set the Search Type property for the attribute. You can specify that the text must matchexactly, or whether it is a natural language search.Is Privilegeable? – Indicates whether privileges can be applied to this attribute. Note that whenyou have set this property, you cannot change it at a later date.4. Click .32
OBJECT DESIGNERChoosing the correct data typeThe choice of data type for a new attribute depends on the nature of the data itself, and how that data isused. Some choices are obvious – dates and times, for example – but others require some additionalconsideration.The data type identifies the type of data stored by the attribute. The following data types are available:Use the data type...AttachmentBooleanDateTimeto represent...that you want to add an attachment to this object when using it within theConsole. For example, you can attach a document to a business object.Yes/No, True/False, and On/Off values.Dates and times.Decimal decimal values between -9999999999.99999 and +9999999999.99999.GUIDInt 16Int 32ObjectStringa unique identification number used by the <strong>Service</strong> <strong>Desk</strong> Framework. This isautomatically generated and cannot be modified.signed integers with values ranging from negative 32768 through positive32767.signed integers with values ranging from negative 2,147,483,648 throughpositive 2,147,483,647.the type of relationship. This does not apply when you create new attributes,only when you are linking business objects together.sequences of characters, like sentences. 0 to approximately 2 000 000 000characters (depending on your database platform).Creating an attribute using the Attribute Creation WizardYou may find it quicker to create a new attributes using the Attribute Creation Wizard.NOTE: If the object that you are adding an attribute to has not been saved and needs an Is Name? attributedefining (see Attributes on page 30), you will have to create this attribute first.To create a new attribute using the Attribute Creation Wizard:1. In the Object <strong>Designer</strong> component, on the Business Objects tree, open the required businessobject.2. On the Actions list, click Attribute Creation Wizard.33
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe Attribute Creation Wizard starts.3. Complete the required information.NOTE: If you click in a field, help text appears at the bottom of the wizard page to help you complete the requiredinformation.4. Click Next.The Set Data Type Page appears.On this page, the values you need to specify change, depending upon the Data Type that you select.Again, help text is provided at the bottom of the wizard page.34
OBJECT DESIGNER5. Click Next.The Set Boolean Values page appears.On this page, you specify whether you want the attribute tobe included in the Audit Trail, and whether you want the attribute to have privileges related to it.6. Click Finish.7. Click .The attribute is added to the business object.35
LANDESK SERVICE DESK SUITE DESIGNER GUIDECreating a window from within Object <strong>Designer</strong>If you have created or modified a business object, you may find it useful to create a new window basedupon that business object.NOTE: Creating a window using the New Window Wizard is described fully in the Window <strong>Designer</strong> chapter. Formore information, see Creating a window using the Window Wizard on page 79.To create a new window from within Object <strong>Designer</strong>:1. Start the Object <strong>Designer</strong> component.2. On the Business Objects tree, select the required business object, then on the Actions list, clickNew Window Wizard.The New Window Wizard starts, and the Details Group Box Contents page appears. Notice that anumber of items are pre-selected. You can remove these from the Selected list as required.3. From the Available list, add the attributes that you want to appear on the window to the Selectedlist.NOTE: You can do this in two ways: double-clicking the required attributes, or using the button. You canchange the order in which the attributes appear within the group box using the Up and Down arrows.4. Click Next.The Status Group Box Contents page appears.5. Select the required attributes, then click Next.The Collections page appears. Collections are one-to many related attributes. For example, Notes,Assignments and so on.6. If required, add the relevant collections to the Selected list, then click Finish.The window is created and the Window Manager component opens in a new window.NOTE: For information about configuring your window, see Window Manager on page 69.Viewing and modifying the properties of an attributeYou can view and modify the properties of a business object attribute, for example, to change thedescription of an attribute.To modify an attribute:1. On the Business Objects tree, double-click the required business object and attribute.The Properties grid updates.2. Make the required changes, then click .NOTE: One of the User Interface properties is Results Output Attributes. These are used when creating a queryof any kind, this includes in lists (as they use queries). You specify the attributes that are automatically added eachtime this business object is used in a query - be it a standard query or in a list. For example, if you create a querybased upon the Incident business object, you can specify that ID, Title and CreateDate are always added to theresults of the query.36
OBJECT DESIGNERCopying attributesRather than having to create many similar attributes, you can copy existing attributes, and make any fineadjustments as required.To copy an attribute:1. Locate the relevant business object and attribute.2. Select the required attribute, then drag it to the business object where you want to copy theattribute.The trees update, and the new attribute properties appear in the Properties grid.3. Make changes as required, then click .Privileging specific attributesYou can apply privileges at the attribute level. This is particularly useful if you have confidentialinformation, such as payroll information, that you do not want the majority of your organisation to see.WARNING: No privileged attributes will be included in a Knowledge Search.NOTE: The following procedure describes creating a business object without using the Business Object CreationWizard. You can create the same business object using the wizard, and would possibly be a quicker way of doingit. It is a personal preference whether or not you use the Wizard. You do not have to create a new business object,alternatively, you can just add a new attribute to an existing business object.To specify that a specific attribute is Privilegeable:1. Start the Object <strong>Designer</strong> component.2. On the Business Objects tree, select the relevant Module folder, then on the Actions list, clickNew Business Object.3. Name the business object, for example, Payroll.4. Add the required attributes, including the attribute that you want to make Privilegeable.5. On the Attributes tree, select the required attribute, then on the Properties grid, within the UserManagement group at the bottom of the Properties grid, alongside the Is Privilegeable property,select True.NOTE: By default. this property is set to False. If you leave this as False, then everybody who has read access tothis business object will be able to see this attribute. If you set the property to True, then access to this attribute iseither restricted or enabled for everybody.The Default Privileges dialog appears.37
LANDESK SERVICE DESK SUITE DESIGNER GUIDE6. In the Available Options list, select the required option, then click .The option is added to the Selected Options list.NOTE: If you want to enable both Read and Modify privileges, just clickSelected Options list., and both items are added to the7. Click OK.8. Save the business object by clicking .NOTE: You use the Administration component of <strong>Service</strong> <strong>Desk</strong> to configure which Groups and Roles have accessto this attribute, and refine the available options. For more information, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>Administrator Guide.Persistence typesPersistence types enable values to be automatically generated by <strong>Service</strong> <strong>Desk</strong>, rather than being specifiedby a user. The following persistence types are available:• CreateDateTime – specifies the date and time the record was created• UpdateDateTime – specifies the date and time the record was updated• CreateIdentity – specifies a unique number, for example Change ID• CreateUser – specifies the user who created the record• UpdateUser – specifies the user who updated the recordYou can specify the persistence type for the following data types: DateTime, Int32 and Object (wherethe relationship is to the System | User business object).Date and time attributesThere are two main types of date and time attributes. If you want the date and time to be generated by<strong>Service</strong> <strong>Desk</strong>, then you need to specify the persistence type. If you want users to be able to specify a date,for example, when a reminder is sent, or specify the date of birth of an employee, you do not need tospecify the persistence type – you leave the property blank.When you create a date/time attribute, you need to indicate whether you want to record the date and timethat the record was created, or the date and time that the record was updated. The value in the date/timeattribute will not change if you select the creation date/time. If you select the updated time, then thevalue changes each time the record is updated.To create a date/time attribute:1. On the Business Objects tree, select the relevant business object, then on the Actions list, clickNew Attribute.A new attribute appears on the Attribute tree with the default name, [New Attribute], selected.2. Type a name for the new attribute, then press ENTER.3. This is entered as the Title property and does not need to be unique. The Name is automaticallygenerated from the title, removing any spaces. The name must be unique.38
OBJECT DESIGNER4. On the Properties grid, alongside Data Type, select DateTime.The Persistence Type dialog appears.WARNING: This applies only to dates automatically generated by <strong>Service</strong> <strong>Desk</strong>. If you want to specify a date, forexample, a date of birth or due date or similar, then leave this property blank.5. Select the relevant options, then click OK.6. Complete the remaining information for the attribute.NOTE: For information about what the properties are, click the required property. Help appears at the bottom ofthe Properties grid.7. Click .Creating serial number attributesIdentity attributes are internal serial numbers, or any attribute that you want to increase automatically,without the need for user intervention. For example, you may give a serial number to each asset yourcompany owns, or employee number, or Incident ID and so on.To create an identity attribute:1. Create a new attribute with the Data Type of Int32.The Persistence Type dialog appears.This applies only to numbers automatically generated by <strong>Service</strong> <strong>Desk</strong>. If you want to specify anumber manually, then leave this property blank.2. Select the relevant options, then click OK.3. Complete the remaining information for the attribute.4. Click .User attributesYou can automatically record the name of the user who created or updated a specific record within yourdatabase. For example, you can record the name of the user who logged an Incident, and you can alsorecord who added a note to that incident. This information is gained from the login information of therelevant user, and is recorded automatically. No user-intervention is required.To create a user attribute, you need to create a relationship between the required business object and thesystem defined User business object.39
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: For more information about creating relationships,see Creating relationships on page 47.To create a user attribute:1. On the Business Objects tree, expand the relevant business object, then expand the Systemfolder.2. Drag User to the required business object.A relationship message box appears, telling you that a relationship has been created to access Userfrom the related business object. You are asked if you want to access all related instances of therelated business object from the User business object.NOTE: If you are creating a relationship between user and change, then you will probably choose Yes – you willwant to select a user and then choose to see all of the changes associated with that user. If you are creating arelationship between user and note, however, then you will probably choose No – you are unlikely to want to selecta user and then choose to see all of the notes associated with them.3. Click Yes or No as required.The Persistence Type dialog appears.4. Select the required options then click OK.5. Specify the remaining properties, then save the information you have specified.Configuring attachmentsTo enable you to send attachments to users directly from a process on the Attachment business object,there is a Behaviour named Message Source. There is also a Property called Mail Notification, whichenables you to specify the default text that is used for the message that is sent with the attachment.These properties are added automatically to the required business objects.To specify the default Subject and Message text sent with an attachment:1. Start the Object <strong>Designer</strong> component.2. Open the relevant Attachment business object, for example Incident Management |Attachment.3. In the Properties grid, alongside the Mail Notification property, click .The Templates dialog appears.4. In the Template list, select Message Subject or Message Body. In this example, we arecompleting the Message Subject first.5. In the Text box, type the text that you want to appear in the message.NOTE: You can add place holders to contain additional reference information, for example{Process}{Identifier}.40
OBJECT DESIGNER6. In the Template list, select Message Body, and in the Text box, type the required message text.7. Click OK.NOTE: You can override this text if required before you send the message to the relevant recipients.8. Click .NOTE: For information about sending attachments, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> User Guide.Creating a business object using the Object Creation WizardInstead of creating new business objects manually, you can use the Object Creation Wizard to help you.When using the wizard, you can also specify the default privileges for the new business object, and you canalso select groups and roles who can have those privileges.NOTE: When you create a new business object, make sure that you are creating it for the correct module.WARNING: If you specify a behaviour for a business object, you are unable to delete that business object from<strong>Service</strong> <strong>Desk</strong>. In addition, you cannot modify the behaviour selection once you have saved the business object.To create a business object using the Object Creation Wizard:1. In the Object <strong>Designer</strong> component, on the Business Objects tree, select the relevant module,such as Incident Management.2. On the Actions list, click Object Creation Wizard.41
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. In the Title box, type the name of your business object.As we are creating this business object within the Incident Management module, it would typicallybe used by the Incident business object. If you wanted it to be used by other items, then you wouldcreate it in a different module such as Process or System.You have three choices for the Type of object option:Created from Incident – creates an object with a relationship to Incident;Created from Task Incident – creates an object with a relationship to the Incident Task;Look-up – creates an object for a reference list, ordered list, or category.(Where Incident is the module from where you started the wizard.)4. Choose the required Type of object.If you choose Look-up, two more options appear on the page:42
OBJECT DESIGNER5. In the Look-up type list, you have three available options: Reference, Ordered or Category. Forthis example, select Category.6. In the Look-up from object list, select the business object that contains the information that youwant to look up. For this example, select Category. You can leave this option blank, and thenmanually link the items together after you have created the business object.NOTE: For example, if you select Reference or Ordered as the Look-up type and you have created the referenceor ordered lists within the System module (as is typically the case), then leave this option blank.7. Click Next.The Adding Default Attributes page appears.43
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThese are the typical attributes that you add to a new business object, and you can select all, ornone apart from the Name attribute as this is a mandatory attribute.NOTE: In our example, our Name is longer than the default number of characters. If this is the case, then you canincrease it using the number box alongside the Name box. The Name is taken directly from the Title that youspecified on the previous page.8. If required, change the length of the Name and Description attributes. For this example, increasethe Name length to 30.The length of the Details attribute is set to -1, as this indicates an infinite length, and is typicallyused for multi-line text fields. You can change this if required.44
OBJECT DESIGNER9. Select the required options, then click Next.The Set Object Privileges page appears.10. Select the privileges that you want to apply for this business object, for example Read and Update,then click Next.The Apply Privileges to Group page appears. On this page, you select the Group Type, for example,Support Group, and the required Groups to which you want to apply these privileges.NOTE: You can select more than one Group Type on this page, and the result is that in the Selected Groups list,you may have groups of more than one type.45
LANDESK SERVICE DESK SUITE DESIGNER GUIDE11. Expand the Group Type list, and select the required item. For example, Support Group.12. In the Available Groups list, select the required group, then click to add it to the SelectedGroups list. Repeat as required.13. If required, select a different Group Type and add the required groups in the same way.14. Click Next.The Apply Privileges to Roles page appears.15. In the Available Roles list, select the required role, then click to add it to the SelectedRoles list.16. Repeat as required, then click Next, then click Finish.The business object is created, and the privileges that you have specified for this business object areautomatically applied to the selected groups and roles.17. Click .46
OBJECT DESIGNERNOTE: As mentioned on this page, when you click Finish, the business object is created, but not saved. Beforeyou save your business object, you can add additional attributes and properties. The same rules apply as if youwere creating a business object without using the wizard in that there are certain items that you cannot changeafter you have saved the business object. For example, Deletion type, Version Control and so on.Relationships<strong>Service</strong> <strong>Desk</strong> uses a relational database. This means that you store related information in separatebusiness objects. You define the relationships between the business objects, and <strong>Service</strong> <strong>Desk</strong> uses therelationships to find associated information stored in the database.For example, suppose you want to phone a user with questions about a problem the user logged. Userphone numbers are recorded in the USER business object; problems are recorded in the PROBLEM businessobject. When you tell <strong>Service</strong> <strong>Desk</strong> which Problem you are interested in, <strong>Service</strong> <strong>Desk</strong> looks for the phonenumber based on the relationship between the two business objects. It does not store the phone numbereach time the user logs a problem – it just stores it once, with the related user business object.Objects and collectionsTo establish a relationship between two business objects, you link one business object to the other. Foreach relationship, one business object is referred to as the Object of the relationship, and the otherbusiness object is referred to as the Collection business object. In the following example, the Object of therelationship is Request and the Collection of the relationship is Price Quotation, that is, there are manyPrice Quotations related to one Request.To create the relationship in this example, you drag the Request business object onto the PriceQuotation business object.Creating relationshipsTo create a relationship:1. On the Business Objects tree, drag the core business object to the business object with which youwant to create a relationship.A relationship message box appears, telling you that a relationship has been created between thebusiness objects. You are asked if you want to create a collection of the related business object onthe core business object.2. Click Yes or No.If you click Yes, then using the example above, an Object relationship is created for the PriceQuotation business object, and a Collection relationship is created for the Request businessobject.If you click No, then an Object relationship is created for the Note business object only. This meansthat you can view the New Starter business object from the Note, but you cannot see the Notebusiness object from the New Starter.NOTE: If you are creating a relationship between user and change, then you will probably choose Yes – you willwant to select a user and then choose to see all of the changes associated with that user. If you are creating arelationship between user and note, however, then you will probably choose No – you are unlikely to want to selecta user and then choose to see all of the notes associated with them.3. Complete any properties as required.Business object – Specifies the business object in which this relationship exists. This isautomatically populated, and cannot be modified.47
LANDESK SERVICE DESK SUITE DESIGNER GUIDETitle – The relationship title is the name by which you will usually refer to the relationship. Titlescan contain any characters (including spaces) and do not need to be unique.Name – The name of the relationship. This is automatically generated, but you can modify it ifrequired. Relationship names can consist of up to sixty-four alphanumeric characters, with nospaces. You can use only the following characters A through Z, 0 through 9 (not as the firstcharacter), _ (underscore).Description – Use to describe the function of the relationship. This description is used as a defaultdescription when you add a related control to a window.Relationship type – Object or collection. This is automatically generated, and cannot be modified.For more information about objects and collections, see Relationships on page 47.Related attribute – Specifies the name of corresponding attribute on the related business object.This is automatically generated, and cannot be modified.Related Business Object – Indicates the business object to which this business object is related.This is automatically generated, and cannot be modified.Is Mandatory? – Indicates whether this relationship must exist before you can save the businessobject instance.Is Owner? – Indicates whether this object is the owner for the relationship. This is used whensetting up view rules based on a collection on a process object. For more information, see CreatingViews on page 109.NOTE: To delete a relationship, in the Attributes list, right-click the relevant relationship, then click DeleteAttribute on the shortcut menu. Remember to delete both sides of the relationship (if required).WARNING: You cannot, however, delete a relationship after you have saved it because this would affect theintegrity of the database, that is, someone may have already specified data using the business objects which formthe relationship. If you delete the Object of the relationship, the Collection of the relationship is automaticallydeleted.4. Click .48
OBJECT DESIGNERParent-child relationshipsWhen you link objects with other objects of the same type, then a parent-child relationship is created. Forexample, you can link Incidents to other Incidents, thereby creating a parent-child relationship.You can specify that any items added to the parent are also added to the children. For example, if you add anote to the parent incident, the same note is added to the child incidents. The same note is not linked to allof the child incidents, rather, copies of the note are added to each child incident.Not only are items added, but actions are also applied. For example, if the parent item is closed, then, if thechild items are in a state to be closed, then they will also be closed.NOTE: There will be instances when child items cannot be closed. If that is the case, then you are notified whichitem cannot be closed.Parents can be linked to children in either a downward or upward direction. That is, either items added tothe parent are reflected in its children (downward) or items that are added to the children are reflected inits parent (upward). You cannot specify both directions.In addition to specifying the Propagation Action property on a parent or child collection attribute, youalso need to specify that specific actions are propagated. For more information, see Modifying actions onpage 52.49
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo specify parent-child linking on an attribute:1. Open the required business object.2. In the Properties grid, alongside the Propagate Actions property, set the required value.If you select the...Parent collection attribute,Children collectionattribute,then alongside the Propagation Action property,select True to indicate that any changes made to the Child item areapplied to the Parent item.select True to indicate that any items added or changes applied to theParent item are applied to the Child item.3. Save the changes you have made.Linking unlinked business objectsSometimes you will want to link objects together that are not currently linked together. For example, youcould link the incident note category object with the support group object so that you associate specificsupport groups with specific incident note categories. This would then enable you to create a filter thatdisplays only those categories on an incident note that are associated with the specific support group.NOTE: The only objects that you can link together in this way are those that are available within theAdministration component, because you use the Administration component to link the individual itemstogether.NOTE: For more information about creating object filters, see Data filtering on page 58.The first step is to link the business objects together, then you can link the specific items together.To create the linking object:1. Start the Object <strong>Designer</strong> component.2. On the Business Objects tree, select the module folder in which you want to create the linkingobject.For example, Incident Management.NOTE: The objects you can link do not depend on the module you select: the module you select only sets themodule in which the linking object will be created. However, we recommend that you select a module that containone of the objects you are linking.3. On the Actions list, click New Linking Business Object.The Linking Objects Selection dialog appears.50
OBJECT DESIGNERThe only business objects listed within the folders on this dialog are those that are available withinthe Administration component.4. In the tree on the left of the dialog, expand the relevant module folder.For example, Incident Management.5. Select the required business object.For example Note Category.6. In the tree on the right-hand side of the dialog, select the module and business object with whichyou want to link the Note Category.For example, System, then Support Group.7. Click OK.A new business object is created, and two attributes are automatically added. Notice that the iconhas changed to .8. Type a Title for the business object, for example NoteGroupLink.9. You do not need to specify any additional attributes, so click .NOTE: You will see a new collection on each of the selected business objects. In this example, the new collectionwill appear on both the Note Category business object and the Support Group business object.51
LANDESK SERVICE DESK SUITE DESIGNER GUIDELinking the items togetherWhen you have linked the business objects together, you then need to use the Administrationcomponent to link the specific items together. As the items that you are able to link are on different treeswithin the Administration component, you need to open two instances of the component at the sametime.To link the specific items together:1. Start two instances of the Administration component.NOTE: To start a second instance, right-click the Administration component on the shortcut bar, then click Openin New Window.2. In the first instance of the Administration component, expand the relevant tree for one of thebusiness objects that you have linked.In this example, of linking support groups to note categories, expand the User Management tree,and then expand the Groups and Support Groups folder.3. In the second instance of the Administration component, expand the required tree for the otherside of the linkage.In this example, expand the Categories tree, then the Incident Management and NoteCategory folders.4. Drag the required Note Category onto the link folder under the required Support Group.ActionsActions enable you to progress a process or add further information to a process. For example, you can addnotes to a process to specify further information by clicking the Add Note action. You can associate Actionswith windows so that the required information is specified. For example, you can create an action calledDefine Needs. The window you associate with this Action enables users to specify the requirements for anew employee, what software and hardware they need, whether training courses need to be booked andso on. The Actions that you specify appear in the Actions list in the workspace when a user gets to thatspecific stage in the process.Modifying actionsWhen you create a relationship between two business objects, a new action is automatically created on thecollection attribute. You can modify it as required.If you are using parent-child linking, then you can specify whether the action will be added to the parent orchild object. For example, if you want any notes added to a parent Incident to be added to its childIncidents, then you would specify that the action of Add Note is propagated to its children.To modify an action:1. Open the required business object.2. Click the relevant collection attribute, then on the Actions list, click Manage Actions.The Manage Actions dialog appears.NOTE: Alternatively, right-click the relevant collection attribute (), then click Manage Actions.52
OBJECT DESIGNER3. Make the required changes, and if you want to propagate the action to related child items, thenselect the Propagate to Children check box.4. Click OK.Specifying Tip Text for ActionsTo help your users in their tasks completing a process, you can add Tip Text to the actions that appear inthe Actions list. This applies to processes used by the Workspace component. You specify this using theObject <strong>Designer</strong> component.When you specify that a linked collection has an action, you specify the Name of the Action. The Tip Text istaken from the Description that you specify. If you have already defined a description for an action, thenthis text will automatically appear.NOTE: If you do not want Tip Text to appear, then we suggest that you remove the text in Description field on theActions dialog.To specify Tip Text for an Action:1. In the Object <strong>Designer</strong> component, open the required business object; for example, Change.2. Select the required collection, for example Notes, then on the Actions list, click Modify Action.The Action dialog appears.3. In the Description box, type the text that you want to appear when a user positions their mouseover the action in the Actions list.NOTE: We recommend that you keep the text as concise as possible, and not too long so as not to interfere with theworkspace.53
LANDESK SERVICE DESK SUITE DESIGNER GUIDE4. Click OK.5. Repeat as required for the remaining collections in the Attributes list, then click .If the action is not being used in an active process, then you can also create actions using Process<strong>Designer</strong>.To specify action Tip Text using Process <strong>Designer</strong>:1. In the Process <strong>Designer</strong> component, expand the Business Objects tree ( ).2. Expand the required folders for the business object for which you want to create an action, forexample, Incident.3. Select the Action folder, then on the Actions list, click New.The action Properties grid appears.4. Alongside the Title property, type the name of the Action as you want it to appear on the Actionslist.5. Alongside the Description property, type the text that you want to appear as Tip Text.6. If you want a window to appear when the Action is clicked, then alongside the Allow Associationwith Window property, select True.7. Click .Creating new ordered listsYou can create business objects that store values in an ordered list, for example Severity, Urgency, and soon. You can change the order in which these items appear in the list using the Administrationcomponent.NOTE: For more information about maintaining ordered lists, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> AdministratorGuide.IMPORTANT: When you create an object for a new ordered list, you need to select a behaviour during the creationof the object. You can select this behaviour only during the initial creation of the object.To create a new ordered list object:1. On the Business Objects tree of the Object <strong>Designer</strong> component, select the relevant modulefolder, then on the Actions list, click New Business Object.The Behaviour Selection message appears, asking if you would like to specify a behaviour.2. Click Yes.The Behaviour Selection dialog appears.3. In the Available Items list, select Ranked (Creation Only), then click .Ranked (Creation Only) moves to the Selected Items list.4. Click OK.The object is created.54
OBJECT DESIGNER5. Add the required attributes and properties as usual, then click .The ordered list object is saved, and a new branch appears in the Ordered Lists tree in theAdministration component.NOTE: You need to create a window definition for the new object before you can populate the ordered list.Creating new reference listsYou can create business objects that store items in a list, for example Title (Mr, Miss, Mrs and so on),Department, Location and so on. You create the reference object using Object <strong>Designer</strong>, create a windowusing Window Manager, then populate the list using the Administration component.To create a reference object:1. On the Business Objects tree of the Object <strong>Designer</strong> component, select the relevant modulefolder, then on the Actions list, click New Business Object.2. Type a name for the business object, for example Location, then alongside the Behaviourproperty, select Reference.3. Complete any remaining properties as required.4. Click .5. On the Attributes tree, select the business object, then on the Actions list, click New Attribute.6. Type a name for the attribute, for example, Location ID, then alongside the Is Name? property,select True.7. Set a Max Length if required, and complete any remaining properties as required.8. Add any other attributes if required, then save the changes you have made.9. You now need to create a window for this object. For information about creating windows, seeWindow Manager on page 69.When you have created the window, you can then use the Administration component to create therequired items for this object.NOTE: For more information about creating the items within the list, see Reference Lists in the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong><strong>Desk</strong> <strong>Suite</strong> Administrator Guide.Ordered and reference lists for different audiences in WebAccess<strong>Service</strong> <strong>Desk</strong> enables you to design different versions of a window for different audiences. For example, youcan create an Incident window for analysts that contains many more fields than the Incident windowintended for end-users. You then use Views in Window Manager to make the appropriate window appear asrequired: analysts see the complete window with all of the technical fields, and end-users see the smallerwindow. Similarly, you could use this functionality to display the Incident window in different languages todifferent sites.NOTE: For more information, see Publishing windows on page 107.You can also design ordered and reference lists for use in Web Access that display different values ondifferent window designs, but store the same master value in the database. For example, you could createan Incident window in English with values for Urgency of High, Medium, and Low, and then create anIncident window in Norwegian with corresponding values of Stor, Middel, and Lav.If you saved an Incident using your English window with the following value set:55
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhen you opened this Incident using your Norwegian window, you would see:You implement this by adding an alternative string attribute to the object for the list, populate this valueusing the Administration component, and then use Window Manager to set which attribute you want todisplay in the list for each version of the window.NOTE: This functionality is available in Web Access only.NOTE: The procedure below describes how to configure an Ordered list to display different values for a differentaudience. You can use a similar procedure to configure a Reference list.To configure an Ordered list to display different values for a different audience:1. In Object <strong>Designer</strong>, open the object for the Ordered list.For example, Incident Management\Incident Urgency.2. Add a new attribute with the Data Type set to String to this object.3. In Window Manager, add this attribute to the corresponding window.For example, Incident Management\Incident Urgency window.4. In Window Manager, open the window where the list will be used with the alternative values.For example, the End-user's Incident window.5. Display the Properties grid.6. Select the Ordered list control on the window, then in the Display Name list in the Propertiesgrid, select the new attribute that contains the alternative values that you want to display on thiswindow.7. Save the window.8. In the Administration component, open the required Ordered list entries and populate the newfield that you have just added with the alternative values.Creating items for option buttons and listsBefore you can add custom lists and option buttons to your window, you need to create the list items usingObject <strong>Designer</strong>.To create a set of option button items:1. Start the Object <strong>Designer</strong> component, and open the business object to which you want to add aset of items to be used as option buttons. For example, Incident.2. Create a new attribute, and name it as required.3. Alongside the Data Type property, select either Int16 or Int32.56
OBJECT DESIGNER4. Alongside the Allowed Values property, click .The List <strong>Designer</strong> dialog appears.5. In the Display Text, type the name for the list item, then click Add.NOTE: The Value of list items starts at 0.6. Repeat as required.NOTE: To change the order of the option buttons or list items, select the relevant item, then click either Up orDown. To remove an item, select it, then click Remove.7. Click OK.8. Save the changes you have made.You are now able to add these option buttons to the window based upon this business object. Formore information, see Adding option buttons and custom lists to a window on page 83.57
LANDESK SERVICE DESK SUITE DESIGNER GUIDEData filteringYou can configure <strong>Service</strong> <strong>Desk</strong> so that the content of lists shown on your windows vary according toinformation that you have specified elsewhere on that window. For example, you can set a filter on a list sothat the list displays only CIs that are associated with the selected user. Alternatively, you could set a filteron the category list, so that different categorization options are available for different configuration items.NOTE: You can create new object links that you can then use for data filtering. For more information, see Linkingunlinked business objects on page 50.Creating a filter ruleYou can define filter rules that limit the results returned by one object based on the value of anotherobject. You can use either a filter query on your filter rule, or you can specify a runtime value.The following example shows how to display only those Configuration Items (CIs) that are associated withthe selected user on the Incident window. Because we want to limit the CIs that are displayed on theIncident window, the filter rule is based on the Configuration Item attribute on the Incident object.To create a filter rule:1. Start the Object <strong>Designer</strong> component, and navigate to the business object on which you want toimpose filters.Following our example, Incident Management | Incident.2. On the Attributes list, select the attribute that you want to add the filter to.In this example, Configuration Item.58
OBJECT DESIGNER3. In the Properties grid, alongside the Filter Selectors property, click .The Attribute Filter Selectors dialog appears.4. Click New Filter Rule.The Attribute Filter Selector dialog appears.You can choose to limit the records that are returned by the filter rule either with a filter query thatcontains criteria to select only the required values, or with a runtime value that sets the value tothat specified elsewhere. For example, you could use a runtime value to set the group field on anassignment to match the primary group for the analyst who logged the incident.NOTE: For more information about using a runtime value, see Data filtering using a runtime value on page 62.59
LANDESK SERVICE DESK SUITE DESIGNER GUIDEIn our example, we are going to use a filter query that selects only CIs that are associated with theRaise User for the incident.5. Click the Select a filter query option button, then in the list, click [New].The New Filter dialog appears.NOTE: If there is already a suitable filter query, you can select it in the list.NOTE: For more information about creating filter queries, see Filters on page 203.6. Specify a Title for the filter.NOTE: Notice that the Module and Business Object for both the Based On group and the Filter By group arealready defined. The Based On object is the related object for the attribute that you are setting up the filterselector for (in our example, Configuration Management\Configuration Item). The Filter By object is theobject that the attribute for the filter selector is on (in our example, Incident Management\Incident). Thismeans that when you add criteria to the filter query, you will be matching attributes on the Configuration Item withattributes on the Incident.7. Select the Everyone option button, then click OK.The Filter Builder appears.8. From the Attributes tree, drag Title onto the Selected Attributes list.NOTE: You can also add any attributes that you want to use on a complex list on a window design (for moreinformation about complex lists, see Complex lists on page 94).9. When you have added the required attributes, click Next.The Criteria page appears. This is where we set the conditions that limit the results that arereturned.We want to specify a runtime value that selects the CIs that are associated with the Raise User forthe incident. CI to User is a many-to-many link: a user may have many CIs (a computer, a monitor,a printer,and so on), and a CI may be associated with many users (for example, a networkedprinter). For this reason, there is a collection of User Configuration Items on the ConfigurationItem object. It is the User attribute on this collection that we want to filter by.This means that we want a criterion of User Configuration Items.User Is Equal To (RaiseUser).10. From the Attributes tree, drag the attribute that you want to base the filter on onto the CurrentCriteria list.In our example, expand the User Configuration Items collection, and then drag User onto theCurrent Criteria list.The Criteria dialog appears, with the Attribute field already completed with User ConfigurationItems.User.11. In the Condition list, select Is Equal To.NOTE: In addition to specifying an absolute value or a runtime value for the criterion, you can select a Conditionthat sets the criterion in itself, such as Is Current User. Selecting Is Current User for our example woulddisplay all CIs associated with the current user, which is not what we want. We want the CIs that are associatedwith the user that the incident was raised for – the Raise User. To do this, we need to set a runtime value for thecriterion.12. Click the Specify a runtime value option button.Further controls are added to the Criteria dialog:60
OBJECT DESIGNER13. In the tree, select Raise User, then click OK.User Configuration Items.User Is Equal To (Raise User) is added to the Current Criterialist.14. On the Filter Builder window, click Finish, and then click Yes to save the changes you have made.The Filter Builder closes and the Attribute Filter Selector dialog contains the new filter.15. In the Select client type group box, select Any if you want the filter to apply to all <strong>Service</strong> <strong>Desk</strong>clients, or select Web Access only if you want the filter to apply only to applications that are deliveredthrough Web Access, such as Web <strong>Desk</strong>, then click OK.The filter appears in the Filter Rules list. Note that the Type is set to Query.16. Click OK.The filter rule is added to the attribute.17. Click to save the changes to the object.NOTE: To modify an existing filter rule, select it in the Filter Rules list, then click Modify.NOTE: You could create another filter rule so that only CIs that are of the CI Type selected on the incident areselected. You do this by matching the Class Type for the CI with the Configuration Item Type selected on theIncident, as a runtime value.That is: AND Class Type Is Equal To (ConfigurationItemType)61
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: Wherever possible, set a filter on an attribute that is specific to the relevant business object, rather than onan attribute that is inherited from another business object. If you must create a filter on an inherited businessobject (that is, if the attribute that it is filtered by is only available on the inherited business object), then when youcreate the filter rule, you need an extra condition so that it is applied only for a specific type of business object.For example, on the Incident business object, an attribute filter on the Process/Raise User needs to filter the usersby the Customers selected on the Incident window. This works correctly for the Incident. However, you cannotselect a Raise User on the Change business object because the Raise User attribute is inherited from the Processbusiness object, so it always tries to filter by Incident/Customer. Using this example, you cannot define this filteron the Process/Raise User attribute, because Customer is not part of the Process business object, but is native tothe Incident business object. Therefore, the filter must remain on the Incident/Raise User, but must not be appliedto other business objects. You can achieve this by adding a filter condition to apply the filter only if the BusinessObject is Incident.Data filtering using a runtime valueWhen setting up data filtering, as an alternative to using a filter query, you can specify a runtime value (forexample, to select the Primary Group for the Raise User).To specify a runtime value as a filter rule:1. Display the Attribute Filter Selectors dialog for the required business object (for more information,see Creating a filter rule on page 58).2. Click New Filter Rule.The Attribute Filter Selector dialog appears.62
OBJECT DESIGNER3. Click the Select a runtime value option button, then click .The Select Filter Path dialog appears.4. Navigate to and select the required value, then click OK.The filter path is selected and the Attribute Filter Selector dialog appears.5. In the Select client type group box, select Any or Web Access only, then click OK.The filter rule is added. Note that the Type is set to Path.6. Add any further filter rules, and optionally any filter rule conditions (see below) you require, thenclick OK on the Attribute Filter Selectors dialog.7. Save the changes to the object.Adding conditions to a filter selectorYou can, if required, add conditions to the filter selector so that the filter runs only if the condition is met.In the following example, the filter rule added in Creating a filter rule on page 58 runs only if a check box onthe incident is not selected.NOTE: For this example, a new attribute, called Disable CI Filter is needed on the Incident object. This attributehas a Data Type of Boolean, with the Default Value set to False. When added to the Incident window, thisprovides an unselected check box.We want the CI filter to apply when the Disable CI Filter check box is not selected – when the value ofDisable CI Filter is False. If an end-user calls to log an incident for an item that is not associated withthem, the analyst can select the Disable CI Filter check box. This sets the value of Disable CI Filter toTrue, which will then disable the CI Filter, thus breaking the link between the User and the CI.To add a condition to the filter selector:1. On the Attribute Filter Selectors dialog, select the Filter Rule that you want to apply the conditionto, then click New Condition.A new line [Select Path] is added to the Filter Rule Conditions list.63
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. On the tree, select Disable CI Filter.3. In the Comparison type list, select Equals.4. Select the Specify an absolute value for this attribute option button.5. Type False in the box.64
OBJECT DESIGNER6. Click Apply Condition.The condition appears in the Filter Conditions list and the Filter Rules list updates to show that thefilter rule is now conditional. The filter will be applied only when this condition is met – when thevalue of Disable CI Filter is False (the check box is not selected).NOTE: You can add further filters and conditions as required.7. Click OK, then save the changes to the object.65
LANDESK SERVICE DESK SUITE DESIGNER GUIDEConfiguring parent-child linkingAdd Child ProcessWhen you attach a child process to a parent process, or detach a child process from a parent process, thelist of child processes associated with that process is displayed. In the illustration below, child Incidents areshown.When you select a specific process from the list, it appears in the Children folder on the Process tree.To set up the default query for process linking:1. In Object <strong>Designer</strong>, open the business object for which you want to set up the default query, forexample, Incident.2. On the Properties grid, alongside the Default Query property, select the relevant system querythat you created.Only those system queries relevant to the current business object are displayed.WARNING: When you change the Default Query property, it is saved immediately – not when you save thechanges to the object.3. Click to save any further changes you made to the object.66
OBJECT DESIGNERSpecifying which items of a process are auditedYou can configure what is recorded in the Audit Trail by specifying that certain attributes are Auditable. Todo this, you use the Object <strong>Designer</strong> component.NOTE: We recommend that you do not specify too many attributes are Auditable, as this may impact theperformance of your system. Select the pertinent attributes, for example, Priority or Category, as it may beuseful to know when the Priority or Category of your process changes. Description is less important in Auditableterms.To specify which attributes are audited:1. Start the Object <strong>Designer</strong> component, and open the required business object, for example,Incident.2. On the Attributes list, select the required attribute, for example Category.3. In the Properties grid, alongside the Is Auditable? property, select True.4. Repeat as required, then click .Now, when the category of the Incident is changed, it is recorded in the Audit Trail.NOTE: You can export the Audit Trail. For more information, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> User Guide.‘As you type’ spell checkingYou can configure <strong>Service</strong> <strong>Desk</strong> to use ‘As you type’ spell checking. This may be familiar to you if you useMicrosoft Word or other similar applications, where any misspelled words are underlined to inform you thatyou have made a mistake. To use ‘As you type’ spelling, you configure the required attributes to use thisoption using the Object <strong>Designer</strong> component. For example, the Description attribute on the Processbusiness object.NOTE: If you enable this option on the Process business objects, then this is inherited on all of the sub-businessobjects. For example, Incident, Task, Problem and so on.NOTE: Spell checking is unavailable if the culture is set to Japanese.To configure the As you type spell checking:1. Start the Object <strong>Designer</strong> component.2. Open the required business object, and on the Attributes tree, select the required attribute.3. On the Properties grid, alongside the As You Type Spell Check property, select True.4. Click .5. Repeat as required. For example, on the Text attribute in the Note business object.Now, when a user misspelled a word in the Details field on the Incident window, it is underlined in red.67
LANDESK SERVICE DESK SUITE DESIGNER GUIDE68
Window ManagerWhen you have created the required business objects, their attributes and relationships, then you areready to customise the <strong>Service</strong> <strong>Desk</strong> windows using the Window Manager. In this chapter you can find outabout:• Design concepts on page 70• Using the Window Manager on page 71• Window definitions for Web Access on page 73• Creating a new window on page 78• Adding controls to a window on page 81• Complex and standard lists on page 93• Customising Web Access lists on page 96• Collections on page 98• Direct lookup from external data sources on page 101• Adding related controls to a window on page 103• Adjusting the layout of controls on page 105• Publishing windows on page 107• Filtering lists by other fields on page 112• Copy related attributes on page 115• Address management on page 118
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDesign conceptsWhen you design the windows using the Window Manager, take care to present the information anddatabase controls in a way that enables the user to work at maximum efficiency. This means producingwindows that are easy to use and that work in a logical way.NOTE: For further user interface design <strong>guide</strong>lines, refer to Microsoft’s Windows Interface Guidelines for SoftwareDesign.Window layoutAlign the controls on a window in columns and make them run from left to right and from top to bottom.Set up an intuitive tabbing sequence (the order of controls to which the cursor jumps on each successivepress of the TAB key), ensuring the users’ eyes are automatically drawn to the next control. For moreinformation about setting the tabbing sequence, see Reordering controls on page 106.Make controls large enough to contain the values that are typically entered. <strong>Service</strong> <strong>Desk</strong> automaticallyscrolls text boxes, but it is much better if the control is large enough to avoid the scrolling. Similarly, makedrop-down list boxes wide enough to show their full contents, rather than truncated text.AcceleratorsAccelerators enable users to use the keyboard rather than the mouse to perform different functions. Usingthe keyboard can be quicker and more efficient in some situations. To enable keyboard shortcuts you mustdefine an accelerator for each control. You define accelerators by typing an ampersand (&) in front of theaccelerator character, which is then underlined on the window.NOTE: By default, when you add a control to a window, it has a predefined accelerator key. You can change this ifrequired.To choose an accelerator:• Use letters at the beginning of the first or second word of the label• Use a distinctive consonant or vowel in the label• Use letters with wide widths, such as w, m, and capital letters• Avoid letters with descenders, such as p, g, q or y• Avoid letters next to a letter with a descender• Avoid letters that are only one pixel wide, such as i or lGroup boxesWe recommend that you use group boxes to group similar fields together on a window.IMPORTANT: Group boxes are particularly important in Mobile Web <strong>Desk</strong> and in Web Access. Fields that are not ina group box all appear in a separate group called Other at the bottom of the Mobile Web <strong>Desk</strong> window, so usinggroup boxes gives you more control over the appearance of these windows. Also, group boxes are used to improvethe layout of your Web Access windows.Use group boxes to make the visual layout of your windows more interesting, and to give the user somevisual clues about the type of data that is being entered.NOTE: For more information, see Adding group boxes to a window on page 88.70
WINDOW MANAGERUsing the Window ManagerThe Window Manager enables you to create one or more windows for each business object within yourdatabase. Each control you add to the window is mapped to an attribute of that business object, or arelated attribute. When you have created the relevant business objects and attributes using the Object<strong>Designer</strong>, you can then add them to a window.You can also add additional text that is not mapped to any attribute to a window. Within the WindowManager, these are called Labels. For example, you can add explanations to help users complete thewindow. For information about adding labels to your windows, see Adding labels to a window on page 86.The Business Objects treeThe Business Objects tree lists all of the available business objects. You expand a business object to see itsassociated windows. You can define any number of windows for a business object, however, you can setonly one of them as the default window.When you have selected the relevant business object and window, you can then use the Attributes tree.71
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe Attributes treeThe Attributes tree lists all available attributes, relationships, collections and controls that you can add tothe window.NOTE: At the top of the Attributes tree are four buttons that enable you to show or hide attributes, categories,relationships and collections for the window you are designing. These icons toggle on and off, so if you want to seeonly categories, then make sure that the other three icons are toggled off.Click...to change the Attributes tree to show...only those attributes that are associated with the business object that your window is based on.only the categories that are associated with the business object that your window is based on.You can add any number of attributes from the category, but you must ensure that you havefirst added the Name attribute to the window.only the relationships that are associated with the business object that your window is basedon.only the collections that are associated with the business object that your window is based on.72
WINDOW MANAGERThe Properties gridThe Properties grid enables you to specify information about the window and the controls you are adding tothe window. For example, you can modify the text that appears as tooltips for controls, the label for thecontrol, specify whether it is a read only control and so on.The Properties grid changes to the currently selected item, whether at the window level, or at the attributelevel. This means that you must specify different properties. To help you complete the Properties grid,below it is context-sensitive help, which gives you more information about the currently selected property.Window definitions for Web Access<strong>LAN<strong>Desk</strong></strong> Web Access is the delivery platform for <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong>'s web clients <strong>LAN<strong>Desk</strong></strong> Web <strong>Desk</strong>and <strong>LAN<strong>Desk</strong></strong> Self <strong>Service</strong>. These applications provide a rich user interface through a web browser foranalysts and end-users respectively. For more information, see the separate <strong>LAN<strong>Desk</strong></strong> Web Access, Web<strong>Desk</strong>, and Self <strong>Service</strong> documentation.<strong>LAN<strong>Desk</strong></strong> Web Access displays windows in a different way from the <strong>Service</strong> <strong>Desk</strong> console. Whereas thewindows for the console are displayed with the controls positioned at fixed positions (absolute positioning),Web Access windows are displayed on a grid layout so that the controls resize as you resize the browserwindow. Also, multi-line text boxes initially appear with a configurable number of lines available, but thengrow as users type more lines of text into them.You design only one set of window definitions in Window Manager – the absolute-positioned windows,which you can then make available to Web Access in grid-layout form if required. Within Window Manageryou can test the appearance of both types of window.73
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: If you do not make a window available to Web Access, then Web Access creates the window automatically ifit ever needs it. The main disadvantage of this is that you have no control over which fields appear on the windowor on the window's layout.There are, however, improvements in the performance of the system as a whole if you limit the number of windowdefinitions in the system. Therefore, we recommend that you make available to Web Access only those windowswhere you want significant control over the window layout. We recommend that you make available for Web Accessas few windows as possible initially, and then create other windows after considering the use of those that wereautomatically created.Advice for Web Access window designThe advice given below will help you to use Window Manager to optimise the appearance of your windowsin Web Access.• Make Available in Web Access – Make sure that you make your windows available for WebAccess. Until you do this you will have no control over the appearance of the windows, and WebAccess may just place your attributes in a list on the window.To make a window available in Web Access, select the required window in Window Manager and clickMake Available in Web Access in the Actions list.• Use the Format menu to align controls – Web Access windows are drawn on a grid rather thanusing the absolute positioning used in console. When designing your windows, imagine that thereare columns going down and across the screen, like a table. If you want controls to line up in thesame column, you must make sure that they are all perfectly aligned with each other in the design.If they are slightly misaligned, the control may be moved out of that column and into the next one.We recommend that you align the controls by selecting the required controls in Window Managerand then using the Format menu item. This is a much more accurate technique for aligningcontrols than dragging them.• Align with Groupbox – If you use group boxes on your windows, select each group box and thenuse the Align with Groupbox property to align the group boxes with each other. This makes surethat the columns within one group box are aligned with the columns in another group box.• Use the same number of columns – Try to use the same number of columns of controls in eachrow on a window design.• HTML fields have a fixed height – be aware that you cannot change the height of fields thathave the String SubDataType set to Html in Object <strong>Designer</strong>.• Group boxes in the same row – Group boxes that are alongside each other on a window areconsidered to be in the same row, and are therefore always drawn the same height in Web Access.This means that if you have several group boxes above each other alongside a single tall group box,you need to put the group boxes that are above each other inside another group box. Otherwise,the top group boxes in each column will be made the same height.74
WINDOW MANAGERIn the example above, the top group box in each column is considered to be in the same row, sothey are drawn the same height in Web Access, with the two remaining group boxes drawn below.If you nest the three group boxes on the left inside another group box, Web Access draws the twolarger group boxes the same height.• Minimum Lines (Web Access) – You can set the minimum number of lines shown in multi-linetext boxes, as described below.Setting the minimum number of lines shown in multi-line text boxesTo help you to identify empty multi-line text boxes in Web Access, they initially appear on screen with asmall number of lines available, but grow as text is entered and further lines are required. You canconfigure the minimum number of lines shown for a multi-line text box as part of the window design.To set the minimum number of lines shown in multi-line text box:1. In the <strong>Service</strong> <strong>Desk</strong> console,.start Window Manager and open the required window design.2. Select the required multi-line text box, then display the Properties grid.3. Alongside the Minimum Lines (Web Access) property, enter the minimum number of lines thatyou want to be shown for a multi-line text box in Web Access, then save the changes.NOTE: The minimum number of lines does not apply to windows appearing in Mobile Web <strong>Desk</strong>.Making windows available to Web AccessYou can make individual windows available to Web Access, or make several available at one time.WARNING: Design Transfer does not maintain the availability of window designs for Web Access. If you import awindow using Design Transfer, you will need to make it available to Web Access.To make a single window available to Web Access:1. Make sure that the System Setting Web Access URL is set to match the URL for your Web Accessinstallation.This is used when you test the Web Access version of a window.75
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. In the Business Objects tree of Window Manager, open the window design that you want tomake available to Web Access.3. In the Actions list, click View in Web Access.The window appears as it would in Web Access.NOTE: When you first start viewing Web Access windows, you need to complete your Web Access log in details4. Make any required changes to the window definition.5. When you are happy with the appearance of the window in Web Access, in the Actions list, clickMake available in Web Access.The window is made available to Web Access, and its icon changes from to to indicate that thewindow definition is available in both types of window.6. If you want to make the window the default window for Web Access, in the Actions list, click Set asDefault Web Access.A red checkmark is added to the icon for Default Web Access windows.If you want to make the window the default window for Console, in the Actions list, click Set asDefault.A green checkmark is added to the icon for Default Console windows.To make multiple windows available to Web Access:NOTE: We recommend that you view the individual windows in Web Access and make any final changes to themusing Window Manager before following this procedure.WARNING: Do not enable all of the windows for Web Access in one go, because this can cause "duplicate entry"errors. Instead, enable only the required default windows, and then repeat the procedure for any further windows.1. In Window Manager, click Modules at the top of the Business Objects tree.2. In the Actions list, click Enable Windows for Web Access.The Enable Windows for Web Access dialog appears.3. Expand the Modules tree and select the check boxes for the windows that you want to makeavailable to Web Access.NOTE: When you select a check box on the modules tree, all of the check boxes for the child branches are alsoselected. For example, if you select the top-level Modules check box, then all of the tree is selected.76
WINDOW MANAGERNOTE: The Select Default Windows Only check box enables you to limit the windows selected to only thosemarked as the default for the business object.4. When you have selected the windows you want to make available to Web Access, click Run.The windows are made available to Web Access, and progress information is given.5. Click Close.NOTE: If you want to make more windows available to Web Access, click Reload to redisplay the list of windows.Web Access windows in ViewsWhen you have enabled windows for Web Access, you need to update your View rules so that the correctwindow appears in Web Access. You can either do this for each individual window using the Window RuleMaintenance dialog (see Creating Views on page 109), or you can use the Web <strong>Desk</strong> Window Rules Tool toupdate all of the View rules. This tool updates each Window Rule that specifies a window that has beenenabled for Web Access to use the same window in Web Access, unless a different window has already beenspecified using the Window Rule Maintenance dialog.To use the Web Access Window Rules Tool:1. From the C:\Program Files\<strong>LAN<strong>Desk</strong></strong>\<strong>Service</strong> <strong>Desk</strong>\Console folder, startTouchpaper.Tools.PrepareWeb<strong>Desk</strong>WindowRule.exe.The Web <strong>Desk</strong> Window Rules Tool starts.2. Enter the login details for the SA account, then click Login.3. Click Update Rules.The Window Rules are updated.NOTE: You can now use the Window Rule Maintenance dialog to make any final changes to your Web Access Views.Window definitions for Mobile Web <strong>Desk</strong>Mobile Web <strong>Desk</strong> enables analysts to display query results, and to log and progress processes from a mobiledevice.NOTE: For full information about this application, see the separate Mobile Web <strong>Desk</strong> User <strong>guide</strong>(MobileWeb<strong>Desk</strong>.pdf).77
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe windows used in Mobile Web <strong>Desk</strong> are the standard windows you design in Window Manager. However,there are some additional features to be aware of:• for windows that are going to display in Mobile Web <strong>Desk</strong>, we recommend that all fields are inside agroup box – any fields that are added to a window but which are not in a group box will appear inMobile Web <strong>Desk</strong> in a separate group at the bottom of the window, called Other• in Window Manager there is a new Expanded By Default in Mobile property for group boxes,which enables you to specify whether a group box is expanded or collapsed by default in Mobile Web<strong>Desk</strong>Creating a new windowYou can create a new window either manually or using a wizard.To create a new window:1. In Window Manager, expand the Business Objects tree.2. Select the relevant business object, then on the Actions list, click New Window.A new window appears, and the Attributes tree is automatically displayed. A default name isautomatically given to the window, which will appear in the window's title bar at runtime.NOTE: You cannot rename a window that is open in the window editor – so we recommend that you complete theinitial design, then close and rename the window design.3. Add the required controls. For more information,see Adding controls to a window on page 81.4. If you want this window to be the default used by this business object, then on the BusinessObjects tree, select the window, then on the Actions list, click Set as Default.5. Click .NOTE: You can make a copy of an existing window from within the same business object. To do this, on theBusiness Objects tree, select the relevant window, then on the Actions list, click Copy Window.NOTE: You can open existing windows to modify them by double-clicking them in the Business Objects tree.To rename a window:1. When you have completed the initial design of the window, close the window by either restartingWindow Manager, or by opening a different window.2. In the Business Objects tree, select the window that you want to rename.3. On the Actions list, click Rename Window.4. In the Title box, type the new name for the window, then click OK.The window is renamed.78
WINDOW MANAGERCreating a window using the Window WizardAnother way to create a new window, and select which attributes you want to appear on the window, is touse the Window Wizard.When you use the wizard, there are a two predefined group boxes: Details and Status, and you selectwhich attributes that you want to appear in them. You can also specify which collections you want toappear on your window.To create a window using the New Window Wizard:1. Start the Window Manager component.2. On the Business Objects tree, navigate to, and select the business object for which you want tocreate a new window, then on the Actions list, click New Window Wizard.The New Window Wizard starts.Firstly, you can add attributes to the Details group box. Typically, these attributes can includeDescription, Title, Category and so on.3. In the Available list, select the required attribute, then click .The attribute is added to the Selected list.NOTE: You can also add attributes by double-clicking them. In addition, you can CTRL and click to select more thanone attribute at a time, then clickthe, UP and DOWN arrows.. You can change the order in which the attributes appear by selecting4. Repeat until you have the required attributes that you want to appear in the Details group box. Youcan change the order in which they appear by using the Up and Down arrows on the wizard.79
LANDESK SERVICE DESK SUITE DESIGNER GUIDE5. Click Next.The Status Group box Contents page appears.Notice that a number of suggested attributes have already been added for you.6. If required, add additional attributes, then click Next.The Collections page appears. Collections are groups of related business objects, and can appear astabs at the bottom of your window, on the Process tree, or both. For example, Assignments,Notes, Attachments and so on.7. Add the required Collections to the Selected list, then click Finish.The window is created. You can reposition the controls as required.8. If required, you can rename the window using the Actions list.9. Click .Creating an attribute to add to a windowWhen designing a window, you may find that an attribute that you want on the window, has not beencreated. You can create an attribute from within the Window Manager component (in addition to theObject <strong>Designer</strong> component). When you have created this attribute, it is automatically added to thecurrent window.To add an attribute using the Attribute Creation Wizard:1. In the Window Manager component, open the required window.2. On the Actions list, click Create New Attribute.The Attribute Creation Wizard starts.3. Complete the required information.NOTE: If you click in a field, help text appears at the bottom of the wizard page to help you complete the requiredinformation.4. Click Next.The Set Data Type Page appears. On this page, the values you need to specify change, dependingupon the Data Type that you select. Again, help text is provided at the bottom of the wizard page.5. Click Next.The Set Boolean Values page appears. On this page, you specify whether you want the attribute tobe included in the Audit Trail, and whether you want the attribute to have privileges related to it.6. Click Finish.The attribute is created and you can add it to the window, and position it as required.Testing windowsWhen you have created or modified a window, you can preview the window within the Window Manager.To test a window:1. Open the required window, then on the Actions list, click Test Window.The window appears as it would to users.80
WINDOW MANAGERNOTE: If you click Show Modal, then the window appears in a dialog. You can choose not to display the OK,Cancel and Save buttons on a window. This is a System Setting as described in the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>Administrator Guide.2. To return to the Window Editor, click End Test.3. To test the appearance of the window in Web Access, in the Actions list, click View in WebAccess.The window appears as it would in Web Access.NOTE: When you first start viewing Web Access windows, you need to complete your Web Access log in detailsAdding controls to a windowWhen you open the relevant window, the Attributes tree appears to enable you to access all of theavailable attributes, relationships, collections that you can add to the window.When you add an attribute to a window, you do not need to specify which type of control it is, for example,list box or edit box. Window Manager does this automatically from information it knows about theattribute.You add other controls from the Controls tree.Adding a control to a windowNOTE: If required, you can add all of the available controls to a window at one time using the Auto populateWindow action.NOTE: You can delete a control by selecting it, then pressing DELETE. If you delete a related control or a group box,all of the controls that are part of that related control, or are positioned in the group box are also removed from thewindow.81
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo add a control to a window:1. Open the required window, and expand the Attributes tree.2. Select the required attribute, then click the Window Editor.The control appears on the window.NOTE: You can also double-click an attribute to add it to the Window Editor.3. Resize the control as required.4. In the Properties grid, specify the relevant information.NOTE: Not all of the available properties are detailed here, and not all of the listed properties are available for allcontrols. For an explanation of additional properties, you can select the property and view its help at the bottom ofthe property grid. Different types of controls have different properties, depending on the type of control you areadding to the window.Is Mandatory – Indicates whether the control must be completed before the user can progressthrough to the next stage of the process. Select True to make the control mandatory, and False tomake it optional. The default value is set to False.Description – Describes the function of the control to users. You can use the description forcontext-sensitive help for the control, which appears as a ToolTip whenever the mouse hovers overthe control. For more information, see Adding context-sensitive help to controls on page 92.Show on Window – Indicates whether the control is visible or hidden. Select True to display thecontrol. Select False to hide the control.Tab Index – Determines the tabbing order of the controls on the window. You may need to correctthe tabbing order so that the cursor follows a logical path when you press TAB to move among thecontrols on the window. By default, the tabbing order is set to the order in which you add thecontrols to the window. For more information about setting the tabbing order, see Reorderingcontrols on page 106.Protection Level – Indicates whether the control is read-only, read/write or write once. Thedefault is ReadWrite. If the control is a related control, then the control access by default isReadOnly.Is Tab Stop – Indicates whether the user can use the TAB key to give focus to the control.Is Text Multiline – Indicates whether this control is a single line control or a multiline control forstrings. Use Multiline controls for descriptive areas of text, notes and so on which can contain a largeamount of data, rather than for controls which require only small amounts of data. The defaultvalue is set to False. To enable the multiline control, select True.Minimum Lines (Web Access) – The minimum number of lines that you want to be showninitially for a multi-line text box in Web Access. When more text is added to multi-line text boxes inWeb Access, extra lines are added as required.End of word – Indicates that the background search is started when you reach the end of a word.Punctuation Character – Indicates that the background search is started when you add apunctuation character.Lose Focus – Indicates that the background search is started when your cursor moves away fromthis control.Whitespace Character – Indicates that the background search is started when you add a space inyour text5. Each label for a control has its own properties, including Text Alignment. You can choose from thehorizontal values of Top, Middle and Bottom and the vertical values of Left, Centre and Right.The default is Middle Right.82
WINDOW MANAGERNOTE: The default Text Alignment is set in the System Settings. For more information, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong><strong>Desk</strong> <strong>Suite</strong> Administrator Guide.6. Click .There are two other attributes, which are hidden by default to discourage their use: Copy To and CopyOn. Copy To indicates the attribute that the selected attribute's value will be copied to, according to thespecified Copy On event.Copy On and Copy To are not supported in Web Access products, but are supported in the Console. As aresult of this, we recommend that if you are using Web Access products you do not use Copy On andCopy To, but implement this functionality using the Copy Rules Configuration dialog wherever possible.For more information, see Copy related attributes on page 115.NOTE: You can re-enable the Copy On and Copy To settings by adding the following key to C:\ProgramFiles\<strong>LAN<strong>Desk</strong></strong>\<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong><strong>Desk</strong>\Console.exe.config:Adding the Formatting toolbar to a multi-line controlTo enable you to format text that you type into a multi-line control (that is, a control on a window whichhas a scroll bar), you can use the Formatting toolbar. You can also copy and paste into this control, and allformatting is retained.NOTE: A control can only be a multi-line control if it has a Data Type of String and has a Max Length of -1, and aString Sub Data Type of HTML.To add the Formatting toolbar to a multi-line control:1. Start the Window Manager component.2. On the Business Objects tree, navigate to, and open the required window. For example,Incident.3. Select the relevant multi-line control, for example Details, then expand the Properties grid ( ).4. Within the set of Display Option Settings properties, alongside Show Toolbar, select True.The toolbar appears at the top of the control.5. Click .Adding option buttons and custom lists to a windowOption buttons and custom lists provide a convenient method of selecting one of a selection of options. Youcan choose how to display those options. If you have plenty of space available on the window you aredesigning, you may choose to use option buttons. If you do not have much available space, then choosinga list may be preferable. Option buttons and lists both a set of values of which you can select only one, butthey are just displayed differently.83
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWARNING: Before you can add option buttons or a custom list to a window, you need to have created an attributewith the data type of a number (Int16 or Int32), and added the items that you want to appear as option buttons orwithin the custom list. For information about creating attributes, see Creating items for option buttons and lists onpage 56.To add an option button or custom list to a window:1. Start the Window Manager component.2. Open the required window, then expand the Attributes tree.3. Add the required attribute to the window.Initially it appears as a list.4. If you want option buttons to appear rather than a list, then select the list, then expand theProperties grid.5. Alongside Display as Option Button property, select True if you want to create option buttons, orselect False if you want to create a list.The list or option buttons are added to the window.6. Size as required.NOTE: If you have created a set of option buttons, they appear within a group box.7. Click .Adding Date/Time controls to a windowDate and Time controls may require additional information to be specified when you add the control to awindow.NOTE: To add a Date/Time control to a window, you must have first created the relevant attribute or attributes (forexample a start time and end time) using the Object <strong>Designer</strong>. For more information, see Persistence types on page38.To add a Date/Time control to a window:1. Ensure you have created the required date attribute(s) for the relevant business object. For moreinformation,see Date and time attributes on page 38.2. Start the Window Manager component, and open the required window.3. Expand the Attributes tree, then add the attribute to the window.84
WINDOW MANAGER4. Expand the Properties grid for the attribute.In addition to the standard properties for the control, there are specific Date/Time properties:Date Time Range Operator – Specifies the type of check that is made when the timespanvalidation is carried out. The default is After.Date CheckBox – Specifies if the Date/Time control is to display the check box (allowing a blanktime to be set). If you set this to True, then another property appears:Date Checkbox Checked – Specifies whether the check box is checked by default.ShortDate Format – Specifies whether you want to use the short date format of dd/mm/yyyy, orthe long date format of dd/month/yyyy. For example, you can choose between 20/09/2007, or 20September 2007. The default is True (that is show ShortDate Format). Select False if you want todisplay the long date type.DateTime Display Type – Specifies if the DateTime control is to show DateTime, Date Only orTime Only. The default is DateTime.DateTime Range Attribute – Specifies the DateTime control that is to be used for the DateTimerange validation. For example, you have two DateTime controls, one to record the start time andone to record the end time. When you add the Start Time, the Range Control you select would bethe End Time.5. Set the required properties, then click .Adding Browse and Open controls to a windowBrowse and Open buttons enable you to associate an application or any file accessible on your file systemwith a record in a table, which you can then run using the Open button.Before you can add this control to your window, you need to create an attribute of the data typeattachment in the Object <strong>Designer</strong>.To add a browse control to a window:1. In the Object <strong>Designer</strong> component, open the required business object, then on the Actions list,click New Attribute.A new attribute is created.2. Type a name for the attribute, for example Document.3. Alongside the Data Type property, select Attachment.4. Complete any relevant information, then click .5. Open the Window Manager component, and open the required window.6. Expand the Attributes tree, and select the attribute you have created, and add it to the window.7. Size the control as required, then expand the Properties grid.85
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: To save time when adding attachments to objects, you can specify the folder that is initially opened whenyou search for the attachment. We recommend that you specify the UNC path. Rather than describe the location ofa file or directory by drive letter, specify a UNC path to describe the actual location of a file or directory. Windowsdrive letter mappings are arbitrary, whereas a UNC path is specific and applies to all operating systems. Forexample: \\Shared1_svr\Shared1\Documents\.8. Alongside the Default Browse Folder property, click .The Browse For Folder dialog appears.9. Navigate to the location that you want to set as the default browse folder, then click OK.10. Click .Adding labels to a windowIf you cannot fully convey what type of information is required for that control, consider either renamingthe control, or putting some static text onto the window itself to <strong>guide</strong> the user through the process ofcompleting the information on the window. This is known as a label.To add a label to a window:1. Open the relevant window, and expand the Controls tree.2. Click Label then click the Window Editor.The control appears on the window.3. Expand the Properties grid, then alongside the Text property, type the text that you want toappear on the window.4. Alongside the Text Alignment property, select the required location. You can choose from thehorizontal values of Top, Middle and Bottom and the vertical values of Left, Centre and Right.NOTE: The default alignment for labels is Middle Right. This is set in the System Settings, and you can changeit if required.5. Resize and position the control as required.6. Click .Displaying images on windowsTo enhance the appearance of your windows, you can add images to them. For example, you may want toadd images of your staff to the user window.NOTE: You can also add static images to a window, which help users to quickly identify the type of window they arelooking at. For example, you could add different images to the different windows in the Configuration Item module,so that each Printer window would have an image of a printer on it, each Workstation window would have aworkstation image, and so on.For information about this, see Adding static images to a window on page 87.Firstly, you need to create the required attribute using the Object <strong>Designer</strong>, and then add that attributeto the window using the Window Manager component.To configure the required business object and window:1. In Object <strong>Designer</strong>, open the required business object, for example, Analyst.2. On the Actions list, click New Attribute.3. Name the attribute as required, for example, Image, and in the Properties grid, alongside theData Type list, select Attachment.4. Alongside the Attachment Type property, select Image.5. Click .86
WINDOW MANAGER6. Start the Window Manager component and open the required window. Following the exampleabove, the Analyst window.7. On the Attributes tree locate the Image attribute that you have just created, and add it to thewindow.The image control is added to the window. It has a group box, along with a Browse and Clearbuttons.8. Click .Once the Image control has been added to a window, when that window is opened in theworkspace, users can add images as required.NOTE: The following procedure describes how to add an image to the Analyst window once the Analyst businessobject and window has been configured as described above.To add an image to a window:1. Open the required window, for example, the required Analyst window.2. In the Image group box, click Browse.The Open dialog appears.3. Select the required image, then click Open.The image is added to the window.4. Click .NOTE: To remove the image, click the Clear button.Adding static images to a windowYou can add images to window designs to help users to quickly identify the type of window they are lookingat. These images are associated with the window, and not the record being displayed - so you can havedifferent images on different windows in the Configuration Item module, for example, but each Printerwindow would have the same image on it.NOTE: For information about adding images to a window that are related to the specific record being displayed, seeDisplaying images on windows on page 86.This is particularly useful for CIs, where you typically have different windows for printers, servers, and soon. You can now add an image to the top of the different types of CI window to help users to identify thetype of CI they are looking at.NOTE: For performance reasons, we recommend that you use only small image files.87
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo add an image to a window design:1. In Window Manager, open the required window.2. Expand the Controls tree.3. In the Controls tree, click Image, then drag the required shape on the window editor.4. Expand the Attributes tree.5. In the Attributes tree, alongside Image, click .The Open dialog appears.6. Browse for the image that you want to use, then click Open.The image is added to the window design.7. Click .NOTE: Make sure that the Image control that you add to the window is the same size as the image file you areusing.Adding group boxes to a windowUse group boxes to make the visual layout of your windows more interesting, and to give the user somevisual clues about the type of data that is being entered. However, do not use too many group boxes – twoor three is typical for most windows.WARNING: If you delete a group box from a window, all of the controls within that group box are automaticallyremoved from the window.IMPORTANT: Fields that are not in a group box appear in a separate group called Other at the bottom of thewindow in Mobile Web <strong>Desk</strong>.To add a group box to a window:1. In Window Manager, open the required window.2. Expand Controls tree.88
WINDOW MANAGER3. Click GroupBox, then click on the Window Editor.The group box is added to the window.4. Use the selection handles to size the group box as required, and position it.5. On the Properties grid, alongside the Text property, type the name for the group box.6. With the group box selected, on the Format menu, point to Order, then click Send to Back.7. Click .NOTE: A property called Align with Groupbox is available for group boxes. This property enables you to improvethe appearance of windows displayed in Web Access by specifying which other group box on the window theselected group box is aligned with.NOTE: The Background Colour property for the group box enables you to set a different background colour forthe group box. Setting the Enable Background Colour property to False makes the background colour for thegroup box transparent.NOTE: You can specify whether a group box is expanded or collapsed by default in Mobile Web <strong>Desk</strong> using theExpanded By Default in Mobile property.Adding paged lists to a windowA paged list enables you to select many items and copy them to a specific attribute on your window. Forexample, on a Change Details window, you may want to add the Title of many configuration items to theDetails control. You can do this by adding a paged list control. You select the configuration items that youwant to add and then click Copy. The items are then copied into the Details control.WARNING: If there is already an existing value in that attribute, it will be replaced by these items.To add a paged list to a window:1. Start Window Manager, and open the required window.2. Expand the Controls tree ( ), select List, then click in the Window Editor and drag to therequired size.3. Expand the Properties grid ( ).4. Alongside the Query property, select the query that you want to use to populate the list.NOTE: You may not have a query that matches your requirements, so you may need to create a new one.NOTE: We recommend that you add a group box to contain your list control, as the control contains paging andsearching buttons. It is good practice to group these items together so that your users know which buttons to usewith each control. For example, by default, when you add a set of option buttons, a group box is automaticallyadded to it. This also happens when you add a Browse and Open control.5. Add a group box if required.WARNING: You will need to specify some handlers to enable you to select more than one item from the paged listcontrol. To do this, you need to add the required entries to your console.exe.config file. For more information, seeAdding a button to a window on page 92.89
LANDESK SERVICE DESK SUITE DESIGNER GUIDE6. Ensure that you have made the changes to your console.exe.config file.7. Start the <strong>Service</strong> <strong>Desk</strong> Console, and restart the Window Manager component.8. On the Window Editor, select the Paged list control, then expand the Properties grid.9. Alongside the Handlers property, click .A dialog appears.10. On the Available Handlers list, expand the ClientListApplicationLogic node, and add all of thehandlers listed below that node to the Configured Handlers list by selecting them and clicking, or by double-clicking them.The handlers that you should have in the Configured Handlers list are:GotoPage(IClientList) Get PageOnFirstPage (IClientList) Get First PageOn Initialise (IClientList) InitialiseOnItemsSelected (IClientList) SelectedOnLastPage (IClientList) Get Last PageOnNextPage (IClientList) Get Next PageOnPreviousPage (IClientList) Get Previous PageSearch (IClientList) Click11. Click OK.12. On the Properties grid, alongside the Copy List To property, select the attribute that you want tocopy the items that you select to.13. Click .NOTE: It is a good idea to test your window by clicking Test Window on the Actions list, so that you can see thatyou have the size of the control large enough to ensure that you can see all of the available items.14. Click End Test.NOTE: For information about using the paged list control, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> User Guide.Adding Multi-select List Boxes to a windowMulti-select List Boxes enable you to select many items from a list of items on a linking business object.NOTE: For example, you could create a reference list of Regions and create a Linking Business Object betweenRegion and Account Manager. You can then add a Multi-select List Box to the Account Manager window, whichwould then enable you to associate multiple regions with each account manager.NOTE: For information about creating reference lists, see Creating new reference lists on page 55. For informationabout Linking Business Objects, see Linking unlinked business objects on page 50.To add a Multi-select List Box to a window:1. In Window Manager, select the required object, then display the Controls tree.2. In the Controls tree, select Multi-select List Box, then click the window design.A Multi-select List Box is added to the window.3. Position the control as required, and drag its edges to resize it.4. From the Controls tree, add a Label control to use with the list.5. Click the Multi-select List Box on the window design, then display the Properties grid.6. In the Properties grid, select the required linking business object from the Attribute list in theMapping group.This sets the linking object that is used to populate the list.90
WINDOW MANAGER7. For lists with many entries, set the PageSize property to specify after how many records in the lista paging control is added.8. Save the window design.You can use the Multi-select List Boxes in both the Console and in Web Access products. In both cases, youcan select items from the drop-down multiple times. Each time you select an item, it is added to the listbeneath the drop-down. To remove an item from the list of selected items, click the cross alongside theitem.Adding the Effectiveness control to a windowIf you use Knowledge Management, you need to ensure that the knowledge you are providing is useful. Sothat users can indicate that an article has been useful, you need to add the Effectiveness control to theArticle window. The Effectiveness control enables users to report whether or not the article was useful. Youcan also add the Effectiveness attribute to the Article window to show the overall effectiveness for thatarticle.NOTE: An Article must be submitted and approved before the effectiveness is applied.NOTE: For more information about Knowledge Management, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> KnowledgeManagement Guide.To add the Effectiveness control to the Article window:1. Start the Window Manager component.2. On the Business Objects tree, open the Article window.3. Expand the Attributes tree.4. Add Effectiveness to the window.5. Save the changes you have made.NOTE: In the <strong>Service</strong> <strong>Desk</strong> console, the Effectiveness control is displayed as a list box, from which users canselect either Useful or Not useful. In Web Access, buttons labelled Yes and No appear alongside theEffectiveness attribute's label. We recommend that you change the Effectiveness label to Was this articleuseful? or similar.Adding a browser control to a windowYou can add a browser control to a window so that a specific web page is displayed when a user sees thatwindow. Although browser controls display successfully in Web Access, you cannot display web sites wherethe publisher of the content does not allow it to be displayed in a frame, for example Google.To add a browser control to a window:1. In the Window Manager, open the required window.2. Expand Controls tree.3. Add Browser to your window and position it as required.4. With the control selected, expand the Properties grid.5. Alongside the URL property, type the URL of the web page that you want to appear. For example:http://www.google.com.NOTE: You can choose to display scroll bars, by selecting True alongside the Show Scrollbars property.6. Save the changes that you have made, then on the Actions list, click Test Window. You can seethe browser appearing within your window.7. Click End Test to return to the Window Editor.8. Save the changes you have made.91
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: You can add a browser control to a window to enable you to add an image to a window. To make themaintenance and use of this easier, you can use the SystemPath for Browser Control System Setting to specifya default system path to the location where you store the files that you want to display in the browser controls.For example, if you have a file called user.jpg in a subfolder on your Framework folder called CommonImages,set the SystemPath for Browser Control property to:http://servername/servicedesk.Framework/CommonImagesand in the Url box for the window, type:${SystemPath}/user.jpg.Adding a button to a windowYou can add custom buttons to a window, for example, you may want to have a button that, when clicked,could send an e-mail. To do this, a custom runtime handler (also known as a plugin) needs to be written.WARNING: Runtime handlers control the workings of <strong>Service</strong> <strong>Desk</strong>, and by default, they are hidden from view. Toenable an experienced user of <strong>Service</strong> <strong>Desk</strong> to be able to add buttons and configure specific items that appear onwindows, you can add two lines to the Console.exe.config file. After you have added these lines, you will need torestart IIS.They are:To add a button to a window:1. In the Window Manager, open the required window.2. Expand Controls tree.3. Add Button to your window, and position it and resize it as required.4. Expand the Properties grid.5. Alongside the Handlers property, click .A dialog appears.6. Select the required handler, then click OK.7. Alongside the Text property, type the text that you want to appear on the button.8. Save the changes you have made.Adding context-sensitive help to controlsWhen you add a control to a window, you can specify some help text which appears as a tooltip when themouse pointer is held over the control.NOTE: When writing text for context-sensitive help, answer the questions "What is this?" and "Why would I wantto use it?". Indicate the action associated with the item, for example, "Identifies the user who raised the incident".Try to avoid lengthy explanations. If more detailed information is required, consider renaming the control to make iteasier to know what information is required, or use static text. For more information about adding static text, seeAdding labels to a window on page 86.Avoid creating context-sensitive help for parts of the interface that do not need further explanation, suchas group boxes, labels for controls, or static descriptive text fields.To add context-sensitive help to a control:1. In the Window Manager, with the relevant window open, select the required control.2. In the Properties grid, in the Description property, type the context-sensitive help.3. Click .92
WINDOW MANAGERComplex and standard listsYou can choose to display a list in two different ways. The standard list works like a normal drop down list,but with paging controls at the bottom of the list. The complex list enables you to refine the data displayedin the list by specifying that a query is attached to the list; the user can then filter the list by the stringattributes specified in the query.A standard list:A complex list:NOTE: There is also a property for a list called Simple Dropdown List. We recommend that you do not set this toTrue unless told to do so by your supplier. Simple lists do not support copy settings, handlers, or copy tofunctionality and are intended only for very specialist uses.Standard listsWhen you configure a standard list, you can adjust the number of records that appear on each page of thelist.To set a standard list:1. In the Window Manager component, open the required window.2. Select the required list, then expand the Properties grid.3. On the Properties grid, alongside the Complex List property, select False.4. If required, you can set the page size for the list alongside the Page Size property.93
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: The page size is taken from the default page size defined in the System Settings, unless you specify thepage size in the Properties grid. In this case, the page size that you specify for the list takes precedence over theSystem Settings. For example, if you specify a page size of fifteen, then only fifteen items appear on each page ofthe list.5. Click .Complex listsWhen you specify that a list is complex, then you need to specify the filter or query that will be used togenerate the list, including the string attributes by which you can search to refine your list. There are twoways that you can do this. If you have already set a data filter on the attribute using Object <strong>Designer</strong>, thenthat filter is automatically used.NOTE: For more information about data filtering, see Data filtering on page 58.NOTE: Only attributes with the Data Type of String appear as search boxes in the complex list.The other way is to specify a particular system query that you have created (remember that this methodwill not work if you have specified a filter on the attribute). We recommend that the queries that you selectdo not have too many string attributes added to it, as each of these attributes appear on a complex list toenable users to refine their search. The complex list will expand to accommodate all of the attributes thatyou specify, but it is generally good practice to limit the attributes to a manageable number. For example,three or four. In the earlier example of a complex list four attributes were used, which was wider than thewindow itself.You can specify the page size for a query, and this is used on the list. For example, if you specify a page sizeof fifteen, then only fifteen items appear on each page of the list.If you do not specify it in the query, the page size is taken from the default page size defined in the SystemSettings, unless you specify the page size in the Properties grid. In this case, the page size that you specifyfor the list takes precedence over the System Settings.To create a complex list:1. Start the Window Manager component, and open the required window.2. Select the required list, then expand the Properties grid ( ).3. On the Properties grid, alongside the Complex List property, select True.NOTE: If you have already created a data filter for the selected attribute, you do not need to configure any furtherproperties, so you can save your window.If you have not created a data filter for the selected attribute, then you need to select the querythat you want to use.4. On the Properties grid, alongside the Query property, select the required query, for example, AllUsers.5. Click .94
WINDOW MANAGERResizing drop-down listsYou can specify that the width of the drop-down list that appears when you expand a list on a window is thesame width as the control that you added to the window. That is, when you expand the list, the width ofthe drop-down matches the width of the list on the window:orYou configure this using a new property within the Window Manager component.To resize a drop-down list:1. Start the Window Manager component.2. On the Business Objects tree, open the required window.3. In the Window Editor, select the list that you want to resize, then expand the Properties grid ().4. Alongside the Size Dropdown to Control Width property, select True.NOTE: If you are using paged lists, you need to consider the width of the paging control. You also need to try toensure that the longest item in the list fits within the list. You may want to increase the width of the control if thisoccurs.5. Click .Keyboard access for drop down listsYou can use the drop down lists using the keyboard instead of a mouse. They are:F4+ENTERALT+DOWN ARROWCTRL+DOWN ARROWALT+RIGHT ARROWALT+LEFT ARROWSHIFT+ALT+RIGHT ARROWSHIFT+ALT+LEFT ARROWExpands the list. You then use the down arrow to move down the list.Expands the list. You then use the down arrow to move down the list.Takes you to the filter fields (if you are using a complex list), and you can TABbetween the filter fields.Takes you to the next page in the list.Takes you to the previous page in the list.Takes you to the last page.Takes you to the first pageNOTE: Within <strong>Service</strong> <strong>Desk</strong>, when a user uses the complex lists, the filter starts as soon as there is a pause intyping as opposed to filtering after each keystroke.95
LANDESK SERVICE DESK SUITE DESIGNER GUIDECustomising Web Access listsYou can add an attribute template to drop-down lists in Web Access to display additional information abouteach entry in the list. For example, to help with identification you could add an attribute template to theRaise User drop-down list on the Incident window that displays the users' e-mail addresses and locationsbeneath their names. You can change the font of the additional information in the list to help identify thedifferent values.To use attribute templates in Web Access, you need to create the attribute template using Object<strong>Designer</strong>, and then associate it with the required window using Window Manager.To create an attribute template for an object:1. In Object <strong>Designer</strong>, open the object that you want to add the attribute template to.For example, System\User.2. In the Attributes tree, select the object name at the top.For example, User.96
WINDOW MANAGER3. In the Properties grid, alongside Output Attributes, click .The Output Attribute Templates dialog appears.4. Click New.A new template is added to the Output attribute templates list, and the Name and attribute controlsbecome available.NOTE: If there are already output attribute templates defined for the object, you can select one from the Outputattribute templates list, and then update it.5. Type a Name for the new output attribute template.6. Select the attributes that you want to add to the template in the Available Attributes list, thenclick .The attributes move to the Selected Attributes list. If you add more than one attribute, the Fontsettings for subordinate attributes group box becomes available. These controls enable you toconfigure a different font for the subordinate attributes when they appear in the drop-down list.NOTE: You can select multiple attributes at a time by holding Control.7. If you have added more than one attribute, set the Font size, Font style and Text colour for thesubordinate attributes, then click OK.The Output Attribute Templates dialog closes.8. Click to save the changes to the object.When you have added an output attribute template to an object, you can then use this template on awindow that has been made available to Web Access.To use an output attribute template on a grid layout window:1. In Window Manager, open the open the required window.For example, Incident Management\Incident.97
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. Select the required drop-down list, then expand the Properties grid.3. In the Properties grid, select the required Attribute Template.4. Click to save the window.CollectionsCollections are related business objects. For example, if you select the Incident business object, some of itscollections are Assignments, Notes, Escalation points and so on. Collections represent one-to-manyrelationships within the <strong>Service</strong> <strong>Desk</strong> database. For example, there may be many assignments or notesrelated to one incident.Within the <strong>Service</strong> <strong>Desk</strong> workspace, collections appear as tabs underneath the core business object, or asnodes on the Process tree. You can also add custom queries to a window, and these will also appear as a tabon the window.To add a collection to a window:1. Open the required window, expand the Attributes tree.2. Display only the Collections.3. Select the relevant collection, then click the Window Editor.4. In the Properties grid, you can specify where you want to view the collection. You can select eitherthe Display on Tree property and/or Display on Tab property.5. Specify the remaining properties.6. Click .You can specify the title and width of a column on a collection tab using the Results Attributes Settingsuser interface property for the attribute in Object <strong>Designer</strong>.To customise collection tabs:1. In Object <strong>Designer</strong>, open the object that corresponds to the collection you want to change.For example, to customise the Notes collection tab on the Incident window, display the IncidentManagement\Note object.2. Under User Interface Properties, click alongside Results Output Attributes.The Results Output Selection dialog appears.3. In the Selected Attributes list, double-click the attribute you want to customise.The Attribute Properties dialog appears.98
WINDOW MANAGER4. In the Header Title, type the text you want to appear as the column title for this attribute on thecollection tab.5. Select the option button that corresponds to how you want to set the column width, then click OK.6. Save the changes to your object.The column title for the attribute on the collection tab now uses the title you set here.NOTE: When you create a query based on the object you have changed, the attributes selected on the ResultsOutput Selection dialog are added to the query automatically, with the settings on the Attribute Properties dialogalready set.Adding queries to a windowIn addition to standard collection tabs showing the predefined collections for the business object that thewindow is designed from, you can add custom queries or filters to your window. These will appear ascollection tabs on your designed window. You can choose to display a single query on the tab, with theresults of the query being shown on the tab. Alternatively, you can specify that many queries are displayedas a count list, much in the same way as in the Dashboard <strong>Designer</strong>.NOTE: To be able to add a query or filter to a window, you must have first designed it using the Query and Report<strong>Designer</strong>. For information about creating queries, see Query and Report <strong>Designer</strong> on page 171.NOTE: You cannot add prompted queries to a window, but can add filters that take values from the window. Whenadding filters to a window, you can add only filters that are based on the base class or super class of the window'sobject. For example, if you have a Workstation subclass on the Configuration Item object, then on the Workstationwindow you can add filters based on either Workstation or Configuration Item.99
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo add a single query to a window:1. Open the required window, and expand the Controls tree.2. Click Query, then click in the Window Editor.A new query collection appears at the bottom of the Window Editor.3. Ensure you have the query selected, then expand the Properties grid.4. Alongside the Display Index, specify the position in which the tab will appear.The positioning starts at 0. If you specified 1, then the query would appear on the second tab (thatis, if you have more than one collection or tab on your window).5. Alongside the Query/Filter property select the relevant query or filter.6. Click .Adding a number of queries as a count list to a window:1. Open the required window, and expand the Controls tree.2. Click Metrics, then click in the Window Editor.A new query collection appears at the bottom of the Window Editor.3. Ensure you have the query selected, then expand the Properties grid.4. Alongside the Display Index, specify the position in which the tab will appear.The positioning starts at 0. If you specified 1, then the query would appear on the second tab (thatis, if you have more than one collection or tab on your window)5. Alongside the Queries property, click , and select the queries that you want to add to the tab,then click OK.6. Click .Adding queries to a window that is based on another objectYou can show queries on a window that are not based upon the business object upon which the window is.For example, you can show Assets for End User or Articles for Category.You firstly have to create a new filter using the Query and Report <strong>Designer</strong>. You can then add it to therequired window.NOTE: In the following example, we demonstrate how to see all of the Articles that were created by the Raise Userof the Incident.To create a new filter to add to a window:1. Start the Query & Report <strong>Designer</strong> component.2. On the Actions list, click New Filter.The New Filter dialog appears.3. Type a Title and Description for the Filter, for example Articles Created by Raise User.4. Select the relevant Module and Business Object, For example Knowledge Management andArticle as the business object.The business object that you want to select in the Filter By group box, is the business object uponwhich your window is based. In this example, Incident Management and Incident.5. In the Filter By group box, select the required Module and Business Object.6. Select the Everyone option button, then click OK.The Query & Report <strong>Designer</strong> starts.100
WINDOW MANAGER7. On the Attributes tree, locate the attributes that you want to view on the tab, and drag them ontothe Selected Attributes list.8. Either click Next, or on the Filter tree, click the Criteria node.9. On the Attributes tree, locate the required attribute, and drag it onto the Current Criteria list. Inthis example, Created By.The Criteria dialog appears.10. In the Comparison Value group box, select the Specify runtime value option button.The runtime values appear.11. Select the required value. In this example, we want the Raise User of the Incident.12. Click OK.13. Click Finish, then click Yes to save your changes.14. Start the Window Manager component, and open the window to which you want to add thisfilter. In this example, the Incident window.15. Expand the Controls tree ( ).16. Click Query, then click in the bottom section of the Window Editor alongside the other queries.17. With the Query selected, expand the Properties grid.18. Alongside the Query/Filter property, select the filter that you have just created, for example,Articles Created By Raise User.19. Click .Direct lookup from external data sourcesYou can read information from external data sources and display it on <strong>Service</strong> <strong>Desk</strong> windows. For example,instead of importing your user records from Active Directory or eDirectory, you can refer directly to theserecords from your Incident window.NOTE: The data is read-only - you cannot update external data in this way.NOTE: The following procedure describes how to add fields from Active Directory onto the Incident window. Youcan use similar techniques to add fields from other data sources to other windows in other modules.To add direct lookup controls to <strong>Service</strong> <strong>Desk</strong> windows:1. Using the Data Connections component, create a connection and a connection type to theexternal data source.For example, create a connection to your Active Directory data source called Active Directory, and aconnection type that selects the user attributes you require called User Fields.101
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: For information about using the Data Connections component, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>Administrator Guide.For information about using the Object <strong>Designer</strong>, see Object <strong>Designer</strong> on page 19.2. Start Object <strong>Designer</strong>.Notice that a new module is available in the Business Objects tree with the name of the connectionyou just created.3. Expand the module for the new connection.There is an object with the name of the connection type you created. For example, Modules\ActiveDirectory\User Fields.4. Drag the object for the new connection onto the object where you want to use the data.In this example, drag Active Directory\User Fields onto Incident Management\Incident.A relationship is created between the objects.5. Click to save the changes to the business object.6. Start Window Manager, and open the window you want to add the direct lookup controls to.7. In the Attributes tree, select the relationship that you created.In the example, select User Fields.102
WINDOW MANAGERNOTE: Do not expand the branch - select the top level of the related object.8. With the relationship selected, click on the window design.The field is added to the window as a list box.Now that you have added the related object, you can add further attributes from the object.9. Expand the related field's branch in the Attributes tree, and add any other related attributes yourequire, then click to save the changes.You can now access data from the external data source from a <strong>Service</strong> <strong>Desk</strong> window.Adding related controls to a windowWhen you add related controls to a window, you must first add the related object itself, indicated by inthe Attributes tree. This will appear on the window as a drop-down list, enabling you to select the requiredrelated object. You can then add further attributes from the related object to the window.To add related controls to a window:1. Open the required window, and expand the Attributes tree.2. Display only Relationships, then click the relevant relationship.3. Click the Window Editor.The control appears on the window.4. Expand the relationship in the tree, then add the required related attributes to the window.5. Click .103
LANDESK SERVICE DESK SUITE DESIGNER GUIDEMaintaining related objects from a process windowBy setting the Show Hyperlink property in Window Manager to True for the label of a related object on aprocess window (such as the Raise User label on the Incident window), you can provide a hyperlink on thewindow that analysts can use to create or update a related object. This could enable analysts to create newuser records while logging an incident, for example.By default, the related object is opened using the <strong>Service</strong> <strong>Desk</strong> component that is specified in the EditorType property in Object <strong>Designer</strong>. However, for users, you can also set a SubClass type in Window Managerso that you can create a specific type of user from a process window.To enable the creation of a specific type of user from a process window:1. In Object <strong>Designer</strong>, make sure that the Editor Type property for System\User is blank.2. In Window Manager, open the required process window.3. Select the label control for the user, then expand the Properties grid.4. In the Properties grid, set Show Hyperlink to True, and in the SubClass Type list, select therequired sub-class for the object.5. Click to save the window design.The appropriate user window will appear when you click the hyperlink on the window.Default windowsIf you have designed only one window for a specific business object, that window is automatically set as thedefault window. If, however, you have created more than one window for a business object, you mustspecify which one is the default. You can set only one default window.To set a window as the default window:1. In the Window Manager, on the Business Objects tree, expand the relevant business object.2. Right-click the default window, then click Set as Default.The icon changes from to .3. Click .104
WINDOW MANAGERAdjusting the layout of controlsThe label and the control are separate elements that you can resize separately:When you drag the label, the control moves so that it is in the same place relatively.105
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhen you drag the control, the label does not move.You cannot delete application or system-defined controls from a window. You can, however, delete userdefinedcontrols.When you move controls around a window, guidance lines appear that you can use to help you to positioncontrols. Also, you can select more than one control and use the Format menu options.NOTE: You can also use the arrow keys to move a single or many selected controls at one time.Text alignmentYou can specify the default text alignment for all new windows that you create using a System Setting.To set the default text alignment:1. On the Settings menu, click System.The System Settings Properties grid appears.2. Within the <strong>Designer</strong> Settings group, you can set the Default Label Text Alignment.3. Select the relevant button, and then click .Reordering controlsSometimes, you may need to correct the tabbing order for a window. You need to ensure that the cursorfollows a logical path when a user presses TAB to move among the controls on the window. Ensure that thetabbing sequence is from left to right and top to bottom.To change the tabbing order:1. Click the control you want to set as the first control.2. In the Properties grid, in the Tab Index property, type 0.3. Select the next control, and in the Tab Index property, type 1, and so on until you have set a TabIndex for all relevant controls.4. Click .Text wrapping on Web Access windowsWindows in Web Access are based on a grid layout to optimise the use of the space available in a browser:this enables the fields to change size as the browser window changes size. As a result, Web Access windowslook different in a browser from how they look in Window Manager.106
WINDOW MANAGERIf you add a label control to a window in the same column as an input control, the text in the label will wrapto the width of the input control. You can also use the HTML tag to force a line break.Labels on windows in Web Access do not usually wrap onto a second line, even if the label control inWindow Manager makes it look as though this is the case. To force a line break in a label on a Web Accesswindow, add the HTML tag at the location where you want the line break to occur.For example the label:A verylong labelin Web Access will appear as:A verylong labelNOTE: The tag will not appear in Web Access, but does appear in Console. You can create separate windowdesigns for Console and Web Access, and control which is displayed using a View.Publishing windowsYou can create a View that can contain many different window designs for each of the different businessobjects. You can specify which window (for each business object) is displayed from the View, dependingupon the current process, action or create state. For example, you could create a View with a differentIncident window for each Incident process you have, or different windows for creating and updatingChanges.107
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDifferent Incident windows in a ViewDifferent Incident Note windows in a ViewDifferent Problem windows in a ViewA View defines which specificwindow for a business object isdeployed depending on thecurrent process, action, createstate, or application....and so on for windows for other business objectsYou can create a number of different Views containing different groups of window designs, and associatethem with different people.When you log in to <strong>Service</strong> <strong>Desk</strong>, the system determines which of the Views are available to you,depending on your user name, group memberships, roles, user types, or the current client type (forexample, whether you have logged in using Console or Web Access). You can create a set of rules thatprioritises this list.108
WINDOW MANAGER1 – When a user logs in, their user name, group membership, assigned roles, user type, and the type ofclient they have logged in using determine which of the defined Views are available to them.2 – When the View has been selected, the specific window in the view is determined based on the currentprocess, action or create state.3 – Prioritised list of matching Views.4 – Different windows in each View.<strong>Service</strong> <strong>Desk</strong> works its way down this list of View rules until it finds a set of criteria that match the user.This then defines which View is used by <strong>Service</strong> <strong>Desk</strong>. The specific window to use from the View isdetermined by considering the current process, action or create state. If there is no window in the Viewthat matches the required window selection criteria, <strong>Service</strong> <strong>Desk</strong> uses the next View in the list, until itfinds a window that matches all of the criteria: both the login criteria that select the View and the processcriteria that select the specific window from the View. If no matches are found, the default View is used. Ifno matches are found in the default view, then the default window for that business object is used.Creating ViewsTo create a View:1. Using the Window Manager component, expand the Business Objects tree, then select theViews folder.109
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. On the Actions list, click Insert View.The View Maintenance window appears.NOTE: If you find that you can not fit all of this window on your screen, there are splitter bars on the group boxesto enable you to show more – or less – of the window. You can alter both the width and height of this window.3. Type a Title and Description for the new View.4. In the Available Business Objects tree, select the business object whose windows you want toadd to the View, then click .The business object is added to the Selected Business Objects list.5. Repeat for any other business objects you require.6. In the Selected Business Objects list, click the required business object, then right-click in theWindow Rules list and click Insert Window Rule.The Window Rule Maintenance dialog appears.7. Select the required Process, Action and Object State.NOTE: If the window rule is based on a collection object on a process, and the Process list on the Window RuleMaintenance dialog is empty, make sure that the Is Owner property is set to True for the relationship to theprocess on the collection object.To do this, open the collection object in Object <strong>Designer</strong>, and select the relationship to the process in theAttributes tree. In the Properties grid, set the Is Owner property to True, then save the change.8. In the Window to be displayed list, select the window that you want to appear when thesecriteria are met.9. In the Grid window to be displayed list, select the grid layout window that you want to appear inWeb Access when these criteria are met.10. Click OK.The rule is added to the Window Rules list.NOTE: You can modify, delete or change the list position of rules by right-clicking the Window Rules list, andselecting the relevant option.11. Click Save.110
WINDOW MANAGERPublishing ViewsWhen you have created your Views, you can publish them to different people using a set of rules.To publish your Views:1. On the View Maintenance window, click View Selection Rules.The View Rule Maintenance window appears.2. To add a new rule, on the Actions list, click Insert View Rule.The View Selection Maintenance dialog appears.3. Select the required Client Type, Group, Role, User Type and User, then select the View thatyou want to use if these criteria are met and click OK.The rule is added to the View Rules list.NOTE: You can leave any fields that you do not require blank.4. On the Actions list, use the Move... actions to position the new rule in the list as required.NOTE: You can modify and delete View Selection Rules using the appropriate actions on the Actions list.Publishing to multiple groups at a timeIf you have a large number of groups to configure a View for, you can publish a View to a number of groupsat once for a specific client type. You can then fine-tune your publishing rules using the View RuleMaintenance dialog, as described above.To publish a view to multiple groups:1. On the View Maintenance window, click View Selection Rules.The View rule Maintenance window appears.111
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. On the Actions list, click Insert Multiple View Rules.The Insert Multiple View rules dialog appears.3. In the View Details group, select the View that you want to publish and the Client type for theView.4. In the Available Groups list, select the groups to which you want to publish the View, then click.The groups are added to the Selected Groups list.NOTE: You can select multiple groups in the list by holding CTRL or SHIFT and clicking. You can filter the groupsthat appear in the Available Groups list using the Look for Group and Specify Amount to show controls.5. When you have selected the required groups for the View and client type, click OK.The View Rules are added to the View Rules list.Filtering lists by other fieldsTo help users to complete windows quickly, you can filter lists based on values selected in other fields, sothat only related information is returned to the user. For example, you can design a window so that if auser selects a value in the Company control, then the Contacts list displays only those contacts that areassociated with the Company.There are two ways that you can filter lists by other fields:• if you are not using Web Access or Mobile Web <strong>Desk</strong>, you can use Related List Handlers, which youcan configure differently for different windows. However, these are not supported in Web Access orMobile Web <strong>Desk</strong>. For more information, see Related list handlers on page 113• if you are using Web Access or Mobile Web <strong>Desk</strong>, you need to use Filter Selectors on the requiredattributes. For more information, see Creating a filter rule on page 58, and Handlers and filters inWeb Access windows on page 114.112
WINDOW MANAGERRelated list handlersThe following describes the behaviour of related list handlers.Is 'user, customer and company' selection? – for Raise User, Company and Customer.What does it do?• When you select User, it auto-populates Customer and Company• When you select Company, the Customer list displays children of Company• When you select Customer, the User list displays users in that Customer group• If you leave Customer blank and select Company, the User list displays users that belong toCompany group• If user has multiple groups, then you need to ensure that the user’s primary group is the one thatyou want the Customer list to be auto-populated with (when you select a user).Is 'company and contacts' selection? – for Company and Raise User.What does it do?• When you select Contact, the Company is auto-populated• When you select Company, the Contact list displays Contacts in CompanyIs 'list company contacts'? – for Raise User and Company, or Raise User and CustomerWhat does it do?• On Company window, when select Main Contact, should show Contacts for that Company only.Is 'list staff of creation user'? – for usersWhat does it do?• When you select a user, the users displayed are those for whom the creation user is their managerIs 'list user config items'? – for CI and CI TypeWhat does it do?• When you select the CI Type, CIs for that Type are displayed• When you select CI, the corresponding CI type is displayed• When you select User, CIs are displayed for that userIs 'list customer config items'? – for CustomerWhat does it do?• When you select the CI Type, CIs for that Type are displayed• When you select CI, the corresponding CI type is displayed• When you select User, CIs are displayed for that userNOTE: For ListUserConfigItems and ListCustomerConfigItems, there is no CIType business object, it's thesub business object on CI.To configure related list handlers on a window:1. Start the Window Manager component.2. On the Business Objects tree, open the required window.3. Expand the Properties grid ( ), and within the Advanced Properties group of properties. Theseare described in detail above.4. Set the required properties, then click .113
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: When you set an Advanced Property for any of the aforementioned attributes, when you select thecorresponding attribute, the correct property is already selected on the Properties grid. You always need to set thesame property to True for the items that you are linking. For example, if you are linking Raise User and Company,you need to set the same property for both attributes.Handlers and filters in Web Access windowsThe standard absolute-positioned windows used with the Console can use handlers to control the contentsof certain lists that are related to users or CIs.NOTE: For information about the handlers for related lists, see Related list handlers on page 113.When you make a window available to Web Access, these handlers are converted to filters on theappropriate attribute on the business object.NOTE: The use of filters rather than handlers enables you to configure the behaviour of lists more consistently andmore simply for Web Access. However, it can limit your ability to configure these lists to behave differently ondifferent windows for the same object.There is a property in Object <strong>Designer</strong> that makes it easier for you to add these standard filters to objectattributes if you want to configure these filters directly, rather than by migrating a window with handlers.To add standard configurations of filter selectors to an attribute:1. In Object <strong>Designer</strong>, open the required business object.For example, Incident Management\Incident2. Select the required attribute (for example, Raise User), then in the Properties grid, clickalongside the Filter Selectors standard configurations property.The Attribute Filter Selectors standard configurations dialog appears.NOTE: The standard configurations available in the list change depending on the attribute you have selected.3. Select the standard configurations that you want to add to the attribute, then click OK.NOTE: Some of the standard configurations are mutually exclusive, so you might not be able to add all of them.NOTE: You can view the filters that have been added to the attribute, and fine-tune them by clicking alongsidethe Filter Selectors property. For example, you can add further attributes or conditions to the filter. Note that ifyou then update the attribute again using the Filter Selectors standard configurations property, any changesyou made on the Attribute Filters Selector dialog will be lost.114
WINDOW MANAGERCopy related attributesWithin <strong>Service</strong> <strong>Desk</strong>, you can set up a window with attributes that are related to each other. When youselect an attribute and tab or click away, its related attributes automatically populate with information.NOTE: For example, if the end-user, department and location attributes are related on the Incident window, thenwhen you select a particular end-user and change focus off the selection, the relevant department and locationdetails automatically appear.After the related attributes are populated, you can modify the information within them. For example, youcan change the department or location. When you clickhave the ability to modify the related attributes.to save the information, you may no longerYou configure the copy related attributes using the Copy Rules Configuration dialog.Setting up copy rulesCopy Rules enable you to specify that an attribute's current value is copied to another field when a specificevent happens (for example when an attribute changes). You can configure copy rules for the ValueChanged, Initialise, Create, and Update events:EventValue ChangedInitialiseCreateUpdateDescriptionThe default value. The target value updates when you change the source value.Copies the value before the window is first displayed. You use this event type withan Attribute Macro (Current Group or Current User) because when theprocess is initialised there are no other attributes to copy from.When you save the record for the first time, copies the value.When you save the record on subsequent times, copies the value.NOTE: If you want to use the Value Changed event in the Console, you need to set the Copy Related property toTrue on the control(s) on the window. (For Web Access products, these rules will ALWAYS be applied, even if youdo not set the Copy Related property to True on a window.)To set up the Copy Rules Configuration:1. In Window Manager, select the required object, then in the Actions list, click Business ObjectCopy Rules.The Copy Rules Configuration dialog appears.115
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: You can also access this dialog from the different module levels and the top Modules level in the BusinessObjects tree using the Module Copy Rules and All Copy Rules actions respectively. In these instances, theCopy Rules tree is larger, containing all of the objects under the selected level.2. Expand the Copy Rules tree and right-click the required object, then click New Rule.A new rule is added to the Copy Rules tree, and the Rule Editor changes to enable you to edit thenew rule.3. Type a Description for the rule.4. Click Select Events.The Select Events dialog appears.5. Use the arrow buttons to move the events that you want to trigger the rule into the right-handcolumn.116
WINDOW MANAGER6. Alongside the Target box, click Select Attribute.The Select Attribute Path dialog appears.7. Double-click the attribute that you want to use as the target – the value will be copied TO here.The name of the attribute appears in the Path box.8. Click OK.The selected attribute appears in the Target box on the Copy Rules Configuration dialog.9. Alongside the Sources box, click Select Attributes.The Select Source Attributes dialog appears.117
LANDESK SERVICE DESK SUITE DESIGNER GUIDE10. Double-click the Attributes or Attribute Macros that you want to use as the source – the valuewill be copied FROM here.The values appear in the Source Attributes list.NOTE: You can select multiple source attributes. However, only one will be used – the attribute nearest the top ofthe Source Attributes list that contains a value. You can change the order of this list using the Up and Downbuttons.NOTE: The Current Group and Current User macros are the only options suitable for use with the Initialiseevent.11. Click OK.The selected values appear in the Sources box on the Copy Rules Configuration dialog.12. In the Overwrite Policy group, select the required option button to set whether you want thecopy rule to Overwrite or Do not overwrite any existing values. If you choose to overwrite anyexisting values, selecting or clearing the Clear target if source is empty check box enables youto configure whether or not the target attribute is cleared if the changed source attribute is empty.13. Click OK.The copy rule is configured.NOTE: If you are using the Value Changed event, remember to set the Copy Related property to True on thecontrol(s) on the window using Window Manager.Address managementYou can set up any window to find the correct address and complete the address fields based on thesupplied Postcode.<strong>Service</strong> <strong>Desk</strong> and the Capscan address management software integrate according to SubDataTypes. TheCapscan elements are already mapped to the relevant SubDataTypes (see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong>Administrator Guide for more information). However, you need to create the <strong>Service</strong> <strong>Desk</strong> attributes thatyou want to use as address elements, which includes setting the relevant SubDataType for each attribute.Two address attributes are essential for returning the address information – using the Object <strong>Designer</strong>,you must create an address Postcode attribute and a Country Code attribute. The Postcode attributemust appear on every relevant window. You set up the default Country Code using the System Settings(see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide for more information).NOTE: If you only need to find the addresses of a particular country, then the default setting is used by theCountry Code attribute, and you do not need to place this attribute on the window.NOTE: If you need to find the addresses of different countries and need to override the default country, then youmust place the Country Code attribute on the relevant windows.By default, the following Capscan elements are mapped to the following SubDataTypes, according tocountry.NOTE: We recommend that you use these lists to help you decide which <strong>Service</strong> <strong>Desk</strong> attributes you need to create.For the UK:Capscan elementORGANISATIONSUBBUILDINGBUILDINGNAMESubDataTypeAddressElement1AddressElement2AddressElement3118
WINDOW MANAGERBUILDINGNUMBERDEPSTREETSTREETDEPLOCALITYLOCALITYPOSTTOWNCOUNTYPOSTCODECOUNTRYCODEAddressElement4AddressElement5AddressElement6AddressElement7AddressElement8AddressElement9AddressElement10AddressPostCodeAddressCountryCodeFor Australia:Capscan elementPOBOXFLATFLOORBUILDINGNAMEBUILDINGNUMBERLOTNOSTREETLOCALITYSTATEPOSTCODECOUNTRYCODESubDataTypeAddressElement1AddressElement2AddressElement3AddressElement4AddressElement5AddressElement6AddressElement7AddressElement8AddressElement9AddressPostCodeAddressCountryCodeFor the USA:Capscan elementSECONDARYBUILDINGPRIMARYSTREETCITYCOUNTYSTATEZIPCODECOUNTRYCODESubDataTypeAddressElement1AddressElement2AddressElement3AddressElement6AddressElement8AddressElement9AddressElement10AddressPostCodeAddressCountryCodeFor Germany:119
LANDESK SERVICE DESK SUITE DESIGNER GUIDECapscan elementORGANISATIONSUBBUILDINGBUILDINGNAMEBUILDINGNUMBERDEPSTREETSTREETDEPLOCALITYLOCALITYPOSTTOWNCOUNTYPOSTCODECOUNTRYCODESubDataTypeAddressElement1AddressElement2AddressElement3AddressElement4AddressElement5AddressElement6AddressElement7AddressElement8AddressElement9AddressElement10AddressPostCodeAddressCountryCodeSetting up Address AttributesNOTE: The following procedure explains how to set up an address attribute. You can use the above tables to decidewhich attributes you need to create in order to capture the relevant address details.NOTE: We recommend that if you want to use a specific window (such as the Incident window) to captureinternational addresses, that you keep the attribute names neutral. For example: Address Line 1, Address Line2 and so forth. Different countries have different ways of displaying their addresses, so neutral names ensure aneutral layout.To set up address attributes for Postcode lookup:1. Using the Object <strong>Designer</strong>, open the relevant business object.2. Create a new attribute with the Data Type of String and the relevant SubDataType.3. Set the maximum length for the attribute.NOTE: For example, create a new attribute called Postcode with a SubDataType of AddressPostCode.4. Repeat as required.5. Using the Window Manager, add the address attributes that you have created to the relevantwindow.NOTE: To use the address management software, the window must contain an attribute with a SubDataType ofAddressPostCode. An attribute with a SubDataType of AddressCountryCode must also exist, but you canchoose to omit it from the window if you only need to find the addresses of the default country. You specify thedefault country in the System Settings – see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide for moreinformation.6. Position the attributes as required.7. Click the Postcode attribute, then click to view the Postcode Settings properties.8. If you want to search for addresses when you click or tab away from the Postcode attribute, then setthe Auto search property to True.9. Set the Remove Postcode spaces property to True if you do not want spaces in the Postcode.10. Click to save the changes you have made.120
Process <strong>Designer</strong>This chapter describes the concepts and procedures involved in creating and maintaining processes. Youcan find out about:• What is a process? on page 122• The Process <strong>Designer</strong> on page 122• Guidelines for developing new processes on page 125• Creating a new process on page 126• Statuses on page 128• Process actions on page 129• Specifying dynamic values for automatic actions on page 138• Sending notifications on page 143• Assignments on page 148• Process Approver on page 149• Tasks on page 150• Decisions on page 152• Preconditions on page 153• Formatting process diagrams on page 157• Validating and activating processes on page 158• Reinitialise: switching between processes on page 158• Administration of Users and CIs from a process on page 160• Adding your process to the shortcut bar on page 167• Templates on page 169
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhat is a process?In <strong>Service</strong> <strong>Desk</strong>, processes define what a user can do and when. Using the Process <strong>Designer</strong>, you cancreate any number of processes to suit your business practices. For example, you can create changerequests, literature requests, complaints processes, new starters and so on. Anything within yourcompany which has a predefined order of doing things is suitable to use as the basis for a new process.You can create processes for all of the top-level business objects within your database, such as Incident,Change, Problem, and so on. These top-level business objects often have related business objects, forexample: Tasks and Assignments, and these too can have their own process. These are known as subprocesses.NOTE: After you create a new process, you need to ensure that the relevant users have the privileges to use it.The Process <strong>Designer</strong>You start the Process <strong>Designer</strong> from within the <strong>Service</strong> <strong>Desk</strong> Console.To start the Process <strong>Designer</strong>:• On the shortcut bar, start Process <strong>Designer</strong>.The Process <strong>Designer</strong> appears.1 – Actions list2 – Processes tree3 – Click this to view the Processes tree4 – Click this to view the Toolbox5 – Click this to view the Properties grid6 – Click this to view the Business Objects tree122
PROCESS DESIGNER7 – Process WorkspaceProcesses tree – Displays all of the business objects for which you can create processes and anyassociated process descriptions.Toolbox – Contains the required items with which to create your process, such as action instances,assignments and so on. You drag them onto the workspace to build your process.Properties grid – Lists the properties of the selected itemProcess Workspace – Displays the selected process description in a graphical flow chart style. Thisenables you to modify the process by adding, removing or modifying itemsBusiness Objects tree – Contains all of the user-defined actions, conditions and statuses.The Processes treeFrom the Processes tree, you can create new processes, and modify existing ones. The following iconsappear on the Processes tree.IconDescriptionDefault ProcessActive ProcessValid but inactive ProcessInvalid and inactive ProcessViewing processesYou can magnify or reduce the size of your current process using the Zoom Out and Zoom In options onthe View menu, or by holding CTRL and rotating the mouse wheel.Hiding inactive processesSometimes you can have many inactive processes in Process <strong>Designer</strong>. To make it easier to see theprocesses you are interested in, you can now mark individual inactive processes to be hidden, and thentoggle showing or hiding the hidden processes.To hide and show inactive processes:1. In Process <strong>Designer</strong>, select the inactive process that you want to hide.2. In the Actions list, click Hide Inactive Process.The process is hidden.3. Repeat for other inactive processes that you want to hide.You can now switch between showing and hiding the processes that you have marked as hidden.4. To show and hide inactive processes that you have marked as hidden, select the required businessobject in the Processes tree, then in the Actions list, click Show Hidden Processes or Do NotShow Hidden Processes, as appropriate.The hidden processes for the object are shown or hidden, as appropriate.5. When you have shown the hidden processes, you can select them in the Processes tree and clickUnhide Process in the Actions list.The process is no longer hidden when you click the Do Not Show Hidden Processes action.123
LANDESK SERVICE DESK SUITE DESIGNER GUIDEProcess componentsThe following section introduces some new concepts and terminology that are used within Process<strong>Designer</strong>. More detailed information about each of these items is found later in this chapter.Each process can consist of the following components:A start pointStart points enable you to create an automatic action instance before defining a process Start status. Formore information about start points, see Start points on page 128.StatusesStatuses are the stepping stones that the process progresses by. Each process must have a Start statusand End status. The Start status is the status at which the process starts, and a new instance of therelevant business object is created. The End status is the status at which the process becomes read-only.We recommend that when you create a new process, first add the Start and End status before adding theother process components.For more information about statuses, see Statuses on page 128.Action instancesAction instances define what a user can do at a specific stage of the process. There are three types of actioninstance:• Standard action instances, which move the process from one status to another. For moreinformation, see Manual actions on page 132.• Automatic action instances, which occur when the status changes. For more information, seeAutomatic actions on page 134.• Optional action instances, which do not change the status of the process (that is, does not move theprocess on), such as adding a note, setting a reminder or assigning the business object. For moreinformation, see Optional actions on page 135.NOTE: When you are designing a process, you sometimes need to make changes to either an object or a windowthat is used by the process. You can do this from the process diagram by right-clicking the required Action icon,then clicking either Modify Action Window or Modify Action Object. The object or window for the actionappears in the appropriate designer. Some actions may have multiple windows associated with them. In thisinstance, a dialog appears from which you can select the required window.AssignmentsAssignments are one of the most important components of a process. They ensure that the process isalways on at least one user’s Workload List, and has constant visibility. You can assign processes to roles,groups or users. This usually occurs automatically. You should have at least one assignment for everyprocess.There are two types of assignment:• Automatic assignment, where the assignment is automatically created from information set up inProcess <strong>Designer</strong>, without any user interaction. For more information, see Assignments on page148.• Manual assignment, where the user manually selects to whom they want to assign the process. Formore information, see Manual assignments on page 149.NOTE: Using Process Approver, you can configure <strong>Service</strong> <strong>Desk</strong> to send an e-mail that includes a link to theappropriate process in Web <strong>Desk</strong>. For more information, see Process Approver on page 149.124
PROCESS DESIGNERTasksTasks are sub-processes. Each task can have its own process consisting of assignments, action instancesand so on, and each task has a Start and End status. For example, you can specify who will implement andcomplete the task and you can schedule when they must complete the task. For more information, seeTasks on page 150.PreconditionsA precondition is a condition that must be true in order to make available the action instance that follows it.For example, all Tasks must be complete before the Resolve action becomes available. For moreinformation, see Preconditions on page 153.DecisionsEach decision has a negative and a positive outcome. If the outcome is negative, the process goes to onestage in the process, and if the outcome is positive, the process advances to a different stage in theprocess. For more information, see Decisions on page 152.Process rulesEvery process must have a Start and End status and at least one action. You must link all the processnodes before the system can validate the process or you can activate the process. For more information,see Validating and activating processes on page 158. For more information about the process rules for eachcomponent, see the relevant sections later on in this chapter.Guidelines for developing new processesBefore you create a new process, we recommend that you first understand what you are trying to achieve.The steps below provide a <strong>guide</strong>line for developing your new processes.The first step is to map out the process on paper, so that you have a visual idea of what you are trying toachieve. Are you using an existing manual process that you know well? Can you make improvements tothe manual process? We recommend that you talk to the people who perform these tasks on a day-to-daybasis, and ask their advice. They are crucial to the successful deployment of your new processes.The next step is to break down the stages of the process.• What are the steps required to get from the Start status to the End status?• At each stage of the process, think about the information that needs to be captured in the process.The following questions can help you think about what you are trying to achieve.• Do you have the required business objects, attributes and relationships in place? If not, can youadapt any existing ones, or do you need to create new ones?• Which windows do you want users to see? Do you have any existing windows that suit the process,or do you need to create new ones?• Do users need to see a window (in order to provide more information, for example), or can they clickan action instance in the Actions list to confirm that an action is complete in order to advance theprocess?• Who needs to complete these steps; what assignments have to be made? Do you know to whomyou want the process to be assigned? In the example used in this chapter, each process assignmentis to the Human Resources department. They oversee the process, ensuring that each task iscompleted and all the conditions have been met. Do you have an idea of a specific role to overseethis process, or a group or specific user? You can specify any or all of the above.125
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: If the standard business objects and windows do not suit your requirements for your new process, it is agood idea to create them beforehand. You can indicate that a specific window is used for a particular process. Forexample, you may have two different processes, and you can specify different start-up windows for these. Forinformation about creating business objects, see Business objects on page 21.Creating a new processThe following procedure summarizes the steps involved in creating a new process. It does not go into detailabout each step, however, there are cross references to the relevant section in this manual. Use thisprocedure as a check list to ensure that you have completed the required steps whilst creating your newprocesses.NOTE: You can create a process only for objects that have the property Is Top Level? set to True.To create a new process:1. Start Process <strong>Designer</strong> and display the Processes tree.2. Select the folder for the object that you want to create a process for, then on the Actions list, clickNew Process.3. In the Processes tree, type a name for the process.NOTE: To rename a process, right-click the new process, then click Rename.4. Expand the Toolbox ( ).Each process must have a Start status.5. From the Toolbox, drag Start Status onto the workspace.The Select Status dialog appears.6. Select the required status, or create a new status.For more information, see Creating a new status on page 128.Each process must also have an End status.7. If required, add the relevant optional action instances to the status.For more information, see Optional actions on page 135.8. As required, add the relevant action instances or automatic action instances. For more information,see Creating a new status on page 128.At this stage, you typically want to assign the process to someone, so you need to add anassignment. You can assign the process to a user, a role, or a group. We recommend that you avoidassigning to a named user, in case that person moves job.These are commonly referred to as automatic assignments. For more information, see Assignmentson page 148.9. If required, add any Tasks that must be completed.10. If you have added a Task to the process, you may need to add a decision or precondition. This is aquestion, such as "Are all Tasks completed?". If the answer is No, the process cannot continue tothe next stage. If the answer is Yes, the process can continue.For information about adding a condition to a process, see Preconditions on page 153.11. If required, add any Decisions.For more information,see Decisions on page 152.12. Link the items together.For information,see Linking the process together on page 127.13. When you have completed designing your process, click to save the changes and validate theprocess.14. You now need to activate your process.For more information, see Validating and activating processes on page 158.126
PROCESS DESIGNER15. You may want to set this process as the default process. If so, in the Properties grid, set the IsDefault? property to True.Linking the process togetherYou need to link together all of the items within your process to ensure that each step activates the next inthe order in which you want the process to occur. We recommend that you do this as you go along.To link the process together:1. In the Process <strong>Designer</strong> component, in the process workspace, select the starting item (usuallythe Open Status).Four selection handles appear around the object.2. Click and drag one of the selection handles to the selection handles of the next item.The mouse pointer changes to a hand and a line is drawn connecting the two items.3. Repeat for the rest of the process.NOTE: When you are linking items in the process together, you may find that you cannot link certain itemstogether. This is because the link does not adhere to the Process rules.4. Click .Copying and modifying an existing process<strong>Service</strong> <strong>Desk</strong> has a number of predefined processes. If you find that you do not need to create a newprocess, you can make a copy of the existing ones and modify the copy to suit your organization's workpractices.To copy an existing process:1. In the Process <strong>Designer</strong> component, open the process you want to copy, then on the Actionmenu, point to Process, then click Copy Process.A deactivated copy of the current process appears in the Processes tree.2. Make the required changes, then click .Modifying an existing processAlternatively, you can create a new process and modify it later on. You can modify only deactivatedprocesses. This ensures that you do not disrupt users using <strong>Service</strong> <strong>Desk</strong> by making a change to theprocess they are currently using.NOTE: If you want to use a supplied process as a template, we recommend that you first copy the process, thenmake changes to the copy. You cannot make changes to an active process.To modify an existing process:1. In the Process <strong>Designer</strong> component, open the process you want to modify, then on the Actionslist, click Deactivate Process.127
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. Make the required changes, then click .NOTE: You must activate the process if you want your users to access it. In the relevant process, on the Actionslist, click Activate Process.Start pointsA start point enables you to specify an automatic action instance before assigning a Start status to theprocess. For example, you may want to have an automatic assignment before starting the process.NOTE: You cannot use start points to specify a manual action before the process starts.NOTE: For more information about automatic action instances, see Automatic actions on page 134.To create a new start point:1. In the Process <strong>Designer</strong> component, open the required process.2. Expand the Toolbox ( ), and drag onto the workspace.You can now add automatic action instances, including automatic assignments, to the processbefore specifying a Start status.StatusesThere are four status types within Process <strong>Designer</strong>: Start, Completed, End and Other.When you create (or customise) a process, you need to specify the Start status – the status at which thebusiness object instance (such as the Incident or Task) for the process is created, and the End status – thestatus at which the business object instance is read-only. Each process must have a Start and End status.Processes can have only one Start status and any number of End statuses.The Completed status and Other status are optional statuses. The Completed status occurs before the Endstatus and requires an action, assignment or precondition. The Completed status is useful if you want auser to resolve a process and assign it to someone with more authority for closure. The Other statusenables you to create any additional statuses that the process requires.At each stage of the process, you can associate optional action instances with each status. This enablesusers to create notes, reminders and so on at any stage throughout the process. For more informationabout associating optional action instances with a status, see Optional actions on page 135.Creating a new statusThe process rules for statuses are:128
PROCESS DESIGNER• A status can be the end node of any number of action instances, assignments, automatic actioninstances, and decisions.• A status can have any number of preconditions and action instances as forward connections.NOTE: To view the properties of a status in a process diagram, right-click it, then click Status Properties.To create a new status:1. In Process <strong>Designer</strong>, expand the Business Objects tree ( ).2. Select the process type for which you want to create a new status for.3. Select the Status folder, then on the Actions list, click New Status.The Status property grid appears.NOTE: Alternatively, click New on the Select Status dialog that appears when you add a Status to a processdiagram. The Create New Status dialog appears.4. Type a title and description for the status, then alongside the Status Type property, selectCompletion, End or Other. Typically, you would select Other.NOTE: If a status has the following icon:iconit means that you can delete it if required. If a status has the following, it means that you cannot delete it. This could be because it is currently in use, or has been predefined.5. Click .6. You can now select this status in the relevant process.Process actionsActions are activities that either progress the process to a new status or enable you to add data (such as anote) to the process, without changing the status. There are three types of action: manual, automatic,and optional.NOTE: For more information about manual actions, see Manual actions on page 132. For more information aboutautomatic actions, see Automatic actions on page 134. For more information about optional actions, see Optionalactions on page 135.The actions that you include in a process appear in the Actions list in the workspace when the processreaches the appropriate status.Generally, when you click optional or manual actions in the Actions list, the relevant window appearsenabling you to specify the required information for that action, for example, an assignment. You can prepopulatethese windows with static information, if required. Static information is a specific value for allinstances of the process, for example, an assignment to the SA user at a particular stage, or a specific titlefor a note.NOTE: You can also create actions that do not display a window when the action is used. These are useful whenyou want a user to complete an action, but do not need them to record any additional information. For moreinformation, see Creating a new action on page 130.When you reach an automatic action, although a window still exists, it does not appear to the user. Forexample, you may not need a window to appear for an authorisation, but you do want to record data aboutthe action, such as the name of the person who authorised the process. This information can beautomatically entered into the window, which you can view at a later stage if required. You can define thestatic or dynamic data that appears in that window. Dynamic information changes depending on somespecific information already recorded for this instance of the process – such as assigning to the currentuser, or using the title of the current process as the title of a new task.129
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: When you are designing a process, you sometimes need to make changes to either an object or a windowthat is used by the process. You can do this from the process diagram by right-clicking the required Action icon,then clicking either Modify Action Window or Modify Action Object. The object or window for the actionappears in the appropriate designer. Some actions may have multiple windows associated with them. In thisinstance, a dialog appears from which you can select the required window.Parent-Child linkingIf you link Incidents, Problems, and Changes (processes) together with child processes, then you canspecify that any changes made (or items are added) to the parent item, are automatically reflected to itschildren. For example, you have an Incident (Incident A) with three child Incidents (Incidents B, C and D).If you add a note to Incident A, then the note is also added (or propagated) to the child Incidents.You can configure which actions and optional actions are added to child items using the Process <strong>Designer</strong>.NOTE: In addition to specifying parent-child propagation using the Process <strong>Designer</strong>, you need to ensure that thebusiness object upon which the process is based has been configured such that parents can be linked to childrenin either a downward or upward direction. That is, either items added to the parent are reflected in its children(downward) or items that are added to the children are reflected in its parent (upward). You cannot specify bothdirections. For more information,see Attributes on page 30.NOTE: For information about adding actions, see Adding a manual action to a process on page 132. For informationabout adding optional actions, see Associating an optional action with a status on page 135.NOTE: When using the Create Child action, you can also specify which process and template the child process willuse. This enables you to populate some fields on the child process automatically. For more information abouttemplates, see Templates on page 169.NOTE: When linking processes together, remember to activate all of the processes being used; otherwise, theassociated action will not appear at runtime.Creating a new actionMost actions are already created in the Object <strong>Designer</strong> when you create a relationship between a businessobject and the Process or Task business object. These actions each have an associated window. For moreinformation about modifying these actions, see Actions on page 52.130
PROCESS DESIGNERAs a result, you will not usually need to create a new action. There are two exceptions, in which case youwill need to create a new action. These are:• If you want to create an action that has no associated window because there is no other data tocapture. For example, you may have an action called Confirm Mail Sent, with no associatedwindow.• If you want to update the main process using a separate window for data entry that appears when aparticular action occurs at a particular stage in the process. You would choose this option only if youwant to display the captured information on the main window. You would usually display suchinformation as read-only on the main window.NOTE: You may want to capture information about a failure when the Add Failure action occurs at a specific stageof the Problem process. In this example, you first need to create the Add Failure action. Then using WindowManager, in the Process folder, you create a separate window for capturing Failure information. This window isbased on attributes belonging to the Process business object. In the Properties grid, you specify the Action thatmakes that window appear (in this case, Add Failure). You can then display the captured information as read-onlyon the main Problem window. You can pre-populate these windows with static information. Static information iswhere you specify a specific value, for example, an assignment to the Administrators Group at a particular stage.To create a new action:1. In Process <strong>Designer</strong>, expand the Business Objects tree ( )2. Expand the item for which you want to create an action.3. Select the Actions folder, then on the Actions list, click New Action.The Actions property grid appears.NOTE: Alternatively, click New on the Select Action dialog that appears when you add an Action Instance to aprocess diagram. The Create New Action dialog appears.4. Type the Title and Description of the action.NOTE: You cannot use the characters & or < in the Title.5. Alongside the Allow Association With Window property, select True if you want to associate awindow with the action, or select False if you do not.If you select True, you need to create the required window using the Window Manager, and thenassociate that window to this new action. For more information, see Creating a new window on page78.If you select False, you can set a property called Confirmation required? for the action in theprocess design. If you set this property to True, a dialog asking the user to confirm the actionappears at runtime.NOTE: The confirmation dialog always appears in Mobile Web <strong>Desk</strong>, irrespective of this setting.6. Click OK.You can now select this action in the relevant process.NOTE: If an action has the following icon:following iconpredefined.it means that you can delete it if required. If an action has the, it means that you cannot delete it. This could be because it is currently in use, or has beenIn addition to specifying default information for an automatic action, you can specify default informationfor manual actions. For example, you could pre-populate a Note window with prompts for the user tocomplete specific information. You do this in the same way as when you specify default information forautomatic actions.131
LANDESK SERVICE DESK SUITE DESIGNER GUIDEManual actionsManual actions are steps that users must manually complete in order to progress the process to the nextstatus, such as completing a Task or similar. Standard actions do not dictate which information getsrecorded. For example, you can specify that users must assign the process at a specific stage, but they canchoose to whom the assignment is made.In Process <strong>Designer</strong>, manual actions are blue, and automatic actions are green.NOTE: For information about automatic actions, see Automatic actions on page 134. For information aboutautomatic assignments, see Creating an automatic assignment on page 148.NOTE: If you do want to dictate what choice is made at a particular point in the process, consider using automaticactions, or automatic assignments.When you add an action to a process, you specify which window appears at that stage in the process. Usersmust specify the relevant information before they can progress to the next stage.If you are using parent-child linking, then you can specify that the action that you are adding to theprocess will be propagated to all child items.Adding a manual action to a processThe process rules for manual actions are:• An action can exist as the end node of many connections. These can be from statuses orpreconditions.• An action can have only one forward connection. This is either to a decision, assignment, automaticaction or status.NOTE: To view the properties of an action in a process diagram, right-click it, then click Action Properties.To add a manual action:1. From the Toolbox, drag Action Instance onto the workspace.The Select Action dialog appears.132
PROCESS DESIGNER2. Select the required action, then click OK.If a suitable action does not appear on the list, you can create a new one by clicking New. For moreinformation, see Creating a new action on page 130.3. Click to expand the Properties grid.4. Alongside the Title property, type the text that you want to appear in the Actions tree when theprocess runs.5. If you want to add some default information to the window that is associated with this action, thenclick alongside the Action Instance Data property.The window associated with the action appears.NOTE: Notice that you do not need to complete the mandatory fields as part of the process design for manualactions. The user will have to complete any incomplete mandatory fields at runtime.6. Complete the relevant information, then click OK.7. If you want to replicate this action on all linked children or parent objects, then alongside thePropagate Action to Children property, select True.NOTE: For information about the Default Action Instance and Is Autoprompt properties, see Specifying thedefault action and autoprompt on page 133.Specifying the default action and autopromptIf you have two or more manual actions available at a given status, then you can specify the default actionso that it appears bold in the workspace Actions list. This indicates your preferred path in the process. Ifthese actions have windows, then you can make the default action window appear automatically.To specify the default action:1. In the Process <strong>Designer</strong> component, open the relevant process then select the action that youwant as the default action.2. In the Properties grid, in the Is default action instance list, select True.3. Click .133
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhen you have specified the default action, you can make its window appear automatically, usingAutoprompt.To make the default action window appear automatically:1. In the Process <strong>Designer</strong> component, open the relevant process then select the default action.2. In the Properties grid, in the Is autoprompt action instance list, select True.3. Click .Automatic actionsAutomatic actions are steps that are completed automatically (without user interaction) in order toprogress the process to the next status. For example, you can set up tasks to appear automatically whenthe process reaches a certain stage, or you can assign the process to a specific person.Within Process <strong>Designer</strong>, automatic actions are green, and manual actions are blue.When a user completes the manual action and saves it, the four tasks are automatically generated. A userdoes not have to manually create these tasks, they are created automatically.Adding an automatic action to a processProcess rules for automatic action:134
PROCESS DESIGNER• An automatic action can exist as the end node of many connections. This can be from preconditions,actions, automatic actions, or assignments.• An automatic action can have only one forward connection. This is either to an automatic action, anassignment, a decision, or a status.To add an automatic action:1. In the Process <strong>Designer</strong> component, open the required process.2. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.3. Select the relevant automatic action, then click OK.4. In the Properties grid, alongside Action Instance Data, click .If you specified the default window for this Action, then the default window for this action appears.5. Complete the relevant information, then click OK.The automatic action appears on the workspace. Automatic actions are green, and manual actionsare blue.6. Repeat as required, then click .Optional actionsIf you want to enable users to add notes, tasks and assignments throughout the process without affectingits status, then you can set up optional actions. These are not mandatory steps, nor do they progress theprocess towards the end.NOTE: When you design a new process, bear in mind that the process itself defines what a user can do and when.We recommend that optional actions are available at most stages of the process, so that your users are notrestricted to providing extra information (such as adding notes, sending reminders and so on) at a particular stageonly.NOTE: If you add optional actions to a status, they are not immediately visible if you look at the process as a whole.You might find it useful to annotate your process drawing. For more information, see Formatting process diagramson page 157.You can add optional actions to statuses only. For information about process rules for statuses, seeStatuses on page 128.Associating an optional action with a statusYou can associate one or more optional actions with each status. This enables users to create notes,reminders and so on at any stage throughout the process.As with all actions, you can enable parent-child propagation on an optional action.135
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo associate an optional action with a status:1. In the Process <strong>Designer</strong> component, open the relevant process.2. Select the required status.3. In the Properties grid, alongside Optional Action Instances, click .The Optional Action Instances dialog appears.You can add any number of optional actions for each status.4. In the Available Action Instances list, double-click the required action.The actions appear in the Selected Action Instances list.NOTE: You can associate default values for the action. You do this in the same way as specifying values forautomatic actions. For more information, see Automatic actions on page 134.5. If you want to specify that the action is replicated on all child instances, then alongside thePropagate Action to Children property, select True.6. If you want to change the name of the action that appears in the Actions list, then alongside theTitle property, type the required name.7. Click OK to associate the selected actions with the status.8. Click .136
PROCESS DESIGNERModifying process actions and assignmentsYou can double-click the action nodes and status nodes on the diagram to modify process actions,assignments and so on.You do not have to deactivate a process to be able to modify a process action, assignment or status.NOTE: The following procedure describes modifying process the Reminder action. You can modify processAssignments in a similar way.To modify a process action:1. Start the Process <strong>Designer</strong> component.2. On the Processes tree, locate and open the required process.3. Double-click the required Action node, for example, Add Reminder.The relevant window opens.4. Make the required changes, then click OK.5. Click .Modifying the optional actions of a process statusIf there is only one action for a status, then the required window opens. You can make the changes asrequired, and save the information.However, if there is more than one action associated with a status, the procedure is slightly different.To modify a process status which has more than one action:1. Start the Process <strong>Designer</strong> component, then on the Processes tree, locate and open therequired process.2. Double-click the required Status, for example, Open.The Optional Action Instances dialog appears, displaying all of the actions associated with theselected status.3. In the Action Instances list, select the required action, then click Modify.The relevant window appears.4. Make the required changes, then click OK.5. Repeat as required, then click Close on the Optional Action Instances dialog.6. Click .137
LANDESK SERVICE DESK SUITE DESIGNER GUIDESpecifying dynamic values for automatic actionsGenerally, when you reach a manual action within the process, a window appears enabling you to specifythe required information for that action, for example, an assignment. When you reach an automaticaction, although a window still exists, it does not appear to the user. For example, you may not need awindow to appear for an authorisation, but you may want to record data such as the name of the personwho authorised the process. This information can be automatically entered into the window, which youcan then view at a later stage if required.You can define static or dynamic data for an automatic action: for static information you specify a specificvalue, such as an assignment to the SA user at a particular stage or a set piece of text as the title; fordynamic information you specify a value that is determined at runtime, such as assigning to the currentuser, or using the title of the process as the title of the task.NOTE: You can specify dynamic values for Assignments and Automatic Actions.There are several types of dynamic value you can use, which are covered separately:• a simple Value Type – enables you to populate a field with a value taken from a specific attribute(for example, completing the Analyst field on an Assignment window with the name of theCreation User, to automatically assign an incident to the analyst who originally logged theincident). For more information, see Specifying a simple Value Type on page 139.• a Value Type from a collection – enables you populate a field with a value taken from a specificattribute on a specific item in a collection (for example, completing the Details field on a Reminderwindow with the details of a Quotation from a collection of Quotations on a change, to enable thedetails of a specific quotation to be e-mailed). For more information, see Specifying a value from acollection for an automatic action on page 140.• a Value Type that include a macro – enables you to populate a field with a runtime macro (forexample, completing the Analyst field on an Assignment window with the name of theCurrentUser, to automatically assign an incident to the current analyst). For more information,see Specifying the current user or group on page 142.NOTE: If you use a Value Type to populate a field, you can use no other text in that field – applying a Value Typeto a field removes all other content in the field.• Insert place holder – enables you to include a runtime value as part of a longer piece of text (forexample, including the Incident ID as part of the details of a reminder used to send an e-mail to anend-user to inform them that an incident has been logged for them). For more information, seeIncluding runtime values in text strings on page 142.• Calculation – enables you to populate a field with the results of a calculation. For more informationabout calculations, see Calculations on page 251.Mandatory fields on windows for automatic actionsUnlike with manual actions, you often have to complete the mandatory fields on the window that isassociated with an automatic action. You must complete mandatory fields on the window when thewindow is used for an automatic action on a non-lifecycle object. For example, if you use Add Note as anautomatic action, you will need to specify the mandatory Title. However, if you use Create Change as anautomatic action, you will not need to specify the mandatory fields, because Change is a lifecycle object.There are two other exceptions when you do not need to complete mandatory fields for automatic actions:• when the automatic action creates an independent object, such as a new user from a New Starterprocess• when the automatic action updates an existing object138
PROCESS DESIGNERSpecifying a simple Value TypeAs part of a process, you can associate a Value Type with a field on an assignment or an automatic actionwhich then automatically populates the field with a value taken from an existing attribute. For example,you could complete the Analyst field on an Assignment window with the name of the Creation User, toautomatically assign an incident to the analyst who originally logged the incident.To specify a dynamic value for an automatic action:1. Open the required process.2. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.3. Select the required action, then click OK.The relevant window appears for you to specify the required information.139
LANDESK SERVICE DESK SUITE DESIGNER GUIDE4. Right-click the required value, then click Value Type.The Control Value Selection dialog appears.For this example, we are modifying the Task Assignment window. We want to use the Incident Titleas the title for the Task Assignment.5. Select the Specify runtime value for control option button.6. Navigate to and select the required value, for this example, Task/Incident/Title.7. Click OK.The value you selected appears in the relevant control.8. Click OK.Specifying a value from a collection for an automatic actionSometimes you will want to populate a field in an automatic action using a value taken from an item in acollection. For example, if you have a recruitment process (Activity) that involves adding candidate recordsto the process, you could add an automatic task immediately after the Add Candidate action to invite thecandidate to an interview. You could use Value Types to populate fields in this task with values taken fromthe corresponding Candidate record in the collection.140
PROCESS DESIGNERBy default, the Value Type takes the required values from the most recently added item in the collection,so if the automatic action immediately follows the action that adds the item to the collection, you just needto specify the required attribute in the collection item. If, however, you want to specify which item in thecollection you want to take the attribute value from, you can add a filter to the Value Type that selects aspecific item. For example, if you have a boolean check box on the Candidate object to identify thepreferred candidate, you could add a filter to a later automatic action to select the required candidate tomake a recruitment offer to.To specify a value that is taken from a collection:1. Open the required process in the Process <strong>Designer</strong> component.2. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.3. Select the required action, then click OK.The relevant window appears for you to specify the required information.4. Right-click the required value, then click Value Type.The Control Value Selection dialog appears.5. Select the Specify runtime value for control option button.6. Navigate to and select the required value, for this example, Activity/Candidates[]/Candidate.NOTE: The [] square brackets indicate that you are selecting an item from a collection. If you click OK now, theValue Type will be selected from the most recently added item in the collection. If you want to select a different itemin the collection, you need to specify a filter that will uniquely identify the required item in the collection, asdescribed in the following steps.7. Select the collection node in the tree.The Specify a filter for the collection list boxes become available.141
LANDESK SERVICE DESK SUITE DESIGNER GUIDE8. In the Specify a filter for the collection list boxes, complete the , and lists as required, then click OK.9. Save the changes you have made.Specifying the current user or groupIn addition to specifying dynamic values for a specific control, you can use a macro for the current user orcurrent group instead.To specify the current user or current group value for a control:1. Open the required process.2. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.3. Select the required action, then click OK.The relevant window appears for you to specify the required information.4. Right-click the required user or group field, then click Value Type.The Control Value Selection dialog appears.5. Select the Specify macro value for control option button, then select either CurrentUser orCurrentGroup as appropriate.6. Click OK, then save the changes you have made to the window.Including runtime values in text stringsIf you add a calculation or a Value Type to a text field in a window for an assignment or an automaticaction, no other text can be added to that field. However, you can include a place holder for an attribute aspart of a longer string in a text field, and <strong>Service</strong> <strong>Desk</strong> will populate it with the appropriate value at runtime.For example, you can include the Incident ID as part of the details of a reminder to send an e-mail to anend-user to inform them that an incident has been logged for them.To add a place holder for an attribute in an automatic reminder or assignment:1. In Process <strong>Designer</strong>, double-click the required Reminder or Assignment's automatic action fromthe process diagram.The window for the action appears.142
PROCESS DESIGNER2. Type the text that you want to appear, then right-click where you want the runtime value to appearand click Insert place holder.The Pick Attribute Path dialog appears.3. Select the required attribute path, then click OK.The place holder you selected is added to the text field in {curly brackets}. This text will be replacedby the appropriate runtime value when the action runs.NOTE: You can truncate the string that is returned by a place holder by adding a colon followed by a number insidethe closing bracket.For example, {Title:15} displays the value from the Title field truncated to 15 characters.Sending notificationsWhen you add a note or similar, you may want to inform your users that their process has been updated.To do this, you can add a Reminder as an Automatic Action Instance after the required note. Then, when anote is created, the person or people whom you want notified about that note are notified automatically.The user writing the note will not see the Reminder window, and will not have to specify any additionalinformation.Before a user can do this, you need to configure both the Note window and the Reminder window toinclude a number of notification attributes. In this example, we will describe sending notifications after anote has been created, but you can add the reminder in the same way at any stage in your process tonotify users of changes made.Modifying the required business objects and windowsUsing the example of sending notifications after a Note has been created, we need to modify the Notewindow. In the following example, we will modify the Note window in the Incident Module. You can applythe same for the Problem, Change and Call (process) modules as required.To modify the Note business object and window:1. Start the Object <strong>Designer</strong> component.2. Expand the Incident Management folder, then double-click Note.3. Ensure that you have the following attributes, all of which have the Data Type of Boolean. If youdo not have them, you will need to add them.Notify AssigneeNotify OriginatorNotify CustomerNotify Supplier4. Click .143
LANDESK SERVICE DESK SUITE DESIGNER GUIDE5. Start the Window Manager component.6. On the Business Objects tree, expand the Incident Management folder, then the Notebusiness object.7. Double-click the required Note window to open it in the Window Editor.8. Expand the Attributes tree ( ), and add the four attributes listed above.9. Click .Your Note window might look something like this:The check boxes send the following notifications:Notify Assignee – notifies the User/Group or Role specified on the Reminder object. This is definedwhen you configure your process and specify the runtime values for the required attribute. Formore information,see Modifying your process and specifying the runtime values on page 145.Notify Originator – notifies the user that raised the process (and potentially any CCed users).Notify Customer – notifies the customer set on the process.Notify Supplier – notifies the supplier set on the process.You need to repeat the process for the Reminder window. The Reminder business object should alreadyhave the required attributes, all you need to do is add them to the Reminder window. In addition to thesecheck boxes, you may want to add Group, User and Role to your Reminder window. These will be used forspecific runtime values to ensure that the current assignment information is taken from the currentprocess.NOTE: For information on configuring these runtime values, see Modifying your process and specifying theruntime values on page 145.To modify the Reminder window:1. As mentioned above, all of the required attributes already exist within the Reminder businessobject, so use the Window Manager component to add them to the window.2. Expand the Attributes tree, and add the Group, User and Role lists to the window.NOTE: You do not need to expand these related business objects or add any of the attributes listed below the node.You need to add the business object itself, and this appears as a list on the window.These attributes have the relationship icon associated with them: .3. Click .144
PROCESS DESIGNERModifying your process and specifying the runtime valuesYou need to specify certain runtime values on the Reminder window, as the Notify Assignee, NotifyCustomer, Notify Originator and Notify Supplier are not automatically inherited from the Note window. Youdo this using the Process <strong>Designer</strong> component when you add the Automatic Action Instance of a Reminder.To add an Automatic Action Instance to your process:1. Start the Process <strong>Designer</strong> component.2. On the Processes tree, expand the relevant Module folder, for example Incident Management.3. Expand the relevant business object, for example Incident, and then select the required process,for example Rich Incident.NOTE: In this example, the Rich Incident process is activated. Your process may also be Active. Before you canmodify any process, you need to Deactivate it.4. On the Actions list, click Deactivate Process.5. On the Processes tree, double-click the required process so that you can modify it.6. Expand the toolbox ( ).7. Drag an Automatic Action Instance onto the process workspace and position it beneath the AddNote action.The Select Action dialog appears.8. Select Add Reminder, then click OK.The Reminder window automatically appears.9. In the Subject box, type the text that you want to appear as the Subject of the e-mail that isautomatically generated. For example, Your Incident has been updated.10. In the Details box, type the text that you want to appear in the Body of the e-mail that isautomatically generated.11. Do not click OK, as you need to specify the runtime values. These are documented in the nextprocedure.NOTE: You may want to put automatically generated information within the Subject box. We describe how to dothis is the next procedure.As mentioned previously, the Assignee and so on are not automatically taken from the Note or Incident.Therefore, you need to specify runtime values.To specify the required runtime values:1. If you want to add the process ID within either the Subject or Details box, then type the requiredtext, and at the relevant location, type {Incident/Id}.145
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. Right-click Notify Assignee, then click Value Type.The Control Value Selection - Notify Assignee dialog appears.3. Select the Specify a runtime value for control option button.146
PROCESS DESIGNER4. Expand the Incident node, then the Notes node, and select the check box alongside NotifyAssignee.5. Click OK.6. On the Reminder window, right-click the Notify Customer check box, then click Value Type.7. Expand Incident/Notes/ and select the Notify Customer check box, then click OK.8. Repeat for Notify Originator, expand Incident/Notes/ and select the Notify Originator checkbox, then click OK.9. Repeat for Notify Supplier, expand Incident/Notes/ and select the Notify Supplier check box,then click OK.10. If you want to send this information to the current assignee for the process, then you also need tospecify values for the Group, User and Role lists.For example, for the Group, right-click the list, then click Value Type, and specify theIncident/CurrentAssignment/Group runtime value.11. Expand the Send Date list, and select any date in the past.This ensures that the message is generated in the next poll period.12. On the Reminder window, click OK.13. On the Process Workspace, link the Note with the Reminder, then link the Reminder with theStatus.147
LANDESK SERVICE DESK SUITE DESIGNER GUIDE14. Repeat as required throughout your process.15. Click .16. On the Actions list, click Activate Process.The process is now active and when a note is added, the relevant people are sent an e-mail to informthem.AssignmentsFor management purposes, you need to ensure that each process is constantly visible so that people canaccess each action. This means that you need to assign your process to at least one user, group or rolethroughout its lifecycle. You can set up automatic or manual assignments.NOTE: For information about manual assignments, see Manual assignments on page 149.A single process can have only one assignment at a time. However, a process can have many tasksrunning concurrently, each with their own assignment. You can modify and complete assignments, orreassign them to other roles, groups and users.Creating an automatic assignmentAutomatic assignments enable you to set up in advance the specific role, group or user who will administera particular stage of a process. This gives you greater control over the process.Automatic assignments have the following process rules:• An automatic assignment can exist as the end node of many connections. These can be from thestart point, decisions, assignments, preconditions, actions or automatic actions.• An automatic assignment can have only one forward connection. This is either to a status, anassignment, a decision, or an automatic action.To create an automatic assignment:1. In Process <strong>Designer</strong>, open the relevant process.2. Expand the Toolbox ( ).3. Drag an Assignment onto the workspace.4. The Assignment dialog appears.5. Complete the relevant information, then click OK.The automatic assignment is set up, and each time the process reaches this stage, an assignment issent to the required user or group.6. Click .148
PROCESS DESIGNERManual assignmentsManual assignments enable users to specify who will administer the next stage of a process. You can set upthe Assignment window to appear automatically when required.You can make the assignment mandatory by designing the process so that assignment is the only availableaction at a specific stage in the process. This means that the current user cannot continue until they havecompleted the assignment.To create a manual assignment:1. In the Process <strong>Designer</strong> component, open the relevant process.2. Expand the Toolbox ( ).3. Drag an Action Instance onto the workspace.The Select Action dialog appears.4. Select Assign (or whatever name you have given for assignments), then click OK.5. If you want the window of that action to appear, then in the Properties grid, alongsideIs autoprompt action instance, select True.6. Click .Process ApproverWhen you have configured Process Approver for <strong>Service</strong> <strong>Desk</strong>, an e-mail message is automatically sent to aspecific person as a result of an automatic assignment or a reminder. Within the e-mail message there is alink that the user can click to take them to the relevant process in <strong>LAN<strong>Desk</strong></strong> Web Access. The procedurebelow describes how to configure Process Approver for an assignment.To configure Process Approver:1. On the Settings menu, click System.2. Within the Process Approver settings, alongside the Enter the Web Access ProcessApprover URL property, type:http:////object/open.rails?class_name={Class/Module/Name}.{Class/Name}&key={Guid}NOTE: Where is the name of your <strong>Service</strong> <strong>Desk</strong> web server and is the name of thevirtual directory for Web Access.WARNING: You must ensure that the URL is typed exactly as written above using the exact character casing andwith no spaces.3. In Process <strong>Designer</strong>, open the required process, and from the Toolbox, add an Assignment toyour process.The Assignment window automatically appears.4. Specify the relevant Analyst, Group or Role.5. Select the Notify Assignee or Notify Originator check box (or both).6. Type the required Title, for example, Please authorise change.7. In the Details box, type the required message. For example:Please authorise Change {Id}. Click the link below to authorise.8. In addition to the message, you must add the following to the Details box, so that the user can clickit to authorise the relevant process.{$ApplicationSetting.ProcessApprover.WebAccessApproverURL$}WARNING: Again, this must be typed exactly as written.149
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: If you are creating a Task Assignment, include {Change/Id} in the Details box to inform the user of theparent process. You may also want to add the Change ID attribute to the Task window. For more information aboutadding attributes to a window, see Adding controls to a window on page 81.9. Save the changes that you have made and activate your process.TasksTasks are sub-processes. That is, they can have their own assignments, statuses, actions and so on. Youadd tasks to the process either as an action or automatic action. Tasks cannot exist without a parentprocess.The best way for you to ensure that users complete all of the tasks in a process is by adding a preconditionto the process. For more information about preconditions, see Preconditions on page 153.Creating tasksBefore you can add a task to a process, you must first create the task. You create tasks in the same way asyou create processes. Tasks must have a Start and End status.NOTE: When you create a task, we recommend that you prefix the name with Sub-Process (or similar) so that youcan easily distinguish it from other actions.To create a task:1. In the Process <strong>Designer</strong> component, on the Processes tree, select the Task folder, then on theActions list, click New Process.A new process appears in the Task folder2. Set up the task as you would a process.For more information, see Creating a new process on page 126.3. Validate and activate the task as you would a process.For more information, see Validating and activating processes on page 158.4. Click .NOTE: You cannot use tasks as standalone processes – that is, they cannot exist without a parent process.Setting the default taskThe default task is the task initially specified in a process when you create an action or automatic action oftype Add Task. The supplied task is originally set as the default, but you can change any task that youhave created into the default. You can have only one default task; we recommend that this is the task youuse most often.To set the default task:• On the Processes tree, select the task that you want to set as the default, then on the Actions list,click Set as Default.The selected task becomes the default, and the icon changes to .NOTE: Alternatively, right-click the relevant task, then click Set as Default.NOTE: You cannot set a task as the default until it is validated and activated. For more information, see Validatingand activating processes on page 158.150
PROCESS DESIGNERLinking a task to a processYou can design your process to create tasks either manually or automatically.To create a task from a process using a manual action:1. From the Toolbox, drag Action Instance onto the workspace.The Select Action dialog appears.2. Select Add Task, then click OK.The default task appears in the process.To create a task from a process using an automatic action:1. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.2. Select the required task.3. Click OK.The task appears in the process.4. If you want to set up a different task lifecycle than the default task, then in the Properties grid,alongside Default Process, select the required task from the list.5. Click .151
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDecisionsAt certain stages in a process, decisions have to be made. Each decision has two outcomes: Positive andNegative. A positive outcome advances the process to the next stage. A negative outcome can return theprocess to an earlier stage, or to a different stage.Adding a decision to a processThe process rules for decisions are:• A decision can be the end node of automatic actions, actions, assignments and other decisions. Itcannot be the end node of a status.• A decision must have two forward connections: one positive and one negative. These can be to:decision, automatic action, assignment or status.NOTE: To view the properties of a condition used by a decision in a process diagram, right-click the decision, thenclick Condition Properties.To add a decision to a process:1. In the Process <strong>Designer</strong> component, open the required process.2. On the Toolbox tab, drag Decision onto the workspace.The Select Condition dialog appears.3. Select the relevant condition, then click OK.The Decision appears on the workspace.NOTE: If there is not a suitable condition, click New on the Select Condition dialog to display the Create NewCondition dialog.NOTE: The first link that you create from a decision is the Yes result. The second is the No result.152
PROCESS DESIGNER4. Link the Decision to the Yes result, then link the Decision to the No result.5. Repeat as required, then click .PreconditionsPreconditions ensure that specific tasks and actions are complete before a specific status in the process.When the precondition is satisfied, then the next step in the process becomes available to a user. Forexample, in the supplied Change process, you can close the Change only after all tasks are at an End state.Adding a precondition to a processThe process rules for preconditions are:• A precondition can exist as the end node of one or many statuses.• A precondition can have only one forward connection. This is either to an automatic action, anaction, or an assignment.NOTE: To view the properties of a condition in a process diagram, right-click it, then click Condition Properties.To add a precondition to a process:1. In the Process <strong>Designer</strong> component, open the relevant process.2. On the Toolbox tab, drag Precondition onto the workspace.The Select Condition dialog appears.3. Select the relevant precondition, then click OK.The precondition appears on the workspace.153
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: If there is not a suitable condition, click New on the Select Condition dialog to display the Create NewCondition dialog.4. Repeat as required, then click .Creating a new conditionTo create a new precondition:1. In the Process <strong>Designer</strong> component, click the Object Management tab.2. In the Business Objects tree, select the process type for which you want to create a newcondition.3. Select the Condition folder, then on the Actions list, click New Condition.The Condition property grid appears.4. Type the title and description of the precondition.5. Alongside the Attribute/Collection/Object property, select the attribute, collection or object towhich you want to add a condition.6. Depending on your choices, a Condition and Value box appear in the property grid. These are notinitially visible.7. If you select an object, then in the Object Attribute property, select the relevant attribute.8. Select the relevant Condition from the list.9. If relevant to the condition, type in a Value or select it from the list.10. Click OK to create the new condition.NOTE: Conditions that have anmodified. Conditions that have anicon alongside them are either in use or are system defined and cannot beicon alongside them can be modified.11. Click .154
PROCESS DESIGNERSpecifying a runtime value for a conditionYou can specify that a specific runtime value applies to a condition in a process. For example, you canspecify a condition to check that the Raise User is not the Current User, thereby preventing them fromauthorising their own Incident.To specify a runtime value for a Process Condition:1. In the Process <strong>Designer</strong> component, expand the BusinessObjects tree ( ).2. Expand the required Process Object folder, for example, Incident, and then expand theCondition folder.NOTE: Conditions that have anmodified. Conditions that have anicon alongside them are either in use or are system defined and cannot beicon alongside them can be modified.3. Double-click the required condition to open it.The Properties appear.NOTE: If you want to specify a specific static value, then alongside the Value Type list, select Specific Value,then alongside the Value property, type or select the required value.4. In the Value Type list, select Runtime Value, then alongside the Value property, expand thedrop-down list.The Control Value Selection dialog appears.155
LANDESK SERVICE DESK SUITE DESIGNER GUIDE5. Select either the Specify a macro value for this control or Specify a runtime value forcontrol option button.6. If you select Specify a macro value for this control, you select the required value from thedrop-down list.7. If you select Specify a runtime value for control, then navigate to and select the requiredvalue.8. Click OK.9. Click .156
PROCESS DESIGNERFormatting process diagramsBefore you save a process, you can adjust the process layout.To annotate your process diagram:1. In Process <strong>Designer</strong>, open the relevant process.2. From the Toolbox, drag Enter your comments here onto the process workspace.The Enter Comment Note Text dialog appears.NOTE: Alternatively, on the Properties grid, in the Text property, type the relevant information.3. Type the relevant information, then click OK.4. Position the annotation as required, then save the changes you have made to the process.Adjusting the process layoutYou first need to select process nodes or connectors before you can adjust their position by clicking them.The currently selected node has a green outline. If you select more than one node, then the primary nodehas a green outline and each node in the rest of the group has a blue outline. The primary node defines thealignment position if the group is aligned together. You can also adjust the vertical and horizontal spacingbetween a group of selected nodes.WARNING: You cannot adjust the process layout if it is activated. You must deactivate the process before you canadjust its layout.To align or space process nodes:1. In the Process <strong>Designer</strong> component, before you save a process, select the nodes that you want toalign or space.The first node that you select is the primary node.On the Format menu:Align – aligns the nodes to the primary nodeVertical Spacing – adjusts the spacing above and below the selected nodesHorizontal Spacing – adjusts the spacing to the left and right of the selected nodes2. Click the required option.The nodes are aligned or spaced accordingly.Moving and deleting process nodes and connectors• You can move the selected node or a group of nodes by dragging them• You can delete the selected node or a group of nodes by pressing DELETE• You can change the route of a connector by clicking it, then dragging its selection handles157
LANDESK SERVICE DESK SUITE DESIGNER GUIDEIdentifying connected itemsWith a complex process design, identifying which items are connected to each other can be difficult.Clicking an item in Process <strong>Designer</strong> changes the colour of the connectors that link into the selected itemto magenta, and the connectors that leave the item to blue.Viewing the properties of a controlTo view and modify the properties of a process node:1. In the Process <strong>Designer</strong> component, click the process node that you want to modify.The Properties grid is updated.2. Make the required changes, then click .Validating and activating processesBefore you can use a new process in <strong>Service</strong> <strong>Desk</strong>, you need to activate it. Process <strong>Designer</strong> automaticallyvalidates the process each time you save it. If the process is valid, then the Processes tree icon changesfrom to , which indicates that the process is valid, but is not yet activated. If the process is not valid,the icon remains as. You cannot activate processes that are not valid.NOTE: If the process is not validated, check that each item is connected to another. Items that are in the wrongplace cannot be connected to the previous or subsequent item. Either change the format of the item (for example,change it to an action instance rather than a status) or remove the item.Activating and deactivating a processYou activate and deactivate processes using the Activate Process and Deactivate Process actions.Active processes are indicated by , and inactive processes by .Reinitialise: switching between processesYou can create a very simple process that is used for every new process that the service desk logs. Thissimple process could contain generic process attributes, such as the customer reference number, basiccustomer-related information and a description of the process. It would contain few, or no, mandatoryfields in order to keep the data capturing easy.After an analyst captures and saves this generic information, various actions are made available, includingthe ability to switch process. The analyst can then decide what type of support is needed, then select therelevant template. This type of system is often referred to as a triage system.Using Reinitialise with an automatic action enables you to design a process that automaticallyreinitialises to a different process depending on data that is entered. For example, you could design a triageprocess that automatically reinitialises into the appropriate process depending on the CI that is selected.The procedure for using Reinitialise with a manual action is slightly different from that for an automaticaction.NOTE: When a process is reinitialised, it is reinitialised to the same status. This means that you can reinitialise onlyinto processes that have a matching status.To add a Reinitialise action to a process:1. In Process <strong>Designer</strong>, open the required process.2. From the Toolbox, drag on an Action Instance or Automatic Action Instance.The Select Action dialog appears.158
PROCESS DESIGNER3. In the list, select Reinitialise, then click OK.The action is added to the process. To help identify it as a Reinitialise action, the box is bordered withred.4. Drag from the status for which you want to enable Reinitialise to the Reinitialise action.NOTE: You cannot have a link from a Reinitialise action – this action directs the process into a different processdesign.If you save your design at this stage, when the user clicks Reinitialise, they are given a list of processes toreinitialise the process into. However, you can configure the process to reinitialise into a different specificprocess, template, or process and template combination automatically, if required.To specify a process and/or template to reinitialise into as part of the process design using amanual action:1. Select the Reinitialise action in your process design, then display the Properties grid.2. If required, in the Default Process list, select the process that you want to reinitialise into.3. If required, in the Template list, select the template that you want to use to populate some fieldswith.To specify a process and/or template to reinitialise into as part of the process design using anautomatic action:1. Select the Reinitialise automatic action in your process design, then display the Properties grid.2. If required, alongside Default Process, click .The Select value for Default Process dialog appears.3. If you want the process to reinitialise into the same process whenever this automatic action is used,select the Absolute value option button, then select the required process in the list.If you want the process to reinitialise into a different process that is determined at runtime by avalue set elsewhere, select the Runtime value option button, then select the path to the attributethat contains the required Lifecycle in the tree.159
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: For example, you could reinitialise the process into the specific process that is associated with a CI bysetting the Runtime value to ConfigurationItem/Lifecyle.Notice that the internal name for the attribute that stores the value for a process is Lifecycle.4. If required, set the Template value in the Properties grid in a similar manner to that used to setthe Default Process.NOTE: If you are configuring your process to reinitialise into a specific process, it is often good to change the Titlefor the action to make it more descriptive at runtime. The Title for the Action sets the text that appears for in theActions list at runtime.Administration of Users and CIs from a processYou can configure your <strong>Service</strong> <strong>Desk</strong> system to enable certain user and CI administration functions fromwithin a process. You can:• create users, groups and CIs as part of a process• manage the linking of users, groups and CIs as part of a processNOTE: This is different from the Create Configuration Item action in a Change process, which displays theConfiguration Management component so that you can create a new CI. This functionality enables you to display theappropriate New CI window directly from any process.There are four basic steps to set up <strong>Service</strong> <strong>Desk</strong> to administer users and CIs from a process, although youcan extend this functionality by incorporating other design features of <strong>Service</strong> <strong>Desk</strong> as appropriate.The four basic steps are:• Adding the action that creates the objects on page 160• Using the Create action in a process on page 161• Adding the action that links objects on page 165• Using the Link action in a process on page 166Adding the action that creates the objectsUsing Object <strong>Designer</strong>, you add the action that you will use in Process <strong>Designer</strong> to enable users to createnew CIs, users, or groups at runtime. The procedure is almost identical for each action that you can create– the procedure below describes how to add an action that you can use to create CIs from a Change.NOTE: For more information about using Object <strong>Designer</strong>, see Object <strong>Designer</strong> on page 19.To add a Create CI action:1. In Object <strong>Designer</strong> create a relationship between the object that you want to create from theprocess, and the process object from which you want to create the object.In our example, drag Configuration Management\Configuration Item onto ChangeManagement\Change, and click No when asked if you want to access all related instances ofChange from Configuration item.The Configuration Item relationship appears on the Change object.NOTE: You can create the relationship to the process object from System\User, System\Group, orConfiguration Management\Configuration Item – or from any subclasses of those objects (for example, theAnalyst subclass of User).If you choose to create the relationship (and then the action) at the top level, you can specify the subclass either aspart of the process design, or leave it to be selected by the user at runtime.NOTE: You might find it easier to create the relationship by opening a second instance of Object <strong>Designer</strong> by rightclickingthe Object <strong>Designer</strong> shortcut, then clicking Open in New Window. You can then drag the relationshipfrom one instance of Object <strong>Designer</strong> to the other.160
PROCESS DESIGNER2. In the Attributes tree, select the new Configuration Item relationship, then in the Actions list,click Manage Actions.The Manage Actions dialog appears.3. Click Add.A new action is added to the Actions list.4. In the Title field of the Action details group, type the title for the action.For example, type Create CI.5. In the Action type list, select Create Related, then click OK.The action is added to the object, and the Manage Actions dialog closes.NOTE: Selecting Update Related enables you to update a value on the object.6. Click .The changes to the object are saved.Using the Create action in a processAfter you have added the Create action to the required relationship in Object <strong>Designer</strong> (see Adding theaction that creates the objects on page 160), you can use the action in your process designs.NOTE: For more information about using Process <strong>Designer</strong>, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> <strong>Designer</strong> Guide.You can use the action as either an optional, standard, or automatic action. The procedures below describehow to use a Create Group action. You would use a Create User or Create CI action in a similar way.To add Create Group as an optional action in a process:1. In Process <strong>Designer</strong>, deactivate and open the required process.2. In the process diagram, select the status where you want to add the optional action.161
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. In the Properties grid, alongside Optional Action Instances, click .The Optional Action Instances dialog appears.4. In the Available Action Instances list, select the action that you added in Object <strong>Designer</strong> (in ourexample, select Create Group), then click .The action is moved to the Selected Action Instances list.If you have designed a window for the item that you are creating with this action, you can add initialdata to the window.5. In the Selected Action Instances list, select Create Group, then in the Properties grid,alongside Action Instance Data, click .The Group window appears.6. Enter any values that you want to appear when the window first appears at runtime, then click OK.The window closes.If the action you have selected creates a top-level object (CI, User or Group), you can specify whichsubclass is created using the Object Type property. If you do not set the Object Type property for atop-level object, then when the user clicks the action at runtime, they are asked to choose theobject type at that time.162
PROCESS DESIGNER7. Alongside the Object Type property, click .The Object Type selection dialog, which enables you to select the specific type of object that youwant to create, appears.You can either select a specific value for the object type, or <strong>Service</strong> <strong>Desk</strong> can determine which typeof object to create at runtime, based on the value of an object type related to the specific processinstance.8. Either select the Specific absolute value option button and choose a value from the list, or selectthe Specify runtime value option button and choose a value from the attribute tree thatappears.If you make no selection, a dialog appears at runtime for the user to select the type from.9. Click OK.The Object Type selection dialog closes.10. Click OK.The Optional Action Instances dialog closes.The procedure to add the Create Group action to a manual action is similar.163
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo add Create Group as a manual action in a process:1. In Process <strong>Designer</strong>, deactivate and open the required process.2. From the Toolbox, drag Action Instance onto the workspace.The Select Action dialog appears.3. Select the required action instance, then click OK.4. Display the Properties grid.5. In the workspace, select the Action Instance that you added, then set the required properties in theProperties grid.Title – the name of the action that will appear in the Actions list.Action Instance Data – enables you to set the initial values that appear on the window atruntime.Object Type – for a top-level object, this enables you to set which type of object to create; if you donot set a value, the user is asked to choose which subtype they require at runtime. As for anoptional action, you can set an absolute or runtime value for the object type.6. Complete the process design as usual.The procedure for automatic actions is slightly different because you must specify the object type if theaction was created for the top-level object – you cannot leave the object type to be selected at runtime foran automatic action.To add Create Group as an automatic action in a process:1. In Process <strong>Designer</strong>, deactivate and open the required process.2. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.3. Select the required action instance, then click OK.If the action was created for the top-level object, the Object Type selection dialog appears. If theaction was created for a subclass, the window for the subclass appears immediately.164
PROCESS DESIGNER4. Specify the object type as required, then click OK.The window for the appropriate object type appears.5. Complete the window as required, then click OK.NOTE: For more information about specifying dynamic values for automatic action instances, see Specifyingdynamic values for automatic actions on page 138.Adding the action that links objectsIn addition to creating CIs, users, and groups from a process, you can also link and unlink these items. Youfirst need to add the required actions to the process object in Object <strong>Designer</strong>, and then design yourprocess to use these actions.The procedure is almost identical for each action – the procedure below describes how to add an action thatyou can use to link CIs to a user from a Change.To add the linking and unlinking actions:1. In Object <strong>Designer</strong>, open the top-level process object for the module you want to use.For example, open Change Management\Change.2. With the object selected in the Attributes tree, click Manage Business Object Actions in theActions list.The Manage Business Object Actions dialog appears.3. Click Add.A new action is added.4. In the Title box, type the text that you want to appear as the action.For example, Link User to CI.5. In the Action type list, select Create if you want to create links between objects, or Delete if youwant to unlink objects.6. In the Target Business Object tree, select the link that you want to create or delete.For example, Configuration Management\User Configuration Item.165
LANDESK SERVICE DESK SUITE DESIGNER GUIDE7. Add any other linking and unlinking actions you require, then click OK.8. Click .Using the Link action in a processYou use the Link and Unlink actions in a manner similar to other actions. The example below describes howto use the Link User to CI action you added previously as an automatic action to the Simple Changeprocess. By using an automatic action, you can use a Value Type to select all of the CIs attached to theChange and link them using another Value Type to the Raise User for the Change.To use a Link action:1. In Process <strong>Designer</strong>, open the required process design.2. Display the Toolbox.3. From the Toolbox, drag Automatic Action Instance onto the workspace.The Select Action dialog appears.4. Select the required action, then click OK.The relevant window appears for you to specify the required information. In our example, selectingthe Link User to CI action causes the User Configuration Item window to appear.In the following steps, we configure a Value Type to populate the ConfigItem list with the CIs thatare attached to the Change, and another Value Type to populate the User list with the Raise Userfor the Change.5. Right-click the ConfigItem list, then click Value Type.The Control Value Selection dialog appears.166
PROCESS DESIGNER6. Select the Specify a runtime value for control option button, then in the tree, expand theConfiguration Items[ ] branch and select Configuration Item.Configuration Items[ ]/Configuration Item appears in the box beneath the option button.This will select only the CI that was added last – but we want to select ALL of the CIs that areattached to the change.7. Select the Select ALL collection items? check box.The box beneath the option button updates to readConfiguration Items[ ]*/Configuration Item.The asterisk indicates that all of the items in the collection are selected.8. Click OK.The ConfigItem field is completed.9. Similarly, set a Value Type for the User field to be the runtime value Raise User.10. Click OK on the User Configuration Item window.11. Complete the process design to use the new automatic action as required, then click .For example, you could create an action with no associated window that you then use to trigger theautomatic action to link all of the CIs to the User.Adding your process to the shortcut barOnce you have created and activated your process, you will then want to make it available to the requiredusers of <strong>Service</strong> <strong>Desk</strong>.To add a process to the shortcut bar:1. Right-click the Shortcut Bar, then click Add Component.The Component Maintenance dialog appears.167
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. In the Select Component list, select Workspace.3. Specify a Title for your process, for example Incident.The Title can be up to 64 characters long.4. Alongside the Launch As New Window property, select True if you want a new instance of the<strong>Service</strong> <strong>Desk</strong> Console to appear when you click this component on the Shortcut bar. Select False ifyou want to open it within the current console.5. Alongside the Module Name property, select the module that contains the process you have justcreated, for example Incident Management.6. Alongside the Business Object Name property, select the name of the relevant business object,for example, Incident.7. Alongside the Process Name property, select the name of the process you have just created, forexample, HRIncident.8. If you are creating the shortcut just for your own use, select the Private Shortcut item checkbox.9. If you want the process to be available in Web <strong>Desk</strong> as well as in the console, select the Create thisGroup for Web <strong>Desk</strong> also check box.10. Click OK.11. The process is added to the shortcut bar. When a user clicks this, a new instance of the process iscreated.168
PROCESS DESIGNERTemplatesUsing Process <strong>Designer</strong>, you can automatically populate the fields on the window that appears when a userclicks an action. For example, the window could appear with a standard title already entered, or with somedynamic data such as the name of the current user already entered. For more information, see Specifyingdynamic values for automatic actions on page 138.However, to add data automatically to the process's main window, you need to create a template, usingthe Template <strong>Designer</strong>. You could then associate this template with a specific process to enable you toprovide a standard structure and degree of automation for the process. For example, you can set uppopulated attributes in the Details window, automatically create notes and automatically assign theprocess.Templates provide a quick way of logging common types of processes, such as Incidents relating toforgotten passwords, or server crashes.Creating a templateBefore you can create a template, you need to make sure that the appropriate window has been designedin Window Manager. In the Template <strong>Designer</strong>, the default window is displayed; however, when you runthe template with its associated process, the appropriate window specified in the View in Window Managerappears.NOTE: For more information about Window Views, see Publishing windows on page 107.NOTE: The Template <strong>Designer</strong> component enables you to set up a template only for the initial window (top-levelbusiness object). All actions and extra windows must be populated within the related process.To create a template:1. In Template <strong>Designer</strong>, expand the Templates tree.2. Select the process object against which you want to create a template, then in the Actions list, clickNew Template.The Details window appears. This is your template window.3. Complete the required details on the Details window, then expand the Properties grid..4. Alongside the Title property, type a name for the template.5. In the Template Process list, select the process that want you the template to use.6. Set the Overwrite? property to True if you want the value set in the Template <strong>Designer</strong> tooverwrite the Default Value set for the attribute in Object <strong>Designer</strong>.NOTE: You will often need to set this to True. In Object <strong>Designer</strong>, look for attributes on the template that have aDefault Value set – if you set the Overwrite? property to False, then the default values from Object <strong>Designer</strong>will be used, irrespective of what you set in the template.7. Click to save the template.You now need to add an instance of the template to the shortcut bar.8. Add a new Workspace component to the shortcut bar, containing the relevant information for thetemplate you created, then click OK.When you click the newly created Workspace component, the template appears and follows theprocess that you selected.169
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: If you want to use a window other than the default window for your process, you need define a View to setthe relevant process where you want the window to appear. You do this using Window Manager.For moreinformation, see Publishing windows on page 107.WARNING: You cannot delete templates if they have been used by analysts.The template populates only the main window for the process. You can populate the other windows usedby the process using Process <strong>Designer</strong>.To populate any windows in a specific process:1. Start Process <strong>Designer</strong>.2. In the relevant process, click the Action Instance, Automatic Action Instance or Assignmentelement for which you want to populate the window, then click .The Properties list appears.3. In the Action Instance Data attribute, click to view the window for the selected item.4. Type in any information that you want to show on the window when this process is used, then clickOK to close the window.5. Click to save your changes to the process.Changing templatesWhen you create a process that you have set up to allow changing of processes on a particular status, thenwhen it reaches the particular status, the Reinitialise action appears in the Actions list. You can also useReinitialise to switch templates.NOTE: For information about configuring the Reinitialise action, see Reinitialise: switching between processes onpage 158.170
Query and Report <strong>Designer</strong>The Query and Report <strong>Designer</strong> enables you to create queries to produce lists from data in your <strong>Service</strong><strong>Desk</strong> database. You can use them to find existing processes, such as incidents, changes, problems and soon logged using <strong>Service</strong> <strong>Desk</strong>, and also use them on dashboards. You can find out about:• What is the Query and Report <strong>Designer</strong>? on page 172• User options on page 172• Creating a query on page 176• Adding grouping to query results on page 179• Query criteria on page 184• Enhancing the appearance of your Query Results on page 189• Query privileges on page 201• Filters on page 203• The Report <strong>Designer</strong> on page 208
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhat is the Query and Report <strong>Designer</strong>?Creating a query within the Query and Report <strong>Designer</strong> enables you to create a list of data records that youcan use to perform certain actions on, or review the information that they contain. The Query and Report<strong>Designer</strong> enables you to view records that span multiple business objects and provides some basic listmanipulation and data grouping.With the Query and Report <strong>Designer</strong> you can:• Create simple list queries• Sort the results of a query• Filter the results of a query• Group the results of a query• Save queries• Export and print the results of a query• Create filters to limit the items that appear in lists• Use queries as a base for your reportsConfiguring the Queries and Reports treeOn the Queries and Reports tree, you can choose to display the queries and reports alphabetically, ordisplay by Module and Business Object.To configure the Queries and Reports tree:1. Start the Query and Reports <strong>Designer</strong> component.2. On the Queries and Reports tree, in the View By list, select either Alphabetic orModule/Business Object.The tree changes to reflect the option you selected.User optionsEach user can modify the way in which their version of the Query and Report <strong>Designer</strong> behaves. Forexample, you can choose to display only those attributes (fields) that appear on your <strong>Service</strong> <strong>Desk</strong>windows, rather than all the attributes for the required business object.The User Options page appears when you first start the Query and Report <strong>Designer</strong>.172
QUERY AND REPORT DESIGNERTo modify user options:1. Start the Query and Report <strong>Designer</strong>.The Query and Report <strong>Designer</strong> starts, and the User Options page appears.2. Complete the required fields:Run query on finish – when you click Finish in the Query and Report <strong>Designer</strong>, the query runsimmediately.Display in Group – the query is displayed in the relevant shortcut group.Show predefined business objects only – only the predefined business objects of Incident,Asset, User, Process, Task, Analyst, Role and Group appear in the Business Object list.Show all business objects – all of the business objects within your database appear in theBusiness Object list.Append date/time to create unique filename – each time you generate a report, the date andtime is added to the filename to distinguish it from other reports. For more information, seeCreating a new report on page 209.Overwrite files each time the report is run – the report is not given a new name; when yourun the report, it overwrites earlier versions of the same report.Save reports to – reports are saved to the specified location. We recommend that this location issituated on a network so that the reports are available to all the required people.Show the attribute label that appears on windows – the attribute name as used on yourwindows (you might know this as the element name) is used on the Attributes tree instead of theattribute description.Show the attribute description from the database table – the attribute description (youmight know this as the element description) is used on the Attributes tree instead of the attributelabel.Include real database names – in addition to either the attribute label or attribute description,the database name (you might know this as element ID) is shown on the Attributes tree.Show only attributes on windows – only attributes that appear on the windows in the <strong>Service</strong><strong>Desk</strong> Console, and essential attributes such as Change ID and so on, appear on the Attributes tree.All other attributes are hidden from view.All – all attributes appear on the Attributes tree.3. Click to save the changes you have made.173
LANDESK SERVICE DESK SUITE DESIGNER GUIDEAdding a new shortcut groupShortcut groups provide a way of grouping different types of queries together. For example, you can createa shortcut group for system-wide queries, and another shortcut group for your personal queries.NOTE: You must have at least one shortcut group before you can create a new query. You can create a shortcutgroup from either the <strong>Service</strong> <strong>Desk</strong> Console shortcut bar, or from within the Query and Report <strong>Designer</strong>. Thefollowing procedure tells you how to create a shortcut group from within the Query and Report <strong>Designer</strong>.To add a new shortcut group:1. Within the Query and Report <strong>Designer</strong>, on the Queries and Reports tree, select the Groupsfolder.2. On the Actions list, click New Group.The New Group dialog appears.NOTE: Alternatively, right-click the Groups folder, then click New Group.3. Type the name for the group, then select where you want the group to appear in the shortcut bar.NOTE: If required, you can change the icon for the group. Clickand select the relevant image or icon.4. If you want the new group to be available in Web <strong>Desk</strong>, select the Create this Group for Web<strong>Desk</strong> also check box.5. Click OK.A new group appears on the console shortcut bar as well as in the Queries and Reports tree.Designing queriesTo create a new query, you need to specify the business object that you want to base the query on, andthe criteria that it must satisfy.Business objectsWhen you create a new query you need to select which business object your query will be based upon. Asyou build the query, the Query and Report <strong>Designer</strong> lists all the related attributes that you can add to thequery. These related attributes come from other business objects and collections. For example, if youselect the Process business object, you also have access to attributes from the Assignments, Notes andAuthorisations business objects to name a few.174
QUERY AND REPORT DESIGNERNOTE: If you have selected the Show predefined business objects option button on the User Options page, youwill only see the Incident, Asset, Customer, Process, Task, User, Role and Group business objects. This gives youaccess to all the attributes required to create basic queries and reports.AttributesWhen you create a query, you need to specify which attributes of the specific business object form thequery. For example, Process ID, Category 1 and so on.You select attributes from the Attributes tree.NOTE: At the top of the Attributes tree are four buttons that enable you to show or hide attributes, categories,relationships and collections for the query you are designing.Click...to change the Attributes tree to show...those attributes that are associated with the object that your query is based on.categories that are associated with the object that your query is based on.relationships that are associated with the object that your query is based on.collections that are associated with the object that your query is based on.The Attributes tree uses the following icons:IconIndicates...the business object.the attribute.that you have added criteria to an attribute that appears in neither the Selected Attributes list,nor the Preview tab.a related business object. This is a one-to-one relationship.a related business object. This is a one-to-many relationship, and represents collections.175
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: A green tick on the icon indicates that the attribute has been added to the Selected Attributes list; a redtick indicates that it has been added to the Preview tab.CollectionsCollections represent one-to-many relationships within the <strong>Service</strong> <strong>Desk</strong> database. For example, if youselect the Process business object, some of its collections are Assignments, Notes, Authorizations and soon: there may be many assignments or notes related to one process. Using the Query and Report<strong>Designer</strong>, you can create a query using the core business object, and its collections. In the Query andReport <strong>Designer</strong>, the collections related to a business object are identified on the Attributes tree by the icon.Preview attributesThe Preview panel gives a more detailed overview of the selected results. You can specify that any availableattribute is displayed, including those that do not appear in the List panel. For example, you may not wantnote fields to appear in the List panel, but you do want to see them in the Preview panel.NOTE: For information about configuring the Preview panel, see Configuring the Preview panel on page 192.GroupingYou can add grouping to your queries to help you to summarise the data. For example, you could group thequery results by status, so that all open incidents are in one group, and all resolved incidents in anothergroup, and so on.CriteriaYou can limit the results returned from the database by specifying criteria that must be met. For example,you can specify that a certain attribute must be less than a specific value to appear in the results list. Youcan either add the specific criteria to the query design, so that the query always gives a predefined set ofresults, or you can prompt the user of the query to supply the criteria when they run the query.Creating a queryThis section describes how to create a basic query; information about adding groups and criteria, andconfiguring the appearance of the query output are described later.NOTE: You can modify existing queries either from within Query and Report <strong>Designer</strong>, or from the query resultslist using the Modify Query action. You can either overwrite your original query or save a new copy with adifferent name.To create a new query:1. On the Actions list, click New Query.The New Query dialog appears.176
QUERY AND REPORT DESIGNER2. In the Details group box, type a Title and Description for the query.3. In the Module list, select the required module, for example, Change Management.4. In the Business object list, select the business object that you want to base the query on.5. If required, in the Group list, select the shortcut group to which you want to add the query.6. Select the relevant option button to specify whether the query is available to everyone, or isavailable just to you.NOTE: For information about system-wide queries (that is, queries available to everyone), see System queries onpage 199.7. Click OK.The Attributes & Preview page appears. By default, the attributes selected in the Results AttributesSettings user interface property for the object in Object <strong>Designer</strong> are automatically added to thequery. For more information, see User interface properties on page 25.177
LANDESK SERVICE DESK SUITE DESIGNER GUIDEIn addition to the attributes of the business object, you can add related attributes. For example, ifyou are creating a Change query, you select the Change business object. In the Attributes tree,you will see the attributes for that business object as well as all related business objects, forexample, Asset, User and so on.8. From the Attributes tree, drag the attributes that will form your query onto the SelectedAttributes list. Alternatively, you can double-click the attribute to add it to the SelectedAttributes list.NOTE: To select multiple attributes to drag onto the Selected Attributes list, hold CTRL while selecting theattributes from the tree.To remove attributes from the Selected Attributes list, right-click the required attribute, then click Remove. Toremove all attributes, click Remove All.To change the order of the columns that appear in the list panel, select the column, then drag it to the requiredposition (end-users can change the order of the columns when they run the query by holding SHIFT, thendragging the column header).NOTE: To modify the properties of an attribute, right-click it, then click Properties. For information aboutmodifying the properties of an attribute, for example, specifying whether it is a colour field, the label of theattribute and so on, see Configuring the List panel on page 189.9. Drag the required attributes from the collections in the same way.NOTE: When you drag an attribute from a collection onto the Selected Attributes list, if it is the first attribute youhave selected from that collection, a new tab is created alongside the Preview tab. You can drag further collectionattributes onto the Selected Attributes list, and they will appear on the relevant tab. Note, you cannot drag acollection attribute onto the collection tab itself. If you want to remove a collection attribute, right-click it, then clickRemove.When you run the query, these collection attributes appear in separate tabs in the Preview pane.NOTE: For more information about collections, see Collections on page 176.178
QUERY AND REPORT DESIGNER10. From the Attributes tree, drag the attributes that will appear in the Preview panel onto thePreview tab.NOTE: For more information about configuring the appearance of the Preview panel, see Configuring the Previewpanel on page 192.NOTE: To preview the appearance of the query, click Test Query. To end the test, click End Test.11. Click Next.The Grouping page appears.NOTE: For information about query grouping, see Adding grouping to query results on page 179.12. Click Next.The Criteria page appears.NOTE: For more information about adding criteria to a query, see Query criteria on page 184.13. Click Next.The General Settings page appears.NOTE: For information about the General Settings page, see Configuring the general settings for the query on page196.14. Make the required changes, then click Finish.The Save Query dialog appears.15. Click Yes to save the changes you have made.NOTE: You can delete a query from <strong>Service</strong> <strong>Desk</strong> if it is no longer needed, using the Delete Query action.Adding grouping to query resultsYou can group together query results that have the same value for a specified attribute. For example, ifyou have a list of incidents that are at different statuses:ID Title User Status001 Title 1 User 1 Open002 Title 2 User 2 Open003 Title 3 User 3 Closed004 Title 4 User 1 Open005 Title 5 User 3 ClosedYou can group them according to that status:Open (3 items)Closed (2 items)ID Title User001 Title 1 User 1002 Title 2 User 2004 Title 4 User 1003 Title 3 User 3005 Title 5 User 3179
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe group header contains the number of items in the group. You can expand and collapse groups byclicking the + and – icons in the group header.You can also design grouped queries so that they include a footer for each group that reports, whereappropriate, the minimum, maximum, mean, and sum of the values for any of the attributes in the query.You can add groups to a query either when you are designing the query, or when you are viewing a query'sresult list.Designing grouped queriesYou can add groups to your query when you initially design it or at a later time.To add groups to a query in Query <strong>Designer</strong>:1. Open the query you want to add grouping to, then in the Query tree, click the Grouping branch.The grouping page appears.2. From the Attributes tree, drag the attribute that you want to group by onto the grouping list.The Group dialog appears.180
QUERY AND REPORT DESIGNER3. Complete the Group dialog as follows:Group Name – the name that appears before the group value when the query is runSort Order – Ascending or DescendingShow Collapsed – select this to display the query with the groups initially collapsed so that youcan see only the group headers, and not the individual recordsHide Attribute – select this to remove the column for the grouping attribute from the results listRange – (for date/time attributes only) enables you to set the range of values that constitute agrouping value for a date/time attribute. You can choose from Yearly, Half Yearly, Quarterly,Monthly, Weekly, Daily, or Hourly.4. Click OK.The group is added to the grouping list.5. Add any further grouping you require, as above.NOTE: If you add more than one grouping attribute, the query is grouped by the top attribute in the list, then eachgroup is grouped further by the following attribute in the list. You can use the Up and Down buttons to change thegrouping order.You can also modify or remove groups by selecting the required group, then clicking Modify or Remove.181
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: Make sure the Display in groups check box is selected. This provides a convenient way of disabling thegroups you have set up, and is also needed to make sure that certain queries created in earlier versions of <strong>Service</strong><strong>Desk</strong> still work as expected.NOTE: You can change the font used in the group headers using the Group Header Appearance system setting.Including summary information in the query groupingAfter you have designed your grouped query, you can choose to include a footer for each group in thequery that reports, where appropriate, the minimum, maximum, mean, and sum of the values for any ofthe attributes in the query.NOTE: This information is available in the <strong>Service</strong> <strong>Desk</strong> console only, and not in <strong>LAN<strong>Desk</strong></strong> Web Access.To include summary information in the query grouping:1. Open the grouped query in Query <strong>Designer</strong>.2. Make sure that the query contains at least one group, and that the Display in groups check box isselected on the Grouping page.3. In the Query tree, click Attributes.The Attributes & Preview page appears.4. In the Selected Attributes list, right-click the attribute that you want to display summaryinformation for, then click Properties.The Attribute Properties dialog appears.5. Click the Aggregates tab.182
QUERY AND REPORT DESIGNERNOTE: The check boxes that are available depend on the data type of the attribute you have selected. For example,you cannot calculate the sum of a string, the mean of a date, and so on.6. Select the check boxes that correspond to the summary data that you want to display, then clickOK.7. Repeat for any other attributes you require, then click .The summary information that you selected appears in the group footers when you run the query.The following icons are used in the footer:– maximum value in the group– minimum value in the group– mean of the values in the group– sum of the values in the group183
LANDESK SERVICE DESK SUITE DESIGNER GUIDEQuery criteriaBy adding criteria to your query, you specify that certain conditions must be met for a record to appear inthe results list. The values available differ according to the condition and data type selected. The valuescould be dates, times, categories, user names and so on.NOTE: You can specify criteria for any attribute, including collection attributes. If you specify criteria for collectionattributes, the query returns data that matches those criteria. However, when you click the collection tabs, all ofthe items appear.For example, a query based on the Process business object with collection attributes from the Assignmentsbusiness object, and criteria that select only those processes with an Assignment status of Open would displayonly processes with an Assignment status of Open. If you click the Assignments tab, however, you would see allthe assignments for that process.NOTE: If you specify criteria for a collection attribute, you cannot prompt the user to specify the required value.If you add the top level related attribute (represented by on the Attributes tree), you can select acondition of Is Current User or Is Current Group. These conditions are only available at this level. Forexample, if you add the top level Current Assignment related attribute, you can select Is Current User or IsCurrent Group. However, if you expand that attribute and select Name, then you cannot select thoseconditions.To add a date and time criteria to your query, you can specify a condition of Is Equal To Nearest. Using thiscriteria, you specify the value and select whether it is nearest to the minute, hour, day, month or year.184
QUERY AND REPORT DESIGNERCreating criteria for your queryTo create criteria for your query:1. Open the relevant query.2. On the Query tree, click Criteria.The Criteria page appears.3. From the Attributes tree, drag the attributes for which you want to specify criteria onto theCurrent Condition list.The Criteria dialog appears with the Attribute field already completed.4. Select the required Relationship to other criteria.NOTE: You can add more complex criteria relationships using the Advanced button on the Criteria page. For moreinformation, see Adding complex criteria to queries on page 188.5. In the Condition list, select the relevant condition.NOTE: If you are using an Oracle database, remember that values are case sensitive.NOTE: If you want to specify criteria when the query is run, select the Prompt user to specify value check box.For more information, see Prompting users to provide criteria when the query is run on page 186.6. Click OK.The Criteria dialog closes and the criterion is added to the Current Criteria list.7. Add further criteria as required.185
LANDESK SERVICE DESK SUITE DESIGNER GUIDE8. If required, click Test Conditions.A sample of data with the criteria applied appears.NOTE: You can clear the Apply Condition check box to see a set of query results without the conditions applied.By default, the Apply Condition check box is automatically selected.9. Click End Test.10. Click Finish.The Save Query dialog appears.11. Click Yes to save the changes you have made.Prompting users to provide criteria when the query is runYou can design queries so that the user is asked to provide specific criteria when they run the query. Forexample, you could design a query that displays all incidents, but prompts the user to select the incidentstatus, so that with a single query design users can display lists of open incidents, resolved incidents, andso on.NOTE: These prompts do not display in Mobile Web <strong>Desk</strong> and ignore the prompted criterion.To use add a prompt to a query:1. Open the required query in Query and Report <strong>Designer</strong>, then click Criteria in the Query tree.The Criteria page appears.2. In the Current Criteria list, select the criterion that you want to prompt for, then click Modify.The Criteria dialog appears.186
QUERY AND REPORT DESIGNER3. Select the Prompt user to specify value check box.The Description box becomes available.4. In the Description box, type the text that you want to appear as a prompt on the prompt dialogwhen the query is run, then click OK.5. Save the changes to the query.NOTE: If you don't type a Description on the Criteria dialog, the prompt dialog for the query displays the name ofthe attribute that is stored in the <strong>Service</strong> <strong>Desk</strong> database.If you do type a Description, the prompt dialog for the query replaces the name of the attribute with theDescription.187
LANDESK SERVICE DESK SUITE DESIGNER GUIDEAdding complex criteria to queriesUsually, you can add the necessary criteria to a query using the standard criteria page. This page enablesyou to add multiple criteria to a query using either the AND or the OR operator, and enables you to changethe order of the criteria. Sometimes, however, you will want to add criteria that are more complicated.The Advanced button on the Criteria page enables you to enter a more complicated set of criteria,including the use of brackets.To add complex criteria to a query:1. In Query <strong>Designer</strong>, open the required query, and display the Criteria page.2. Drag all of the attributes that you want to use in your criteria onto the Current Criteria list.NOTE: At this stage, it doesn't matter in which order you add the attributes, or which Relationship you choose -these will be reset when you set the Advanced criteria.3. Click Advanced.The Advanced Criteria Condition controls appear.4. In the Advanced Criteria Condition box, type the expression for the criteria condition yourequire, referring to the attributes by their Index in the Current Criteria list.NOTE: If you press the Spacebar in the Advanced Criteria Condition box, an IntelliSense menu appearsshowing you the available options. You can also use the buttons underneath the Advanced Criteria Conditionbox to build your expression.To add brackets around part of your expression, select the required part of the expression, then click (---).5. When you have set the criteria, click Finish, and save the query.NOTE: When you redisplay the query in Query <strong>Designer</strong>, the Criteria page reflects the advanced criteria that youhave designed.NOTE: Some of the standard queries delivered with <strong>Service</strong> <strong>Desk</strong> (some Workload Lists, for example) haveadvanced criteria that you are prevented from changing. They are visible, but cannot be edited.Examples:The following examples demonstrate the difference that the brackets and order of the criteria make.(1 AND 2) OR (3 AND 4)To be included in the results, a record must meet:eitherboth of the criteria 1 and 2orboth of the criteria 3 and 41 AND (2 OR (3 AND 4))To be included in the results, a record must meet:criteria 1and also meeteithercriteria 2orboth of the criteria 3 and 4188
QUERY AND REPORT DESIGNER2 AND (1 OR (3 AND 4))To be included in the results, a record must meet:criteria 2and also meeteithercriteria 1orboth of the criteria 3 and 4Enhancing the appearance of your Query ResultsThere are several ways in which you can enhance the appearance of your query results.You can:• configure the column widths and headers on the list panel• configure the appearance of the preview panel• modify the appearance of the rows• display alternate rows differently• specify the borders of the cells• specify the general settings for the queryNOTE: The following sections demonstrate modifying the System Query of All Incidents. You can modify all existingand new queries in the same way.Configuring the List panelYou can configure the appearance of the data that appears in the List panel. You make the requiredchanges on the Attribute Properties dialog.For each attribute you can:• Change the Column heading – This is the text that appears as the column title.• Indicate whether it is a Colour attribute, and whether it is the Text or Background colour.• Show column or hide it – This is particularly useful if the attribute is a colour attribute, as you donot need to show the colour column, as the colour is reflected in either the text or the backgroundcolour of the list.• Remove leading zeros – This removes leading zeros from attributes such as the Incident ID.• Truncate to a specific number of characters – This limits the amount of data that appears in thepreview panel. For example, you may want to limit Call Description to 256 characters.• Configure the Justification of the data – This justifies the data either to the Left, Centre or Right ofthe preview panel.• Use this column to sort data – This forms part of the query itself, and orders the results asrequired, either in ascending or descending order.• Define the Width of header text of the columns, or set the column size to that of the longest dataitem. Alternatively, you could use the width from designer (you can modify this by moving the dragbar between the attributes on the Selected Attributes list).NOTE: The following procedure tells you how to modify attributes using the Attribute Properties dialog. You canalso modify attributes from the Query tree, by right-clicking the attribute, and selecting the relevant options.189
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo configure the List panel:1. Open the relevant query.2. On the Query tree, click Attributes.The Attributes & Preview page appears.3. In the Selected Attributes list, right-click the relevant attribute, then click Properties on theshortcut menu.The Attribute Properties dialog appears.190
QUERY AND REPORT DESIGNER4. Make the required changes, then click OK.NOTE: If you want to check the appearance of the data that will appear in the List panel, click Test Query. A set ofdata from your database appears on the Attributes & Preview page. To end the test and return to the Query andReport <strong>Designer</strong>, click End Test.5. Click Finish.The Save Query dialog appears.6. Click Yes to save the changes you have made.Wrapping text in queriesYou may find that you have a lot of text in some of your columns of your query, and instead of having toresize the column to read the text, you can configure the text to wrap instead.To wrap the text in a query column:1. Open the required query in the Query and Report <strong>Designer</strong> component.2. On the Selected Attributes list, locate the column that you want to wrap the text in.3. Right-click the column, then click Properties.The Attribute Properties dialog appears.191
LANDESK SERVICE DESK SUITE DESIGNER GUIDE4. Click the Column Sizing tab.5. In the Wrapping group box, select the Wrap column text check box, then click OK.6. Complete your query as required, then click , then click Finish.Configuring the Preview panelYou can configure the appearance of the data that appears in the Preview panel. You make the requiredchanges on the Attribute Properties dialog.For each attribute you can:• Change the Label – This is the text that appears as the title of the row.• Remove leading zeros – This removes leading zeros from attributes such as the Incident ID.NOTE: If you remove the leading zeros, your Process IDs may vary in length, for example, 1, 10, 111. The ProcessID is treated as a string rather than as a number, so you cannot sort numerically. However, if your Process IDs areall of the same length, then sorting will appear numerically.• Truncate to a specific number of characters – This limits the amount of data that appears in thePreview panel. For example, you may want to limit Call Description to 256 characters.• Configure the Justification of the data – This justifies the data either to the Left, Centre or Right ofthe Preview panel.192
QUERY AND REPORT DESIGNERTo configure the Preview panel:1. Open the required query.2. On the Query tree, expand the Preview node.3. Right-click the required attribute, click Properties.The Attribute Properties dialog appears.4. Make the required changes, then click OK.5. If required, change the order of the attributes by clicking Up or Down.NOTE: If you want to check the appearance of the data in the Preview panel, click Test Query. A set of data fromyour database appears on the Attributes & Preview page. To view the data in the Preview panel, select an item in thelist panel. To end the test and return to the Query and Report <strong>Designer</strong>, click End Test.6. On the Attributes & Preview page, click Finish.The Save Query dialog appears.7. Click Yes to save the changes you have made.193
LANDESK SERVICE DESK SUITE DESIGNER GUIDEConfiguring the appearance of the results gridThis section describes how to configure the appearance of the results grid by specifying cell borders, fontsand row colours.To modify the appearance of your query results:1. Start the Query and Report <strong>Designer</strong> component.2. On the Query and Reports tree, locate the relevant query, and on the Actions list, click ModifyQuery.NOTE: Alternatively, double-click the query to open it.3. Alongside the Selected Attributes list, click Grid Properties.The Grid Properties dialog appears.194
QUERY AND REPORT DESIGNER4. Select the Override Default Row Style check box.The default row style is a white background with black text.NOTE: If your query has a colour column added to it, then you will not be able to change colours. For example, onthe Workload List query, the colours that have been specified for specific service levels are not allowed to beoverridden, that is, they are read only.You can now change the Font that is used, and specify both the text and background colour.5. To change the Font, alongside the text box, click .The Font dialog appears.6. Make the required changes, then click OK.7. To change the Back and Text colour, you follow the same procedure, by clicking the relevantalongside the required item.The Color dialog appears.195
LANDESK SERVICE DESK SUITE DESIGNER GUIDE8. Select the required colour, or click Define Custom Colors to specify a different colour, then clickOK.To improve the clarity of your display, you should not use the same colour background and text foreach row of your Query Results. You may also want to set the Alternate Row Style properties.9. Select the Alternate Row Style check box, and set the required Back and Text colours.You can configure how many lines of text are displayed in each row of the query, or you can choosethe option to automatically size the height of the row according to its content.10. In the Row Height group box, set either the number of lines that you want to display, or select theAuto size height for the content check box.11. Click OK.In addition to specifying the colours of lines and text of the query results, you can specify whetherthe grid lines are shown. Often, it may be more helpful for users to have lines to enable them to readmore effectively, but this may not be your preference.Configuring the general settings for the queryYou can configure the general settings for each query. These include:• The number of records that appear on each page of the List panel• How frequently the results list is refreshed• Which dialog you want to use when prompting a user to specify a value• Whether you want to show items that have been soft deleted• The default action that occurs when you double-click a record in the List panel• The option to display a single result directly, rather than as a listTo configure the general settings for a query:1. Open the required query.2. On the Query tree, click General Settings.The General Settings page appears.196
QUERY AND REPORT DESIGNERIf you have specified that you want to prompt the user to specify a value when using the query, youcan specify which dialog appears so that they can enter the required value. There are two options:Simple List and Grid Layout. For more information, see Specifying which prompt dialog you want todisplay to your users on page 198.If you want something to happen when you double-click on an item within the generated resultslist, you need to specify the Launch action. For example, if you double-click an Assignment, youcan choose that you go directly to that assignment within the <strong>Service</strong> <strong>Desk</strong> Console.If you want the item to be launched in a new window as opposed to the current workspace, selectthe Launch in new window when double-clicking results check box.197
LANDESK SERVICE DESK SUITE DESIGNER GUIDEIf you select the Launch result in workspace if one result check box, and the query thenreturns only a single result, the item found is displayed directly, rather than in a list of one. TheLaunch workspace in a new window check box then means that the single result appears in anew window.3. Make the required changes, then click Finish.The Save Query dialog appears.4. Click Yes to save the changes you have made.Specifying which prompt dialog you want to display to your usersIf you have specified that you want to prompt the user to specify a value when using the query you canspecify which dialog appears so that they can enter the required value. There are two options: Simple Listand Grid Layout.If you select Simple List then the following dialog appears to the user when they run the query:If you select Grid Layout, the following dialog appears to the user when they run the query:198
QUERY AND REPORT DESIGNERTo run a query that has a prompt:1. On the shortcut bar, click the relevant query icon.The Criteria Prompts dialog appears.2. Select the criteria for which you need to specify a value, then in the Value box, type or select therequired value.NOTE: Alternatively, leave the value blank to return all values without that criteria. If the Condition is Is Equal To,type the required value, then click Verify. If the Condition is Is One Of, click Pick Values. All the values you addto the list will be returned.3. Repeat for all the required criteria, then click Go.NOTE: If one of the conditions is a category, then you can click the drop down list to see the various levels ofcategory. Select the required category from the tree that appears in the list.System queriesWhen you create a query, you can specify whether it is a system-wide query and is available to everyone,or whether it is just for you. Only you can access your personal queries.NOTE: If you modify a system query, we recommend that you save it by another name, as any modifications aresystem-wide. To save the query, on the Query and Reports tree, right-click the name of the query, then clickCopy Query.We recommend that you create a new shortcut group to store the system-wide queries.NOTE: For information about creating a new shortcut group, see Adding a new shortcut group on page 174.Adding system queries to the shortcut bar<strong>Service</strong> <strong>Desk</strong> has a number of predefined queries for you to either use as they are, or as a basis to creatingyour own queries. These queries are available to all users of <strong>Service</strong> <strong>Desk</strong>.To add a system query to the shortcut bar:1. In the Query and Report <strong>Designer</strong> component, on the Actions list, click Add Existing Queryto Group.The Add Existing dialog appears.199
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. In the System or User list, select System.3. In the Query or Report list, select Query.A list of system queries appears.4. Alongside the required queries, select their check boxes.5. Select the shortcut group in which you want them to appear.6. Click OK.The queries are added to the shortcut bar.Query and Report <strong>Designer</strong> System SettingsUsing the System Settings section of the <strong>Service</strong> <strong>Desk</strong> Console, you can specify both the default page sizeand the default column size of the Query Results view.The...default page sizedefault column sizedetermines...how many records are displayed (per page) when a query is run.the default width of the columns within your query results list.200
QUERY AND REPORT DESIGNERIn addition, you can specify whether queries are loaded from the cache or from the database.To customise the Query and Report <strong>Designer</strong> System settings:1. In the <strong>Service</strong> <strong>Desk</strong> Console, on the Settings menu, click System.The System Settings page appears.2. In the Query Settings group, alongside the Default Query page size property, type the numberof results, per page, that you want to display.3. Alongside the Default Column size type property, select the relevant type:Select...Column HeaderLongest Item<strong>Designer</strong> Specifiedto set the column size to that of the...title that appears for the column.length of the longest result contained within that column (for thecurrent page).width that you dragged to within the Query and Report <strong>Designer</strong>Selected Attributes list.4. If you want to load your queries from cache to speed up your Query Results list, alongside the Loadqueries from cache property, select True.If you have already run a query once, then the next time you run that queries, the results will beloaded from cache.NOTE: If a user has the Administrators role, then they can view all of the user defined queries, reports and filtersthat are within the system.Query privilegesTo configure privileges for creating queries:1. Start the Administration component.2. On the User Management tree, select the relevant Role or Group, then on the Actions list, clickPrivileges.The Privilege tree appears.201
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. Expand the Configuration Components and Configuration folders, then double-click the<strong>Designer</strong>s folder.4. To prevent or deny the ability to create System and User Queries, double-click the relevant icon totoggle between and . The privileges are called Create System Query and Create UserQuery.The changes are saved automatically.Viewing information about the creation and modification of queriesYou can see who created and updated each query. You can view this information on the General page ofthe relevant query within the Query and Report <strong>Designer</strong> component.To view the creation and modification details of a query:1. Start the Query and Report <strong>Designer</strong> component.2. On the Query and Reports tree, open the required query.202
QUERY AND REPORT DESIGNER3. Using either the Query tree, or the Next button, navigate to the General page.The information about who created and/or updated the query are shown at the bottom of the page.Performing a bulk action on a set of query resultsYou can perform bulk actions on the results of a query by clicking Bulk Action in the Actions list. Forexample, you can add a note to many Incidents at one time, or stop the clock for a number of changes andso on.NOTE: The bulk action ignores any additional filters after running the query, but is applied to the original queryresults list. If you want to use bulk action on a query results list that you have modified, first save the modifiedquery.You can perform bulk actions immediately, or you can schedule when you want them to occur. You maychoose to schedule bulk actions if you are applying an action to a large number of items.NOTE: We recommend that if you are performing a bulk action on a large number of items, that you schedule it totake place overnight so as not to disrupt other users of the system. For information about using and schedulingbulk actions, see the <strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> User Guide.FiltersYou can create a special type of query called a filter query. Whereas standard queries are used to displaylists of information from your database, filter queries can be used to:• reduce the values available to users in certain places when they are running <strong>Service</strong> <strong>Desk</strong>• display a list that is filtered on a value that is determined automatically at runtime203
LANDESK SERVICE DESK SUITE DESIGNER GUIDEFor example, two options for adding a tab to the Incident window to display the notes that have beenadded to an incident are:• as a collection, which would show ALL of the notes that have been added to the incident, or• as a filter that displays only those notes that were added to the incident by the user who raised theincident.NOTE: For more information about adding tabs such as these to a window, see Collections on page 98.The table below highlights the main differences between standard queries and filter queries:Standard queriesThe filter criteria that you select originate from thebusiness object that the query is based on.Criteria must be set to absolute values: these areeither set at design-time or set at run-time byprompting the user for the required value.Can include grouping.Filter queriesYou can select the object from which to choose yourfilter criteria.Criteria can either be set to an absolute value or aruntime value.With a list of Incidents, for example, you could setan absolute criterion of User Is Equal To Dave, toget a list of incidents where Dave is the user.Alternatively, you could set a runtime criterion ofUser Is Equal To (Raise User), to get a list ofincidents for whichever user raised the currentincident.Cannot include grouping.Typical uses for filter queries include:• to filter data on related objects in Object <strong>Designer</strong>• as tabs on window designs to provide lists of information related to an attribute on the windowNOTE: For more information about filtering data on related objects in Object <strong>Designer</strong>, see Data filtering on page58.The procedure below describes how to create a filter that you can add as a tab on the Incident window toshow only those notes for the incident where the raise user is the same as that for the incident. There aretwo conditions for this filter:• the Incident on the Note object Is Equal To the Incident displayed on the window• the Raise User on the Note object Is Equal To the Raise User on the Incident objectInitially, the filter selects all notes in the Incident Management module. The first condition then filters forthose notes added to the selected incident, and the second condition filters for those notes that have thesame raise user as the incident.To create a filter:1. In the Actions list of Query and Report <strong>Designer</strong>, click New Filter.The New Filter dialog appears.204
QUERY AND REPORT DESIGNER2. Type a Title and Description for the filter.3. In the Based On group, select the Module and Business Object that contains the data that youwant to appear in the list.In our example, select Incident Management and Note – we want to see a list of informationabout the notes.4. In the Filter By group, select the Module and Business Object for the object that contains thevalue that you want the list to be filtered by. This will be the object that the window is based on.In our example, select Incident Management and Incident – we want to filter by the Incidentand the value for the Raise User on the incident.205
LANDESK SERVICE DESK SUITE DESIGNER GUIDE5. Select the Everyone option button, then click OK.The Filter <strong>Designer</strong> appears; this is very similar to the standard Query and Report <strong>Designer</strong>.6. Add the attributes that you want to appear in the list, then click Next.The Criteria page appears. If we do not set any criteria, the filter will display ALL notes in theIncident Management module.7. From the Attributes tree, drag the attribute for the first filter criterion onto the Current Criterialist.First, we want to display only those notes linked to the displayed Incident,so drag the Incidentrelationship () onto the Current Criteria list.The Criteria dialog appears.206
QUERY AND REPORT DESIGNERNOTE: Remember that the values available from this dialog are based on Incident Management\Incident –which is the value that we want to filter by, so we do not need to make a selection. We want to filter by the top-levelvalue: Incident.8. Click OK.The Current Criteria list updates to show Incident Is Equal To (Incident). That is, the Incidenton the Note matches the Incident displayed in the window.9. From the Attributes tree, drag the next attribute on which you want to base the criteria onto theCurrent Criteria list.In our example, we want to use the Raise User attribute.The Criteria dialog appears.NOTE: Notice that the Criteria dialog is different from previously, because you are filtering by an attribute onIncident, rather than by Incident itself.10. In the Comparison Value group, select Specify runtime value.The Value control changes from a list box that enables you to specify an absolute value, to a treethat enables you to specify a value that will be determined at runtime. The values available in thistree are taken from the object that you selected in the Filter By group on the New Filter dialog.207
LANDESK SERVICE DESK SUITE DESIGNER GUIDE11. In the Value tree, select the attribute that you want to use the runtime value of to match the filtercondition, then click OK.In our example, we want to use the Raise User attribute.The Current Criteria list updates.12. Click , then click Finish.NOTE: In our example, the filter criteria read Incident Is Equal To (Incident) and Raise User Is Equal To (Raise User ). Because the filter was based on Incident Management\Note, but filtered by IncidentManagement\Incident, these criteria are true when the Incident on the Note matches the Incident displayed inthe window and when the Raise User on the Note matches the Raise User on the current Incident.Adding this filter to an Incident window using the Query control (see Adding queries to a window on page 99)creates a tab beneath the window that lists all of the notes attached to the incident that have the same Raise Uservalue as the incident.The Report <strong>Designer</strong>There are some circumstances when you need to deliver your query as a report. For example, yourmanager may not have access to <strong>Service</strong> <strong>Desk</strong>, but needs regular reports on the state of your supportoperation. At a basic level, a report is a way to display the results of a query in an easy to read format. Thereports are generated as HTML format, which means they are easy to distribute, and anyone with abrowser can view them. For example, you could publish them on your intranet site, send them asattachments to e-mail messages and so on.Creating reportsYou can create reports in two ways. The first is to base the report on an existing query. The second is tocreate a report from scratch.If you know how to build queries, you can easily create a report. In the Report <strong>Designer</strong>, you selectattributes, criteria and so on in the same way as queries.208
QUERY AND REPORT DESIGNERCreating a new reportIf you do not want to base your report on an existing query, or no existing queries exist, you can create anew report from scratch. You build a report in much the same way as creating a query, adding attributes,sorting data and adding criteria if required.To create a new report:1. In the Query and Report <strong>Designer</strong>, on the Actions list, click New Report.The New Report dialog appears.NOTE: Alternatively, to create a report based on an existing query, right-click the relevant query, then click CreateReport from Query.The Create Report dialog appears with the title completed with the name of the query.2. Type a Title and Description for your report, then select the Module and Business object uponwhich you want to base the report.3. If required, select the shortcut group to which you want to add the report.4. Specify whether this report is for you only, or whether it is available to everyone, then click OK.The Report <strong>Designer</strong> starts.5. From the Attributes tree, double-click the attributes that will form your report onto the SelectedAttributes list.209
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: To remove attributes from the Selected Attributes list, right-click the relevant attribute, then click Removeon the shortcut menu.To remove all attributes, click Remove All.To change the order of the columns that appear in the List panel, select the column, then drag it to the requiredposition.6. Double-click the required attributes from the collections in the same way.NOTE: When you add an attribute from a collection onto the Selected Attributes list, if it is the first attribute youhave selected from that collection, a new tab is created alongside the Preview tab. You can add further collectionattributes onto the Selected Attributes list, and they will appear on the relevant tab.7. If required, order and sort the attributes. If you want to group your report, you must specify at leastone sort order.NOTE: For information about sorting attributes, see Sorting data on page 210.8. Click Next.The Report Groupings page appears.NOTE: If you want to group the report, you must specify at least one sort order. Grouping is hierarchical, in thatyou cannot group on the last attribute without selecting all previous attributes. If you want to sort by a particularattribute, you must ensure that you have the attributes in the correct sort order.9. If required, select the attributes by which you want to group the report, then click Next.The Criteria page appears.10. If required, drag the required attribute for which you want to specify criteria, and complete therelevant information.You specify criteria for a report in the same way that you specify criteria for a query. For informationabout specifying criteria, see Creating criteria for your query on page 185.11. Click Next.12. Make any required changes to the general settings for the report, then click Finish.You are prompted to save the report.Sorting dataSorting means placing data in some kind of order to help you find and evaluate it. When you first add anattribute to your report, the data appears in the order in which it was originally entered into the database.Locating information in this kind of report is difficult. It is much easier to review or find information whenyou can see it sorted in a logical format. For example, you may want to have a Customer list sortedalphabetically by name or by country.When you sort data, you need to specify two things:• The attribute that you want the sort to be based on.• The sort direction – either ascending or descending.You can sort the data in your report in either ascending or descending order.• Ascending – smallest to largest (1 to 9, A to Z, False to True). The Report <strong>Designer</strong> sorts therecords in ascending order based on the values in the sort attribute you select.• Descending – largest to smallest (9 to 1, Z to A, True to False). The Report <strong>Designer</strong> sorts therecords in descending order based on the values in the sort attribute you select.If required, you can select more than one column with which to sort your data. You can sort your report byany column, apart from columns that contain free text such as Call Details or notes.NOTE: If you want to group the report, you must specify at least one sort order.210
QUERY AND REPORT DESIGNERGrouping dataIn many reports you need to break the data into groups to make it easier to read and to understand. In acustomer list, for example, a group might consist of all those customers living in the same region. In a callreport, a group might consist of all the orders placed by the same customer and so on.You group your report from the Grouping branch on the Report tree.NOTE: Grouping is hierarchical, in that you cannot group on the last attribute without selecting all previousattributes. If you want to sort by a particular attribute, you must ensure that you have the attributes in the correctsort order. For information about sorting reports, see Sorting data on page 210.General settings for a reportYou can configure the general settings for each report from the General branch on the Report tree.These include:• The Report Title – This appears at the top of the report. If required, you can specify that the title isrepeated on every page of the report.211
LANDESK SERVICE DESK SUITE DESIGNER GUIDE• The Report Style – This specifies the font and appearance of the report. There are three cascadingstyle sheets (.css) that control the appearance of the report. These are called: ReportSmall.css,ReportMedium.css, and ReportLarge.css, and are stored in the ProgramFiles\<strong>LAN<strong>Desk</strong></strong>\<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> folder. The main difference between these style sheetsis the size of font used. If you have a working knowledge of modifying style sheets, you can modifythem to further control the appearance of your reports.NOTE: The style sheets used with these reports are stored locally on each computer. If you know how to modifystyle sheets, you can configure the appearance of your reports further. However, as the style sheets are storedlocally, only you will see the changes reflected in your report. The Query and Report <strong>Designer</strong> uses style sheets in adifferent way from how web pages use cascading style sheets, that is, each time a report is generated, it takes theinformation from within the style sheet and adds it to the report, rather than the report and style sheet beingdynamically linked. This means that changes to the style sheet are reflected on any subsequent reports, however,the appearance of existing reports remains unchanged.• How frequently the results list is refreshed• Whether you want to show items that have been soft deleted• Whether you want to display the top ‘n’ records only.• The number of characters that appear per line in each column. This does not truncate the data,rather it wraps the data within the column.NOTE: If you want to truncate the data, on the Report tree, click Attributes. Right-click the relevant attribute,then click Properties on the shortcut menu. The Attribute Properties dialog appears. Click the Appearance tab,then select the Truncate to check box and specify the character limit. Click OK on the Attribute Properties dialogto save the changes you have made.• Whether you want to display the table headers on each page.• Whether you want to add the date and time the report was generated to the report.• Whether you want to include the report summary on the report. This details the criteria used tocreate the report.• Whether you want to include counts for groups.• Whether you want to include the total record count at the end of the report.E-mailing Query results and ReportsIn addition to exporting the results of a query, you can e-mail a set of query results to one or more people.You can also e-mail reports created using the Query & Report <strong>Designer</strong>. If your reports return a largeamount of data, you can choose to schedule when they are generated and e-mailed to the relevant people.For more information, see Scheduling Reports on page 213.NOTE: The final results of the query are e-mailed, including any changes you make to the query results by addingadditional filters or by specifying values in prompts.NOTE: The following procedure describes e-mailing a set of query results. You e-mail reports in a similar way, byfirst running the report, then right-clicking it, and selecting E-mail Report.To e-mail a set of query results:1. Run the required query.2. On the Actions list, click E-mail Query Results.The Select Recipients dialog appears.212
QUERY AND REPORT DESIGNER3. In the Recipients list, select the required recipient.If you select...Group, Role or User,Other e-mail address,then in the...list that appears alongside, select the required group, role or user thenclick Add.list that appears alongside, type the required e-mail address, then clickAdd.The recipients appear in the list. You can modify or delete these as required.4. In the Subject box, type the text that will appear in the Subject of the e-mail.5. In the Body box, type the required text that you want to appear in the e-mail.6. If you want to attach the query rather than embedding it in the e-mail, in the Report Detailsgroup box, select the Attach Query Report check box, and then in the Report Style list, selectthe required size.7. Click Send.8. The query results are e-mailed to the selected people.Scheduling ReportsYou can schedule when your reports are run. For example, you may want to schedule a report to run at8am each morning to send to a manager as a progress report. You can also specify that once the report hasrun, it is e-mailed to specific people. The reports that are created are generated from queries.NOTE: You cannot schedule reports which have user prompts associated with them.To schedule the generation of a report:1. Start the Schedule Manager component.2. Expand the Report Management tree ( )213
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. On the Report Management tree, select the Schedules folder, then on the Actions list, clickNew Scheduled Report.4. Type a Name and Description for the scheduled report.5. In the Schedule group box, specify the data and time that you want the report to be generated,and, if required, in the Recurrence list, select how often you want it generated.6. In the Report Details group box, select the required Module.The Business Object list becomes active.7. Select the Business Object and Query.8. In the Report Style list, you select the size of font that you want to appear in the report, forexample, Medium Font.9. If you want the query report to be sent as an attachment rather than being embedded in the bodyof the e-mail, select the Attach Query Report check box.10. Click .11. Click Add Recipients.The Add Recipients page appears. This is the same window that you see when you e-mail a report orquery.12. Select the required recipients, and in the Information group box, type the required Subject andBody text (if required).13. Click .The report will be generated and send at the scheduled time.NOTE: If required, you can modify both the schedule time, and the recipients of the report. On the ReportManagement tree, select the required schedule then on the Actions list, click Modify Scheduled Report orModify Scheduled Report Recipients as required.You can also Deactivate schedules (from the Actions list) if you want to suspend the generation of the report, butdon’t want to delete it. When you deactivate a schedule, the icon changes from to on the tree. You can thenreactivate it as and when required.214
DashboardsThis chapter covers the procedures involved in customising dashboards in <strong>Service</strong> <strong>Desk</strong>. You can find outabout:• The Dashboard <strong>Designer</strong> on page 216• Publishing dashboards on page 217• Accessing dashboards on page 220• Creating a new dashboard on page 222• Adding a Count panel on page 226• Adding a list panel on page 228• Adding a Gauge panel on page 229• Adding a Shortcut List panel on page 234• Adding chart panels on page 237• Adding a web browser control to a dashboard on page 246• Modifying the appearance of panel headers on page 247• Adding multiple panels on page 248
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe Dashboard <strong>Designer</strong>A dashboard enables you to display lists, charts, and gauges that are based on data from <strong>Service</strong> <strong>Desk</strong>,along with web pages and shortcuts that provide access to further information and other <strong>Service</strong> <strong>Desk</strong>components. These show you at a glance a range of data relevant to your work, for example your WorkloadList. You customise dashboards using the Dashboard <strong>Designer</strong>.To start the Dashboard <strong>Designer</strong>:• On the Settings menu, click Dashboard.The Dashboard <strong>Designer</strong> starts.NOTE: Alternatively, click the Select Dashboard toolbar button, then click Dashboard designer.The Dashboard designer comprises four areas:1 – The Actions list provides access to design commands2 – The Dashboard Pages tree lists the dashboards that are available to be designed3 – The Queries tree provides access to the queries you can use on your dashboards4 – The design area, where you design your dashboards216
DASHBOARDSNOTE: If required, you can display both the Dashboard Pages and Queries trees at the same time. To do this, rightclickthe icon for the tree, then click Split Panel.Setting privileges for configuring dashboardsAccess to the Dashboard designer is restricted by privileges. The privileges are available for roles and groupsfrom the User Management tree of the Administration component, under ConfigurationComponents\Configuration\<strong>Designer</strong>s. You can set the execute privilege for:• Maintain Personal Dashboard• Maintain System Dashboard• Publish System DashboardPublishing dashboardsIf you have the required privileges, you can create any number of system or personal dashboards, or evendashboards for other users (see Maintaining dashboards for other users on page 224). Although personaldashboards are immediately available to the user that they were created for, system dashboards are notavailable until you publish them to the appropriate users, groups, or roles. This means that you can designyour dashboards centrally, and then manage their availability separately.To publish a system dashboard:1. On the Settings menu, click Dashboard <strong>Designer</strong>.The Dashboard <strong>Designer</strong> appears.NOTE: Alternatively, click the Select Dashboard toolbar button, then click Dashboard designer.2. On the Dashboard Pages tree, select the system dashboard that you want to publish.Unpublished system dashboards are indicated by .3. In the Actions list, click Publish.The Dashboard publishing dialog appears.217
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: You can select multiple dashboards by holding Control while clicking in the Dashboard Pages tree.4. If you want the dashboard to be available to everyone, select the Publish to Everyone check box,then click OK.NOTE: When you publish a dashboard to everyone, this dashboard is also made available to any new users createdat a later date.5. To limit to whom the dashboard is published, select the Group, Role, or User from the drop-downlist, then select the required items from the middle list and click .The item appears in the right-hand list.NOTE: Alternatively, double-click the required item to move it between the lists.6. When you have selected the Groups, Roles and Users that you want to publish the dashboard to,click OK.The dashboard is published, and appears in the appropriate users' Dashboard menus.NOTE: You can remove the publishing of a dashboard by redisplaying the Dashboard publishing dialog for thedashboard, and then removing the entries from the list on the right-hand side of the dialog as required.Viewing which dashboards are published to a userYou can use the Dashboard <strong>Designer</strong> to view which dashboards a user can see when they are in differentsupport groups.To view which dashboards are published to a user:1. Select the user from the Other Users' Personal Dashboards branch of the Dashboard Pagestree, then click View published dashboards in the Actions list.The Published dashboards dialog appears, showing which dashboards are published to the user.218
DASHBOARDSNOTE: To see which dashboards are published to yourself, click Personal Dashboards in the Dashboard Pagestree, then click View published dashboards in the Actions list.2. To see the effect that changing support group has on the available dashboards, select the Groupmembership check box, and then choose the required support group.The list of dashboards updates.Using <strong>Service</strong> <strong>Desk</strong> dashboards in Web AccessYou can make dashboards that you have created using the Dashboard <strong>Designer</strong> available in Web Access.NOTE: Dashboards that contain panels or controls that have no corresponding Web Access gadget do not appearin the dashboard that is made available in Web Access. For example, Stack Bar charts and Gauges do not appear inWeb Access dashboards. Similarly, Shortcut panels will include only those types of shortcut that are available inWeb Access: that is shortcuts to processes, queries, and web links.Multiple-panel controls are displayed as the individual gadgets in Web Access, so the title of the Multiple panel doesnot appear in Web Access.To make <strong>Service</strong> <strong>Desk</strong> dashboards available in Web Access:1. In the Dashboard Pages tree, click a folder, then in the Actions list, click Make available inWeb Access.The Dashboard Migration dialog appears.219
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. In the tree, select the dashboards that you want to make available in Web Access, then click OK.Web Access versions of the dashboards are saved and become available in the list of pre-defineddashboards in Web Access.NOTE: For information about adding dashboards to Web Access (including those pre-defined in the Dashboard<strong>Designer</strong>), see the <strong>LAN<strong>Desk</strong></strong> Web Access Administrator Guide.NOTE: You can make a single dashboard available in Web Access by selecting it in the Dashboard Pages tree,then clicking Make available in Web Access in the Actions list.NOTE: Changes made to a dashboard in the Dashboard <strong>Designer</strong> do not appear automatically in the correspondingWeb Access dashboard – you need to repeat the procedure above.Accessing dashboardsYou can access the dashboards that have been published to you in the following ways:• add shortcuts to different dashboards in the Shortcut bar.For each dashboard shortcut that you add, you can specify which dashboard is displayed; if youchoose not to set a specific dashboard, then the current default dashboard appears.• from the dashboard toolbar.To add a shortcut to a specific dashboard:1. Right-click the Shortcut bar, then click Add Component.The Component Maintenance dialog appears.2. In the Select Component list, select Dashboard.3. In the Launch as New Window list, select True or False to choose whether to open thedashboard in a separate window or within the currently open console window.4. In the Is System Dashboard Page list, select True or False to select from System or Personaldashboards.5. In the Dashboard list, select the dashboard that you want to add to the Shortcut bar.The dashboard is added to the Shortcut bar.220
DASHBOARDSTo access published dashboards from the toolbar:1. On the toolbar, click the Select Dashboard button.The Dashboard menu appears.2. Click the dashboard that you want to see.The selected dashboard appears.NOTE: If you want dashboards to open in a separate window, select the Open Dashboard in a new windowwhen selected option.You can also access the Dashboard designer from the Dashboard toolbar menu.Setting a default dashboardWhen you have designed a dashboard, you need to indicate that you want it to appear when you log in tothe <strong>Service</strong> <strong>Desk</strong> Console. You do this by setting it as the default dashboard.To set the default dashboard:1. On the Dashboard Pages tree, select the relevant dashboard, then on the Actions list, click Setas Personal Default (or Set as System Default) as required.NOTE: Alternatively, right-click the relevant dashboard, then click Set as Personal Default or Set as SystemDefault as required.A tick is added to the selected icon.indicates the default personal dashboard.indicates the default system dashboard.NOTE: If you have both a Personal dashboard and a System dashboard set as defaults, the Personal dashboardtakes precedence and appears when you log in to <strong>Service</strong> <strong>Desk</strong>. If you have not set a Personal dashboard as default,then the default System dashboard will appear.NOTE: To remove the default selection, right-click the relevant dashboard in the tree, then click RemovePersonal Default or Remove System Default as required. Alternatively, select the relevant dashboard, then onthe Actions list click Remove Personal Default (or Remove System Default).2. Click .Setting a dashboard as your home pageTo set a dashboard as your home page:1. On the Settings menu, click Personal.The Personal Settings property grid appears.2. Alongside the My Home Page property, click .The Home Page Selection dialog appears.221
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. In the Select Component list, select Dashboard.4. In the Launch As New Window list, select True or False.5. In the Is System Dashboard Page list, select True or False to select a system or personaldashboard.6. In the Dashboard list, select the required dashboard, then click OK.NOTE: There is a matching My Home Page setting in the System Options, which you can set in a similar manner.If both a system and personal home page are set, the personal home page takes precedence.Creating a new dashboardTo create a new dashboard:1. On the Settings menu, click Dashboard.The Dashboard <strong>Designer</strong> starts.NOTE: You create system and personal dashboards in a similar manner. The rest of this procedure describes howto create a personal dashboard.2. On the Dashboard Pages tree, select the Personal Dashboards folder, then on the Actions list,click New Personal Dashboard Page.The New Dashboard Page dialog appears.222
DASHBOARDS3. Type a name for the dashboard, and specify who the dashboard is being created for.NOTE: At this stage, you can change who the dashboard is for - if you use the New Personal Dashboard Pageaction, but then select the Everyone option button, you will create a system dashboard.4. Specify the number of columns you want to appear on the page, or alternatively, select the requiredLayout template.NOTE: You cannot add further columns to a dashboard after you click OK, but you can add rows to the page as yougo along. You can have a maximum of four rows (if you had more, the dashboard would become cluttered). You canadd further columns by adding a Multiple Panel to a dashboard. You can split a Multiple Panel into 4 rows orcolumns, and then add different panels to each of these sections. For more information, see Adding multiple panelson page 248.5. Click OK.The columns appear in the Dashboard <strong>Designer</strong> workspace.223
LANDESK SERVICE DESK SUITE DESIGNER GUIDEYou can now panels to the dashboard.Maintaining dashboards for other usersIf you have the Maintain System Dashboard privilege, you can create and update dashboards for otherusers using the Dashboard <strong>Designer</strong>.To maintain a dashboard for another user:1. On the Dashboard Pages tree, select the Other Users' Personal Dashboards folder, then onthe Actions list, click Maintain Dashboards for another User.The Select User dialog appears.224
DASHBOARDS2. In the Search using list, select the attribute that you want to search by, then in the next box,start typing the value you are searching for.The list below updates with matching records.NOTE: Any dashboards that the selected user already has are listed at the bottom of the dialog.3. Select the user you want to maintain dashboards for, then click OK.A folder for the user, containing their current dashboards, appears on the Dashboard Pages tree.You can now maintain this user's dashboards in the same way as any other dashboards.NOTE: The dashboards are immediately available to the other user, and do not need publishing.NOTE: To remove the user from your Dashboard Pages tree, select the user in the tree, then in the Actions list,click Remove this User from my designer.NOTE: You can also choose who a dashboard is created for when you use the New Personal Dashboard or NewSystem Dashboard actions. The New Dashboard Page dialog contains a group called Created For, where youspecify that the new dashboard is for Me, Everyone, or a Specific User.225
LANDESK SERVICE DESK SUITE DESIGNER GUIDEAdding a Count panelCount panels display the results of a number of different queries, showing only the number of resultsreturned by the query.To add a Count panel to a dashboard:1. Right-click the relevant dashboard column, then click Add Count Panel.2. Expand the Queries tree ( ), then drag the required queries onto the Count Panel.3. Right-click the panel, then click Panel Properties.The Panel Properties dialog appears.There are three tabs to the Panel Properties:Panel Properties – enables you to modify the Title, Font and Colour of the Header of the Panel.For more information, see Modifying the appearance of panel headers on page 247.Query Properties – enables you to change the order of the queries that you added to the panels.You can also Delete or Rename the queries, and specify any sorting that is used.Style Properties – enables you to configure the appearance of the count panel. You can choose todisplay it as a list or as an horizontal bar showing the count. For more information, see Modifying thestyle of a Count panel on page 227.4. If you want to change the sorting of the panel, then in the Sort by list, select either Query Title orQuery Count.The Order list becomes available.5. In the Order list, select either Ascending or Descending as required.226
DASHBOARDS6. Click OK to save the changes you have made.The Panel Properties and Style Properties tab are documented separately.Modifying the style of a Count panelYou can modify the style of a count panel,for example, to include a bar as part of the count display.To modify the style properties of a Count panel:1. On the Panel Properties dialog, click the Style Properties tab.2. Select the Show Count as Bar check box.The remaining attributes become available.Inside Bar – the count number appears inside the bar.227
LANDESK SERVICE DESK SUITE DESIGNER GUIDEOutside – the count number appears outside the bar.Do not show count result – just the bar is shown, with no count.NOTE: If you select Inside Bar, and you choose to make changes to the background and text colour, then youmust remember to ensure that the count is visible.3. In the Bar Colours group box, set the Back and Text Colours as required, by clicking the andselecting the required colours, the same as you did on the Panel Properties dialog.NOTE: If you think that your colour combinations are not suitable, click Default to return to the default coloursettings, and you can start again.If you select...Show Border around bar,Display Column Headers,then...a black border is added around the bar. You can modify thiscolour as required.the Query and Count are shown.By default, you can see both horizontal and vertical grid lines on the Count Panel. Select one of thefollowing options:BothHorizontal (Row)Vertical (Column)None4. Click OK.NOTE: You can double-click a bar to bring up the Query Results list for that query.Adding a list panelA list panel lists the query results. If the underlying query supports the On Launch action, you candouble-click an item in the list panel to open that item in <strong>Service</strong> <strong>Desk</strong>.To add a List Panel to a dashboard:1. Right-click the relevant column, then click Add List Panel.2. Expand the Queries tree ( ), then drag the required query onto the List Panel.228
DASHBOARDS3. Right-click the panel, then click Panel Title.The Panel Title dialog appears.You can change the Title of the panel, and also configure the appearance of the panel header.4. Use the controls in the Font group box to Override default font and select the required Font andthe required Back Colour and Text Colour values.5. Click OK to save the changes you have made.NOTE: To view the relevant item within your query, double-click it.Adding a Gauge panelGauges are another way to visually represent a query. The way in which you customise the gauge enablesusers, or managers, to see the number of items specified within the query. For example, IncidentsBreached Today.To add a Gauge Panel to a dashboard:1. Right-click the relevant panel, then click Add Gauge Panel.The gauge is added to the dashboard.2. Expand the Queries tree ( ), locate the required query, and drag it onto the gauge.229
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. Right-click the gauge, then click Panel Properties.The Gauge Properties dialog appears.Like most of the other panels, you can configure the Panel Properties to modify the appearance ofthe panel header as described in Modifying the appearance of panel headers on page 247.4. On the General Properties tab, if you want a title to appear above the gauge, then in the Titlebox, type the required text.NOTE: One of the reasons that you might want to add a title above the gauge is if you are adding it to a MultiplePanel, where the Title specified in the Panel Properties applies to all of the panels within the Multiple Panelcontainer. For more information, see Adding multiple panels on page 248.5. In the Title Style group box, you can configure the appearance of the title that appears for theGauge. You do this in the same way as configuring the Panel Properties.6. In the General group box, there are 11 different dials that you can choose from, so in the SelectGauge list, select the relevant gauge.7. In the Max Count box, type the number that you want your gauge to go up to. You can use the upand down arrows if preferred.You can specify the colour that the pointer changes to when it exceeds the specified maximumcount230
DASHBOARDS8. Alongside the Out of Range Need Colour box, click , and select the relevant colour, then clickOK.In the Tickmark Frequency group box, you can specify the frequency that the marks appear onyour gauge.9. Set the frequency of your Major Tickmark and Minor Tickmark.NOTE: You should consider the Max count when specifying the frequency, and also think about the size that thegauge will be. Too many tickmarks will be unreadable on a very small gauge, whereas too few would be unmeaningfulon a larger gauge.10. If you want to show numbers on your gauge, in the Numbers group box, select the ShowNumbers check box, then specify the frequency of these numbers in the Frequency of Numberbox.In the example below, the frequency of numbers is 20.11. Click OK to save your changes.Adding a set of ranges to your gaugeYou add Ranges to your gauge, and these can be used to highlight either severity or success and so on,depending upon the query that add to the gauge.231
LANDESK SERVICE DESK SUITE DESIGNER GUIDETo add a set of ranges to your Gauge:1. On the Gauge Properties dialog, click the Range Properties tab.2. Under the Preview box, click New.A new range appears in the Ranges list, and you can now specify the additional properties.3. In the Data Range group box, type the Start and End values for this range. For example, Start 0,and End 25.NOTE: When you create your first range, the End Value is automatically set for you, and this represents the MaxCount that you specified on the General Properties tab. After you have created your first range, the next datarange automatically starts at the End Range that you specified.4. In the Name box, if required, type a name for the range.The name for the range is only used for your reference on this dialog.5. Alongside the Colour box, click .The Color dialog appears.6. Select the required colour for the range.7. Click OK.The Colour is added to the Preview box.232
DASHBOARDSThe next step is to configure the thickness of the range, and you can do this by using the sliders, thenumber boxes, or a combination of the two.The...Constant Radius,Variable Radius Start,Variable Radius End,defines...how far from the centre of the gauge you want to start the range.The inside of the gauge starts at 0 and the outside of the gauge endsat 100.where you want the outside edge of the range to start. Thedifference between the Start and End numbers is the thicknessthat the range will appear on the gauge.where you want the inside edge of the range to end.8. Specify the Range Thickness, using the sliders, the number boxes, or a combination of the two.NOTE: We recommend that you start by using the sliders, and then when you have experimented enough, you maywant to use the numbers, or both.9. Click OK to see what the first range looks like on your gauge.NOTE: It may take some experimentation to get it just right. A very useful feature of the Range Thickness, is thatwhen you have created your first range, and create your second, the Start and End ranges are automatically set tothe previous End value. This ensures that the ranges are not disjointed.233
LANDESK SERVICE DESK SUITE DESIGNER GUIDE10. Add the remaining ranges in the same way.11. Click OK.Your completed gauge appears in the relevant panel of the dashboard.Adding a Shortcut List panelTo provide your users with quick access to their commonly used items from a dashboard, you can add aShortcut List panel. You add shortcuts to the panel in the same way that you do to the shortcut bar, byusing the Add Component dialog. In the following example, we describe adding a shortcut to Logging a newIncident.To add a Shortcut List panel to a dashboard:1. Right-click the relevant column, then click Add Shortcut List Panel.A new panel is created.234
DASHBOARDS2. Right-click this panel, then click Panel Properties.The Shortcut Properties dialog appears.3. On the Panel Properties tab, you can change the title of the panel and configure the colour andtext, as described in Modifying the appearance of panel headers on page 247.4. On the Shortcuts tab, click Add.The Component Maintenance dialog appears.5. In the Select Component list, select the required component. For example, if you want to add ashortcut to logging a new Incident, you would select Workspace.235
LANDESK SERVICE DESK SUITE DESIGNER GUIDE6. In the Enter Component Title box, type the relevant name, for example, New Incident.NOTE: These properties are specific to launching a specific process. They are not available on most of the othershortcuts that you may want to add, for example, you may want to add a shortcut to the Administrationcomponent, and if this were the case, then you would only have Launch in New Window as an option.In the...Launch As New Windowlist,Module Name list,Business Object Namelist,Process Name list,Template list,Is telephony aware listand Is telephony autoanswer list,Select...False if you want the dashboard to be replaced with the shortcut towhich they are clicking. Select True if you want a new Workspace tobe launched when they click this shortcut. As users are launching thisfrom a dashboard, and may well use this page as a starting point fromwhere they access all of their required information, you may want toselect True.the relevant module, for example, Incident Management.the relevant business object, for example, Incident.the required process, for example, Rich Incident.a template, if required. Templates are pre-populated processes foritems that can often be resolved quickly such as Reset Password orNetwork Down.True or False as required depending upon whether you usetelephony with <strong>Service</strong> <strong>Desk</strong>.7. Click OK.Your list of shortcuts appear on the dashboard.8. To modify any of the shortcuts, right-click the panel, then click Panel Properties.236
DASHBOARDSNOTE: You can change the order in which the shortcuts appear using the Top, Up, Down and Bottom buttons.You can also Modify and Remove shortcuts.9. You can choose whether or not to display images alongside your shortcuts. If you do not want todisplay images, clear the Display Images check box.10. Click OK to save the changes that you have made.11. Click .Adding chart panelsYou may find that it is useful to display a graphical representation of specific data on a dashboard. You cando this using pie charts and bar charts to show at-a-glance information of your queries. There are twotypes of bar chart available - standard bar charts, where each bar represents data grouped by oneattribute, and stack bar charts, where each bar shows a further sub-grouping.Adding a Pie ChartPie charts represent the results of a query grouped by one of the attributes.To add a Pie Chart panel to a dashboard:1. Right-click the relevant column, then click Add Pie Chart Panel.The new panel appears.237
LANDESK SERVICE DESK SUITE DESIGNER GUIDE2. Firstly, you should add the relevant query to the panel, so expand the Queries tree ( ), and dragthe required query onto the panel.The Panel Title is automatically updated to the name of the query that you added.NOTE: The colours that you see initially are the default colours that are specified in the System Settings. You canchange these as required.For more information, see Default Colours for Pie Charts and Bar Charts on page 246.238
DASHBOARDS3. Right-click the Panel, then click Panel Properties.4. On the Panel Properties tab, if required, you can rename the Title for the panel, and youconfigure the colours for the Panel header as described in Modifying the appearance of panel headerson page 247.5. Click the Chart General tab.6. In the Chart Title box, type the title of the chart.This appears above the chart.NOTE: If you add this panel to a Multiple Panel, then you would probably want to specify a Chart Title, as the titlespecified in the Panel Properties will be the title for all of the panels contained within it.239
LANDESK SERVICE DESK SUITE DESIGNER GUIDEYou can choose the attribute by which the attribute is grouped, as by default, this is taken from thequery itself.7. On the Chart General tab, in the Group By group box, select the Override Group ByAttribute, and then in the Sort Attribute list, select the attribute by which you want to group thechart. For example, Status.Title.The attributes listed are all of those attributes that have been added to the query.NOTE: If you move your mouse over each section, a number appears telling you how many items are at that status.8. If you want to add a Key to your chart, then on the Chart General tab, select the required option.You can choose between: None, Left, Right, Top and Bottom.9. Within the Appearance group box, you can also chose whether to display your chart as 2d or 3d.Most of the examples in this procedure are 3d.By default, labels are automatically added to the Pie Chart. In certain circumstances labels mightclutter the chart, so you can choose to remove them.240
DASHBOARDSNOTE: If you select 2d, then you can specify that a gradient is used on the chart by selecting the Gradient Fillcheck box. The gradient is calculated automatically from the colours specified in the System Settings. If you havenot specified a set of colours, then random colours are used. For more information about system settings, see the<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> <strong>Suite</strong> Administrator Guide.10. Select or clear the Display Labels check box as required.11. If you want to separate the segments of the Pie Chart, click the Pie Chart tab.12. In the Pie Slice Spacing box, either type the number of pixels you want the spacing to be, or usethe up and down arrows.13. Click OK to save the changes you have made.NOTE: You can double-click a slice of the Pie Chart to bring up the Query Results list for that query.Adding a Bar Chart panelBar charts represent the results of a query grouped by one of the attributes.To add a Bar Chart panel to a dashboard:1. Right-click the relevant column, then click Add Bar Chart Panel.The new panel appears.2. Expand the Queries tree ( ), and drag the required query onto the panel.Immediately, the chart display changes to represent the relevant query.NOTE: The colours that you see initially are the default colours that are specified in the System Settings. You canchange these as required.For more information, see Default Colours for Pie Charts and Bar Charts on page 246.3. Right-click the panel, then click Panel Properties.The Bar Chart Properties dialog appears.241
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe Panel Properties tab enables you to configure the Panel Header font and colour. For moreinformation, see Modifying the appearance of panel headers on page 247.The Chart General tab is configured in the same way as the Pie Chart.4. If required, add a Chart Title.This title appears within the panel above the chart. By default, the name of the query that youadded is used as the Panel Title, and you may choose not to specify the Chart Title.NOTE: If you add this panel to a Multiple Panel, then you would probably want to specify a Chart Title, as the titlespecified in the Panel Properties will be the title for all of the panels contained within it.5. On the General Properties tab, specify the required properties as described in Adding chart panelson page 237.242
DASHBOARDS6. Click the Bar Chart Properties tab.7. You can display your labels in three different ways: Horizontally, Vertically, or Diagonally.Within the Labels group box, select the required option.8. In the X-axis Title box, type the title that you want to appear along the bottom of the Bar Chart.This is optional.9. In the Y-axis Title box, type the title that you want to appear along the side of the Bar Chart. Thisis optional.10. Click OK.243
LANDESK SERVICE DESK SUITE DESIGNER GUIDENOTE: You can double-click a slice of the Bar Chart to bring up the Query Results list for that query. When youhover over a column, a number appears telling you the count for that column.Adding a stack bar chart to a dashboardYou can add stack bar charts to a dashboard that enable you to display the results of a query grouped byone attribute, and then grouped again by another attribute.Standard bar chart, with incidents grouped by userStack bar chart with each user's incidents grouped by statusTo add a stack bar chart to a dashboard:1. Right-click the panel where you want to add the stack bar chart, then click Add Stack Bar ChartPanel.A stack bar chart panel is added to the panel.2. At the bottom of the Dashboard <strong>Designer</strong> panel, click .The Queries tree appears.3. Drag the required query onto the Stack Bar Chart panel.NOTE: If the query has groups defined, the first two levels of grouping are used as the group and stack attributes.For information about grouping queries, see Adding grouping to query results on page 179.4. Right-click the new stack chart panel, then click Panel Properties.The Stack Bar Chart Properties dialog appears.244
DASHBOARDS5. If the query contains no grouping, or if you want to override the defined groupings for the stack barchart, select the Override Group By Attribute and select the required Group By and Stack Byattributes.6. Complete the remaining fields as required:Chart Title – type the title you want to appear above the chart.Title style – enables you to override the default font used for the title bar.Key – sets the position of the key for the chart.Appearance – whether the stack bar chart is displayed as a two-dimensional image or a threedimensionalimage; for 2d you can specify that the colour of the bar has a gradient fill.Display Labels – toggles the display of the labels on the chart.7. Click OK to apply the changes, then click to save the changes to the dashboard.NOTE: The Panel Properties tab of the Stack Bar Chart Properties dialog enables you to set a title for thedashboard panel, and specify the font and colour used on the panel title.The Bar Chart Properties tab enables you to set the direction of the labels for the bars and specify titles for thechart axes.245
LANDESK SERVICE DESK SUITE DESIGNER GUIDEDefault Colours for Pie Charts and Bar ChartsYou can define a set of colours to be used by the Pie and Bar Charts that you create. You do this within theSystem Settings section of the <strong>Service</strong> <strong>Desk</strong> Console. We recommend that you do define a set of colours,as if you do not, a random set of colours are used.To define the default colours for Pie and Bar Charts:1. On the Settings menu, click System.The System Settings appear.2. Alongside the Default Pie and Bar Chart Colours property, click .The Default Colours dialog appears. You can Add, Edit, or Remove colours, and change their positionin the list.3. Click OK.4. Click .Adding a web browser control to a dashboardIn addition to adding charts, gauges, and lists to a dashboard panel, you can also add a web browser controland specify the web page that it initially displays.To add a browser control to a dashboard:1. Right-click the panel where you want to add the browser control, then click Add Browser Control.A browser control is added to the panel.246
DASHBOARDS2. Right-click the new browser panel, then click Panel Properties.The Browser Control Properties dialog appears.3. Type the URL for the initial web page, then click OK.The web page appears.4. Click to save the changes to the dashboard.NOTE: The Panel Properties tab of the Browser Control Properties dialog enables you to set a title for thedashboard panel, and specify the font and colour used on the panel title.Modifying the appearance of panel headersThe panel is what appears at the top of all of your items in a dashboard – the section with the up arrows sothat you can expand and collapse the panel. You can configure the appearance of the panel.To configure the properties of the panel:1. On the Panel Properties dialog, click the Panel Properties tab.You can change the Title of the panel if required. In addition, you can override the default systemfont, and change the colour of the panel and text.2. To change the Font, select the Override default font check box, then select the required font andtext and background colours and click OK.247
LANDESK SERVICE DESK SUITE DESIGNER GUIDEAdding multiple panelsWhen you configure the appearance of a dashboard, you may want certain panels to span the whole of thepage, or you may want to use just half or quarter of a page. You can split a column of the dashboard byadding a multiple panel.To add multiple panels to a dashboard:1. In the Dashboard <strong>Designer</strong>, right-click a panel, then click Add Multiple Panels.The Add Multiple Panels dialog appears.2. Specify the amount of panels that you want to add, then select whether you want them to appeareither horizontally or vertically, then click OK.A new panel appears with the specified number of panels.NOTE: When you add a Multiple Panel to a dashboard, it fills the space available. If you want to add further panels(not within the Multiple Panel), then you need to collapse the Multiple panel by clicking the up arrows on the Panelheader, and then you can add further panels as required.3. You can now add any of the panels detailed in this document, and configure them as required.WARNING: When you have added your required panels, the information that you specify in one of the PanelProperties takes precedence, including the Title for the collapsible panel. If you add a Pie, Bar and Gauge Panel,then these can have their own titles which do not affect the Panel Header title.248
DASHBOARDS249
LANDESK SERVICE DESK SUITE DESIGNER GUIDE250
CalculationsThis chapter covers the procedures involved in manipulating <strong>Service</strong> <strong>Desk</strong> data using calculations. You canfind out about:• Creating a calculated attribute on page 252• Using the calculation editor on page 254• Calculation functions on page 255• Handling null values by setting a default value on page 253• Calculations when values change on page 256• Calculations as part of a process on page 256• Scheduled calculations on page 258• On demand calculations on page 259• Example calculations on page 260
LANDESK SERVICE DESK SUITE DESIGNER GUIDEUsing calculations in <strong>Service</strong> <strong>Desk</strong>You can manipulate <strong>Service</strong> <strong>Desk</strong> data using calculations. There are four main ways you can usecalculations:• Update a value on a window when another value is changed.For example, automatically calculating a priority based on the values entered for severity andurgency.• Time-based calculations for values that are constantly changing.For example, calculating the time to breach for an incident each time it is displayed.• Scheduled, background calculations.For example, calculating the monthly depreciation of an asset.• Calculations in processes to direct the flow of the process.For example, if more than a specified number of incidents are linked to a problem, then incrementthe problem's severity.NOTE: Some example calculations are provided in Example calculations on page 260.Creating a calculated attributeExcept for calculations as part of a process, you create your calculations in Object <strong>Designer</strong> by adding acalculation to an attribute.To create a calculated attribute:1. Start Object <strong>Designer</strong>, and display the required object.2. Create a new attribute of the correct Data Type for the calculation you want to create.NOTE: For information about creating attributes, see Attributes on page 30.3. In the Properties grid, under Formula, select the required Calculation Type:None – disables calculations.BeforeSave – the value is calculated before the window is saved, or immediately if the Iscalculate on change setting is enabled in Window Manager for the dependant attributes used inthe calculation. This is typically used if you want to store this value in the database and see thecalculated value immediately.AfterRead – the value is calculated when it is read from the database and the window is displayed.This is particularly useful for date/time calculations that are constantly changing - such as time tobreach. In this example, the data displayed by the calculation is correct when the window firstappears.Scheduled – the value is calculated periodically as defined in Schedule Manager. This is particularlyuseful for calculating values that you want to report on at predefined intervals, such as assetdepreciation values.252
CALCULATIONSThe Edit Formula dialog appears.NOTE: To redisplay the Edit Formula dialog at a later date, clickproperty grid.alongside Calculation Formula in the4. Complete the calculation, then click OK.The Edit Formula dialog closes.NOTE: For information about creating the calculation, see Using the calculation editor on page 254.Handling null values by setting a default valueIt is possible that your calculations will sometimes try to include attributes for which no value has been set.If an attribute has no value (that is, its value is null), the calculation will usually fail. The easiest way ofavoiding this happening is to set a default value for any attributes used in calculations.NOTE: You can specify default values for attributes of the following data types: Boolean, Decimal, Int16, andInt32.To set a default value for an attribute:1. In Object <strong>Designer</strong>, open the required business object.2. In the Attributes tree, select the attribute that you want to set a default value for.3. In the Properties grid, alongside Default Value, type the value that you want to be used if novalue has been set specifically, then click .253
LANDESK SERVICE DESK SUITE DESIGNER GUIDEUsing the calculation editorThe calculation editor comprises five main areas:Editor – The central area of the calculation editor is where you define your calculation. When you create anew calculation, the outline of the calculation is added for you automatically:import Systemstatic def GetAttributeValue(Incident):Value =return Valuewhere Incident is the name of the object that the calculation is based on.You need to leave the first two lines of this calculation as they are. The Value = line is where you add thedefinition of the calculation, and the return Value line states the result that will be returned by thecalculation.NOTE: Value is the default variable name. You can change this to something more meaningful for your calculation- but if you change Value = , remember to also change return Value to match.NOTE: The lines Value = and return Value are indented by a single space. This is how the calculationdetermines the scope of different areas of complicated calculations. It is very important that you ensure theindentation of the calculation is consistent.You can type your calculation in the Editor area, or you can use the three areas to the left to build yourcalculation. You can extend your calculation beyond the basics provided by the calculation editor by usingthe boo language (for more information, see http://boo.codehaus.org).When you have entered your calculation, click Test Syntax to confirm that the calculation contains noerrors in its structure. Note that this tests only the syntax of your calculation, and not that the calculationis using valid attributes.The Reset button resets the calculation to the original form that was last saved to the database.Attributes – the Attributes tree displays all of the attributes that are available to the calculation from thecalculation's object. To add an attribute to your calculation, click the required position in the editor, thendouble-click the attribute that you want to add.Operators – you can double-click the mathematical operators to add them to your calculation, or typethem directly. The Operators list shows which operators you can use.Functions – a number of functions specific to <strong>Service</strong> <strong>Desk</strong> are provided that enable you to include specificvalues from your <strong>Service</strong> <strong>Desk</strong> database in your calculation.NOTE: For details about the usage of the provided functions, see Calculation functions on page 255.Dependencies – lists the attributes referred to in your calculation that will cause the value of thecalculation to change. <strong>Service</strong> <strong>Desk</strong> needs to monitor these attributes for changes so that your calculationupdates when the dependant attributes change.Select the Auto-detect dependencies check box to have <strong>Service</strong> <strong>Desk</strong> maintain the Dependencies listfor you. Be aware that if your calculation becomes complex (for example, if it refers to attributes on relatedobjects), you will have to maintain the dependencies yourself.254
CALCULATIONSCalculation functionsThe following functions are available in the calculation editor:Framework Object FunctionsGetBusinessTime( DateTime1 , DateTime2 ) – returns the number of business hours between twodate/time values based on the calendar associated with the response level for the process.For example, TimeSinceResolved = Incident.GetBusinessTime(Resolution.CreationDate,DateTime.UtcNow) sets TimeSinceResolved to equal the difference in business hours between thecreation date of the latest resolution (Resolution.CreationDate), and the current time in UTC (theDateTime function DateTime.UtcNow) based on the calendar used by the Incident’s response level.GetRankedObject("DataObject",rank ) – returns the value of a ranked object, where DataObject is thefully qualified object name, and rank is the number in the ranked sequence.For example, return GetRankedObject("IncidentManagement._MyPriority", 2 ) returns thesecond value in the MyPriority ordered list in the Incident Management module.MinutesToBreach() – returns the number of minutes until the object breaches as an integer value,taking into account working hours.For example, return Incident.MinutesToBreach() returns the number of minutes until the incidentbreaches.TimeToBreach() – returns the time until the object breaches as a string value in the form hhhh:mm:ss,taking into account working hours. Note that because this returns a string, you will not be able to sort onthis value.For example, return Incident.TimeToBreach() returns the time until the incident breaches.Framework Collection FunctionsFirst() – returns the value of the specified attribute with the earliest Creation Date.For example, item = Incident.Assignments.First() selects first of the assignments created for theincident; you could then use return item.Title to return the title of the first assignment.Latest() – returns the value of the specified attribute with the latest Creation Date.For example, item = Incident.Assignments.Latest() selects latest of the assignments created for theincident.Max("attribute") – returns the maximum value of the specified attribute.For example, Value = Incident.Assignments.Max("_Duration") sets Value to be equal to the largestvalue of the attribute called _Duration on any of the assignments for the incident.Min("attribute") – returns the minimum value of the specified attribute.For example, Value = Incident.Assignments.Min("_Duration") sets Value to be equal to thesmallest value of the attribute called _Duration on any of the assignments for the incident.Count – returns the number of items in the specified collection.For example, return Incident.Assignments.Count returns the number of assignments for theincident.DateTime FunctionsDateTime.Now – returns the current local date and time in date/time format. You can return just thevalue of the current Second, Minute, Hour, Day, Month, or Year using the relevant sub-option.DateTime.Today – returns today's date in date/time format; the time fields will return midnight.DateTime.UtcNow – returns the current UTC date and time in date/time format. You can return just thevalue of the current Second, Minute, Hour, Day, Month, or Year using the relevant sub-option.255
LANDESK SERVICE DESK SUITE DESIGNER GUIDECalculations when values changeYou will often want a calculation to update immediately whenever one of the attributes used by thecalculations changes.For example, if you have two numeric attributes on a window that are added together to give a thirdattribute, you will want the third attribute to update immediately if you change one of the other attributes:if you change x or y, the x+y field updates immediatelyTo set up a calculation field that updates when you change its dependants:1. In Object <strong>Designer</strong>, create the x, y, and x+y attributes.NOTE: Set the Default Value for x and y to 0, as described in Handling null values by setting a default value onpage 253.2. In the Properties grid for x+y, set the Calculation Type to BeforeSave.The Edit Formula dialog appears,3. Enter the required formula, then click OK.for example:Value = Object._x + Object._yreturn Value4. In Window Manager, add the three attributes to the required window.5. For x and y, in the Window Manager Properties grid, set Is calculate on change to True.6. Click .The window is saved. When you update x or y on the window, x+y immediately updates.Calculations as part of a processIn a process design, you can use calculations to:• populate a field on a window for an automatic action• set a value in a conditionTo use a calculation to populate a field in an automatic action:1. In Process <strong>Designer</strong>, open the required process.2. Select the required automatic action, then in the Properties grid, click Action Instance Data.The window for the action appears.3. Right-click the field that you want to add the calculation to, then click Calculation.The Edit Formula dialog appears.256
CALCULATIONSNOTE: When you display the Edit Formula dialog in Process <strong>Designer</strong>, it does not include the Dependencies listbecause the calculation does not need to look for changes in dependent attributes: it will run when required by theprocess, and take the current values of any attributes it needs.4. Enter the required calculation in the Editor field, then click OK.The calculation appears in the field on the window.NOTE: You cannot edit the formula in the process window - you need to right-click the field, then clickCalculation to redisplay the Edit Formula dialog. If you add a calculation to a single-line field, the ends of lines inyour calculation appear as squares.5. Click OK on the process window, then save the changes to your process.To use a calculation in a condition:1. In Process <strong>Designer</strong>, expand the Business Objects tree.2. Expand the required Process Object folder, for example, Incident, and then click the Conditionfolder.3. In the Actions list, click New.The Properties grid for the new condition appears.4. Type a title for the condition, then alongside Condition Type, select Calculation.5. Alongside Calculation Formula, click .The Edit Formula dialog appears.6. Enter the required calculation in the Editor field, then click OK.7. Select the required Comparison and a specific or runtime value to compare against the calculation,then click .The Condition is saved, and can be used in a process.257
LANDESK SERVICE DESK SUITE DESIGNER GUIDEScheduled calculationsYou can schedule the calculations on a business object to run and update their results in the database atset intervals. For example, you could implement some basic asset depreciation by multiplying an asset'svalue by 0.9 every quarter.To schedule a calculation:1. In the Schedule Manager component, expand the Bulk Action Management tree.NOTE: You might need to add the Schedule Manager component to the Shortcut Bar.2. In the Bulk Action Management tree, click the Schedules folder, then in the Actions list, clickNew Scheduled Bulk Action.3. Type a Name and Description for the schedule.4. In the Schedule group, specify when you want the schedule to next run, and how frequently youwant it to run.5. Select the Module and Business Object that the calculations you want to schedule are based on.6. Select the relevant Query from the list.NOTE: Only those items returned in the selected query will have calculations applied to them.7. In the Scheduled Action Type list, select Perform Calculation.NOTE: If you leave the schedule like this, then ALL calculations on the selected business object will run accordingto this schedule. You can, however, specify which calculations you want to follow this schedule.8. To specify which calculations you want to follow the schedule, click Calculations.The Select calculation attributes that you want calculated dialog appears.258
CALCULATIONS9. In the Available Calculation Attributes list, select the attributes that you want to calculateaccording to the schedule, then click .The attribute is added to the Selected Calculation Attributes list.10. Click OK.The Select calculation attributes that you want calculated dialog closes and the attribute is set to becalculated according to the schedule you have set.11. Click to save the schedule.On demand calculationsYou can add a button to a window that provides the result of a calculation without committing the value tothe database. This is particularly useful if you have a field on a window that is determined using ascheduled calculation, and you want to be able to see what the value would be if the scheduled calculationwere to run now.To enable on demand calculations:1. In Window Manager, open the window that includes the calculated attribute.2. Expand the Controls tree.3. Add a Button control to the window, and place it next to the calculated field.4. Expand the Attributes tree.5. Select the button control, then in the Property grid, set Is calculate on demand to True.The button changes to a calculator icon.6. In the Calculation Attribute list, select the attribute that you want to be calculated when theanalyst clicks the button, then click .The window is saved.259
LANDESK SERVICE DESK SUITE DESIGNER GUIDEWhen an analyst clicks on the window, a message box appears showing what the value of theattribute would be if the calculation were run.Example calculationsThis section gives some worked examples of typical calculations. For many of these examples, you will needto create some new business objects or attributes.NOTE: For information about creating business objects and attributes, see Object <strong>Designer</strong> on page 19.The worked examples given are:• Adding two attributes together• Counting the number of notes added to an incident• Time to breach• Determining the priority from the urgency and severityAn outline of the following calculations is given after the worked examples:• Calculating a user's age• Calculating a user's length of service• Calculating the most recent date in a collection• Summing the values of the result of a calculation applied to all objects in a collection• Calculations on collections of collections• Generating text that includes data from <strong>Service</strong> <strong>Desk</strong>Adding attributes togetherThis example demonstrates how to add two numeric attributes together and store the result in a thirdnumeric attribute.To add two numeric attributes together:1. In Object <strong>Designer</strong>, create two numeric attributes (for example, Int16) on the IncidentManagement\Incident object called X and Y.2. Set the Default Value for X and Y to 0.This ensures that the calculation works immediately. If you do not set a default value, the values ofX and Y will initially by NULL, which cannot be resolved by the calculation.3. Create a numeric attribute called XplusY.4. In the Properties grid for XplusY, set Calculation Type to BeforeSave.The Edit Formula for XplusY appears. The Editor box already contains:import Systemstatic def GetAttributeValue(Incident):Value =return Value5. Click at the end of the line Value = , then in the Attributes tree, double-click X.Incident._X is added to the end of the Value line. Incident is the name of the business object, and _X is the name of the attribute that you created called X. (The _ before the attribute name showsthat it is a user-added attribute.)6. In the Operators tree, double-click Plus ( + ).+ is added to the calculation.260
CALCULATIONS7. In the Attributes tree, double-click Y.Incident._Y is added to the end of the Value line.The final calculation in the Editor is:import Systemstatic def GetAttributeValue(Incident):Value = Incident._X + Incident._Yreturn ValueNOTE: Note the single-space indentation of the final two lines - make sure you keep this indentation.8. Click Test Syntax to confirm that the calculation contains no errors in its structure, then click OK.The Calculation is added to the attribute.9. Save the changes to the object, then start Window Manager.10. Open the Incident window, and add the attributes X, Y and XplusY.11. In the Properties grid for both X and Y, set Is calculate on change to True.This will make XplusY update whenever X or Y are changed; if you do not set this property to true,XplusY will update only when you save the incident.Counting notes added to an incidentThis example describes how to add a field to the Incident window that reports the number of notes addedto the incident. You can use a similar calculation to count the number of items in any collection on anyobject. You could use a calculation like this in a process condition that changes the process flow if a certainnumber of assignments or child incidents are added to an incident.To count the number of notes added to an incident:1. In Object <strong>Designer</strong>, create a string attribute on the Incident Management\Incident objectcalled Count Notes.2. In the Properties grid, set the Calculation Type to BeforeSave.The Edit Formula dialog appears.3. Click in the Editor box at the end of the line Value =4. In the Attributes tree, double-click Notes[].The line changes to Value = Incident.Notes.5. In the Function tree, double-click Count from the TPS Collection Functions branch.The calculation reads:import Systemstatic def GetAttributeValue(Incident):Value = Incident.Notes.Countreturn Value6. Click Test Syntax to confirm that the calculation contains no errors in its structure, then click OK.The Calculation is added to the attribute.7. Save the changes to the object, then start Window Manager.8. Open the Incident window, and add the attribute Count Notes.When you save the window, this field will report the number of notes added to the incident.NOTE: Because the Count function returns the required value, you can use the function directly in the return lineif you prefer:import Systemstatic def GetAttributeValue(Incident):return Incident.Notes.Count261
LANDESK SERVICE DESK SUITE DESIGNER GUIDETime to breachThis example demonstrates how to add a field to the Incident window that reports how much time is leftbefore the incident breaches its service level.To calculate the time to breach for an incident:1. In Object <strong>Designer</strong>, create a string attribute on the Incident Management\Incident objectcalled Time to Breach.2. In the Properties grid, set the Calculation Type to AfterRead.The Edit Formula dialog appears. For this calculation, we are going to use a function that returns theresult of the calculation, so we do not need the Value = line.3. Delete the line that reads Value =4. Delete the word Value from the return line.5. Type a single space after return, then in the Functions tree, double-click TimeToBreach() fromthe TPS Object Functions branch.The calculation reads:import Systemstatic def GetAttributeValue(Incident):return Incident.TimeToBreach()6. Click Test Syntax to confirm that the calculation contains no errors in its structure, then click OK.The Calculation is added to the attribute.7. Save the changes to the object, then start Window Manager.8. Open the Incident window, and add the attribute Time to Breach.This field will report the time remaining until the incident breaches.NOTE: Because this calculated field uses the string data type, it is unsuitable for sorting a list. If you want to havea breach time to sort by in a list, create another calculated field as a numeric data type, and use theMinutesToBreach function.You can then add both of these attributes to a query, showing the TimeToBreach attribute, but sorting by theMinutesToBreach attribute, which you can then hide.NOTE: If the service level clock is stopped (for example, when you use the With Customer action), the time tobreach can no longer be determined. In these cases, the time to breach functions return no value (null).Calculating the priority from the urgency and severityITIL defines the priority of an incident as the sum of the urgency and the severity minus one:Priority = Urgency + Severity -1We have already seen how to do simple arithmetic calculations (see Adding attributes together on page260), so we can design a calculation to determine a numeric value for the priority based on numeric valuesfor the urgency and the severity. Create three numeric attributes on Incident, called Urgency, Severity,and Priority, and then add the following calculation to the Priority attribute:import Systemstatic def GetAttributeValue(Incident):Value = Incident._Urgency + Incident._Severity – 1return ValueYou can then add Urgency, Severity, and Priority to your Incident window, and the calculation willdetermine a numeric value for your priority.262
CALCULATIONSHowever, you can change these attributes to use ordered lists containing different named values. Youcould have Urgencies and Severities called High, Medium, and Low (ranked 3 to 1), and five Priorities calledPriority 1 (the highest priority, ranked 5) through Priority 5 (the lowest priority, ranked 1):Severity Name RankHigh 3Medium 2Low 1Urgency Name RankHigh 3Medium 2Low 1Priority Name RankPriority 1 5Priority 2 4Priority 3 3Priority 4 2Priority 5 1The Priority is then determined from the Urgency and Severity according to the following table:UrgencySeverityHigh Medium LowHigh Priority 1 Priority 2 Priority 3Medium Priority 2 Priority 3 Priority 4Low Priority 3 Priority 4 Priority 5For example:Severity Medium = rank 2Urgency Low = rank 1Therefore, Priority rank = 2 + 1 - 1 = 2and then Priority rank 2 = Priority 4This example uses the Incident Urgency and the Severity ranked objects that are provided in theIncident Management module to calculate a rank that will be used to determine the value for a newranked attribute called Calculated Priority, which we will create in the Incident Management module.There are three steps to this calculation:1. Create the new ranked object, relate it to Incident, and populate it. We recommend that you do notuse the Attribute Creation Wizard for this, so that you have more control over naming conventions.2. Add the calculation to the new ranked object.3. Add the controls to the Incident window.To create the new ranked object:1. In Object <strong>Designer</strong>, click the Incident Management module in the Business Objects tree, thenclick New Business Object in the Actions list.The Behaviour Selection message box appears, asking if you want to specify a behaviour.2. Click Yes.The Behaviour Selection dialog appears.263
LANDESK SERVICE DESK SUITE DESIGNER GUIDE3. In the Available Items list, click Ranked (Creation Only), then click .Ranked (Creation Only) moves to the Selected Items list.4. Click OK.The New Business Object is created.5. In the Properties grid, type a Title of Calculated Priority, then click .You are asked if you want to create a Name attribute.6. Click Yes.The Calculated Priority object is saved. Notice that its name is _CalculatedPriority - we will use thislater. Also, notice that a Rank attribute is added. Now we need to relate this object to the Incidentobject.7. In the Business Objects tree, drag Calculated Priority object onto the Incident object.You are asked if you want to be able to access all related instances of Incident from CalculatedPriority.8. Click No.The relationship is created. In the Attributes tree for Incident you can seeCalculated Priority.9. Click .The object is saved. Now we need to create a window for the object, and then create the valuesusing the Administration component.10. In Window Manager, create a new window for Incident Management\Calculated Priority,adding justName.11. In the Administration component, display the Ordered Lists tree, then create five CalculatedPriority values.Now we can add the required calculation to the Calculated Priority attribute on the Incident object. Thiscalculation reads the required value from the Calculated Priority ordered list.To add the calculation:1. In Object <strong>Designer</strong>, open the Incident Management\Incident object, then click CalculatedPriority.2. In the Properties grid for Calculated Priority, set Calculation Type to BeforeSave.The Edit Formula for Calculated Priority appears.3. In the Editor box, change the calculation to:import Systemstatic def GetAttributeValue(Incident):if Incident._IncidentUrgency == null:return nullif Incident.Severity == null:return nullValue = Incident._IncidentUrgency.Rank + Incident.Severity.Rank - 1return Incident.GetRankedObject("IncidentManagement._CalculatedPriority", Value)4. Click Test Syntax to confirm that the calculation contains no errors in its structure, then click OK.The Calculation is added to the attribute.5. Click .The changes are saved.NOTE: The lines if... and return null set the value of Calculated Priority to null (blank) if either of the Severityor Urgency lists are cleared - otherwise the previously calculated value for Calculated Priority would remain.The final line return Incident.GetRankedObject("IncidentManagement._CalculatedPriority", Value)returns the name of the Calculated Priority that corresponds to the calculated rank Value.The final stage is to add the controls to the Incident window.264
CALCULATIONSTo add the controls to the window:1. In Window Manager, open the Incident window and add the fields Incident Urgency, Severityand Calculated Priority.2. In the Properties grid for Incident Urgency and Severity, set Is calculate on change toTrue, then save the window.When you log an incident and complete the Incident Urgency and Severity fields, theCalculated Priority field automatically completes with the appropriate value.Progressing a process: Auto CloseThis example demonstrates how to use a scheduled calculation to move a process from one status toanother. Specifically, it demonstrates how to move an Incident that has been Resolved for 40 hours to theClosed status. You can modify it so that it works in other modules, or to move between different statuses.For example, you could modify the calculation to return Calls that have been at the status With Customerfor a certain time.There are three stages to this calculation:1. Set up the scheduled calculation2. Schedule the calculation3. Schedule a bulk action to change the status of the appropriate processesThe first stage is to set up a calculation that tests to see if the Incident is ready to be closed. In stage 2 wewill configure this to be calculated every night, but first we need to create a check box to store ourcalculation result.To set up the scheduled calculation:1. In Object <strong>Designer</strong>, create a boolean attribute on the Incident Management\Incident objectcalled AutoClose.2. In the Properties grid, set the Default Value to False.3. In the Properties grid, set the Calculation Type to Scheduled.The Edit Formula dialog appears.4. Type the following into the Editor field:import Systemstatic def GetAttributeValue(Incident):Flag = 'False'if Incident.Status.Name == 'Resolved':Resolution = Incident.Resolutions.Latest()TimeSinceResolved = Incident.GetBusinessTime(Resolution.CreationDate, DateTime.UtcNow)if TimeSinceResolved.TotalHours > 40:if DateTime.Today.DayOfWeek != DayOfWeek.Saturday and DateTime.Today.DayOfWeek != DayOfWeek.Sunday:Flag = 'True'return FlagNOTE: The first two lines have no indents. The line Flag = 'False' and the first line starting if have single indents.The lines from Resolution through to the second if have two indents. The line with the third if has three indents,and the line below it (Flag = 'True') has four indents. The final line (return Flag) has a single indent.Initially, the flag is set to False, and then the calculation tests to see if the Incident is at the statusResolved. If the Incident is resolved, the calculation moves to the next section of the calculation.265
LANDESK SERVICE DESK SUITE DESIGNER GUIDEResolution = Incident.Resolutions.Latest() uses the collection function Latest() to returnthe Incident Resolution that has the latest creation date. We can then useResolution.CreationDate in the next line of the calculation to give us the creation date of thelatest resolution.TimeSinceResolved = Incident.GetBusinessTime(Resolution.CreationDate,DateTime.UtcNow) uses the GetBusinessTime Object Function to determine the difference inbusiness hours between the creation date of the latest resolution (Resolution.CreationDate),and the current time in UTC (the DateTime function DateTime.UtcNow) based on the calendarused by the Incident’s response level. (Most DateTimes in the database are stored in UTC.)If this value is greater than 40 (1 working week = 5 x 8 = 40 hours), then the calculation tests thatthe day of the week is not equal to (!=) Saturday and not equal to Sunday. If this test is passed, itsets the flag to True.The final line of the calculation returns the value of the flag as the value for the AutoCloseattribute.NOTE: You can change this calculation to move a process from statuses other than Resolved by changing thestatus and collection that are used. For example, by using the With Customer status and collection, you couldreturn processes to the <strong>Service</strong> <strong>Desk</strong> that have been with a customer for a certain period.The next stage is to schedule the calculation to run. The schedule needs a query of incidents to test, so wealso need to create this.To create a schedule for the calculation:1. In Query and Report <strong>Designer</strong>, create a new system query based on IncidentManagement\Incident called Resolved Incidents.2. Set the criteria to Status Is Equal To ( Resolved ), and save it.3. In Schedule Manager on the Bulk Action Management tree, click New Scheduled Bulk Actionin the Actions list.4. In the Name box, type AutoClose Calculation.5. Set the schedule to run Daily at an appropriate time (usually out of hours).6. In the Module list select Incident Management, in the Business Object list select Incident,and in the Query list select Resolved Incidents (the query we just created).7. In the Scheduled Action Type list, select Perform Calculation.8. Click Calculations.The Select calculation attributes that you want calculated dialog appears.9. Move our AutoClose attribute to the Selected Calculation Attributes list, then click OK.10. Click to save the schedule.The scheduled calculation that we have just created sets a flag on the Incident to True, but doesn't actuallyclose the Incident. To do that we need to schedule a bulk action to close any Incidents that have the flagset to True. First, we need to create a query to select the correct Incidents.To schedule the Close action:1. In Query and Report <strong>Designer</strong>, copy the Resolved Incidents query and rename it ResolvedIncidents to AutoClose.2. Add a second criteria of:AND AutoClose Is Equal To ( True ).Now we can create the schedule.3. Create a new Scheduled Bulk Action as before and name it AutoClose Action.266
CALCULATIONS4. Set the schedule to run Daily as before, but 30 minutes after the calculation schedule that wecreated previously.We need the scheduled action that calculates and sets the AutoClose flags on the Incidents tocomplete before we run this scheduled action that then closes the flagged Incidents.5. In the Module list select Incident Management, in the Business Object list select Incident,and in the Query list select Resolved Incidents to AutoClose.6. In the Scheduled Action Type list, select Run Action.7. In the Action list, select Close.8. Click Window Data.The Closure window appears.9. Complete the Closure window as you require, then click .The schedule is saved.You can use this technique for any action, not just Close. However, make sure that the processes selectedby the query have the relevant action available at that status.More calculation examplesThis section provides some more example calculations. In these examples, dataObject is used to representthe object on which the calculation is being performed. Remember to leave the first two lines of thecalculation as they are when you open the Edit Formula dialog:import Systemstatic def GetAttributeValue(dataObject):NOTE: Many of these examples use attributes that won't be in your <strong>Service</strong> <strong>Desk</strong> database. To use these examplesyou will either need to create the required attributes or change the examples to use attributes in your database.Calculating a user's ageage = DateTime.Now.Year - dataObject.DateOfBirth.Yearage-- if DateTime.Now.Month < dataObject.DateOfBirth.Month or (DateTime.Now.Month ==dataObject.DateOfBirth.Month and DateTime.Now.Day < dataObject.DateOfBirth.Day)return ageThis calculation has a variable called age, which is determined by subtracting the DateOfBirth yearfor the user from the current year. An additional year is subtracted if the user has yet to have theirbirthday this year (if the current month is less than the birth month, or if the current month is thesame as the birth month, but the current day is earlier than the birth day).age-- means "subtract 1 from age".a single = sign means "make this equal to", two == signs means "this is equal to"Calculating a user's length of serviceend = DateTime.Nowend = dataObject.EndDate if dataObject.EndDate != nulllos = end.Year - dataObject.StartDate.Yearlos-- if end.Month < dataObject.StartDate.Month or (end.Month == dataObject.StartDate.Month and end.Day< dataObject.StartDate.Day)return losThe end variable is set to the current date, unless the user record has an EndDate (EndDate is notnull), in which case, it is set to the user's EndDate. The los variable is then calculated by subtractingthe StartDate from the end variable; an extra year is subtracted if the EndDate is earlier in the yearthan the StartDate.!= means "is not equal to"267
LANDESK SERVICE DESK SUITE DESIGNER GUIDECalculating the most recent date in a collectionIn this calculation, we have a collection of Orders associated with the dataObject, and we want tofind out what the latest OrderDate is for any of the items in the collection. (You could just use theMax(" ") TPS Collection function, but this example introduces some useful concepts.)lastOrderDate = nullfor order in dataObject.Orders:if lastOrderDate == null or lastOrderDate < order.OrderDate:lastOrderDate = order.OrderDatereturn lastOrderDateIn the first line, the lastOrderDate variable is set to null. (Remember that a single = sign means"make this equal to", and two == signs means "this is equal to".)The second line creates a loop around the dataObject.Orders collection using the variable order. Theindented part of the calculation is run against each of the objects in the collection sequentially.Note that the third line has a single indent to indicate that it belongs to the second line. The thirdline says that if the variable lastOrderDate is null (which it is the first time because we set it to null inline 1), or if it is less than this object's value for OrderDate, then...on the fourth line, it sets the variable lastOrderDate to be the value of OrderDate for current objectin the collection.Then the calculation returns to the third line for the next object in the collection and tests again tosee if the current value of lastOrderDate is null (which it won't be now) or if it is less than the valueof OrderDate for this next object in the collection. If it is less than the value of OrderDate for thisobject, then lastOrderDate is set to this new value.When the calculation has considered every object in the collection, the final line of the calculationreturns the value it has set for lastOrderDate.Summing calculation results across all of the objects in a collectionIn previous examples, we have learned how to perform arithmetic calculations, and also how to loopa calculation around all of the objects in a collection. In this example, we combine both of thesetechniques to sum the results of calculations performed on all objects in a collection.This calculation determines the total cost for a collection of objects, where each object in thecollection has a unit cost for the item and a value for the quantity of items. The cost of each object inthe collection is therefore the result of multiplying the quantity of items by the unit cost for theitem. The total cost is then determined by adding all of the object costs together. The calculationdoes this by determining the cost of the first object, then adding this to the cost of the secondobject, and so on for all of the objects in the calculation.collection object quantity unit cost costdataObject Item 1 2 3 6cost = 0for item in dataObject.Items:cost = cost + (item.Quantity * item.UnitCost)return costItem 2 1 4 4Item 3 3 3 919 total cost268
CALCULATIONSIn the first line, the cost variable is set to 0.The second line creates a loop around the dataObject.Items collection using the variable item.The third (indented) line sets the variable cost to be equal to its current value plus the result ofmultiplying the Quantity attribute by the UnitCost attribute. The third line then repeats for all of theobjects in the collection - each time the calculation loops to a new object in the collection, it adds thenew object's cost to the total.When the calculation has considered every object in the collection, the final line of the calculationreturns the value it has set for cost.Calculations on collections of collectionsThis calculation is an extension of the previous example. It determines the total value for acollection of orders, where each order comprises a number of items. In this example, the cost is thesum of a collection of collectionscollection object sub-collection object quantity unit cost costorder dataObject_1 Item 1_1 2 3 6Item 1_2 1 4 4Item 1_3 3 3 9dataObject_2 Item 2_1 2 4 8cost = 0for order in dataObject.Orders:for item in order.Items:cost = cost + (item.UnitCost * item.Quantity)return costItem 2_2 3 2 6Item 2_3 4 1 437 total costIn the first line, the cost variable is set to 0.The second line (indented) creates a loop around the dataObject.Orders collection using the variableorder.The third line (indented twice) creates a loop around the dataObject.Items collection underneaththe dataObject.Orders collection using the variable item.The fourth line (indented three times) sets the variable cost to be equal to its current value plus theresult of multiplying the Quantity attribute by the UnitCost attribute. The fourth line then repeatsfor all of the objects in the dataObject.Items collection - each time the calculation loops to a newobject in the collection, it adds the new object's cost to the total.When the calculation has considered every object in the first Order's sub-collection of Items, itmoves on to the second Order's sub-collection of Items and repeats the fourth line for each object inthe second sub-collection of Items.When the calculation has considered every object in the top dataObject.Items collection, the finalline of the calculation returns the value it has set for cost.Generating text that includes data from <strong>Service</strong> <strong>Desk</strong>This example describes how to create a text string that includes data from the <strong>Service</strong> <strong>Desk</strong>database.return String.Format("Hello {0}, this was last updated by {1}", dataObject.RaiseUser.Title,dataObject.LastUpdateUser.Title)269
LANDESK SERVICE DESK SUITE DESIGNER GUIDEThe String.Format(" ", {0}, {1}. ...) function returns a string where the parameters {0}, {1}, andso on define where to get the data from for use in the string. Note that the parameters start at {0}.In the example calculation, {0} is replaced by the name of the Raise User(dataObject.RaiseUser.Title), and {1} is replaced by the name of the last user to update the record(dataObject.LastUpdateUser.Title).For example, if the incident was logged for Gill Bond and was last saved by Jane Green, the stringwould read: Hello Gill Bond, this was last updated by Jane Green.270
IndexAaccelerator keys 70actions 129adding to a process 132associate with window 131associating with status 135automatic actions 134-135confirmation dialog 131creating 52, 130modifying 52optional 135overview 124parent-child propagation 52propagate action to children 133specifying the default 133standard 132activating processes 158Active Directorylookup 101addingcollections to a window 98context-sensitive help 92controls to windows 81-82count panel to a dashboard 226criteria to queries 185decision to a process 152effectiveness control 91list panel to a dashboard 228queries to shortcut bar 199related controls to a window 103shortcut groups 13, 174static images to windows 87static text to windows 86address attributespostcode 120address lookup 118AddressCountryCode 118, 120AddressPostCode 118, 120Adjust Value For Time Zone 32AfterReadcalculation type 252align nodes 157Align with Groupbox 89alignmentprocess nodes 157Allow changing of processes 170annotating process diagrams 157assignmentsautomatic 148manual 149overview 124, 148attachmentsdefault Subject and Message text 40attempted import of deleted object 17attribute propertiesPostcode Settings 120attribute templates 96attributes 30adding with calculations 260collections 176copying 37creating 30date and time attributes 38exporting 14identity attributes 39importing 16modifying 36, 190privileging specific 37serial numbers 39user attributes 39-40audit trailconfiguring 67auto closecalculation 265
LANDESK SERVICE DESK SUITE DESIGNER GUIDEautomatic actionscollection value 140dynamic values 138Insert place holder 142values in strings 142autoprompt 133BBackfill value 31Background Colour 89bar chartsadding to a dashboard 237, 241configuring 241defining custom colours 246stack bar charts 244BeforeSavecalculation type 252behaviourobject property 23behaviours 25Message Source 40object property 23breachcalculation of time remaining 262browse controls 85browser control 91on a dashboard 246bulk actionsquery results 203Business Object Title Attribute 25Business Object Title Length 26business objects 21associating images with 26attribute property 32attributes 30Business Objects tree 21collections 176creating 22creating actions 52exporting 14importing 16linking together 50ordered lists 54privileges 45reference list 55relationship property 47relationships between 47Business Objects tree 21buttonsadding to a window 92Ccalculation types 252calculations 251-252add attributes together 260attributes 252, 254auto close 265collections 267counting notes 261dependencies 254editor 254examples 260functions 255generating text 269in a process 256nulls 253on change 256on demand 259operators 254priority 262scheduled 258scope 254time to breach 262user's age 267user's length of service 267variables 254calendarsexporting 14categories 14query conditions 199category conditions 199272
INDEXchild itemspropagate actions 32, 49CIsadministration in a process 160linking to users in a process 165collections 98, 174adding to windows 98attributesadding actions 52calculations 267New Window Wizard 80properties 98relationships 47value for a control 140coloursdefault colours for Pie and Bar Charts 246panel headers 247system settings 246Completed status 128complex criteria 188complex listsabout 93creating 94componentsadding to the shortcut bar 12conditionsadding to filter data 63creating 154runtime values 155configuringaudit trail 67general settings for a query 196list panels 189preview panel 192Query and Reports tree 172confirmation dialogactions 131Console databasecommon design problems 20tips for designing 20context-sensitive helpcontrols 92control properties 82controlsaccelerator keys 70adding to a window 81-82browser controls 91buttons 92context-sensitive help 92custom lists 83DateTime controls 84deleting 81image 87modifying 158option buttons 83properties of 82setting tab order 106static text 86window layout 105Copy On / Copy To 83copy process 127copy related attributes 115setting up 115copy rules 115copyingattributes 37windows 78count panelsadding to a dashboard 226modifying style 227count positionon a count panel 227countingcalculation 261Createcopy rule 115Create CI and useraction in process 161creating the action 160273
LANDESK SERVICE DESK SUITE DESIGNER GUIDEcreatingactions 52attributes 30business objects 22business objects for reference lists 55CIs and users in a process 160conditions 154criteria for queries 185date and time attributes 38identity attributes 39ordered lists 54process 126queries 176, 209reports 208-209user attributes 40windows 78criteriaabout 176complex 188queries 184current groupspecifying for a control 142current userspecifying for a control 142custom listsadding to a window 83Ddashboardsaccessing 220bar charts 237, 241browser controls 246button 220count panel styles 227count panels 226creating 222default 221designer 216gauges 229Home page 221list panels 228lists of shortcuts 234migrate to Web Access 219multiple panels 248other users' 224panel headers 247pie charts 237privileges 217publishing 217removing defaults 221shortcut panels 234stack bar chart 244data filtering 58conditions 63filter rules 58linking physical items together 52runtime value 62data partitioning 24data types 33attribute property 31database 20tips for designing 20date and time attributes 38creating 38Date CheckBox 85Date Checkbox Checked 85date criteria 184Date Time Range Operator 85DateTime 33adding to a window 84DateTime Display Type 85deactivating processes 127, 158decimal 33decisions 152adding to a process 152defaultdashboards 221query 24task 150windows 104274
INDEXdeletingcontrols 81Deletion Typebusiness object property 24dependenciescalculations 254Descriptionattribute property 31business object property 23control property 82relationship property 48design concepts 70accelerators 70window layout 70designingqueries 174Detailed Diagnostics On 25direct lookup 101Display as Option Button 84drop down listscomplex and standard lists 93creating complex lists 94creating standard lists 93keyboard access for 95dynamic valuesfor automatic actions 138Ee-mailingquery results 212reports 212eDirectorylookup 101Editor Type 24effectiveness controladding to a window 91End of Word 82End status 128examplescalculations 260Expand Collections Off 25Expanded By Default in Mobile 78, 89exportingbusiness objects and attributes 14categories 14groups and roles 14, 16ordered lists 14processes 14, 16queries 14reference lists 14response levels and calendars 14templates 14windows 15external data sourcesdirect lookup 101Ffilter rulescreating 58filtersfilter queries 203on a window 100viewing all user filters 201find addresses 118fontpanel headers 247query results list 195formatting process diagrams 157formatting toolbar 83adding to a window 83functionscalculations 254-255Ggaugesnumber frequency 231ranges 231styles 230tickmark frequency 231tickmarks 231general settingsqueries 196reports 211275
LANDESK SERVICE DESK SUITE DESIGNER GUIDEGetBusinessTime 255GetRankedObject 255graphicsstatic 87grid layout for query prompts 198grid properties 189group boxes 70, 88background colour 88grouped queries 179-180summary information 182groupingqueries 176report data 211groupsexporting 14, 16importing 16publishing views to multiple 111GUID 33HHard deletion 24helpcontrols 92hidinginactive processes 123Home pagedashboard 221HTML control 83Iiconsassociating with business objects 26identity attributesabout 39creating 39imageobject 24imagesadding the image control to a window 86associating with business objects 26creating the required attribute 86dynamic 86static 87importingbusiness objects and attributes 16deleted object 17groups and roles 16object conflict in system 17object modification is restricted 17process privilege mismatch 17processes 16queries 16referenced object missing 17windows 16inactive processeshiding 123initialisecopy rule 115Insert place holder 142Int 16 33Int 32 33Is ’company and contacts’ selection? 113Is ’list company contacts’? 113Is ’list customer config items’? 113Is ’list staff of creation user’? 113Is ’list user config items’? 113Is ’user, customer and company’ selection? 113Is Current Group 184Is Current User 184Is Equal To Nearest 184Is Mandatory 82attribute property 31relationship property 48Is Multiline Text 82Is Name 31Is Ownerattribute property 32relationship property 48Is Parent 24Is Privilegeableattribute property 32Is Process 24276
INDEXIs Tab Stop 82Is Top Level 24Is Unicode 31Kkeyboard access 6drop down lists 95Knowledge ManagementEffectiveness control 91Llabelsaccelerator keys 70line breaks in Web Access 106<strong>LAN<strong>Desk</strong></strong> <strong>Service</strong> <strong>Desk</strong> database 20common design problems 20line breakslabels in Web Access 106linkingCIs and users in a process 160, 165-166linking processes 127linksto Web <strong>Desk</strong> from assignments 149list panelsadding to a dashboard 228configuring 189configuring the refresh rate 196, 212modifying attributes 190specifying page size 196listscreating items for 56multi-select 90locking 27Locking Policy 23MMail Notification property 40major tickmark 231maxgrouped query 182Max Length 31meangrouped query 182mingrouped query 182Minimum Lines (Web Access) 75, 82MinutesToBreach 255Mobile Web <strong>Desk</strong> 70windows 77, 89modifyinga status in a process 137actions 52attributes 36attributes on the list panel 190controls 158queries 176Module object property 23movingprocess nodes 157multi-select lists 90multiple panelsdashboard 248NNameattribute property 31business object property 23relationship property 48New Attribute Wizardcreating attributes for a window 33, 80Window Manager 80New Window Wizard 79No deletion 24nodesadjusting position 157alignment and spacing 157notescounting with a calculation 261nullsin calculations 253Oobjectimage 24277
LANDESK SERVICE DESK SUITE DESIGNER GUIDEObjectdata type 33object conflict in system 17object creation wizard 44object linking 25object modification is restricted 17object relationships 47on demandcalculations 259operatorscalculations 254optimistic locking 23, 27option buttonsadding to a window 83creating items for 56optional actionspropagate action to children 136ordered listscreating 54for different audiences 55Other status 128Ppage size 196paged lists 89adding to a window 89panel headersappearance of 247parent-child linking 130actions 52configuring 66propagate actions 32parent-child relationships 49parent itemspropagate actions 32partition typeobject property 24persistence types 38business object property 32date and time attributes 38identity attributes 39user attributes 39-40pie charts2d or 3d 240adding a key to 240adding to a dashboard 237default colours 246grouping 240place holders 142postcode lookup 118Postcode Settings 120pre-populate window 170preconditions 153adding to process 153creating 154overview 125preview attributes 176preview panelconfiguring 192prioritycalculating 262privilegesapplying to specific attributes 37dashboards 217queries 201setting when creating a new object 45process actionsmodifying 137Process Approver 149process components 124actions 124assignments 124preconditions 125process rules 125start point 124statuses 124tasks 125process diagramsadjusting layout 157annotating 157identifying connections 158278
INDEXprocess nodesmoving 157process privilege mismatch 17process rulesautomatic actions 134automatic assignments 148manual actions 132overview 125preconditions 153statuses 128processes 122actions 129-130, 137activating 158adding tasks 151adjusting diagram layout 157annotating process diagrams 157assignments 148automatic actions 134-135automatic assignments 148calculations 256changing templates 170CI administration 160condition runtime values 155copying and modifying 127creating 126deactivating 158decisions 152default actions 133exporting 14, 16formatting diagrams 157<strong>guide</strong>lines for creating 125hiding inactive 123importing 16layout process nodes 157linking 127manual actions 132manual assignments 149optional actions 135preconditions 153-154process components 124Process <strong>Designer</strong> 122Processes tree 123rules for automatic actions 134rules for automatic assignments 148rules for manual actions 132rules for preconditions 153rules for statuses 128sending notifications 143setting the default task 150shortcut bar 167start points 128statuses 128, 137switching 158tasks 150user administration 160validating 158zoom in and out 123Processes tree 123prompt details 186grid layout 198simple list 198Propagate Actionsattribute property 32propagation 130applying to actions 52propertiesPostcode Settings 120propogate actions 49publishingdashboards 217views 111views to multiple groups 111windows 107Qqueries 196appearance in Web Access 28bulk actions 203category conditions 199complex criteria 188created by 202279
LANDESK SERVICE DESK SUITE DESIGNER GUIDEcreating 176, 209criteria 176, 184date criteria 184designing 174exporting 14filter queries 203grouped 176, 179-180importing 16modifying 176on a related object's window 100on a window 100preview attributes 176privileges 201prompts 186shortcut bar 199summary information 182system-wide queries 199user options 172viewing all user queries 201wrapping text in 191Query and Report <strong>Designer</strong> 172user options 172Query and Reports treeconfiguring 172query resultsappearance 189e-mailing 212font 195Rradio buttonsadding to a window 83rangesadding to your gauge 231defining multiple 232specifying the thickness of 233record locking 27reference listsbusiness object 55for different audiences 55referenced object missing 17refreshing the results list 196, 212Reinitialise 158switching templates 170related attributesrelationship property 48Related Business Object property 48related controlsadding to a window 103related list handlersIs ’company and contacts’ selection? 113Is ’list company contacts’? 113Is ’list customer config items’? 113Is ’list staff of creation user’? 113Is ’list user config items’? 113Is ’user, customer and company’ selection? 113related objectscreating from a process window 104relationship properties 47relationship types 48relationships 47actions 52collections 47objects 47properties 47reminderssending notifications 143removingdefault dashboards 221renamingwindows 78Report <strong>Designer</strong> 208report templatesWeb Access queries 28reportFixedWidth 30reportscreating 208-209e-mailing 212general settings 211grouping data 211sorting 210280
INDEXviewing all user reports 201response levelsexporting 14Results Output Attributes 26, 36rolesexporting 14, 16importing 16runtime valuesdata filtering 62process condition 155Sscheduledcalculation type 252, 258scheduling bulk actionsdeactivating 214deleting 214modifying 214scopecalculations 254Search Typeattribute property 32sending notificationsabout 143modifying objects 143modifying the process 145modifying the Reminder window 144specifying runtime values 145serial numbers 39<strong>Service</strong> <strong>Desk</strong> Console Title Attributes 26settingdefault dashboard 221default text alignment 106shortcut baradding components 12adding existing queries 199groups 13processes 167shortcut groupsadding 174creating 13shortcutsadding to a dashboard 234ShortDate Format 85Show Hyperlink 104Show on Window 82showinginactive processes 123simple list for query prompts 198Soft deletion 24sortingreport data 210spacingprocess nodes 157specifyingcollection value for a control 140current group for a control 142current user for a control 142default action 196dynamic values for automatic actions 138spell checkeras you type 67stack bar chartsdashboards 244standard lists 93creating 93start points 128creating 128overview 124Start status 128static textadding to windows 86statuses 128creating 128link optional action instance 135overview 124string 33SubDataTypeAddressCountryCode 120AddressPostCode 120attribute property 32281
LANDESK SERVICE DESK SUITE DESIGNER GUIDEsetting up address attributes 118sumgrouped query 182switchingprocesses 158system queries 199System SettingsPie and Bar Charts 246Ttab order 82setting 106tasks 150creating 150default 150linking to a process 151overview 125templates 169changing of processes 170changing while using a process 170creating 169exporting 14fast process handling 170pre-populate window 170testing windows 80textadding to windows 86from calculations 269text alignmentdefault 106tickmarks 231frequency 231major tickmark 231minor tickmarks 231time to breachcalulcation 262time zones 32TimeToBreach 255Tip Textspecifying in Object <strong>Designer</strong> 53specifying in Process <strong>Designer</strong> 54tips for database design 20Titleattribute property 31business object property 23relationship property 48Title Attributes 26toolbardashboard 220tooltip 92customising 31Tree Node Description Attributes 26Tree Node Title Separator 26triage 158Uupdatecopy rule 115user attributes 39user optionsqueries 172Usersadministration in a process 160alinking to CIs in a process 165Vvalidating processes 158value changedcopy rule 115Value Type 139collection 140current group 142current user 142variablescalculations 254viewingprocesses 123viewscreating 109publishing 111publishing to multiple groups 111282
INDEXWWeb Accessdashboards 219drop-down lists 96handlers and filters on windows 114minimum lines 75, 82report templates 28text wrapping on windows 106windows 73Window ManagerProperties grid 73Tree 71windowsautoprompt 133browse controls 85collections 98controls 81-82copying 78creating a new attribute 80creating from Object <strong>Designer</strong> 36creating new 78creating views 109custom lists 83DateTime controls 84default 104Effectiveness control 91exporting 14-15filters 100formatting toolbar 83group boxes 88images 86importing 16layout 105layout design 70multi-select lists 90New Window Wizard 79option buttons 83publishing 107queries 100queries from another object 100related controls 103renaming 78static images 87static text 86testing 80Web Access 73Web Access lists 96wrapping textWeb Access windows 106wrapping text in queries 191283
LANDESK SERVICE DESK SUITE DESIGNER GUIDE284