AM9.30 Administration en
AM9.30 Administration en
AM9.30 Administration en
Administration
Document Release Date: 31 March 2011 Software Release Date: March 2011
Legal Notices
Copyright Notices Copyright 1994-2011 Hewlett-Packard Development Company, L.P. Restricted Rights Legend Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor's standard commercial license. Warranty The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. The information contained herein is subject to change without notice. For information about third-party and/or open source license agreements, or to view open source code, use one of the following ways: In the ThirdParty directory of the software installation CD-ROM n
n n
In the directories in which the binary files of the third-party and/or open source tools are located after installation of the software. Through the component's url indicated in the Open Source and Third-Party Software License Agreements guide
Trademark Notices Adobe, Adobe logo, Acrobat and Acrobat Logo are trademarks of Adobe Systems Incorporated. n
n n n n n
Corel and Corel logo are trademarks or registered trademarks of Corel Corporation or Corel Corporation Limited. Java is a registered trademark of Oracle and/or its affiliates. Microsoft, Windows, Windows NT, Windows XP, Windows Mobile and Windows Vista are U.S. registered trademarks of Microsoft Corporation. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. UNIX is a registered trademark of The Open Group.
Acknowledgements This product includes software developed by the Apache Software Foundation (http://www.apache.org/ [http://www.apache.org/]), which is Copyright The Apache Software Foundation. All rights reserved. This product includes software developed by The OpenLDAP Foundation, which is Copyright , The OpenLDAP Foundation, Redwood City, California, USA. All Rights Reserved. OpenLDAP is a registered trademark of the OpenLDAP Foundation. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/), which is Copyright The OpenSSL Project. All rights reserved. This product includes software developed by the OpenSymphony Group (http://www.opensymphony.com/), which is Copyright The OpenSymphony Group. All rights reserved. This product includes code licensed from RSA Data Security. This product includes software developed by the JDOM Project (http://www.jdom.org/), which is Copyright Jason Hunter & Brett McLaughlin. All rights reserved.
Table of Contents
Introduction . . . . . . . . . . . . . . . . . . . . . .
Who is the Administration module intended for? . . . . . . . . . . What does the Administration module do? . . . . . . . . . . . .
11
11 11
13
13 14 17
27
27 28 29 30 31 37
Description of indexes . . . . . . . . . . . . . . . . . . . .
44
47
47 48 57 58 59 63 63 65 74 76
79
80 81 83 93
113
114
115
Overview of access to the Asset Manager database . . . . . . . . 115 Example: Creating a report in SAP Crystal Reports with the ODBC driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Chapter 9. Archival . . . . . . . . . . . . . . . . .
121
129
129 130 130 131
133
134 135 136 138 161 163
165
165 166 166 168 176 178 187
269
269 270 279 280
285
285 285 286 290 292
301
301 301 302 303 307 314 319 323 324 325
329
329 330 333 334 334 334
Index . . . . . . . . . . . . . . . . . . . . . . . .
335
List of Figures
2.1. Database opening screen . . . . . . . . . . . . . . 3.1. Links between the History table and a target table . . . . 3.2. Intermediary tables - utilization . . . . . . . . . . . 3.3. Link between the Assets table and the Fixed assets table . 11.1. Import - Selecting the type . . . . . . . . . . . . . 14.1. Messaging system - overview . . . . . . . . . . . . 15.1. Planner viewer - Example with work orders . . . . . .
. . . .
. . . .
. . . .
. . . . . . . . .
List of Tables
3.1. Fields - type . . . . . . . . . . . . . . . . . . . . . . 33 3.2. Data types - Entry format . . . . . . . . . . . . . . . . . 33 3.3. Value of the User types field . . . . . . . . . . . . . . . . 35 3.4. Various types of existing links . . . . . . . . . . . . . . . 38 3.5. Nature of the information stored by links . . . . . . . . . . . 38 4.1. Important server parameters when creating the Oracle instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2. Important database and server parameters . . . . . . . . . . 52 4.3. Asset Manager Windows clients - display language for labels, screens, pages, etc. . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.4. Asset Manager Windows clients - display language for data . . . 68 4.5. Asset Manager Windows clients - display language for tip of the day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 4.6. Asset Manager Windows clients - display language for program messages . . . . . . . . . . . . . . . . . . . . . . . . . 70 4.7. Asset Manager Windows clients - display languages according to the record type . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.1. Database instance properties . . . . . . . . . . . . . . . . 93 5.2. Table instance properties . . . . . . . . . . . . . . . . . 94 5.3. Table instance objects . . . . . . . . . . . . . . . . . . . 95 5.4. Field instance properties . . . . . . . . . . . . . . . . . 96 5.5. Field instance objects . . . . . . . . . . . . . . . . . . . 98 5.6. Possible values for the "Type" property . . . . . . . . . . . . 98 5.7. Possible values for the "UserType" property . . . . . . . . . . 99 5.8. Link instance properties . . . . . . . . . . . . . . . . . 100
5.9. Link instance objects . . . . . . . . . . . . . . . . . . 5.10. Possible values for the "Type" property . . . . . . . . . . . 5.11. Possible values for the "UserType" property . . . . . . . . . 5.12. Index instance properties . . . . . . . . . . . . . . . . 5.13. Index instance objects . . . . . . . . . . . . . . . . . 5.14. Script instance properties . . . . . . . . . . . . . . . . 5.15. Script instance objects . . . . . . . . . . . . . . . . . 5.16. Properties of the FeatDesc instance . . . . . . . . . . . . 5.17. Objects of the FeatDesc instance . . . . . . . . . . . . . 5.18. Properties of the FeatParamDesc instance . . . . . . . . . 5.19. Objects of the FeatParamDesc instance . . . . . . . . . . . 5.20. Properties of the FeatClassDesc instance . . . . . . . . . . 5.21. Objects of the FeatParamDesc instance . . . . . . . . . . . 5.22. Properties of the CalcFieldDesc instance . . . . . . . . . . 5.23. Objects of the CalcFieldDesc instance . . . . . . . . . . . 5.24. Properties of the View instance . . . . . . . . . . . . . . 5.25. Objects of the View instance . . . . . . . . . . . . . . . 5.26. Properties of the Page instance . . . . . . . . . . . . . . 5.27. Properties of the PageItem instance . . . . . . . . . . . . 5.28. Objects of the PageItem instance . . . . . . . . . . . . . 5.29. Properties of the SysEnumValue instance . . . . . . . . . . 5.30. Properties of the String instance . . . . . . . . . . . . . 5.31. Properties of the ScriptField instance . . . . . . . . . . . 5.32. Global variables . . . . . . . . . . . . . . . . . . . . 7.1. Advantages of using the ODBC driver . . . . . . . . . . . . 12.1. Database access types . . . . . . . . . . . . . . . . . 12.2. Guest access type - Tables may be accessed in read and/or write mode . . . . . . . . . . . . . . . . . . . . . . . . . . 12.3. Guest access type - Tables may be accessed in read-write mode under certain conditions . . . . . . . . . . . . . . . . . . . . . 13.1. Asset Manager Automated Process Manager program menus and icons . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.2. Days of monitoring . . . . . . . . . . . . . . . . . . .
101 101 102 102 103 103 104 104 105 105 106 107 107 107 108 108 109 109 110 110 111 111 111 112 116 178 179 182 238 241
Introduction
n n n n
Create, update, delete connections to an ODBC database Optimize Asset Manager for use over a network Implement automatic monitoring procedures Create, update, delete user profiles
The online help supplied with the HP AutoPass License Management Tool also provides further information on these methods (see Help menu), as well as for related maintenance procedures. Alternatively, please contact HP technical support.
The full set of License Keys need to be installed: 1 On the machine from which the database will be activated using Asset Manager Application Designer. Changing the HP AutoPass License Key file [page 17]. 2 On the machine acting as server for Asset Manager Automated Process Manager (from where the database is periodically signed). Note: This can be the same machine. There are several ways to obtain and install License Keys from HP. For example, if you receive the License Keys through a file:
1 Launch the HP AutoPass License Management Tool from the Asset Manager program group, for instance Windows Start/ All programs/ HP/ Asset Manager 9.30 en menu. The following screen displays:
2 Select Install/Restore License Key from file. 3 Click Browse to select the file you have received.
4 Click View file contents. The list of license rights is displayed, as in the following example:
5 Check the box in the Select column for all the rights you wish to install (generally all available), and click Install. The rights change to green to confirm that they have beeen installed. 6 You can check which License Keys are recorded in the HP AutoPass License Management Tool by selecting Report License Key. 7 If you'd like to backup and/or replicate those rights to another machine, select Backup License File. This creates a .dat file that you can install or restore using the Install/Restore License Key from file. 8 Select File/ Close. To complete the installation, you need to carry out two more procedures: 1 Activate the database using Asset Manager Application Designer after installing a new or modified License Key file. See Changing the HP AutoPass License Key file [page 17] 2 Run Asset Manager Automated Process Manager and configure the Signal presence of database server (UpdateToken) module (Tools/ Configure modules menu), so that the database is signed on a regular basis. If possible,
this instance of the server should not be moved to another computer, since this will require changing the license file. This signing process compares the license rights granted by HP AutoPass (local License Key file) with those activated in the database to which Asset Manager Automated Process Manager is connected. If the former rights are less than the latter, the database is locked. Note: We recommend that you run Asset Manager Automated Process Manager on a computer that has a short response time with the DBMS.
authorizations granted by your contract (which you should verify at this point - resize the window if necessary to display the full list):
Warning: If you try to connect to a database that has not been activated, you will get the following error message: Windows client: n
Database is not activated. You must activate database with a valid HP A utoPass license.
n
Web client:
com.peregrine.ac.AmException: Error (12 001): There is no license file in this database. It cannot be opened
Introduction
Asset Manager Application Designer is an administration tool for Asset Manager databases. It enables you to perform a large number of operations, for example: Create a database. n Customize objects stored in the database (tables, fields, links, indexes, n screens, etc.). Repair a damaged database. n Update the structure of a database. n Extract information contained in a database. n This tool is intended for the administrator and requires a certain number of precautions: Since this tool enables you to modify the structure of an Asset Manager n database, we recommend limiting its use to users with the appropriate skills. Asset Manager also enables you, when you use the "Admin" login, to modify n the database (configuration of objects, links, etc.). However, you should never modify the same database concurrently using Asset Manager and Asset Manager Application Designer. Asset Manager Application Designer requires a connection with the "Admin" n login (Administrator) or a login with administrative rights to the database in question. We advise against giving more than one person this login. It can result in conflicts when updating the database or compromise the integrity of the structure of the database thus rendering it unusable.
HP Asset Manager 9.30 - Administration | 21
Graphical interface
Asset Manager Application Designer is executed from the same program group as Asset Manager. Click its icon to launch it. Note: At startup, the main Asset Manager Application Designer screen appears entirely in gray as long as no file has been loaded. You can automatically load the last document used by setting the At startup, automatically load last document used option to Yes (in the Documents section accessible by the Edit/ Options menu).
Language of Asset Manager Application Designer used to create the database, Languages inserted after creating the database (Action/ Insert a language in the database). Modifying Asset Manager client languages [page 65]
Selecting a table To select a table, click its title in the left-hand pane of the user interface. Selecting the displayed object type For any given table, you can select the object type displayed in the main pane using the View menu. The available objects are: Fields n Links n Indexes n Screens n Pages n Using the customization pane The Customization pane is divided into three parts: The first part (at the top) displays the general information about the selected n table. The second part (in the middle) lists all the objects of a given type appearing n in the table. You can choose the type of object to appear using the View menu. The third part (at the bottom) contains the information about the selected n object. Note: Only certain information can be customized. The non-editable values appear grayed-out.
This dialog box enables you to choose one of two Asset Manager Application Designer functions: Create a new database or modify a database description file by selecting the n Open database description file - create new database option. Customize an existing database by selecting the Open existing database option. You can open an Asset Manager Application Designer session by selecting one of these two options.
n
Note: In the last part of the File menu, Asset Manager Application Designer lists by default the last four opened documents. You can thus quickly open one of these documents by directly clicking it in the menu. The number of documents that appear in the recent files list can be set using the Maximum number of recently opened documents to store in File menu option (click Edit/Options, then expand the Documents branch). Open database description file - create new database To create a new database Asset Manager Application Designer needs a description of that database. This description comes in the form of a file that contains the structural information relating to an Asset Manager database. It plays the role of a data template during the creation of the database. By validating this choice, you must provide Asset Manager Application Designer the description file gbbase.xml located in the Config sub-folder of the Asset Manager installation folder. Tip: In order to always have a copy of the standard description files at hand, we recommend making a backup copy of the Config folder.
Note: We also advise you to systematically generate a database description file for your databases (using the File/ Export the database structure menu) and to make a copy of this file: You will need it if ever you want to repair your database. Open an existing database You must connect to the Asset Manager database before being able to customize it. Selecting this option will display the connection that is also used for Asset Manager. This document does not deal with all the intricacies of editing the connection, accessible via the button. For details, refer to the User interface guide. Closing a file The File/Close menu enables you to close an Asset Manager Application Designer session. If you have made any modifications, Asset Manager Application Designer asks you if you'd like to save them before closing the session. To signal that a modification has been made to a database - and before validating these modifications - Asset Manager Application Designer adds an asterisk to the name of the document in the application's title bar. Saving a file There are two ways to save: n The File/ Update database structure menu enables you to save the modifications made to the database description file or to the database. n The File/ Export database structure menu enables you to perform two distinct tasks: 1 If a database description file is open, this menu enables you to save the structure of the database in a new database description file. 2 If a database file is open, this menu enables you to save the structure of the database in a database description file. Exit the application This menu enables you to quit Asset Manager Application Designer. If you have made any modifications during the session, Asset Manager Application Designer will ask you if you want to save them.
Edit functions
Asset Manager Application Designer proposes all the classic edition functions:
HP Asset Manager 9.30 - Administration | 25
Cut/Copy/Paste The Edit menu groups all the operations that you can perform using a selection: n Cut (Ctrl+X) to cut a selection.
n n
These functions only work in editable field zones. Search Asset Manager Application Designer proposes an advanced text searching function, accessible via the Edit/Find menu. As you have already seen, the database structure is composed of objects (tables, fields, links, etc.), which are characterized by the information relating to their properties. For example, the SQL name of a table is a property of that table, just as the Type of a field is one of the properties of that field. The global structure of a database is thus composed of hierarchical objects, each one possessing one or more properties. The search function proposed by Asset Manager Application Designer is performed on the integrality of the database structure. When you perform a search, the software looks through all the database objects and their properties. The list of results is then created in the software's memory, and you can browse this list by using the Edit/Next or Edit/Previous menus (or their keyboard shortcuts: F3 and Shift+F3, respectively). Note: You can specify the direction of the search by using the Up or Down options in the dialog box. Application options The Edit/Options menu enables you to define your preferences of use for Asset Manager Application Designer. Each option is described in the Description zone of the dialog box.
This section provides information required to understand the description of the database. Note: Warning: You should never delete or modify a unique index, nor directly write to the database using external tools (via INSERT, DELETE, UPDATE statements or triggers). For the latter, we suggest you use the Asset Manager API.
Ways to obtain
There are several ways to obtain a description of the Asset Manager database structure: The database.txt and tables.txt files: These contain the complete structure n of the database. They are located in the doc\infos sub-folder of the Asset Manager installation folder. Note: These files describe the default database structure. They do not include any customizations you may have made. In order for these description files to reflect customizations made to your database, you should use Asset Manager Application Designer with a connection to your database.
n
Asset Manager Application Designer program: It enables you to freely create description files of the Asset Manager database (tables, fields, links and indexes). It makes use of: The Asset Manager database description files (gbbase*.* files) or a n connection to the Asset Manager database. A template (file with the .tpl extension), which describes which n information is to be generated. We provide you with standard templates, and you can create your own. Sophisticated templates enable you to create files in rtf or html format.
Note: Among the templates provided with the standard version of Asset Manager, one of them, Dbdict.tpl, enables you to export the customization data (including information about features, calculated fields, configuration scripts, etc.) from your database to a standard text file. Used with a source control tool, this description file can help you track customizations made to the database.
n
n n
Fields, links and indexes are sorted by SQL name. One data item per column. The first line in the table indicates the template parameters that were used to generate the information. The second line includes a clear description of the type of information generated.
In this table, the title of the detail window for an asset whose brand (Brand.Name) is "Asus", model (Model.Name) is "AsusLX512" model and asset tag (AssetTag) is "1" will be:
Detail of asset 'Asus AsusLX512 (1)'
When a drop-down list appears in list mode, it is sorted in ascending order, except if a filter is applied to the list by Asset Manager. On the other hand, when a list appears in tree view, records are sorted in ascending order according to the Full name. The Full name is a field used in hierarchical tables. Its SQL name is "FullName"
Description of fields
This section describes the fields in the Asset Manager database: Identification of Asset Manager fields n Field types and data-entry formats n dtLastModif fields n FullName fields n
An "SQL name". SQL names are in English. SQL names do not change from one Asset Manager language version to the next; they are always the same. The SQL names are prefixed according to the data type of the field:
Data type of the field Boolean (Yes/No) Date Date and time Integer (32 bit) Monetary Percentage System itemized list Duration Long text field Text
Prefix "b" "d" "dt" "l" "m" "p" "se" "ts" "mem" None
n
A "Label". Asset Manager uses labels when it has little space available to display the field name (detail screens, tree view description used when creating queries, etc.). A "Description", used to describe the field in the Asset Manager status bar.
Table 3.1. Fields - type Value given in Field Type column in database.txt file Integer (8 bit) Integer (16 bit) Integer (32 bit) Floating point number Double-precision number Text Date Time Date and time Variable length binary field Long text field Value in Type field in Asset Manager Application Designer Integer (8 bit) Integer (16 bit) Integer (32 bit) Floating point number Double-precision number Text Date Time Date and time Variable-length binary field Long text field Description
Integer from -128 to +127. Integer from -32,768 to +32,767. Integer from -2,147,483,647 to +2,147,483,646. 4-byte floating point number. 8-byte floating point number Limited-length text field. All characters are accepted. Date format field only (no time). Time format field only (no date). Date and time. Used to store images, or other binary files, without size restriction. Variable-length text field (comments, for example). Certain DBMSs have limitations concerning these fields. Oracle for WorkGroups, for example, does not allow you to sort on this type of field.
Data-entry format and data type ("User type") The data-entry format and the data type are indicated by: n The value of the User type in the General tab of Asset Manager Application Designer: By default, this value comes from the Type field.
n
The value displayed for the field in the Field data display and entry type column in the database.txt file.
You can nevertheless indicate the data entry type when it is verified:
Table 3.2. Data types - Entry format Value given in Field data display and entry type column in database.txt file Default Value in User type field in As- Description set Manager Application Designer By default The information is displayed and entered just like it is stored in the database, i.e. depending on the field's Type. Boolean (Yes/No) Boolean. Number Number.
Value given in Field data display and entry type column in database.txt file Monetary Date Date and time
Duration
Value in User type field in As- Description set Manager Application Designer Monetary Monetary values. Date This field can only contain Date type values. Date and time A field with this data-entry format contains Date+Time type values. Time This field may only contain Time type values System itemized list You must select the value for this type of field from a "system" itemized list. This is called a "system" itemized list because the values are defined by the software and cannot be customized by the user. Custom itemized list You select the value for this type of field from an itemized list that may be customized by the user if the Type (seType) is open. Value of feature Reserved. Do not use. Percentage A field with this format contains percentages. This Percentage format displays values with two decimal places. Duration Duration type values. The display format and default unit are defined by the UserTypeFormat property. SQL name of a table or a field. Reserved. Do not use. Any other type.
Note: On list and detail screens, the format of fields whose data type is set to Date, Date and time, Time or Number cannot be modified by clients. You can display additional field information if you set the User type field in Asset Manager Application Designer to one of the following values:
Table 3.3. Value of the User types field Value of User type field in As- Additional information set Manager Application Designer Duration This field enables you to define the display format and the default unit of a duration: Syntax:
%[.D1]U1[l][d][%[.D2]U2[l][d]]...[%[.Dn]Un[l][d]]
n
Ux is one of the following units: Y: year n M: month n D: day n H: hour n N: minute n S: second n d is used to specify the unit to be applied if no unit is entered. Assign this parameter to one unit only. Example: If the timespan format is %M%Dd%H and you enter the value 10, this value will be interpreted as 10 days. l is used to specify that the duration should be displayed its long format. If l is omitted, the unit will be displayed in its shortened form.
Example: %Yl displays year or years; %Y displays y. .Dx is used to specify the number of decimals to display for the unit. Assign this parameter to the smallest unit of the format only. Example: If the duration format is %M%D%H%.2N and the stored duration is 15 seconds, the displayed value will be 0.25 min.
Example if the duration format is %Ml%D%Hd%.1N: If you enter 50, Asset Manager takes this to mean 50 hours n and stores 180 000 seconds. If this stored value is 5 461 220 seconds, Asset Manager n displays 2 months 3d 5h 2.3min. Values taken by the itemized list. Name of the itemized list.
dtLastModif fields
The field with the SQL name "dtLastModif" exists in all tables in the Asset Manager database. SQL name: "dtLastModif". n Short description: "Modified on". n Long description: "Modification date". n This field is updated each time a record is modified in the Asset Manager database, whether this is via the user interface or an import operation. It indicates the date of modification or creation of the record. If you import a value in this field, that value is used instead of the actual import date.
"FullName" fields
The Full name field is a field in the hierarchical tables. Its SQL name is "FullName". Structure of the "FullName" field For each record in a hierarchical table, the "FullName" field stores the value of a field from that record. This value is preceded by a hierarchy, composed of the field values of the parent records to which the record is linked, all the way to the root. Values are separated by the "/" character, without spaces. This character also appears at the start and end of the hierarchy. Examples: Location table: The full name of a location consists of the name of the location n preceded by the name(s) of the parent location(s).
Example: "/USA/Milwaukee/The Domes site/".
n
Employees and departments (amEmplDept) table: The full name of an employee consists of the employee's last name, first name and ID, preceded by the name(s) of the parent record(s).
Example: "/Commercial Services/Telemarketing/Colombo,Gerald,P223/".
Assets table: The full name of an asset consists of its asset tag preceded by the asset tags of the parent asset(s).
Example: "/P123/DD456/CM0125/".
Note: Warning: You cannot directly write in the "FullName" fields. They are entirely managed by Asset Manager.
Exception If one of the values included in the value of a "FullName" field contains the "/" character, this character is replaced by "-". Example: For departments and employees, if a department name is "Sales/Marketing", the "FullName" field for its components will have the following format: "/A.../Sales-Marketing/B.../".
Description of links
This section describes the links in the Asset Manager database: Identification of links n Type of a link n Cardinality of a link n Intermediary tables n Contextual links n
Identifying links
A link is identified by: Its "SQL name". SQL names do not change from one Asset Manager n language version to the next; they are always the same. Its "Label". n Its "Description". n Example of the Location link from the Portfolio items table: The SQL name of the source field in the source table (Portfolio items table) n is "lLocaId". The SQL name of the target table (Locations table) is "amLocation". n The SQL name of the target field in the target table (Locations table) is n "lLocaId". The "database.txt" file indicates that the link's cardinality is "1": A given n item can only have one location. This link may be understood as: "source field = target field".
Warning: The label and description of the link are different from the label and description of the target table. This is because several links can exist between Asset Manager tables. For example, between the Portfolio items table and the Employees and departments (amEmplDept) table, the link whose label is User (SQL name: User) defines the item's user, and the link whose label is Supervisor (SQL name: Supervisor) defines the item's supervisor.
Type of a link
The following table lists the various types of existing links:
Table 3.4. Various types of existing links Type Normal Own Define Neutral Copy Owncopy Description If the source record is deleted, the link is deleted, and any references to the source record in the target records are emptied. If the source record is deleted, the link's target records are deleted. You cannot delete a source record if it is linked to target records. If the source record is deleted, the link is deleted. There is no information to update in the target records. When the source record is duplicated, the links of this type are also duplicated. The same meaning as "Own" and "Copy" links.
The following table lists the nature of the information stored by links:
Table 3.5. Nature of the information stored by links Nature of the information Normal Comment Image History Feature values Description The link stores something different from what is stored by the other "UserType" links. The link stores a comment field. The link stores an image. It represents a portion of contextual links. The link stores a feature value.
Cardinality of a link
We have defined two types of links from a given table A in Asset Manager:
"1-->1" links: A record in table A can only be linked to a single record in table B. For example, the Employees and departments table is linked to the Locations table via a "1-->1" link: An employee can only be associated with one single location. "1-->N" links: A record in table A can be linked to multiple records in table n B. For example, the Contracts table is linked to the Assets table via a "1-->N" link: A contract can cover multiple assets. Important note: In theory, there are three types of logical links between tables in a database: 1 links: A record in table A can only be linked to a single record in table B, n and vice-versa. A 1 link between two tables in Asset Manager is represented by two "1-->1" links. N links: A record in table A can be linked to several records in table B, but n a record in table B is only linked to a single record in table A. An n link between two tables in Asset Manager is represented by a "1-->1" link and a "1-->N" link. N-n links: A record in table A can be linked to several records in table B, n and vice-versa. An n-n link between two tables in Asset Manager is represented by two "1-->N" links.
n
Contextual links
In some cases, the target table is not pre-defined but is specified in the source table. This is called a "contextual link". This kind of link, which has a cardinality of 1, has no reverse link. Example: The case of a link between the History table and a target table:
Figure 3.1. Links between the History table and a target table
Example of the link between the Assets table and the Fixed assets table:
Figure 3.3. Link between the Assets table and the Fixed assets table
In this case: An asset can be the subject of several fixed asset records (logical link n Associated fixed assets): Each record in the Assets table can be linked to multiple records in the n intermediary table. Each record in the intermediary table is linked to one single record in n the Fixed assets table.
n
A fixed asset can concern several assets (logical link Fixed assets): Each record in the Fixed assets table can be linked to multiple records n in the intermediary table. Each record in the intermediary tab is linked to one single record in the n Assets table. Note:
Although intermediary tables do not appear in the Asset Manager user interface, it is sometimes necessary to use them when writing complex queries. Overflow tables These tables store: Additional information that is not contained in the original table n n The foreign key of overflow links (Overflow type link) Overview of overflow tables A table becomes an overflow table when it references an overflow link. There are four overflow tables in the database structure: 1 The Software installations table (amSoftInstall) 2 The Telephones table (amPhone) 3 The Computers table (amComputer) These tables are an extension of the Portfolio Items table (amPortfolio) and have its foreign key. 4 The Assets table (amAsset) This table is an extension of the Portfolio Items table (amPortfolio): the foreign key is on the amPortfolio table and the PortfolioItems link shares the foreign key. The links of an overflow table behave differently depending on whether they target a reference table or not. The reference tables are: The Portfolio Items table (amPortfolio) n The Contracts table (amContract) n
The Work Orders table (amWorkOrder) The Cables table (amCable) n The Training table (amTraining) n For further information on the overflow table, refer to the Portfolio guide.
n
Note: For overflow links, it is highly recommended to add a relevance script corresponding to the case when the overflow link is not populated. Example: amPortfolio:Computer is irrelevant when
Retval = [amPortfolio:Model.Nature.OverflowTbl]<>"amComputer
Behavior of an overflow link pointing to a reference table For each overflow table pointing to a reference table: The creation of a record in the overflow table triggers the creation of a record n in the reference table, except if the overflow link is irrelevant. For example, on the Computers (amComputer) overflow table, the overflow link is irrelevant for computer groups. Therefore no record is created in the Portfolio Items table. The creation of a record in the reference table triggers the creation of a n record in the overflow table if: u the Also create field of the nature of the model for this record references the overflow table. Behavior of an overflow link pointing to other tables For each overflow table pointing to other tables: The creation of a record in the overflow table does not trigger the creation n of a record in the reference table. The creation of a record in the reference table does not trigger the creation n of a record in the overflow table. Foreign key for an overflow table For each overflow table pointing to a reference table: The foreign key is located in the overflow table u If you write a script in the reference table that queries an overflow table, remember to first execute a test query to check for the corresponding overflow link. Implementation advice When you create an overflow table, you must: Create the natures and models corresponding to the overflow link. n
42 | HP Asset Manager 9.30 - Administration
Make sure the mandatory fields that are not populated by default are displayed in the page that depends on the overflow link.
Example of creating an overflow table We are going to create a Cars table (amCar) as an overflow table of the Portfolio items (amPortfolio) table. The steps are the following: Create the new table and the overflow link in Asset Manager Application n Designer, Verify its behavior in Asset Manager. n 1 To create the Cars table: 1 Add a table to the database (Database/ Add a table) 2 Populate the fields as follows: n SQL name: am Car
n
Label: Cars
3 Add the fields of your choice 2 To create the overflow link: n In the amCar table, create the link Portfolio (Database/ Add a link) Populate the fields as follows: n Link type: Overflow n n Source frame, SQL name: Portfolio
n
3 Create the page for the overflow table: Populate the fields as follows: n General tab: 1 SQL name: scrGenCar 2 Label: General
n
Content tab: 1 In the List of fields frame, add the link Portfolio.Model and the fields of your choice.
4 To create the screen for the overflow link: Populate the fields as follows: n General tab: 1 SQL name: scrCar 2 Label: Cars
3 Description: Cars
n
Pages tab: 1 In the Pages in detail frame, add the following pages: scrGen car and PgGenDoc
5 Save your database. 6 Open Asset Manager and display the Natures screen 7 Verify that the Also create field includes a new itemized-list value: Car 8 Verify that for each item created in the Cars table (amCar) a corresponding item is created in the Portfolio Items table (amPortfolio) 9 Verify that for each portfolio item created a corresponding item is created in the Cars table (amCar)
Description of indexes
This section describes the indexes in the Asset Manager database: Identification of indexes n Uniqueness of field values of an index in a table n
Identifying indexes
An index is identified by: Its "SQL name", ending with "Id". SQL names do not change from one n Asset Manager language version to the next; they are always the same. Its "Label". n Its "Description". n
In the Help on fields table (amHelp), the "Help_TableNameFiel" index uses the following fields: Table (SQL name: TableName), n Field (SQL name: FieldName), n This index is "unique or null". This means that it is not possible to find two help entries for the field in the same table. On the other hand, it is possible to have duplicates of a record for which these fields are "null" at the same time.
This chapter explains how to: Create an Asset Manager database: n 1 Prerequisites of creating an Asset Manager database [page 47] 2 Creating an empty shell with the DBMS [page 48] 3 Database password encryption [page 57] 4 Creating a connection with Asset Manager [page 58] 5 Creating the database structure with Asset Manager Application Designer [page 59] 6 Signing the database with Asset Manager Automated Process Manager [page 63]
n
Modify certain parameters of an Asset Manager database: Modifying Asset Manager client languages [page 65] n Languages that can be used in text fields [page 71] n Changing your DBMS [page 74] n Delete an Asset Manager database: Deleting an Asset Manager database [page 76]
Asset Manager Application Designer (and Asset Manager) installed on one machine; with Asset Manager Automated Process Manager and HP AutoPass installed on another. Asset Manager Application Designer, Asset Manager Automated Process n Manager and HP AutoPass installed on a single machine. The Asset Manager Installation and upgrade guide You also need to have obtained and installed License Keys, as explained in Installing License Keys [page 13]
n
If the database will be used by several users concurrently, you should tune the DBMS (at the level of the counters and the generation of identifiers). These operations must be performed by the database administrator, who should contact HP technical support to obtain the necessary instructions. We advise you not to install a DBMS on a server that is already host to numerous services (such as a domain controller, a DHCP controller, a DNS or a messaging service).
Note: The examples and rough estimates of size are made on the basis of the graphical administration tools supplied with the DBMS (other third-party tools are available). Configuring the database server By default, select a RAID 10 configuration. If this isn't possible, or if the server is composed of several clusters of RAID disks, you can distribute the databases to several disks or disk clusters. You can do this with the DBMS by creating data files on different logical volumes and by creating file groups. To use the DBMS correctly, the read and write load should be balanced on all hard disks. If the hard disks do not have the same speed, it is better to store the indexes on the fastest disks. RAID 0 is the easiest way to distribute equally inputs and outputs on hard disks. Comparative measures of performance of MS SQL Server can be obtained on machines with several GB of memory and with several RAIDS 10 clusters. Systematically use RAID 1 and RAID 10 for the disks that contain log files (.log), instead of using RAID 5. RAID 5 is good if the data is stored on more than 6 hard disks. However, the performance will be inferior to that obtained with RAID 10.
These steps are described below for each supported DBMS. Information to be taken into account when reserving space for the database The Asset Manager database is made up of about: 370 tables n 1 600 indexes n Tip: The parameter defining the number of open objects must be sufficient to handle to databases that you are going to create with Asset Manager Application Designer. Oracle
Table 4.1. Important server parameters when creating the Oracle instance Parameter CHARACTER SET Recommended value To store text in non-Asian languages (English, French, German, n Italian, Spanish, Russian, etc) you can use a non-Unicode character set (instead of UTF8). To store text in all languages, including Asian languages (Japanese, n simplified Chinese, Korean), use the UTF8 character set: ( Languages that can be used in text fields [page 71]) To store text in a given Asian language (Japanese, simplified n Chinese, Korean), you can use the character set corresponding to your language instead of UTF8. Disadvantages: The number of characters that you can store n in the text fields is divided by two. Advantages: Performance is better as opposed to when the n UTF8 character set is used.
Note:
With certain Oracle versions, this parameter cannot be modified once the database is created. db_block_size This parameter is expressed in bytes. We recommend using 8192.
Note:
With certain Oracle versions, this parameter cannot be modified once the database is created.
Parameter db_block_buffers
Recommended value Size of the database memory cache. This size is expressed in units of db_block_size. For example: to obtain a 200 MB cache: db_block_buffers = 25000 if db_block_size = 8192 n db_block_buffers = 100000 if db_block_size = 2048 n
Note:
For a medium-sized server, the memory reserved for the database cache should represent 20% to 25% of the server's total memory. This recommendation must be adjusted if several users access the system concurrently (the database cache can be slightly reduced in a way that the server's memory does not swap). shared_pool_size This parameter is expressed in bytes. This size varies from 9,000,000 to 15,000,000 bytes on an Oracle 8.0.x according to the number of users (10 to 50). If the user is installed in the multi-threaded MTS, then this parameter is much higher (together with the large_pool_size on Oracle 8i). This parameter is expressed in bytes. We recommend using 163840. processes
<Number of concurrent users> + <Number of Oracle system proc esses>.
log_buffer
Note:
This value is defined according to the rights granted by the Oracle license. dml_locks open_cursors optimizer_mode For example: 50 is acceptable for 10 users at maximum. 500
<Number of concurrent users> * Max [30; <Maximum number of r ecords updated in multiple selection>].
sort_area_size sort_area_retained_size
Use the RULE mode during initial import, then the FIRST_ROWS or ALL_ROWS mode as soon as the DB has been imported and statistics concerning tables and indexes calculated. (It is a function of Asset Manager Automated Process Manager.) On non-MTS servers n sort_area_size corresponds to the number of bytes, dedicated n for sorts in memory. Sort_area_retained_size corresponds to the memory conn served at the end of the memory sort. As a basic guideline, you can set it to 65256, then increase it if necessary according to use. On an MTS server, the sort area is global for all multiplexed user connections, and sorts are done in the memory space. Start with 65536*number of concurrent users, then increase it if necessary according to use.
Verifications before creating the database with Asset Manager 1 Go to the Oracle server. 2 Using one of the Oracle utilities (Database Expander, Storage Manager, or DBA Studio, for example), make sure that there is enough free space in the tablespace to create an Asset Manager database. For example, if you install Asset Manager in a single tablespace for which the values of the Storage clause are set to INITIAL 10K, NEXT 10K: Anticipate about 150 MB for a small database and 450 MB for a database of 5,000 assets. 3 The rollback segments must be greatly extendable. We recommend a rollback segment for every 4 concurrent users. Each rollback segment must be extendable to about 25 MB. The value of initial and next can vary between 256 KB (with 5 MB for optimal) and 10 MB (with 20 MB for optimal). This indication can be adapted according to your business rules and the size of the Asset Manager database. 4 Configure the Oracle instance so that it uses at least 30 MB of memory cache for the database. Microsoft SQL Server Preparing Microsoft SQL Server 7.0, 2000 or 2005 An SQL Server 7.0 or 2000 is prepared using the Microsoft SQL Enterprise Manager utility. The administration utility to use for SQL Server 2005 is SQL Server Management Studio Express.
Table 4.2. Important database and server parameters Parameter max server memory Default value OS memory Recommended value Keep some OS memory for the OS kernel and processes (between 128 and 256 MB for Windows 2000). The system must not swap. Database setting, to be enabled for all Asset Manager databases. Database setting, to be enabled for all Asset Manager databases.
As set in the database template at database creation. As set in the database template at database creation.
Tip: In doubt, we recommend that you assign the role of Database Owner to the User login. 3 Display the database properties and the: n Permissions tab: Assign the necessary rights to the logins of your choice (at least Create Table and Create Stored Procedures). n Options tab: Check the Truncate Log on Checkpoint option if you don't want to keep log files. If you want to keep them, you need to implement a procedure that will prevent you from saturating disk space. 4 Make sure the temporary space database, tempdb, is set to at least 20 MB.
Recover the standard configuration (allotted memory, etc.). Select @@version Recover the server version. Sp_helpsort Recover the sort order physically used by the indexes.
Preparing the client machines Install the SQL Server client layers on each of the client workstations: If you have installed SQL Server 7.0 or 2000, use the ODBC SQL Server n driver. If you have installed SQL Server 2005, you can use the SQL Native Client n driver or the SQL Server ODBC driver. The SQL Native Client driver provides better performance than the standard SQL Server ODBC driver and lets you access SQL Server 2005 specific features.
Important: The current version of the SQL Native Client driver has a known error that impacts certain SQL features (i.e. when using queries). To workaround this in Asset Manager you can set the value of StmtCache to 0. The StmtCache parameter is used to increase the performance of queries sent to the SQL server. By setting its value to 0, server performance is decreased. This operation is done automatically when you select the SQL Native Client driver. However, after creating the connection between the client workstation and the server using this driver, you can add the StmtCache parameter manually in the [Connexion] section of Asset Manager's amdb.ini file. This will improve performance. For example:
StmtCache=30
DB2 UDB The information that follows should be considered after you configure the DBMS, but before you create the Asset Manager database in the DBMS: The following operations are required for Asset Manager to function correctly n with DB2 UDB. The following orders correspond to the Command Center syntax of DB2 n UDB. You can adapt the following solutions if you want to: DOS session n DB2 UDB Command Center n Preparing the database on the server We recommend that the database administrator configures the database to ensure high standards. The administrator needs to increase the APPLHEAPSZ and APP_CTL_HEAP_SZ parameters of the database using the following SQL statements: 1 CREATE DATABASE <Database name>
Note: In order to store text in all languages, including Asian languages (Japanese, simplified Chinese, Korean), specify the UTF-8 character set in the CODESET parameter ( Languages that can be used in text fields [page 71]). For example:
CREATE DATABASE <Database name> USING CODESET UTF-8
If you want to store text in only one Asian language (Japanese, simplified Chinese, Korean), you can use the character set that corresponds to your language (CODESET parameter). Disadvantages: The number of characters that you can store in the text fields n is divided by two. Advantages: Performance is better as opposed to when the UTF-8 character n set is used. 2 3
Update database configuration for <Database name> using APPLHEAPSZ 2048 Update database configuration for <Database name> using APP_CTL_HEAP_SZ 2048
4 Update database configuration for <Database name>; using DBHEAP 4096 5 Update database configuration for <Database name>; using LOGFILSIZ 500 6 Update database configuration for <Database name>; using DFT_QUERYOPT 2 7 If you wish to use the Asset Manager database with the archival function, DB2 will need to be able to handle 8K pages. Note: By default, DB2 only supports 4K pages. To support the archival function, you must create a SYSTEM type tablespace and an 8K REGULAR type tablespace. For example:
db2 CREATE Bufferpool BP8K IMMEDIATE SIZE -1 PAGESIZE 8 K ; MANAGED BY AUTOMATIC S
db2 CREATE SYSTEM TEMPORARY TABLESPACE TB8KTMP PAGESIZE 8 K AUTOMATIC STORAGE BUFFERPOOL BP8K ;
MANAGED BY
8 If you need to defragment IDs, your database will need to use a specific, temporary workspace. The temporary workspace can be activated in DB2 by the following command:
db2 CREATE USER TEMPORARY TABLESPACE TEMPTBSPACE MANAGED BY AUTOMATIC S TORAGE
Note: Defragmenting database IDs limits the number of IDs used as keys for records. IDs are defragmented using the command line version of Asset Manager Application Designer. The syntax is as follows:
amdbal -iddefrag:<Connection name>;<Login of user with administration r ights>;<Password associated with the login>
To enable DB2 to process Asset Manager queries, you must set a value that is at least 12288 (12Kb) for the STMTHEAP parameter (heap size for SQL instructions). Preparing the clients Start by installing DB2 client layers (DB2 Cli). It is not necessary to create an ODBC source for the DB2 connection. However, if an ODBC source needs to be declared for another application, make sure it is a system data source and not a user data source. In the latter case, certain required optimizations are canceled by the user data source access type. The following commands should be taken into account when creating your connection without using an ODBC datasource: CATALOG TCPIP NODE n CATALOG DATABASE n db2icrt n
Example
Your database server is installed on a Windows server called CALIFORNIUM and the database itself is held in the INST_1 instance (DB2 manages several concurrent instances) and is called SAMPLE. Here are the commands to execute before accessing this database (In the DB2 Command Line Processor): 1 CATALOG TCPIP NODE MyNode REMOTE CALIFORNIUM SERVER 50000 REMOTE_INSTAN
CE INST_1 SYSTEM CALIFORNIUM OSTYPE NT
2 CATALOG DATABASE SAMPLE AS SAMPLE AT NODE 3 Then from a standard command prompt:
db2icrt MyNode
MyNode
7 8 9 10
Useful information for creating a connection to a demostration database using MS SQL Server
Field Name Engine Datasource Database User Password Value <Name of your choice> Microsoft SQL Server AMDemo93en (SQL Server) <Name of the empty shell created with the MS SQL Server editor> itam password
Field Owner
Note: This option is not required if you want to store text in only one Asian language (Japanese, simplified Chinese, Korean). Disadvantages: The number of characters that you can store in the text fields n is divided by two. Advantages: Performance is better as opposed to when the UTF8 character n set is used. 4 Start the wizard to create the database structure (Action/ Create database... menu). 5 Populate the pages of the wizard (navigate through the wizard pages using the Next and Previous buttons). Parameters in the Create database wizard [page 61] Note: If you are using Oracle as your DBMS and if an error message appears when you import data, check the value of the NLS_LANG parameter in the Windows Registry. NLS_LANG must correspond to the Asset Manager Application Designer installation language. To do this: 1 Open a DOS command prompt (Start/ Run... Windows menu) and enter the following command:
regedit
This starts the Registry Editor. 2 If, for example, you are using Oracle version 10g, expand this branch: My computer\ HKEY_LOCAL_MACHINE\ SOFTWARE\ ORACLE\ KEY_OraClient10g_home2. Please read the information at the following site for the branch names used for other Oracle versions: http://www.oracle.com/technology/tech/globalization/htdocs/nls_lang%20faq.htm#_T oc110410552 3 Double-click the NLS_LANG parameter to modify it. If, for example, Asset Manager Application Designer is installed in English, enter this value: AMERICAN_AMERICA.WE8MSWIN1252. 4 Click OK to save your changes. 6 Execute the options defined using the wizard (Finish button).
Creating a connection with Asset Manager [page 58] Create the database: Select this option if you wish to create a database with the standard SQL script. Generate the SQL script: Select this option if you wish to generate the standard SQL database creation script in order to modify it. In this case: 1 Finish executing the database creation wizard, which will simply create a SQL script file. 2 Modify the SQL script.
3 Execute the database creation wizard once more, this time selecting the option Create the database using a script.
n
Create the database using a script: Select this option if you wish to create a database using a SQL script created using the Generate the SQL script option that you have subsequently modified yourself.
Note:
Subsequent pages of the wizard depend on the option that you select here. Use advanced creation Select this option if you need to define the tablespaces for tables, indexes and LOBs. options
Note:
The tablespaces must be created beforehand using the DBMS.
If Generate the SQL script is selected in the previous page, the Select script page displays:
Fields File Value Enter the full path of the SQL script file to create.
Fields Separator
Value Select the separator for SQL statements: /: For an Oracle database n GO: For all other databases n Any other separator: as long as it is a valid separator (such as n ;). You are free to define your own separator such as <MySeparator>, but the database creation script will no longer work.
If Create the database, Create the database using a script or Import line-of -business data is selected in the previous page, the Creation parameters page displays:
Fields Creation script Value Enter the full path of the SQL script file to create. (This field does not appear if you select the Create the database option on the first page of the wizard). Password to associate with the administrator login.
Password
Note:
The Asset Manager database adminstrator is the record in the Employees and departments (amEmplDept) table for which the Name (Name) field is set to Admin. The database connection login is stored in the User name (UserLogin) field. The administration name is Admin. Confirmation Confirm the value entered in the Password field.
If Create the database or Create the database using a script is selected in the previous page, the Create system data page displays:
Fields Use time zones Value Select this option in order to be able to manage the time-zone differences between the database server, the date field and the Asset Manager clients. Advanced use guide, chapter Time zones. Select the time zone of the Asset Manager database server. This is the time zone defined, for example, at the level of the Windows Control Panel of the server. Select the time zone in which the dates stored in the database will be expressed.
Server
Data
Value Select this option to insert the information describing the database fields and links.
If Import line-of -business data is selected in the previous page, the Data to import page displays:
Fields Available data Value Select the sample data or line-of-business data to import into the database. For a production database, we recommend that you: Select the line-of-business data for the modules you wish to use. n Do not select the sample data. n
Note:
The data that you do not import when creating the database can be easily imported later. Stop import if error Log file Select this option for the import to stop if a problem is encountered. Full name of the file to which all import operations, including errors and warnings, are logged.
Note: This must be done on a machine where HP AutoPass License Management Tool is installed with a set of License Keys that matches the one activated for the database (HP AutoPass is automatically installed with Asset Manager Automated Process Manager, but installing the License Keys to this instance of HP AutoPass is a manual step; Installing HP AutoPass License Keys [page 14]). The signing process compares the License Keys granted by HP AutoPass with those activated in the database to which Asset Manager Automated Process Manager is connected. If the former keys are less than the latter, the database is not signed. If a database remains unsigned for more than a week, the database is locked. To unlock the database: 1 Resolve the the License Key mismatch between HP AutoPass and the database. To do this, you can either: add the missing License Keys to the HP AutoPass instance on the n Asset Manager Automated Process Manager machine. Installing HP AutoPass License Keys [page 14] or remove the excess License Keys from the database: n a On the machine used to activate the database with Asset Manager Application Designer, run HP AutoPass License Management Tool and use Remove License Key. b Select the License Keys to remove. c Click Remove. d Reactivate the database with the right set of License Keys ( Changing the HP AutoPass License Key file [page 17]).
n
or reinstall the License Keys from scratch: a On the machine used to activate the database with Asset Manager Application Designer, delete the LicFile.txt located in the data folder of the HP AutoPass License Management Tool installation folder (C:\Program Files\HP\Asset Manager 9.30 xx\autopass\data by default). b Add the required License Keys to the HP AutoPass instance on the Asset Manager Automated Process Manager machine.
2 Run Asset Manager Automated Process Manager and run the Signal presence of database server module again. The database should be unlocked.
Tip: It is possible to just install Asset Manager Application Designer. 3 Start Asset Manager Application Designer in the language of your choice. 4 Open your database (File/Open.../ Open existing database menu). 5 For each of the languages to be added: 1 Select Action/ Insert a language in the database.... 2 Select the folder in which the appropriate language version of Asset Manager is installed. For example: C:\Program Files\HP\Asset Manager 9.30 xx-English 3 Click OK to confirm. Warning: If you add the parameters of a language that is already used, any customizations will be overwritten, including those that refer to the added objects.
Substituting fonts to display languages that do not use ANSI code pages in the Windows clients
In order to display all user interface items correctly (data, menus, wizards, scripts, navigation bar, etc) in languages that do not use ANSI code pages (non-Western languages), you must: Substitute the fonts that are used to display user interface items: n 1 Open the am.ini file in a text editor. Location of this file: Installation and upgrade guide, chapter .ini and .cfg files. 2 Add the following lines to the corresponding sections:
[FontSubstitutes] Microsoft Sans Serif=Arial Unicode MS MS Sans Serif=Arial Unicode MS Times New Roman=Arial Unicode MS Verdana=Arial Unicode MS Arial=Arial Unicode MS [Option] /ShortcutFavorite/Extended/SHORTCUT_FAVORITE_FONTNAME=Microsoft Sans Serif /Advanced/UseHardCodedFontMapper=1 /Advanced/ScriptFont=Arial Unicode MS, 12
Make sure that the Windows system fonts are Unicode-compatible: 1 In the Windows display properties (Control panel/ Display), Appearance tab, click Advanced. 2 Check that the fonts used for the different interface items support Unicode (for example, select the Arial Unicode MS font).
Windows client: Start the Asset Manager Windows client. Web client: Start Internet Explorer and enter a URL that points to the instance of Asset Manager Web Tier of the required language.
3 Connect to the database. The multilingual database objects are automatically displayed in the language of the client. Note: At the level of an Asset Manager client, multilingual objects can only be displayed in one language: that of the Windows client or Asset Manager Web Tier itself.
Table 4.3. Asset Manager Windows clients - display language for labels, screens, pages, etc. Labels and descriptions of tables, fields, links and indexes Screen label Page label n System itemized lists value n Extended help on a field or a link n Storage of text of the object Database Display language by the Windows Language of the Asset Manager client connected to the Asset Manager client database Display language by the Web As- Language of the Asset Manager Web instance to which set Manager client the URL of the Web client points
n n
Table 4.4. Asset Manager Windows clients - display language for data Nature of the object Storage of text of the object Display language by the Windows Asset Manager client Data stored in the database Database Language in which the user enters the data
Nature of the object Display language by the Web Asset Manager client
Data stored in the database Language in which the user enters the data, except for: Monetary and Time fields in details: In read and edit n mode, they are displayed according to the <defaultlocale>%locale%</default-locale> parameter in the webclient-faces-config.xml file of the deployed Asset Manager Web Tier AssetManager.war file. Date and time fields in details: n Edit mode: the way the fields are displayed cannot be changed by users and is the same for all language versions of Asset Manager. Read mode: they are displayed according to the <default-locale>%locale%</default-locale> parameter in the webclient-faces-config.xml file of the deployed Asset Manager Web Tier AssetManager.war file. Duration fields in details: In read and edit mode, the way the fields are displayed cannot be changed by users; it depends on the language version of Asset Manager Web Tier. Date and Date and time fields in lists (main, page and wizard lists): the display format cannot be changed by users; it depends on the regional settings asociated to the user account session running Asset Manager Web Service.
Warning:
The regional settings asociated to the user account session running Asset Manager Web Service should match the language of Asset Manager Web Service. Otherwise some strings may be displayed using an unwanted format.
Table 4.5. Asset Manager Windows clients - display language for tip of the day Nature of the object Storage of text of the object Display language by the Windows Asset Manager client Display language by the Web Asset Manager client Tip of the day Database Language of Asset Manager Application Designer, used to create the database Not available
Table 4.6. Asset Manager Windows clients - display language for program messages Nature of the object Storage of text of the object Display language by the Windows Asset Manager client Display language by the Web Asset Manager client Program message Client program Language of the Asset Manager client connected to the database, except for some messages generated at the database level. Language of the Asset Manager Web instance to which the URL of the Web client points, except for some messages generated at the database level.
To create a new database: 1 When you create the empty shell via the DBMS, perform the actions required by the DBMS you are using. Creating a database at the DBMS level [page 49]. 2 When you create the database with Asset Manager Application Designer, enable the Use Unicode text fields option on the Database menu. Creating the database structure with Asset Manager Application Designer [page 59] Note:
This feature has the inconvenience of doubling the size of the database, which can hinder performance. Note: If a database is not set to store Unicode text fields, you can still enter and save characters to the database but they will not be saved correctly. Consequently, when you display the record, the information in the text field will not be displayed correctly. Tip: This feature also provides the Japanese, Korean and simplified Chinese versions with full-size fields. If the Use Unicode text fields option is not enabled, only half of the field will be stored. Also, to ensure that all user interface items are displayed correctly in languages that do not use ANSI code pages (non-Western languages), please refer to the Substituting fonts to display languages that do not use ANSI code pages in the Windows clients [page 66] paragraph.
Adding Unicode support to the Asset Manager DBMS using Oracle To add Unicode support to the Asset Manager database when this is based on Oracle: 1 Create a new Oracle instance using the Oracle tools Database Configuration Assistant, and the following values: 2 Export the current database with the Oracle export tool (expdp). 3 Import the existing Asset Manager database with the Oracle import tool (impdp), to the Unicode instance created in step 1. Verify that data import has been successful. Warning: Export and Import can take several hours. The export and import process is done with Oracle tools, therefore, HP Software cannot provide tools support if there is any error during the process, especially during the import where the conversion is performed. 4 Open the file C:\Documents and Settings\All Users\Application Data\HP\AssetManager\conf\amdb.ini 5 At the section that describes the connection to the database, add the lines:
TableSpace=MY_DATA_TAB_SPC TableSpaceIndex=MY_INDEX_TAB_SPC TableSpaceLong= MY_DATA_TAB_SPC TableSpaceArchive=MY_ARCHIVE_TAB_SPC
where
MY_DATA_TAB_SPC MY_INDEX_TAB_SPC MY_ARCHIVE_TAB_SPC
are the table spaces that you have defined for your Data, Indexes and Archive if there are any. Warning: This part can take several hours.
6 Install additional languages on Asset Manager client computers using Oracle tools, as in the screenshot below:
7 Verify that the database is now correctly configured to support Unicode, by running the following queries with Oracle SQL Plus: 1 SELECT * FROM NLS_DATABASE_PARAMETERS; You should get the following results:
NLS_CHARACTERSET AL32UTF8 NLS_NCHAR_CHARACTERSET AL16UTF16
8 Perform a screen text dump on a source containing a Unicode string, for instance:
SELECT DUMP (email,1017) FROM amEmplDept;
Supposing this contains a Unicode string, you get results similar to:
DUMP(EMAIL,1017) ------------------------------------------------------------------------------NULL Typ=1 Len=17 CharacterSet=UTF8: 89,e4,b8,d0,d1,8b,d1,89,e4,b8,d1,b8,d1, 89,e4,b8,b9
Assuming that Unicode is now correctly supported you should now be able to enter Unicode-based texts in Asset Manager as in the following example:
Note: Steps 2 and 3 are not described in this section. For more information, consult the following sections: Creating an empty shell with the DBMS [page 48], n Creating a connection with Asset Manager [page 58], n Creating the database structure with Asset Manager Application Designer n [page 59].
Example:
osql -S (local)\ASSETMANAGER -U sa -P saampassword
Example:
exec sp_detach_db 'ACBase', 'false'
2 Delete connections defined at the level of Asset Manager on each client machine. 3 With Microsoft SQL Server: Delete ODBC connections on each client machine.
Asset Manager Application Designer enables you to extract information from the database. You can control the nature of the extracted information and the extraction format. There are several ways to obtain a description of the Asset Manager database structure: The database.txt and tables.txt files: They contain the complete n structure of the database. These files are located in the doc\infos sub-folder of the Asset Manager installation folder. Note: These files describe the default database structure. They do not include any customizations you may have made. In order for these description files to reflect customizations made to your database, you should use Asset Manager Application Designer with a connection to your database.
n
Asset Manager Application Designer program: It enables you to freely create description files of the Asset Manager database (tables, fields, links and indexes). It makes use of: An Asset Manager database description file (gbbase*.* files) or a n connection to an Asset Manager database. A template (.tpl file extension) that describes which information to n generate. We provide you with the standard templates, but you can create
your own if you wish. Sophisticated templates enable you to create RTF or HTML formatted files. Note: Among the standard templates provided with Asset Manager, one of them, the dbdict.tpl file, enables you to export all the customization information from your database to a standard text-formatted file. This kind of information includes features, calculated fields, configuration scripts, etc. Used along with a "Source Control" tool, this description file can be very useful for keeping a trace of all customization modifications made to the database.
n
The Asset Manager program. This functionality is accessible via the Action/Templates menu, which is itself divided into several sub-menus: Select folder allows you to specify the folder where Asset Manager n Application Designer will search for description templates. The software searches all the sub-folders in the selected folder. Refresh list restarts the search of description files from the folder n specified the last time you changed folders. The remaining sub-menus consist of all the description templates found n by Asset Manager Application Designer in the folder. You can execute a description template by selecting its name from the list displayed in the menu. Note: When executing a database description template, if Asset Manager Application Designer encounters a variable whose value is not defined in the template, a screen is displayed for you to enter the value of that variable.
Introduction
The internal structure of a database can be viewed as a collection of hierarchical objects: a database that contains tables, which themselves contain fields, links, indexes, etc. Describing a database means going through its structure and extracting from it the information that you need. The way in which Asset Manager Application Designer extracts information (as much the contents as the form in which the contents are extracted) is described in template files. These files are little programs whose syntax is easily understandable if you have a little
programming experience. This syntax is described in the following sections of this chapter.
Property P1-n Object O1-n as <instance name> Instance FEATCLASSDESC Property P1-n Object O1-n as <instance name> Instance CALCFIELDDESC Property P1-n Object O1-n as <instance name> Instance VIEW Property P1-n Collection PAGES as PAGE Collection FIELDSINLISTCONFIG as PAGEITEM Object O1-n as <instance name> Instance PAGE Property P1-n Collection FIELDS as PAGEITEM Object O1-n as <instance name> Instance PAGEITEM Property P1-n Object O1-n as <instance name> Instance SYSENUMVALUE Property P1-n Object O1-n as <instance name> Instance STRING Property P1-n Object O1-n as <instance name> Instance SCRIPTFIELD Property P1-n Object O1-n as <instance name> Global Values Property P1-n
Describing the structure of an Asset Manager database is equivalent to describing the following instances: Database: the database itself. n Table: database tables. n Field: fields in the tables. n Link: links in the tables. n Index: indexes in the tables. n Script: scripts for calculating the values of the fields. n Each instance may be described with the following information: Property: a property of the instance. n For example:
82 | HP Asset Manager 9.30 - Administration
The "SqlName" property provides the SQL name of the table. Collection: set of items that constitute one of the components of an instance. For example:
Instance Index Collection FieldsIndex as Field
An index (one of the components of the "Index" instance) is in particular defined by a set of fields ("FieldsIndex" collection). Each field is an item in the "Field" instance. Object: designated component of an instance. For example:
Instance Link Object SrcField as Field
A link (one of the components of the "Link" instance) is in particular defined by a source field ("SrcField" object). This field is a component of the "Field" instance.
Fixed text
Any character string that does not start with the "$" character, and which is not part of a function, is generated as is by Asset Manager Application Designer. Note: To output a "$", the template must contain the following string: "$$". For example: The template:
List of tables. SQL NAME $$
Comments
Lines to be ignored by Asset Manager Application Designer, and which are used to add comments to the template, must begin with the "$" character and be followed by a space. For example:
$ This is a comment line
For example:
$include "e:\models\dbscript.tpl"
Example of use: enables you to definitively define a reference template containing the functions that may be used by other templates, which include the reference template.
Browsing the components of a collection with "$for...$endfor" To perform an iterative browse of the components of a collection, use the following syntax:
$for <name of the collection> ... $for <sub-collection> ... $endfor $endfor
For example:
$for Tables ... $for Fields ... $endfor $endfor
You must respect the hierarchy between collections. Examples: 1 The "Fields" collection is dependent on the "Tables" collection. 2 The "FieldsIndex" collection is dependent on the "Indexes" collection. You may replace <name of the collection> with the "*" character. This calls all the collections in the current instance. Example:
$for Tables ... $for * $(SqlName) ... $endfor $endfor
This allows you to obtain the SQL name of all the collections in the "Table" instance, i.e.: "Fields", "Links" and "Indexes". Sorting the final result with "sort" To sort the components in a collection, use the following syntax:
$;for <collection> sort (<name of the first property> (ASC|DESC) [, <name of the next property> (ASC|DESC)])]
... $endfor
Where: 1 ASC: ascending alphabetical order. 2 DESC: descending alphabetical order. For example:
$for Tables sort (SqlName ASC) ... $for Fields sort (Usertype DESC, UserTypeFormat ASC, SqlName ASC) ... $endfor $endfor
Obtaining the properties of items in a collection or an object To obtain the value of item properties of a collection or an object, use the following syntax:
$for <collection> ... $([<name or alias of the collection>.][<name of the object>.]<Property> ... $endfor
Note: <name or alias of the collection> is not necessary if the property is called in a "$for... $endfor" loop in the collection. For example:
$for Tables $for Fields $(Tables.SqlName) $(SqlName) $endfor $for Links $(Tables.SqlName) $(SqlName) $(Reverselink.SqlName) $endfor $endfor
Assigning an alias with "alias" For the moment, aliases have no particular use. Filtering the contents of the collection with "filter" To filter the components of a collection, use the following syntax:
Keeps only tables whose SqlName starts with the letter "p".
$if...$else...$elseif...$endif conditions
You can define the scope of a condition to include a property so that a component is selected. Syntax:
$if <test condition> ... $elseif <test condition> ... $else <test condition> ... $endif
Test conditions may be expressed using Basic formulas, functions defined in "$script...$endscript" format, and properties of instances. For example:
$for Links $if $(typed) = 0 $(Tables.SqlName) $(SqlName) $(SrcField.SqlName) $(DstTable.SqlName) $else $(Tables.SqlName) $(SqlName) $(SrcField.SqlName) $endif $endfor
$ValueOf("PRIMARYKEY")
SetProperty(<strProperty> as String, <strValue> as String, <iValueType> as Integer) as String This creates a ValueType type global variable called Property for the template. Property must be in uppercase. Examples:
I = SetProperty("NEWPROPERTY", "2", VarType(2))
This creates a global variable called NEWPROPERTY for the template, with a numeric value of 2. It also returns a return code I that is equal to "0" if the variable was created correctly.
I = SetProperty("NEWPROPERTY", "Test", VarType("Test"))
This creates a global variable called NEWPROPERTY for the template, with a text value of Test. It also returns a return code I that is equal to "0" if the variable was created correctly. Exist(<strProperty> as String) as Integer This tests for the presence of the Property global variable in the template. For example:
Exist("NEWPROPERTY")
This returns a numeric value of 1 if the property exists. Otherwise it returns 0. LogError(<strErrorCode> as String, <strMessage> as String) as String This defines an ErrorCode and an error message Message to be returned. For example:
LogError(1, "the property not found")
This produces an ASCII error message in the defined cases. SetOutput(<strFile> as String) as String This defines the output file for the results. Has priority over the output file defined in the command line. Examples:
SetOutput("e:\exportdb\sortie.txt")
This displays the results on the screen. CollectionCreate(<strName> as String) as Integer This declares a new collection of database items. The name of the collection created must be a valid database collection, such as "Fields" or "Tables". This function and the following functions are typically used to scan the components of a collection. They can thus be used as a substitute for the proprietary "$For....$Next" syntax. For example:
CollectionNext() as IntegerCollectionCreate("Fields")
The function returns "0" if the collection is created. Other values correspond to error codes that are displayed explicitly. CollectionNext() as Integer This performs an iteration on the collection previously defined using "CollectionCreate()". For example:
CollectionNext()
The function returns "0" if the iteration is performed successfully. All other return codes correspond to errors. The function also returns an error if the last element of a collection is reached. CollectionName() as String This returns the name of the collection previously declared using the "CollectionCreate()" function. For example:
strName=CollectionName()
CollectionIsFirst() as Integer This allows you to test if the element of the collection to which the program is pointing is the first of the collection. For example:
CollectionIsFirst()
This function returns "1" if the element is the first of the collection. Otherwise it returns "0" in all other cases. CollectionIsLast() as Integer This allows you to test if the element of the collection to which the program is pointing is the last of the collection.
For example:
CollectionIsLast()
This function returns "1" if the element is the last of the collection. Otherwise it returns "0" in all other cases. CollectionCurrentIndex() as Integer This returns the index number of the element of the collection to which the program is pointing. The collection must be declared beforehand using the "CollectionCreate()" function. For example:
Number=CollectionCurrentIndex()
CollectionCount() as Integer This returns the number of elements contained in the current collection previously declared using the "CollectionCreate()" function. For example:
iCollec=CollectionCount()
Examples:
$StrType($(Type)) $Duplicates($(Duplicates), $(NullValues))
Defining functions with "$script...$endscript" Functions are defined within a Basic block delimited by two markers: "$script" and "$endscript":
$script ... Function ... End Function ... $endscript
Functions may be expressed using Basic formulas and instance properties. Note: By default, the variables used in the declaration of a function are not verified. Thus, it is possible to use a variable without declaring it, which would cause errors when the script is executed. If you want to modify this behavior so that the variables' declarations are verified, you just need to add the following line to the Basic block of the function (right after the $script marker):
Option Explicit
Examples:
Function ReturnYesNo(ByVal iValue as Integer) as String if iValue = 1 then ReturnYesNo = "Yes" else ReturnYesNo = "No" end if End Function Function StrType(ByVal iValue as Integer) as String select case iValue case 1: StrType = "Integer (8 bit)" case 2: StrType = "Integer (16 bit)" case 3: StrType = "Integer (32 bit)" case 4: StrType = "Floating point number" case 5: StrType = "Double-precision number" case 6: StrType = "Text" case 7: StrType = "Date and time" case 9: StrType = "Binary field" case 10: StrType = "Date" case 11: StrType = "Time" case 12: StrType = "Long text field" case else Dim strError as String strError = "Type " + CStr(iValue) + " undefined" strType = LogError(1, strError) End select End Function
Examples:
$A = 1 $Var = "text"
Database instance
Properties
Table 5.1. Database instance properties Property name LoginName LoginId TableCount Description Name of the Login that you use to access the database. ID of the Login that you use to access the database. Total number of tables in the database. Connection required Yes Yes No
Description
This field may have two values: 1: Asset Manager Application Designer was executed in reference to a connection. 0: Asset Manager Application Designer was executed in n reference to a database description file. Connection Name of the Asset Manager connection used to access the database. AppInfo Information about Asset Manager. AppVersion Asset Manager version number. AppBuild Asset Manager build number. AppLanguage Asset Manager language. DbbVersion The version number of the database structure.
n
Connection required No
Yes No No No No No
Table instance
Properties
Table 5.2. Table instance properties Property name Create Description Connection required Yes
Delete
This property may have two values: 1: The login has create access rights for the table. n 0: The login does not have create access rights for n the table. This property may have two values: Yes 1: The login has delete rights for the table. n 0: The login does not have delete rights for the n table. Table description string. No Internal name. No This information has no particular use. Label Description SQL name Total number of fields in the table. Total number of links in the table. Total number of indexes in the table. No No No No No No
Description Indicates whether the item is located at the start of the collection, taking into account the filter and the sort order: 0: no n 1: yes n Indicates whether the item is located at the end of the collection, taking into account the filter and the sort order: 0: no n 1: yes n Counts the number of items browsed in the collection, taking the filter into account. Position of the item in the collection, taking into account the filter and the sort order. Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n Indicates whether this table has a table of feature values associated with it: 0: no n 1: yes n Indicates whether this table is a table of feature values: 0: no n 1: yes n Indicates whether this table has a Long text-type field. 0: no n 1: yes n
Connection required No
IsLast
No
No No No
HasFeatureValueTable
No
IsFeatureValueTable
No
HasMemoField
No
Objects
Table 5.3. Table instance objects Object name MainIndex as Index PrimaryKey as Field FeatureValueTable as Table FVSourceTable as Table IsValidScript as Script RelevantScript as Script Description Main index Primary key Table in which the feature values are stored. Source table of feature values. Validity script Relevance script
Field instance
Properties
Table 5.4. Field instance properties Property name Update Description Connection required Yes
Write
Read
UserType
This property may have two values: 1: The login has update rights for the field. n 0: The login does not have update rights n for the field. This property may have two values: Yes 1: The login has create access rights for the n field. 0: The login does not have create access n rights for the field. This property may have two values: Yes 1: The login has read rights for the field. n 0: The login does not have read rights for n the field. By default, the data entry and display format No is the format for the "Type" property. The "UserType" property enables you to specify the data entry and display format when it is verified. Storage format Additional information about the "UserType" parameter. Maximum size of the values in the field, as a number of characters. Defines whether the field may be modified, regardless of the access rights for the person connected to the database. This property may have two values: 1: The field can never be modified by users. n 0: The field may be modified by a user, if n the user has the required access rights.
No No No No
Description This property may have two values: 1: History is recorded for the field. 0: History is not recorded for the field. n This property may have two values: 1: The field is a foreign key. n 0: The field is not a foreign key. n This property may have two values: 1: The field is a primary key. n 0: The field is not a primary key. n Internal name
n
Connection required No
ForeignKey
No
PrimaryKey
No
InternalName
No No No No No No No No No No No No No
This information has no particular use. Label Label of the field, as it appears in detail screens, for example. Desc Description SqlName SQL name LongHelpComment Comments on the use of the field. LongHelpSample Examples of values that may be assigned to the field. LongHelpWarning Important information for the field. LongHelpDesc Description of the field. LongHelpCommentNoHTM- Remarks about the utility of the field (HTML LTag tags excluded). LongHelpSampleNoHTMLTag Examples of values that the field can accept (HTML tags excluded). LongHelpWarningNoHTMImportant information about the field (HTML LTag tags excluded). LongHelpDescNoHTMLTag Description of the field (HTML tags excluded). System Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n Indicates whether the default value is reEmptyOnDup applied in case of duplication. 0: no n 1: yes n Indicates the relative case behavior for the FieldCase field. 0: No modification to the field value. n 1: Value modified in upper-case characters. n 2: Value modified in lower-case characters. n 3: Value modified in smartcase. n
No
No
Connection required No
Objects
Table 5.5. Field instance objects Object name Base as Database Table as Table MandatoryScript as Script DefaultScript as Script ReadOnlyScript as Script HistoryScript as Script RelevantScript as Script Description Described database Table containing the field. Mandatory calculation script for the field. Default script for calculating the field's value. Read-only calculation script for the field. History calculation script for the field. Relevance calculation script for the field.
Possible values for the "UserTypeFormat" property This property is used when the "UserType" property is set to: "Custom Itemized list": indicates the name of the itemized list associated n with the field. "System Itemized list": provides the list of itemized entries. n "Duration": indicates the display format. n "Table or field SQL name": the property contains the SQL name of the field n which stores the SQL name of the table containing the field that specifies the described field.
Link instance
Properties
Table 5.8. Link instance properties Property name Update Description This property may have two values: 1: The login has update rights for the link. 0: The login does not have update rights n for the link. This property may have two values: 1: The login has create access rights for the n link. 0: The login does not have create access n rights for the link. This property may have two values: 1: The login has read rights for the link. n 0: The login does not have read rights for n the link. Type of the link. Type of information managed by the link. Indicates whether or not the link's target table is pre-defined. When this is not the case, the table's SQL name is stored in one of the fields of the record. 1: The target table is not pre-defined. n 0: The target table is pre-defined. n This property may have two values: 1: History is recorded for the link. n 0: History is not recorded for the link. n Cardinality of the link. Internal name
n
Write
Yes
Read
Yes
No No No
Historized
No
No No No No No No
LongHelpComment
This information has no particular use. Label. Description SQL name. Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n Comments on the use of the link.
No
Description
Examples of values that may be assigned to the link. LongHelpWarning Important information for the link. LongHelpDesc Description of the link. LongHelpCommentNoHTM- Remarks about the utility of the link (HTML LTag tags excluded). LongHelpSampleNoHTMLTag Examples of values that the link can accept (HTML tags excluded). LongHelpWarningNoHTMImportant information about the link (HTML LTag tags excluded). LongHelpDescNoHTMLTag Description of the link (HTML tags excluded).
Connection required No No No No No No No
Objects
Table 5.9. Link instance objects Object name Base as Database SrcField as Field SrcTable as Table DstTable as Table DstField as Field RelTable as Table RelSrcField as Field RelDstField as Field TypeField as Field Description Described database Source field Source table Target table Target field Relation table Source field of the relation table. Target field of the relation table. When a link's target table is not pre-defined, this property indicates the field containing the SQL name of the target table. Reverse link History calculation script for the link. Relevance calculation script for the link.
0 1 2 3 4
Index instance
Properties
Table 5.12. Index instance properties Property name Duplicates Description Indicates whether or not the index can have more than one non-NULL value. 1: You can create several records where the group of fields in the n index can have exactly the same value. 0: You cannot create more than one record where the group of fields n in the index has a given value. This property is only significant if the "Duplicates" property is set to "No". It indicates whether or not the index can have more than one "NULL" value. (The index has a value of "NULL" if all the fields constituting the index have a value of "NULL".) 1: You can create several records having an index of NULL. n 0: You can only create one record having an index of NULL. n Internal name This information has no particular use. Label as it appears in the detail screens. Description SQL name Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n
NullValues
Objects
Table 5.13. Index instance objects Object name Base as Database Table as Table Description Described database Table containing the index.
Script instance
Properties
Table 5.14. Script instance properties Property name CalcMode Description Indicates whether the value of the field is "yes", "no", or if a script calculates one of these two values. This property can have one of the following values: 0: no n 1: yes n 2: script n Type of information managed by the script. This property can have one of the following values: 1: Data entry for a field is mandatory. n 2: By default, displays a feature in a table. n 3: Available character for a feature in a n table. 4: Records history for a field. n 5: Default value of a field. n 6: For inheritance purposes (bForInheritance) field of a feature in a table. Script that calculates the value of a field as it is displayed in the interface. Script that calculates the value of a field as it is stored in the database.
n
ScriptType
Source
ReferencedStorageFieldCount
Description Type of string calculated by the script: Integer: Integer from -32,768 to +32,767 n Long: Integer from -2,147,483,647 to n +2,147,483,646 Double: 8-byte floating-point number n String: Text for which all characters are n accepted Date: Date (not time). n Number of fields referenced in the script.
Objects
Table 5.15. Script instance objects Object name Table as Table Field as Field Description Table containing the field whose value is calculated by the script. Field containing the value calculated by the script.
Instance FeatDesc
Note: You need to connect to the database in order to use this instance. Properties
Table 5.16. Properties of the FeatDesc instance Property name System Description Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n Label of the feature. Description SQL name Unit of the feature. Entry type of the feature.
Property name
HasClass
Description Itemized list used to populate the value of the feature. This property is only useful if the feature's Type is Itemized list. The minimum value accepted by the feature (numeric type only). The maximum value accepted by the feature (numeric type only). Indicates whether the value is calculated by consolidation. 0: no n 1: yes n Indicates whether the feature is attached to a feature class: 0: no n 1: yes n
Objects
Table 5.17. Objects of the FeatDesc instance Object name Class as FeatClassDesc Description The class of the feature.
Instance FeatParamDesc
Note: You need to connect to the database in order to use this instance. Properties
Table 5.18. Properties of the FeatParamDesc instance Property name LongHelpComment LongHelpSample LongHelpWarning LongHelpDesc LongHelpCommentNoHTMLTag Description Comments on the use of the field. Examples of values that may be assigned to the field. Important information for the field. Description of the field. Remarks about the utility of the field (HTML tags excluded).
CreationHistorized Write
Read
Update
Description Examples of values that the field can accept (HTML tags excluded). Important information about the field (HTML tags excluded). Description of the field (HTML tags excluded). The AQL condition of the filter (link type feature). Indicates whether the feature is inherited: 0: no n 1: yes n History line created when the main record is created. This property can take the values: 0: The login has write rights for the fean ture. 1: The login does not have write rights. n This property can take the values: 0: The login has read rights for the feature. n 1: The login does not have read rights. n This property can take the values: 0: The login has update rights for the fean ture. 1: The login does not have update rights. n
Objects
Table 5.19. Objects of the FeatParamDesc instance Object name DefaultScript as Script MandatoryScript as Script AvailableScript as Script HistoryScript as Script ForceDisplayScript as Script Table as Table Feature as FeatDesc ValueField as Field Description Default value script for the feature. Mandatory entry script for the feature. Availability script for the feature. History script for the feature. Default display script for the feature. Table concerned by the feature parameter. Feature associated with the parameter configuration of the feature. The field in which the feature's value is stored (fVal, ValString or dtVal).
Instance FeatClassDesc
Note: You need to connect to the database in order to use this instance. Properties
Table 5.20. Properties of the FeatClassDesc instance Property name FullName Name HasParent Description Full name of the feature class. Name of the features class. Indicates whether the feature class has a parent class: 0: no n 1: yes n
Objects
Table 5.21. Objects of the FeatParamDesc instance Object name ParentClass as FeatClassDesc Description Parent feature class.
Instance CalcFieldDesc
Note: You need to connect to the database in order to use this instance. Properties
Table 5.22. Properties of the CalcFieldDesc instance Property name Label Desc SQLName Description Label of the calculated field. Description SQL name Formula of the calculated field.
Description Result type returned by the calculated field. Type of calculated field. Indicates whether the calculated field is visible by default: 0: no n 1: yes n
Objects
Table 5.23. Objects of the CalcFieldDesc instance Object name Table as Table Script as Script Description Table with which the calculated field is associated. Calculation script of the calculated field.
Instance View
Properties
Table 5.24. Properties of the View instance Property name InternalName System Description Internal name This information has no particular use. Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n Label of the screen. Description SQL name Functional domain associated with the screen. Indicates whether this screen has information displayed constantly (a banner above tabs): 0: no n 1: yes n Indicates whether the screen has tabs: 0: no n 1: yes n
HasNotebook
Description System filter of the screen. The caption of the screen's list. Title of the screen.
Objects
Table 5.25. Objects of the View instance Object name Table as Table SysPage as Page Description The table containing the screen. The banner above the screen's tabs.
Instance Page
Properties
Table 5.26. Properties of the Page instance Property name InternalName System Description Internal name This information has no particular use. Indicates whether this object is a system object (cannot be modified): 0: no n 1: yes n The label of the page. Description SQL name
Label SQLName
Instance PageItem
Properties
Table 5.27. Properties of the PageItem instance Property name IsVerticalSplit Description Indicates whether this object is a vertical separator for the page: 0: no n 1: yes n Indicates whether this object is a horizontal separator for the page: 0: no n 1: yes n The label of the frame. SQL name. Indicates whether this object is a field on the page: 0: no n 1: yes n Indicates whether this object is a link: 0: no n 1: yes n Indicates whether this object is a feature: 0: no n 1: yes n Indicates whether this object is a calculated field: 0: no n 1: yes n If the object is a field, this relates to the type of field.
IsHorizontalSplit
IsLink
IsFeature
IsCalcField
BaseType
Objects
Table 5.28. Objects of the PageItem instance Object name Field As Field Link as Link FeatParam as FeatParamDesc Description The field contained in the page. The link contained in the page. The features in the page.
Instance SysEnumValue
Properties
Table 5.29. Properties of the SysEnumValue instance Property name StringValue NumValue Description The text value of the system itemized-list. The numeric value of the system itemized-list.
Instance String
Properties
Table 5.30. Properties of the String instance Property name Value Description The value of the character string.
Instance ScriptField
Properties
Table 5.31. Properties of the ScriptField instance Property name Name Description Name of the field referenced by the script.
Global variables
Table 5.32. Global variables Variable name Userlogin Time Date Dbb.Fullname Dbb.Shortname Dbb.Path Dbb.Name Dbb.Ext Template.Fullname Template.Shortname Template.Path Template.Name Template.Ext Description Login you used when you connected to the database. Time at which Asset Manager Application Designer was executed. Date on which Asset Manager Application Designer was executed. Full pathname of the database description file used. Name (without extension) of the database description file used. Pathname for the database description file used. Name (with extension) of the database description file used. Extension of the database description file used. Full pathname of the database description template used. Pathname of the database description template used (without the extension). Path of the database description template used. Name of the database description template used (with the extension). Extension of the database description template used.
The Action/ Diagnostics/ Repair database menu enables you to test the integrity of an existing Asset Manager database. In order to do this (and for the menu to even be available), you have to already be connected to the database in question. Table to analyze field: Select (All tables) to analyze or repair the entire database. Log file field: This field enables you to save a log file containing the diagnostics of your database. You have two options for this: n Analyze only: Asset Manager Application Designer performs a basic diagnostic test on the database, but does not perform any repairs if any problems are encountered. n Repair: Asset Manager Application Designer performs a diagnostic of the database and makes any necessary repairs. When you click Run, Asset Manager Application Designer asks you to choose a log file to which will be written the operations and/or repairs performed during the diagnostic. During this diagnostic, the result of each test is indicated with an icon. indicates that the test has been successfully completed. n indicates that the test has failed but the database is useable. n indicates that the test has failed. The database may not be useable. n
Warning: The Check validity of records option may take a lot of time (more than 1 day) for tables that have a Validity script and contain many records. For such tables, the validity script will be executed for each record in the table. Asset Manager provides a non-GUI approach for you to check the tables selectively; thereby, skip such kind of tables that you might don't need to diagnose. You can see the Non-GUI diagnostics approach section for the usage details. In some instances, the check may never get through.
For example,
amdbal -dbcheck:AMDemo93en;;ValidityScript;Table="amComputer"
This chapter explains how to use external tools to access the Asset Manager database (read-only) via the ODBC driver developed for Asset Manager. Note: The Asset Manager ODBC driver only supports read-only access to the database.
User profiles associated with the login are respected. DBMS connection paramet- You don't need to know the ers connection parameters required by the DBMS in order to access the database. Selecting the connection The user of the report selects used to access the Asthe appropriate connection. set Manager database. Link between the DBMS The report is independent of engine and the report the database engine used.
When you change DBMS, you When you change DBMS, you don't have to modify your re- have to modify your reports. ports.
Note: Links are not visible. You must reconstitute them by making the joins yourself.
Example: Creating a report in SAP Crystal Reports with the ODBC driver
n n n n n n
Launch SAP Crystal Reports (Designer). Open a new report. Indicate that the report concerns "SQL/ODBC" data. Select the Asset Manager Databases ODBC connection. The standard Asset Manager connection dialog box is displayed. Select the appropriate Asset Manager connection. Enter the login to be used to create the report and the appropriate password. Create the report in the usual fashion.
This chapter outlines the use of Citrix XenApp as a means to provide access to Asset Manager as a hosted application.
Overview
Citrix XenApp is an application virtualization / application delivery product that allows users to connect to corporate applications hosted on a remote server. XenApp can either host applications on central servers and allow users to interact with them remotely, or stream and deliver them to user devices for local execution. Citrix XenApp can be used in either of the following configurations: Remote Desktop mode: n Asset Manager is installed on a Citrix XenApp server. n An administrator grants users the right to access the Citrix XenApp n server. Users access Asset Manager Windows client via a Citrix XenApp remote n desktop session using Remote Desktop Protocol (RDP).
n
Shared application mode: Asset Manager is installed on a Citrix XenApp server. n An administrator grants users the right to access Asset Manager on the n Citrix XenApp server.
Users access the Asset Manager Windows client via a Citrix XenApp client or via a URL.
Known Limitations
n n
Asset Manager modal windows cannot be moved or resized. When a user creates an Asset Manager connection to the database (via a remote desktop session or a Citrix XenApp client), the connection information is stored in a virtualisation folder on the Citrix XenApp server, rather than in the correct amdb.ini file. Workaround: administrators should create Asset Manager connections directly on the Citrix XenApp server using the Asset Manager Windows client. Users cannot create ODBC connections to the Asset Manager database using the Asset Manager Windows client. Workaround: administrators should create ODBC connections to the Asset Manager database directly on the Citrix XenApp server.
9 Archival
Archival, as its name suggests, allows you to archive data that you feel is no longer necessary to be kept in the database in full but for which you would like to maintain a trace and keep the associated records in the current database. For example, you might want to archive a record associated with a retired computer that is however still referenced at the accounting level.
Enabling archival
Warning: For DB2, 8K tablespaces must be used. DB2 UDB [page 54] Archival can be enabled both before and after creating the database. In both cases, the procedure is the same. However, when archival is enabled prior to the creating the database, you can specify a particular tablespace (logical data storage space) for the archived data in the Archive field of the database creation screen. This option is not available for existing databases. Archival is activated in Asset Manager Application Designer using the Database/ Enable archival menu. Upon activation, the following operations are carried out on the database:
An archival table is created for each table of the database. This table duplicates the structure of the standard table and bears the following SQL name:
ar<name of the standard table>
Warning: No archival tables are created for the tables listed below. Therefore, no archives can be created for the records of these tables:
SysBlob, amAccessRestr, amAction, amCFAql, amCFScript, amCalcField, amF eatMemo, amFeatParam, amFeatScript, amFeature, amFeatureClass, amFuncRi ght, amHelp, amHelpMemo, amImage, amLoginSlot, amOption, amProfile, amS ysConfig, amUserRight, amViewDef, amFuncDomain
In Asset Manager Application Designer, archival tables (i.e. duplicated and prefixed tables) are not accessible. Their structure being identical to the one of the standard table, they should not be edited or modified. Any modification to a table automatically triggers a symmetrical modification at the level of the associated archival table. Note: If archival was enabled prior to the creation of the database, the archival tables are stored in the tablespace specified in the Archive field of the database creation screen.
n
For each foreign key of the archived tables, the following fields are created in the standard table (and in the corresponding archival table):
n
This field stores the description string of the archived record. Note: Depending on the fields, the type identifier can be one of the following: l: Integer (32 bit) type field i: Integer type field n d: Double-precision number type field n str: Text type field n dt: Date and time type field n b: Boolean (Yes/No) type field n
n
An additional connection (<Name of the original connection> - With archival) is created for the database.
Archival principles
Four primary archival operations can be performed on records: Archival: Moving multiple records to the corresponding archival tables. n Archived records are deleted from the standard table. The data to be archived overwrites the last backup. Backup: copying multiple records to the corresponding archival tables. The n records are not deleted from the standard table. Purge: destruction of multiple records from archival or standard tables. n Restore: restoring of multiple records from the archival tables to the standard n tables. Warning: The records deleted from the archival tables during a purge cannot be restored. The operations previously described are implemented using extensions of the Asset Manager query language (AQL). The following table details the syntax of the operations and the tables on which they are available.
Operations Archival Backup Purge Restore AQL syntax
ARCHIVE FROM <Clause FROM> WHERE <Clause WH ERE>) BACKUP FROM <Clause FROM> WHERE <Clause WHE RE>) PURGE FROM <Clause FROM> WHERE <Clause WHER E>) RESTORE FROM <Clause FROM> WHERE <Clause WH ERE>)
Available for Standard tables. Standard tables. Standard and archival tables. Archival tables.
Note: For more information on AQL and on the syntax of the FROM and WHERE clauses, refer to the Advanced use guide, chapter AQL queries.
Examples
Example of data archival The following example presents the archival of closed purchase requests that have not been modified in the last 90 days. In this case, the solution is to archive those records from the amRequest table for which: n the date referenced in the dtLastModif field is more than 90 days old,
n
the value of the seStatus field is 41. Note: Values in itemized lists are associated with an integer. The value that interests us is the one corresponding to the value Closed, which is 41. To access the values in a system itemized list, place the focus on the field populated by the list and simultaneously press Shift and F1. The context-sensitive help for the field is displayed and contains the list of values for the system itemized list and their associated integers.
To solve the issue raised by this example, we will therefore create an action for the amRequest table. This action will execute an AQL archival query on the records matching the previously defined criteria (specified in the WHERE clause of the query). 1 Select Tools/ Actions/ Edit and click New to create a new action. 2 Choose a Name for the action and select the Requests (amRequest) table as the Context. The action type is Script. Note: The definition of a Context is not mandatory. It is even forbidden if you choose to use a workflow to execute this action periodically. 3 Enter the following script in the Script tab of the action:
RetVal = amDbExecAql("ARCHIVE FROM amRequest WHERE dtLastModif < AddDay s(getdate(), -90) AND seStatus = 41")
Note: The amDbExecAql function queries the database. For more information on this function, refere to the Programmer's Reference. 4 Validate the creation of the action. 5 You can call this action from a workflow or execute it directly from the purchase requests screen. To control the archival: 1 Open the purchase requests screen using the Asset lifecycle/Procurement lifecycle/ Requests/ Purchase requests menu. 2 Right-click the list of purchase requests and select the previously created action from the shortcut menu. Records corresponding to a closed purchase request and that have not modified for more than 90 days are archived and disappear from the list. However, if they are referenced by other records, they will appear grayed-out in the detail of those records. If you have administrative rights, you can then display the archived record by clicking . Example of data restoration If you want to restore a purchase request archived by mistake: 1 Connect to the database using the archival connection. 2 Select Tools/ Actions/ Edit and click New to create a new action. 3 Choose a Name for the action and select the arRequest table (archival table of the amRequest table) as the Context of the action. The type of the action is Script. Note: The definition of a Context is not mandatory. It is even forbidden if you choose to use a workflow to execute this action periodically. 4 Enter the following script in the Script tab of the action:
RetVal = amDbExecAql("RESTORE FROM arRequest WHERE lReqId="&[lReqId])
Note: The amDbExecAql function queries the database. For more information on this function, refer to the Programmer's Reference. 5 Validate the creation of the action.
6 Open the archived purchase requests (arRequest) screen using the Administration/ List of screens menu, and then select the archived request. 7 Right-click and select the previously created action from the shortcut menu. The record is retrieved and deleted from the archive and is transferred back to the production database.
DEFINE or NORMAL
Behavior of the archival function when features are involved If we consider a record A and its associated feature C (with a Type other than Link): If A is archived, C is also archived. n If C is archived, the link between the record A and its feature C is broken n and the record no longer appears in the detail of the record. This link is restored in the two following cases: 1 A is subsequently archived. In this case, the link between A and C is re-established in the archived data. 2 C is restored. In this case, the link between A and C is re-established in the database. If we consider a record A and its Link Type associated feature C, and D, another record to which the feature C points: If A is archived, C is archived. D is not automatically archived. n If C is archived, the link between A and C, as well as the link between C n and D are broken. The feature not longer appears in the detail of the record
A. The integrity of the link between A, C and D is restored in the following two cases: 1 A and D are subsequently archived. In this case, the relationship between A, C and D is re-established in the archived data. 2 C is restored. In this case, the relationship between A, C and D is re-established in the database.
n
If D is archived, the link between C and D is broken. The integrity of the links between A, C and D is restored in the two following cases: 1 A is subsequently archived. In this case, the relation between A, C and D is re-established in the archived data. 2 D is restored. In this case, the link between, A, C and D is re-established in the database.
Disabling archival
Archival can be disabled at any given time. Disabling archival implies that it has been previously enabled and that the database has been modified to contain the additional tables dedicated to archival. To disable archival, clear the Database/ Enable archival option. Warning: Disabling archival destroys the archival tables and erases all archived data.
10 Denormalization
The Asset Manager database is highly normalized. This database property consists of eliminating unnecessary redundancies and dependencies between tables in order to obtain a usable and rational relational database. Denormalization can be considered the opposite process. A value is stored in several places, thus creating voluntary redundancies in order to accelerate data processing and retrieval, and to improve performance in general.
Performance. If you consider that performance of the application is sufficient, it is not necessary to apply denormalization.
Denormalizing a value
Once the appropriateness of denormalization has been validated, you may use Asset Manager Application Designer to carry out the operation for real. 1 In Asset Manager Application Designer, connect to your database 2 Select the denormalized field's or link's target table and the select the Database/ Add a denormalization menu. The following screen prompts you to select the field to denormalize:
Note: If you check the Create an index on the denormalization field box, the sort operations on this value will be accelerated. Click Create. 3 Save your changes and follow the steps in the database update wizard (select a log file, select an optional configuration file, etc.) and then click Finish. 4 The denormalized field or link is now active. It will be automatically used by queries when the context allows.
Example
Let's consider the previous example in which a report on employee absences is created. Because this report and the data it contains are retrieved frequently, it is appropriate to denormalize the field that stores the email address of the department supervisor. The Manager.Email remote field needs to be denormalized. To do so: 1 In Asset Manager Application Designer, select the Absences table (amAbsence) and the select the Database/ Add a denormalization menu. 2 In the screen that appears, select the Manager.Email remote field from the drop-down list. This list displays the fields and links of the Absences table and enables you to select remote fields that are part of a link. In our example, you should unfold the Supervisor link, and then choose the associated Email field. 3 Click Create. You should see a new field appear in the Absences table with the df prefix. Select the File/ Update database structure menu to validate your changes. Asset Manager Application Designer displays a wizard to save the database structure. 4 Click Next and then select a folder for the log file. 5 Click Next. The following page of the wizard prompts you for an optional conversion file. This page is not used for denormalization. 6 Click Finish. The wizard displays the operations being processed and informs you when the database has been successfully updated. The queries used in the report will use the denormalized field, thus avoiding the usage of a join between the Absences and the Employees and departments tables.
11 Import
This chapter explains how to import data with Asset Manager. To import a single text file use the File/ Import menu, then the Import text file option. To import multiple text files or a database use the File/ Import menu, Import database option.
Note: Protection of databases: Only an Asset Manager administrator can use the File/ Import menu ("Admin" login or user with administration rights). This menu is disabled for other users, which protects access to the database. Importing numeric data Numeric fields must be formatted appropriately, regardless of the options defined in the Windows Control Panel: Only numeric characters without spaces are allowed, and the period "." is used as decimal separator. Numeric fields must be imported into numeric fields. This way, numeric data can be imported independently of the settings of the computer or computers used to perform the import.
Recommendations
Here are some recommendations before importing data into the Asset Manager database:
You are importing data from a text file: You must respect the constraints of the target field. u
Boolean (Yes/No)
Then: If the source field originates from a structured database and the field type is Date or Date and time, then there is no constraint. If the source field is a Text type field, you must respect the following constraints: The date format (order of year, month and day) must be the same n for all records. Specify this format when importing. You must systematically enter a day, month and year. n Use the same separator (of your choice) to separate days, months n and years for all records. Specify this separator when importing. You must present one of the values of the itemized list only. Otherwise, the line will not be imported. You can identify the item from the itemized list by its clear value or as its number as stored in the database. Example If the itemized list is "Yes|1|No|0", importing "Yes" or "1" will give the same results. If you present an empty value, the import module attributes the value "0" to the field. We recommend presenting the stored numeric values, since these are more stable than their text equivalents from one version of Asset Manager to another and independent of the language version used. The value of the field is selected via a "drop-down" itemized list, which can be modified by the user. Users can select one of the existing values of the itemized list. If, in addition, the itemized list is "open", users with adequate rights can enter a new value. This value will be added to the itemized list. Imported values must be the percentage value with or without the percentage sign "%" (for example: "10" or "10%"). You must respect the constraints defined by the UserType and UserTypeFormat properties when the UserType is Duration. You can import any alphanumeric value. But if this value does not correspond to a valid SQL name of a field or table, you run the risk of corrupting the database.
Then: If the source field originates from a structured database and the field type is Date and time or Date, then there is no constraint. If the source field is a Text type field, you must respect the constraints defined by the UserType property when the UserType property is Date or Date and time.
Size ReadOnly
Is populated Yes
"dtLastModif" field (SQL name) This field is updated when you modify or create records in the Asset Manager database via the user interface or via an import. It indicates the date of modification or creation of the record. If you import a value to this field, this will overwrite the real import date.
n n n
n n
Each column represents a field. Each line represents a record. You may optionally include the field names at the start of the file. If you do not include them in the file, you may define them when you import the data. At the start of the file, before the optional line containing the field names, you can include up to 99 lines of comments that will not be imported. This can be done by populating the First import line field. These comment lines do not have to start with a special character. You may create the file using the OEM (DOS), UTF-8, UNICODE or Latin 1 character set. Columns can have either a fixed width or a variable width. In this case you select a character to act as a separator. Field contents may be delimited by any characters you choose. The fields can have the following types: Numeric n Character string n Date n Date and Time n
Imported values must follow the constraints related to the Asset Manager database structure (data-entry format, field type, link type, index type.) All characters are allowed except for those you use to delimit the text. There n is no way to include the delimiter character in a text string. "Date", "Date and time" and "Duration" data are subject to the same n constraints as if they were directly entered into the program. We recommend that you build one text file for each main target table. n If your source data resides in a database whose engine is not supported by the import module, you must extract the data to text files and import them afterwards. If the database is recognized by Asset Manager you can import the information directly from the database using the File/ Import menu, then the Import database option.
n
Importing a set of text files To select the text files you have prepared: 1 Select the File/ Import menu, Import database option, Text tab. 2 Click Open. 3 Once in the import module, select the File/ Add file menu. Indicate the names of the text files to be added. Importing an ODBC database Use the File/ Import menu and choose the option marked Import database to select the source database. Using the ODBC tab you can import an ODBC database. 1 Identify the data source, the user and the password. The icon lets you directly create an ODBC data source, without having to go through the Windows Control Panel then the ODBC Data Source Administrator. 2 Click Open.
When importing an ODBC database Once you have opened the database in step 1, you can display the description of each table from the import module's main screen: Double-click the source table. n n Or use the Edit/ Properties menu after having selected the source table. The list of source tables can be found in the "Source tables" column in the main screen of the import module. First screen Character coding Indicate if the text uses the ANSI, OEM(DOS), UTF-8, UNICODE or Latin 1 character set. First import line Enter the line number containing the first line of data to be imported. Lines before this number are skipped by the import module. If your document contains a line with field names and if this line is located just before the first data line, enter the number of the line with field names. Asset Manager can skip up to 99 lines at the start of the file. First imported line contains column names Select this check box if the first line to be imported contains the field names (the column names). This way you do not have to enter the column names yourself. If your file does not contain column names, you can define them in the following steps. By separators Check this check box if the field values are separated by a particular character. Specify this character in the following screen. Fixed width Check this check box if all the values of each field are the same length. Asset Manager automatically displays column boundaries. To move a column boundary, use the mouse to select the boundary in the n data area and drag it to the desired position. You cannot select the boundary in the title area. To remove a column boundary, use the mouse to select the boundary and n drag it outside the table.
To add a new column boundary, click with the mouse in the data area at the position where the separator should be inserted.
Note: The frame containing the records displays a partial preview of the file to be imported. A maximum of 25 lines are shown. Possible second screen This second screen is shown if in the first screen: 1 You specify that the field values are separated by a separator characters. 2 You click Next. Column separators Indicate the character used to separate two successive field values. We recommend using the semi-colon character " ;" as separator. If you check the Treat consecutive delimiters as one option, Asset Manager will treat identical consecutive delimiters as one and will not create empty columns. If you want to created an empty column, uncheck this box use two consecutive delimiters in your text file.
String delimiters If you use character to delimit text, indicate the character that you use. Asset Manager will remove these extra characters if they are present, before transferring the field to the database. If, between two delimiters, Asset Manager encounters a column separator, it is considered as text. Specifying a string delimiter does not oblige to you use it systematically around all values. On the other hand, if you place a string delimiter before the start of a string this must be balanced by a delimiter at the end of the string. You cannot import a string delimiter as a value.
When importing an ODBC database After selecting the database in step 1, you can display the tables' description from the import module's main screen: Either double-click the source table or use the Edit/ Properties menu after having selected the source table. (The "Source tables" column in the main screen of the import module displays the list of source tables.) Select the column to be configured by clicking anywhere in the column. Number The number of the selected column is displayed here. If you did not select the First imported line contains column names option in step 2, you can select the column number directly, instead of clicking the table. Name The column name (or field name) appears here. 1 If you selected the First imported line contains column names option in step 2, you cannot modify the column name. 2 If you did not select that option, either leave the default name or modify it. This name makes it easy to identify columns during later steps. Type Enter the field type to be imported. Asset Manager lets you choose from the following possibilities: Number: All characters must be numbers. If Asset Manager finds other n types of characters, this field 's value is set to "0". Character string: All characters are allowed except those you used as text n delimiters. Date: Only the date formats defined in the "Date format" frame are accepted. n If Asset Manager finds other formats when importing, the field's value is set to null. Date format If you indicate that the field contains a "Date", Asset Manager asks you for the separator character between the day, month and year, as well as the order in which they appear.
Besides these two parameters, your dates may use all the possibilities available for entering dates in Asset Manager.
Step 4: Map source fields to target fields in the Asset Manager database
Importing a single text file Once you have selected the source fields as described in step 3, click the Next button to display the screen for mapping fields in the text file to Asset Manager database fields. 1 Start by mapping the text file to a table in the Asset Manager database using the "Target table" field. 2 Then map the fields in the text file to be imported (displayed in the "Source fields" table) to a field in the Asset Manager database. (The fields in the target table and its linked tables are displayed in the list on the right under the "Target table" field.) Importing a set of text files 1 Once you have selected the source fields as described in step 3, click the OK button to return to the import module's main window.
2 Map each text file to a target table. 3 Next, for each text file/target table pair in the table on the right, map each text field to a field in the Asset Manager table: Either double-click the pair, or select it and use the Edit/ Properties menu. Importing an ODBC database 1 Once you have selected the source fields as described in step 3, click the OK button to return to the import module's main window. 2 Map each source table to a target table. 3 Next, for each source table/target table pair in the table on the right, map the fields from the source table to a field in the Asset Manager database: Either double-click the pair, or select it and use the Edit/ Properties menu.
Or, click the icon. Or, use the Edit/ Map menu: Asset Manager automatically maps the files or tables that have exactly the same name. This is achieved using the technical name of the field. icon to unmap a file or a source table
Display the Asset Manager database structure Double-click the target table in the "Target tables" column, or select it with the mouse and use the Edit/ Properties menu. Asset Manager displays the list of fields, their type and length.
Step 6: Map the fields to be imported to fields in the Asset Manager database
Source fields This part of the screen displays the names you assigned to columns in step 3 (for text files) or the short-field description (for Asset Manager database). Target table When importing a single text file Select the target table that will receive the data. Asset Manager displays the table's structure (fields in the table or in linked tables). When importing a set of text files or an ODBC database Asset Manager displays the structure of the target table mapped to the file or the source table (fields in the table or in linked tables). Map source fields to target fields There are several possibilities available to you: You can use the mouse to drag a "source field" to a "target field" to map n them.
n
You can select a "source field", select a "target field", then click the icon to map them. The icon lets you unmap a source field from a target field after having clicked the (source field, target field) pair. The icon lets you to automatically map the source fields and target fields that share the exact same name. This is achieved using the technical name of the field.
Add additional calculated fields in the source file Asset Manager allows you to add additional fields to your source file. These fields are not saved; just placed in memory. Use the , and icons to add, delete or display these additional fields.
Selecting keys You may select one or more target fields to create record identification keys. An identifier key lets you identify a record in a table. If you select several keys, all these keys will let you identify the records. Select the (source field, target field) pairs to qualify and click the button to declare them as "keys". If this button is active, it appears as if it were pressed in and is lighter; the small icon to the left of the target field or link also looks like .
Asset Manager imports lines from the source file one by one, proceeding as follows: If there is a record in the database whose keys have exactly the same values, n Asset Manager modifies the record according to the information contained in the text file. If several records exist with the same set of keys, the program stops at the n first record it finds and ignores the others. It is therefore up to you to select the appropriate keys. If no records exist that match the keys, Asset Manager creates a new record n in the database. Note: We advise against using the "ID" fields of tables as reconciliation keys if you want to re-import data you have exported. In effect, the corresponding identification numbers are not fixed and can be subject to modification. Use keys whose values are "changeless" such as the AssetTag of assets. Configuring the creation of linked records Let's say you want to import a file containing data that will be distributed to several different tables. This might be a file containing employee records and their corresponding portfolio-item records, for example. You would first select a main target table: the Employees and departments (amEmplDept) table in our case. Then you would use links to indicate where the data should be distributed to other tables: the Portfolio items (amPortfolio) table in our case. Asset Manager lets you configure how records will be created in the linked table if the record does not exist before the import process. Use the icon to perform this configuration. This icon can only be used on links (not on the fields of linked tables). Links are represented by the and icons. To display the configuration screen: 1 Map the field to be imported to the field in the linked table. 2 Click the corresponding link.
3 Click the
icon.
If the record is found using the specified identification keys, the program modifies the information in the record, if appropriate. Create the record The record is created if it was not found in the database using the specified identification keys. Do not create the record Records are not created, even if they are not found in the database using the specified identification keys. Signal error - abnormal situation Asset Manager generates an error message if the record is not found in the database using the specified identification keys. Take into account only records that are already linked ( ) The import module only considers records that are already linked to the main record if you attach the icon (pushpin) to the link. Example You are importing a list of employees and the portfolio items they use. The Employees and Departments table is the target table. You attach a pushpin to the link with Portfolio items table. For each portfolio item associated with an employee in the source file, the import module only takes into account the portfolio items that they are already using (Portfolio tab in employee detail). In the case of "Own" type links, the pushpin is automatically placed and cannot be removed. "Own" type links are links for which the linked records are automatically deleted if the main record is deleted. The employees-training link is an example of this type of link: If you delete an employee, you will also delete all the training items linked to them.
The effect of the pushpin depends on the types of links: If the target table is the Portfolio items table, and you attach a pushpin to n the "user" link, the import module only looks for users linked to the portfolio items. Since there is only one user for a given portfolio item, it is thus possible to modify or create the user of a portfolio item without having to identify this user by a key. This is also very useful for modifying the value of a feature of a given portfolio item. If the target table is the Employees and departments table, and you attach n a pushpin to the "portfolio items" link, the import module only looks for the portfolio items linked to the employee. In this case, to modify or create the portfolio items of a user, you do have to have the appropriate identification keys, but they do not have to be as specific as they would be when not using the pushpin. Note: Asset Manager uses three kinds of links between records: n links: For example, a portfolio item can only be linked to one location, but a location can be linked to several portfolio items. 1 links: For example, a portfolio item can only be linked to one comment and a comment can only be linked to one portfolio item. n-n links: For example, a catalog can be linked to several distributor companies; a company can be linked to several suppliers.
Symbols used in the tree structure of target tables Indicates that the name following the symbol is a table (large symbol) or a field (small symbol).
Indicates that the name following the symbol is a table linked to its parent table. You can only choose one record in the linked table from a record detail in the parent table. This type of link represents a field whose value can be entered using a "selection window" or a "drop down list". The name following the symbol is a table linked to its parent. You can choose several records in the linked table from a record detail in the parent table. This type of link represents a list of records located in a tab of the detail window of the parent table. This symbol is called the "pushpin". It can only be attached to a link to a table containing a field to which the imported field will be mapped. When a pushpin is set, the import module only looks among records linked to the record to which it is "pinned". The presence of the pushpin is determined by the options icon. displayed using the
Formula field type Enter the way the new field is to be calculated. The aspect of the screen changes according to the type you choose. Concatenate This mode lets you combine several fields in the source file. Select these fields one by one. You can separate these fields with the characters of your choice. Simply surround the characters with double quotes ". Example: Field1" and "Field2. Fixed extraction This mode lets you extract part of a text field: 1 Select the source field (called "Main field"). 2 Enter the Number of characters to ignore. Asset Manager will skip these characters. 3 Enter the Number of characters to use: Asset Manager will keep this number of characters after having skipped the "Characters to ignore". 4 The Start extraction from end of field check box tells Asset Manager to skip the Number of characters to ignore starting from the end of the field and keeps the Number of characters to use starting after the skipped characters and working backwards. Example: 1 Number of characters to ignore: 3 2 Number of characters to use: 5 3 Value of field in source file: "REFIMP05A18500" 4 Value imported into the database: "IMP05" if the Start extraction from end of field check box was not checked, or "05A18" if it was checked. Delimited extraction This mode lets you extract part of a field in the source file: 1 Select the source field (called "Main field"). 2 Indicate the Separators used within the values in the main field. 3 Enter the Number of separators to ignore. Asset Manager keeps all the data that follows these separators. 4 Enter the Number of separators to include. Asset Manager keeps all the information between the start of the text to retain and the separator that follows the last separator to include. 5 Check the Start extraction from end of field check box if you want Asset Manager to include the "Number of separators to ignore" and the "Number of separators to include" from the end of the field.
Example: 1 Separator: / 2 Number of separators to ignore: 2 3 Number of separators to include: 3 4 Value of field in source file: "1/2/3/4/5/6/7/8/9" 5 Value imported into the database: "3/4/5/6" if the Start extraction from end of field check box was not checked and "4/5/6/7" if it was checked. Fixed value This mode lets you include a combination of: Character strings enclosed with ". n Variables. These are certain variables that result from functions used in n default field values such as AmLoginName(), AmDate(), AmCounter(). Tree mode This mode lets you build a tree structure from a single field in the source file. 1 Select the source field (called "Main field"). 2 Indicate the "Separators" used between the sub-values in the field. Asset Manager divides the source field into sub-values. The number of sub-values equals the number of character strings separated by separation characters. Asset Manager then creates a record for each sub-value and organizes them into a hierarchy. Example: 1 Create a text file containing a column entitled "Name". The value of the one of the lines in the file is "/France subsidiary/Sales head office/Marketing department". 2 Configure the import module by creating a "Tree mode" type formula field (the separator is "/"). Its name is "FormulaField". Create a "Fixed value" type formula field (value = "1") and map it to the Department field (bDepartment) field (in order to create departments but not employees). 3 Map "FormulaField" to the Name field (SQL name: Name) in the table of employees. 4 Launch the import of the file 5 Result: 3 departments linked hierarchically are created: "France subsidiary", "Sales head office" and "Marketing department". File This mode allows you import a file into the database. This useful when importing images or long blocks of text. Files can only be imported into the following types of field:
Long text field Binary field n The following files formats are supported: ANSI text n Images (all the image formats supported by Asset Manager can be imported). n In the field calculation formula, indicate the source field giving the full pathname of the file to be imported (path, name and extension). By default, the current folder is used as the path.
n
Script This mode allows you calculate a value using a Basic script. This script can make reference to imported source fields. To build the calculation script, either enter the code directly or use click the button to use the expression builder. The script cannot reference fields in the database. Test Note: This field is only shown when the formula type of the field is set to "Fixed extraction" or "Delimited extraction". Enter the field value of your choice. Result Note: This field is only shown when the formula type of the field is set to "Fixed extraction" or "Delimited extraction". The simulated import value from the test data appears in this field.
There is a field that allows you to do this: the Department field (SQL name: bDepartment). It is set to "1" for departments and to "0" for employees. By default, the import module considers its value to be "0". We recommend creating a "Fixed value" type formula field taking the value "1", and attaching this formula to the Department field when the imported item is a department. Note: The import module deduces that a record is a department when this record in turn has a child record in the table of departments and employees; employees cannot have child records. Importing documents When importing documents you must specify a field to be imported in the Table field (SQL name: DocObjTable) in the table of documents. The Table field indicates the SQL name of the table to which the document is linked.
Stock.Name: Because the field is declared as the reconciliation key and it is part of the main table. Location.Name: Because the linked field is declared as n link the reconciliation key in the table of locations and the is declared as an reconciliation key. In this same example, a location is identified by a main key: Location.Name: Because the field is declared as the u reconciliation key in the Locations table.
n
Example 2: Defining a field as a key in a linked table, even though it is not a key in the main table
In this example, a stock is identified by a single key: Stock.Name: Because the field is declared as a key and n it is part of the main table. And the link is not a reconciliation key. n In this same example, a location is identified by a key: Location.Name: Because the key is declared as main u key. Conclusion
n
You can define keys for the main table and other independent keys for tables linked to the main table. You can thereby import data in several tables from a single text file.
To declare a field in a linked table as one of the keys in the main table, you must declare the field in the linked table AND the link as identification keys. If you only check the link, the key will only be used as key for the linked table itself.
Example 3: Keys that update feature values in database records To update a record's feature value with a certain value, you must find the (record, feature) pair in the database and assign it the new value. If this pair icon does not exist, Asset Manager refers to the options defined using the for the link, to determine whether or not it should create a linked record. You can use either of these two methods: First method (example from the assets table):
1 The key on identifies the asset to be modified. 2 The icon on the link specifies that you only want to find the features of this asset. 3 The key on indicates that the (feature, value) pair is identified by the feature. 4 The key on indicates that the feature is identified by its name. 5 The new value appears in the field.
1 The ( , ) pair identifies the feature associated with the asset. 2 The key on indicates which is the key field of the link. 3 The key on indicates which is the key field of the link. 4 The new value appears in the field. Example 4: Modifying the contents of a linked record for which you have no reconciliation key Example You want to modify the prefix of the model that is linked to a given asset. In your import file, you have no key that lets you identify the model. You only know that the model is linked to a given asset.
1 The key on identifies the asset. 2 The symbol on specifies that you only want to find models already linked to this asset. 3 The assigns a new value to the Prefix field (SQL name: Prefix) of the model. Note: To optimize performance, we recommend selecting the keys from among the keys that constitute indexes in the table. (Warning: Certain indexes are made up of several fields.)
"Log file" frame Select the operations that should appear in the log file: Errors n Appends and updates n Enter the name of the log file and its path. Asset Manager will create the file if it does not exist. Add the extension of your choice. We recommend you use .log. Warning: The import module cannot create directories. The log file also provides the following information: Time the job was dispatched. n Job description. n Errors encountered. n The log file is overwritten for each new import procedure.
Behavior at the field level The import module does not automatically verify if a field is mandatory. n You must verify yourself that mandatory fields are indeed present in the data to be imported. If the import module finds an unknown value for a field that is in a "System n itemized list", the line to be imported is rejected. If the import module finds a value that is not yet in a standard itemized n list, the line to be imported is accepted and the new value is added to the itemized list if the list is "open". If the itemized list is "closed", the line to be imported is rejected. If a field value exceeds the maximum length, the end of the value is n truncated. Fields with an empty value in the text file erase the existing value in the n corresponding database field. If importing a line of data causes a new record to be created, Asset Manager n inserts the default value in fields that do not appear as a column in the text file or the source table. If the column is present but no value is specified, Asset Manager inserts an empty field instead of the default value.
To save a script
When importing a single text file 1 Use the File/ Import menu to select the text file. 2 Define the import settings (name and location of the data file, its structure, etc.).
3 You can click the Save button at any time to save these conditions as a script. When importing a database or a set of text files 1 Use the File/ Import menu to select the database. 2 Define the import settings (location of the database or text files, mappings between fields, etc.). 3 You can save these settings as a script file at any time using the File/ Save or the File/ Save as menu.
To modify a script
When importing a single text file 1 Use the File/ Import menu. 2 Indicate that you are importing a text file. 3 In the "Open data file" dialog box, select "Import scripts *.scr" files in the "list of file types" field. 4 Open the script. 5 Modify the import settings (name and location of the data file, its structure, etc.). 6 You can click the Save button at any time to save these new settings. When importing a database or a set of text files 1 Use the File/ Import menu to import a database. 2 Populate the ODBC tab or the Text tab. Click Open. 3 Next, open the script using the File/ Open script menu. 4 Modify the import settings (name and location of the database, its structure, etc.). 5 You can save these settings as a script file at any time using the File/ Save or the File/ Save as menu.
Importing a database or a set of text files Use the File/ New script menu. Asset Manager offers to save the current settings as a script before discarding them.
To execute a script
To execute an existing script: 1 Use the File/ Import menu. 2 icon. Click the 3 Enter the full name of the script file. 4 Enter the password associated with the ODBC source. 5 Start the import procedure. You may also proceed as if you were going to modify a script and then execute the import procedure from within the import dialog boxes.
Syntax
amimpl [-verbose] [-?|h|H] -src:<cnx> [-srcpass:<password>] -dst:<cnx> [-dstlogin:<login>] [-dstpass:<password>] [-log:<file>] -verbose: displays messages during import. Enabled by default. -?, -h or -H: displays help messages. -src: according to the case, this parameter shows: The path and name of import script to execute. n Asset Manager database connection name to import completely (as stated n in the File/ Manage connections menu, Name field). The name of an Asset Manager database without connection: n [<EngineName>;<DatabaseLocation>;<User>;<Password>]
In this case, here is how to populate the different fields shown above between <>:
Oracle Oracle Server name Account name Account password MS SQL Server ODBC Data source name MS SQL Server user name MS SQL Server user password
-srcpass: password associated with the source database to be imported. In the case of an Asset Manager database, this is the password of the "Admin" account. -dst: Asset Manager database connection name in which the data is to be imported (as stated in the File/ Manage connections menu, Name field). -dstlogin: login name of Asset Manager account that will receive the imported data ("Admin" account or Asset Manager user with administration rights). -dstpass: password associated with "dstlogin". -log: full pathname of the import log file. Note: If the strings between angle brackets <> contain spaces, you must place them within single quotes ('). Example:
amimpl32 -verbose -src:employee.scr -srcpass:Password -dst:MainDBase -dstl ogin:Gerald -dstpass:Password -log:'My Log File.txt'
This chapter explains how to manage user access to Asset Manager databases. Note: Access rules can only be managed by database administrators.
access the stocks and employee C may need to view work order slips, and so forth. In order to allow an employee to access Asset Manager: The employee must be included in the table of departments and employees. n The employee needs a "login" to connect to Asset Manager. n The administrator must assign "Authorized user roles" and "role used at n connection" to the employee, or give the employee administration rights.
A "Purchasing Manger" role for an employee who needs to manage all asset procurement procedures. A user can have several user roles. The administrator must select a role, among all possible roles associated with a user, to assign to the user when he/she connects to the Asset Manager database. This role is the "role used at connection".
n
Important: Any user that does not have administration rights must have a "role used at connection" in order to connect to the Asset Manager database. Users can change their role if necessary Selecting the user's role used at connection [page 178]
5 Start the database creation wizard (Action/ Create database menu). 6 Populate the pages of the wizard (navigate through the wizard pages using the Next and Previous buttons): Generate SQL script / Create database page:
Fields Database Create Use advanced creation options Value Select the connection to the database into which you wish to import the data. Select the Import line-of-business data option. Do not select this option.
Note:
The Asset Manager database administrator is the record in the Employees and departments (amEmplDept) table for which the Name (Name) field is set to Admin.
Or by clicking (Windows client) or Add (Web client) in the list of user profiles associated with a user role (General tab of the user role detail).
Each user profile brings together: User rights, defining the rights of reading, writing, creating or deleting n information in database tables, fields or links. Access restrictions, defining read and write conditions for records in a n given table. Functional rights, defining access to available screens and wizards related n to the Asset Manager functional domains. A user profile can be considered as concerning a given function in a company and with its own specific prerogatives.
Or by clicking (Windows client) or Add (Web client) to the right of the list of user rights associated with a user profile (Roles, rights and restrictions tab of the user profile detail).
User rights describe how users can access database tables, fields and links. We suggest you create a user right per table that describes the rights concerning the table's direct and linked fields. You can set several access levels for a single database table: For example: Basic accounting n Advanced accounting n Status access for employees n Maintenance n Etc. n You can then combine these user rights to create user profiles: Accountant n Maintenance technician n Intern n Etc. n
Editing user rights Precaution Note: In order for a user to be able to see a "conditional" tab, they must have at least the right to view the fields that determines whether this tab is shown or not. For example, if a user does not have the right to view the Nature of payments field (SQL name: sePayType) in the General tab of a contract detail, they will not be able to see the Rents and Loans tabs in the contract detail, since these tabs are displayed or hidden depending on the value of the Nature of payments field. Windows client A tree structure of the tables is used to present the database structure. For each table, the tree contains a list of fields and features specific to the table, and a list of fields and tables from linked tables. Assign rights specific to tables, rights specific to fields, and rights specific to features. The user rights detail screen is organized as follows: Rights are displayed in a column. n
The Display only tables with rights filter allows you to view only tables for which user rights have been defined. When you select a node (Tables, Fields, Links, Features, etc.), Asset Manager automatically selects all the branches in the tree; this authorizes you to edit user rights for the entire node. For a parent node: A lowercase "r" indicates that certain items in this node have read access n rights. An uppercase "R" indicates that all the items in this node have read n access rights.
A lowercase "i" indicates that certain items in this node have create access rights. An uppercase "I" indicates that all the items in this node have create access rights. A lowercase "u" indicates that certain items in this node have update rights. An uppercase "U" indicates that all the items in this node have update rights.
You can perform multiple selections in this list. Therefore you can edit user rights for several items at once: Use the SHIFT and CTRL keys in to select multiple items in the tree.
Web client The user rights detail screen is organized as follows: A list of tables n Show entries field: select the number of tables per display. n Search field: display the tables whose Table name or SQL Name n contains the string you have entered in this field. Table list: click the Table Name or SQL Name of the table of which you n want to edit the access rights, then the components of this table will display in a category view at the lower part of the screen.
n
A category list of the table components The components of each table are grouped by Fields, Links, Calculated fields and Features (if there is). You can assign rights to the table, or to specific fields, links and features of the table. When you select a parent node (Table, Fields, Links, Features, etc.), n Asset Manager automatically selects all of its child nodes; this authorizes you to edit user rights for the entire node. For a parent node, a lower case "r"/"i"/"u" indicates that partial items under the parent node have read/create/update rights; an upper case "R"/"I"/"U" indicates that all the items in the node have read/create/update rights. n Cache Update button: click Cache Update after you have selected the rights for one table; your selections are stored in the cache and you can continue selecting the rights for other tables.
Or by clicking (Windows client) or Add (Web client) in the list of access restrictions associated with a user profile (Roles, rights and restrictions tab of the user profile detail). An access restriction describes which records the user can see in the different tables of the database. You can limit status access and/or modification rights by using criteria similar to queries. These criteria may be used for example to cover: Models or brands n Departments or locations n Insurance contracts n You can then combine these access restrictions with user rights to create user profiles: Maintenance engineer in St. Louis n Purchasing supervisor n Etc. n
n
Note: Access restrictions can not be defined on the following tables, which are loaded in cache when the client is opened. amAction n amCalcField n amCbkRule n amCurRate n amCurrency n amDateAlarm n amFeatMemo n amFeatParam n amFeature n amFeatureClass n amFieldAdjustTempl n amFuncDomain n amOption n amReconcProposal n amReport n amScriptLibrary n amSysConfig n amTaxFormula n amUnit n amViewDef n
Editing access restrictions Select the table concerned by the access restrictions and then define the access restrictions, for reading or for writing. These conditions are defined using the Asset Manager query editor. Read condition Allows the user to view records that satisfy the criteriadefined in the query editor, excluding all other records. Write condition Allows the user to modify the field in an already existing record. Warning: You must create a corresponding user right. This is not done systematically by Asset Manager. Verifying modification rights This field enables you to define the conditions for the modification rights. The use of this field depends on the AQL script in the Write field. Example of modification rights Populate the Write field (WriteCond) with the following script:
seAssignment=1
If you select Before any modification, you can modify an item in stock or delete it. If you select After any modification, you can insert an item in stock and modify it. If you select Systematically, you can insert or modify an item in stock but not delete it. Be careful when defining default values for fields and links The calculation of default values for fields does not take access restrictions into account. You must therefore only reference those fields and links that may be viewed by all users.
Or by clicking (Windows client) or Add (Web client) in the list of functional rights associated with a user profile (Roles, rights and restrictions tab of the user profile detail).
A functional right defines the functional domain of the application (Item column) in which a user can operate. For example: In the Procurement functional domain, the person in charge of billing has access to the supplier invoices but not to reservations. In the Windows client, the functional-right edition screen proposes a hierarchical list of all of Asset Manager's functional rights, which are defined by the user. In the Web client, the screen is composed of two parts: A list of functional domains n Show entries field: select the number of functional domains per display. n Search field: display the functional domains whose Name or SQL Name n contains the string you have entered in this field. Table list: click the Name or SQL Name of the functional domain of which n you want to edit the functional rights, then the functional right details of this domain will display in a hierachical view at the lower part of the screen.
n
A hierachical functional right list of the selected functional domain You can define the functional rights for each item under the selected functional domain. After you have finished defining functional rights for one domain, click Cache Update to cache your selections, then you can continue setting other domains.
The logic of functional rights Each functional domain (Item column) is composed of a set of items to which an access right is assigned (Granted, Denied, Value of parent). The items in a functional domain are, for the most part, the screens and wizards that are available in this domain. The following elaborates the rules of defining the functional rights. n An item inherits the rights value of its parent if the Value of parent is assigned to this item. n The Granted by default option only affects the top level items, the right is granted to those top level items whose Value of parent option is selected. Each child item of a domain can have a different rights value from that of n the domain. In this case, you can assign Granted or Denied to a child item regardless of the rights value of the parent. For example, for the set of items in a functional domains with the value Denied, the following conditions must be met:
n n n
The Granted by default option is not selected. The functional domain has the Value of the parent value. The set of items in the domain have the Value of the parent value. The Granted by default option is selected. The functional domain has the value Denied. The set of items in the domain have the Value of the parent value. The Granted by default option is not selected The functional domain has the value Denied. The set of items in the domain have the Value of the parent value.
or
n n n
or
n n n
6 Assign the Authorized user roles (SQL name: MasterProfiles), the user roles can be associated with the employee. n Windows client: click New in the screen displayed by clicking to the right of the Role used at connection field.
n
Web client: click Add in the list at the lower right part of the detail screen.
7 In the Role used at connection (SQL name: DefMastProfile) field, select the user role for the employee to use when he/she connects to the database. Values available for this field are the values assigned for the Authorized user roles field (SQL name: MasterProfiles). The role used at connection (just like the authorized user roles) encompasses the access conditions (user profiles and user rights, access restrictions, associated functional rights) for the user. Note: You can also grant administration rights to a user Defining a database administrator [page 177]. In this case, administration rights take precedence over specific access conditions that were previously assigned to the user and the Role used at connection (SQL name: DefMastProfile) and Authorized user roles (SQL name: MasterProfiles) fields no longer appear on the Profile tab of the employee's detail.
From the Administration/ User Actions/ Select your Asset Manager user role link on the navigation bar.
The new "role used at connection" will take effect the next time the user connects to the database.
Table 12.1. Database access types Access type Floating Number of Logins Unlimited that you can create Number of simultan- Limited by license eous database connections Named Limited by license Unlimited Guest Unlimited Limited by license
Access to tables
Floating Named Authorized but not re- Not authorized commended. Each connection reduces the number of remaining free connections. No restrictions No restrictions
Guest Authorized but not recommended. Each connection reduces the number of remaining free connections. Restrictions apply ( following tables). You cannot remove these restrictions. However, you can add additional access restrictions via the Guest user profile that is associated with the user's role. This profile is available in the access management line-of-business data: Prerequisites: Import access management line-of-business data [page 168] When you create a guest user, you must assign a user role with a profile that has the appropriate user and functional rights to that guest user, just as you would do for other access types.
Note: The access type of the "Admin" Login is Named. This user is not deducted from the number of authorized users. A user whose access type is Guest only has access to the following tables:
Table 12.2. Guest access type - Tables may be accessed in read and/or write mode SQL name of the table amAccessRestr amAction amActionMemo Read access X X X Write access
SQL name of the table amBrand amBudgCenter amBudget amCatalog amCatProduct amCatRef amClientResource amCnxType amComment amCompany amConnection amContact amCostCategory amCostCenter amCounter amCountry amCRType amCurrency amDocument amDownTimePeriod amEmplDept amEmplGroup amEscalScheme amEscSchLevel amExpenseLine amFuncDomain amFuncRight amFVExpenseLine amHelp amHelpMemo amHistory amImage amItemizedList amItemListVal amKnowlBase amLocation amLoginSlot amMail amModel amModelPort amModelSlot amNature amNews amPasswordHist amPortFolio amProblemClass amProdClassCode
Read access X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
Write access
X X X
X X
X X X
SQL name of the table amProfile amProject amQuery amRelAstReplReq amRelCalcFeat amRelCatalogClients amRelCatalogSuppliers amRelCCatClass amRelCountLic amRelCountSoft amRelEmplEntitl amRelEmplGrp amRelEmplGrpCntr amRelEntitlContract amRelEntitlLoc amRelEntitlPortf amRelEntitlReq amRelEscSchLoca amRelEscSchSev amRelFixedAsset amRelFRProfile amRelGrpLoca amRelGrpPbClass amRelItemAlarmTrig amRelLoanAstSel amRelLoanPayExpLin amRelModelCompat amRelModelEntitl amRelNewsGrp amRelPOrdReq amRelPortfReql amRelPortfUsers amRelProfileRight amRelRestrProfile amRelSlotTypeModel amRelSuppPCardType amRelTermLoc amRelTickAlarmTrig amRelWfActivAct amRelWOItems amScriptLibrary amSeverity amSlot amSlotType amSoftLicCounter amStatistic amStock
Read access X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
Write access
X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
SQL name of the table amSysConfig amTaxFormula amTaxJuris amTaxRate amTaxType amTimeZone amTraining amUnit amUserRight amViewDef amWfActivAlarm amWfActivity amWfEvent amWfInstance amWfOccurEvent amWfOrgRole amWfScheme amWfSyncPoint amWfSysActiv amWfTransition amWfUserChoice amWfWorkItem amWkEvtScript amWorkCalendar
Read access X X X X X X X X X X X X X X X X X X X X X X X X
Write access X
X X X X
Table 12.3. Guest access type - Tables may be accessed in read-write mode under certain conditions SQL name of the table amReqLine Read condition (CurrentUserId() IN (Request.Requester,Request.Requester.Supervisor) AND Request.seStatus<>1) OR (Request.seStatus=1) (CurrentUserId() IN (Requester,Requester.Supervisor) AND seStatus<>1) OR (seStatus=1) CurrentUserId() IN (Assignee,Contact,Contact.Supervisor) (CurrentUserId()=Ticket.Contact.Parent.Supervisor OR CurrentUserId()=Ticket.Contact) CurrentUserId() IN (Requester,Requester.Supervisor,Technician) Write condition CurrentUserId() IN (Request.Requester,Request.Requester.Supervisor) CurrentUserId() IN (Requester,Requester.Supervisor) CurrentUserId() IN (Assignee,Contact,Contact.Supervisor) (CurrentUserId()=Ticket.Contact.Parent.Supervisor OR CurrentUserId()=Ticket.Contact) CurrentUserId() IN (Requester,Requester.Supervisor,Technician)
amRequest
Write condition CurrentUserId() IN (PortfolioItem.User,PortfolioItem.User.Supervisor) CurrentUserId() IN (User,User.Supervisor) CurrentUserId() IN (Portfolio.User,Portfolio.User.Supervisor) CurrentUserId() IN (PortfolioItem.User,PortfolioItem.User.Supervisor) CurrentUserId() IN (Portfolio.User,Portfolio.User.Supervisor) CurrentUserId() IN (PortfolioItem.User,PortfolioItem.User.Supervisor)
amComputer amMonitor
Note: Because connection slot refreshing involves additional queries to the database for each online user, if you have numerous concurrent users on Asset Manager and do not need real time monitoring of the user activities, we recommend you to extend the update frequency. Note: The Web connection slot information is not immediately reflected in the amLoginSlot table after the user login. As soon as a user disconnects from the database, the corresponding connection slot is destroyed. Detail of a connection slot The Asset Manager administrator can view connection slots via the Administration/ Connections/ Connection slots navigation menu. A connection slot is defined by: The name of the application that is using it (in general Asset Manager, etc). n The user's Login. n The user's Access type (SQL name: seLoginClass). n Tip: You can create a workflow on the connection slots (SQL name: amLoginSlot) table to count the named and floating users periodically. The historical statistics of the workflow can provide a clear uage of Asset Manager.
Destroying connection slots manually The administrator, using the "Admin" login can force the disconnection of a user of Asset Manager. To do this: 1 Display the connection slot screen via the Administration/ Connections/ Connection slots navigation menu. 2 Select the appropriate connection slot. 3 Click Delete. Note: Only the administrator using the "Admin" login can delete connection slots. This function is not available to other Asset Manager administrators. Detecting accidental termination of the application In some cases, the application that uses a connection slot may be terminated accidentally (e.g. brutal shut-down of the operating system, network problem, etc). Therefore users are not logged off from the database in the normal fashion (e.g. via the File/ Disconnect from database menu in the Windows client, or via clicking Logout in the Web client). The connection slot still exists, but it is not actually used. As a consequence, if access to the database is based on the principle of floating users, the number of effective concurrent users is decremented by 1. Asset Manager solves this problem by searching at regular intervals for unused connection slots, and using them for a new connection. Here is how Asset Manager determines if a connection slot is obsolete: 1 Asset Manager searches for the date the slot was last modified. 2 If the time at which the slot was last modified is twice as old as the slot update frequency, Asset Manager considers that the slot is inactive and therefore can be reused. An administrator using the "Admin" login can also fix this problem by deleting obsolete connection slots. Because connection slots are refreshed regularly during the database connection, it is easy to delete obsolete records from the table of connection slots: 1 Use a filter to display all records in the table of connection slots whose Modified on field indicates a date earlier than a given date. Note: The Modified on (SQL name: dtLastModif) field cannot be viewed via the records detail window. 2 Select those slots and delete them.
Disconnecting inactive users Asset Manager allows you to disconnect inactive users automatically according to a given timeout value. Windows client This is defined via the Administration/ Database options menu. 1 Activate the automatic disconnection procedure. The Enable automatic disconnection in the "Access control" section n option allows you activate the floating user automatic disconnection. The Enable automatic disconnection of named users in the "Access n control" section option allows you to activate the named user automatic disconnection. 2 After you have activated the automatic disconnection procedure, you need to define a value in the Slot timeout (seconds) option of the "Access control" section. Warning: In order for your modifications to be recognized, you need to disconnect, then reconnect. Note: If you use a Asset Manager version 3.01 or earlier, the automatic disconnection is applied to the ensemble of users. Web client The inactive Web client users are automatically disconnected after the session timeout duration of the application server. The following instructs you how to set the session timeout value for different application servers supported by Asset Manager.
Apache Tomcat
The timeout value is set by the <session-timeout> parameter in the <Tomcat installation folder>\conf\web.xml. The default timeout value is 30 minutes:
<session-config> <session-timeout>30</session-timeout> </session-config>
Oracle WebLogic
The timeout value can be defined in either web.xml or weblogic.xml. In the web.xml file, it is defined by the <session-timeout> parameter in n minutes, the default value is 0.
<session-config> <session-timeout>0</session-timeout> </session-config>
n
In the weblogic.xml file, it is defined by the TimeoutSecs element in seconds, the default value is 3600.
<session-param> <param-name>TimeoutSecs</param-name> <param-value>3600</param-value> </session-param> </session-descriptor>
IBM WebSphere
The timeout value is set by the <session-timeout> parameter in the web.xml file. The default value is 30 minutes.
<session-config> <session-timeout>30</session-timeout> </session-config>
Note: Single Sign-On (SSO) definition A directory-based software solution that provides an organization's network users seamless access to all authorized resources after users have completed a single network authentication procedure. A single password lets a user access all multi-platform applications and systems in the organization. Once the user has entered his or her password during initial authentication, the directory (for example, Active Directory under Windows) sends the password automatically to all other applications that require it without requesting the password information from the user again. Warning: To implement Single Sign-On, the Windows and Web clients must be specially configured for use with Single Sign-On. The password that controls user access to the Asset Manager database can be stored in several ways:
Asset Manager Windows and Web clients: The Admin login - a special case
The Admin login is always stored in the Asset Manager database, whether the other passwords are stored in the Asset Manager database or in the LDAP directory. Warning: Do not confuse the Admin login with a user with Administration rights. How the Admin login works The record of the Admin login is very important: 1 For the first installation of Asset Manager, this is the only login name available for accessing the Asset Manager database for all administrative operations. 2 You can subsequently assign administrative rights to other records in the table of departments and employees. However, the Admin login record cannot be deleted. It is your only solution if you cannot connect using another Login name that also has administrative rights. The password associated with the Admin login is therefore critical, because it gives all rights to the Asset Manager database.
Warning: Do not forget the password for the Admin login. Should this happen, you will have no other means of administering the database if the other administrative-rights records in the table of departments and employees are damaged. Warning: Anyone who knows the Admin password can perform any operation on the Asset Manager database and can access all the database information with no restrictions. Make sure you do not tell this password to any unauthorized employees. Note: If despite the precautions specified above you forget this password, there is no way of recovering it using Asset Manager. Call HP support. Modifying the password for the Admin login Windows client You can modify the password for the Admin login record by opening the database with this login name and using the Tools/ Change password menu; n select Administration/ Change password from the navigation tree. n Web client You can modify the password by logging in the Web client with Admin and select Administration/ Change password from the navigation tree.
Asset Manager Windows and Web clients: Authentication is handled entirely by Asset Manager
This section explains how to set up Asset Manager to manage all aspects of user authentication. In this mode, user information is only stored in the Asset Manager database. Users must enter their login and password each time they connect to the Asset Manager database.
Configure password management Enter database options related to passwords 1 Start the Asset Manager Windows or Web client. 2 Connect to the Asset Manager database using a user login that has administrative rights. 3 Select the Administration/ User actions/ Password management... link. 4 Populate the Password management... (sysCorePassMgt) wizard. This wizard enables you to define standard options concerning a password (Default number of days a new password is valid, Password expiration notification) as well as the options called by the script library (Minimum password length, Minimum number of different characters). Note: When users have logged in the Asset Manager Windows and Web clients, they will be notified to change their passwords if they are approaching the expiration. Password expiration notification defines how long in advance to change the passwords. When users attempt to log in the Asset Manager Windows and Web clients with already expired passwords, they will be forced to change them before logging in. The wizard has a set of default values. These values are saved in the Options table and may be modified. The wizard automatically loads the script library defined in the database options and saves the values populated in the Options table. Define password format constraints Password format constraints are defined in a script library. The default library is called PasswordLib. This library can be modified via the Administration/ Scripts link on the navigation bar. Important: The Basic function used in the script in the library must have the same name as the library itself. The default script imposes the following rules on users registering passwords: The password must contain a minimum number of characters n The password may not contain several times the same letter n The password may not contain the user name n
Create a user who can connect to the Asset Manager database 1 Start the Asset Manager Windows or Web client. 2 Connect to the Asset Manager database using a user login that has administration rights. Note: Enable the Administration rights (bAdminRight) option on the profile tab of an employee detail page to enable these rights. 3 Display the employees (/Organization management/ Organization/ Employees link on the navigation bar). 4 Create the employee if she/he does not already exist. 5 Populate the information on the Profile tab. 6 Populate the User name (UserLogin) and Password (LoginPassword) fields. The values used for these fields are required when connecting to the database. Modify a password Modifications performed by the user 1 Start the Asset Manager Windows or Web client. 2 Connect to the Asset Manager database with your current user name and password. 3 Select the Administration/ User actions/ Change password... link. 4 Populate the wizard. Modifications performed by the administrator User passwords can be modified by users whose administrative rights option is enabled on the Profile tab of their employee detail page. This erases the old password. Locking out a user 1 Start the Asset Manager Windows or Web client. 2 Connect to the Asset Manager database using a user login that has administration rights. 3 Display the employees (/Organization management/ Organization/ Employees link on the navigation bar). 4 Select the employee. 5 Display the Profile tab.
6 Set the Status of the user account field (seLoginStatus) to Locked. Defining an access validity period for a user 1 Start the Asset Manager Windows or Web client. 2 Connect to the Asset Manager database using a user login that has administrative rights. 3 Display the employees (/Organization management/ Organization/ Employees link on the navigation bar). 4 Select the employee. 5 Display the Profile tab. 6 Populate the information in the Time-based access control frame. Lost passwords Asset Manager does not display passwords in a readable format. If an Asset Manager user loses or forgets their password, an administrator must create a new one in the employee's Profile tab. This erases the old password.
Asset Manager Windows and Web clients: Authentication is handled entirely by LDAP
Reminders about LDAP LDAP (Lightweight Directory Access Protocol) is a directory-interrogation protocol. Certain messaging servers, such as Microsoft Exchange, use this protocol to expose their directory. General rules about stocking passwords in an LDAP directory If your company manages its employees' passwords centrally in and LDAP directory, you might find it useful to use the directory to control access to the Asset Manager database. You will also be able to take advantage of other password management features offered by the LDAP directory, such as: Mandatory periodical modification. n Verification of format and number of characters. n Etc. n Implementing an LDAP directory 1 Make sure that all Asset Manager users can access the LDAP directory.
2 Create the Asset Manager users in the LDAP directory and assign them a login and password. 3 Deactivate the Anonymous access to the LDAP directory. 4 Launch Asset Manager. 5 Start the Asset Manager Windows client. 6 Connect to the working database via the File/Connect to database menu. 7 Display the database options via the Administration/Database options menu. 8 Populate the options having the section name LDAP authentication. 9 Create or modify the users of the Employees and departments table (amEmplDept) by populating the fields in the Profile tab. In particular, populate the following fields: n User Name (UserLogin): Login to use to connect to the Asset Manager database. Possibly the field that stores the corresponding LDAP login, if it's n different from the UserLogin field. Examples of LDAP logins: Microsoft Exchange: CN=<identifier>, CN=<DOMAIN NAME> or n DC=<DOMAIN NAME>, CN=<identifier> Lotus Domino: <FirstName> <Name>/<DOMAIN NAME> n Tip: You can import the LDAP directory using HP Connect-It. 10 Make sure that the LDAP DLLs are installed on the Asset Manager user computers. This is the case if you selected the Full installation option when you installed the Asset Manager client. This is also the case if you selected the Customized installation option, and chose LDAP authentication. This is not the case, however, if you selected the Standard installation option. 11 Have the users reconnect to the database in order for the new options to be taken into account at the level of their Asset Manager client. LDAP connection to the Asset Manager database After you implement the LDAP authentication in the Asset Manager database, the users will connect by: 1 They start an Asset Manager Windows or Web client. 2 They connect to the production database:
User name: User name that is stored in the Employees table (amEmplDept) in the User name (UserLogin) field of the user's detail. Asset Manager finds the login in the LDAP directory. It can do this because of its settings, configured via the Administration/Database options menu. Password: Microsoft Exchange: Windows password. n Lotus Domino: Internet password defined in Domino. n The validity of this password is verified through the LDAP server.
Secure connection (SSL) to the LDAP server To secure access to the LDAP server, two options are available in Asset Manager. 1 LDAPCertFile: This option requires a single OpenLDAP server and uses a single authentication certificate. To enable this option, the LDAPCertFile file must point to a text file containing a certificate in the PEM with the following syntax:
-----BEGIN CERTIFICATE----... (CA certificate in base64 encoding) ... -----END CERTIFICATE-----
2 LDAPCertDir: This option, which is more complex, requires multiple OpenLDAP servers and uses multiple authentication certificates. Note: This option is used more often for HP Connect-It. To enable this option, the LDAPCertDir file must point to a directory containing certificates whose names are based on the hash code. Each file in the folder must be in the PEM format and contain the subject of each certificate: Use the c_rehash command to enable the hash function in the current directory and create links in Unix. Warning: Enabling a secure connection to the LDAP server requires all computers to be configured before connection.
Asset Manager Windows client: Implementing Single Sign-On using Active Directory on IIS
This section explains how to use Active Directory to define Asset Manager Windows client users. Thanks to Windows integrated authentication, a user that authenticated when Windows started does not need to authenticate when the Asset Manager Windows client is started. Rights that users have in Asset Manager are defined in the Asset Manager database (user roles). You must synchronize authentication information between Asset Manager and Active Directory to ensure that Single Sign-On works properly. With this synchronization: You automatically import the list of Active Directory users into the n Asset Manager database. Users who connect to an Asset Manager database don't have to populate n the Login and Password fields when connecting to the database. General overview Synchronization between Asset Manager and Active Directory is performed in one of the following ways: Synchronizing all Active Directory users Synchronization is performed via a HP Connect-It scenario. n The HP Connect-It scenario that performs this task is programmed and n launched by Asset Manager Automated Process Manager. HP Connect-It uses the following combination of fields to identify persons n in the Asset Manager database: n Name (Name)
n n n
A user is authorized to connect to the Asset Manager database using Windows integrated security with a given login if the following items have the same value: n SID (Identifier) field of the Asset Manager user.
n
Synchronizing a user in the Asset Manager database On the users detail page, click the NT user button to start the wizard.
Main steps to implement full synchronization Here are the main steps you need to take to implement this system. We will elaborate on each one of these steps later on in the guide. Step 1: Create users and groups in Active Directory [page 196] n Objective: Prepare the information to transfer to Asset Manager. Step 2: Configure Asset Manager Automated Process Manager and n HP Connect-It [page 197] Objective: Define which NT domains should be retained and plan the transfers. Step 3: Activate the updating process for the first time [page 197] n Objective: Transfer the information for the first time and test the login. Step 4: Complete the description of the employees in the Asset Manager n database [page 197] Step 5: Activate the automatic triggering of the Asset Manager Automated n Process Manager modules [page 197] Step 1: Create users and groups in Active Directory The fields to populate are: For the users: n n The Full name field: Tip: When you create users in the Asset Manager database, Asset Manager Automated Process Manager takes the value of the Full name field from Active Directory and searches for the first space character starting on the left. Everything it finds to the left of the first space is used to create the First name field; everything to the right of the first space creates the Name field. If there is no space, only the Name field will be populated. You must not use a space for first names that are actually combined of two or more names. If you wish, you can use a hyphen instead.
n
Description field: This field is used to populate the Comment field (Comment) in the Asset Manager database.
For groups: The Name field. This field is used to populate the Name field (Name) in the Asset Manager database.
Step 2: Configure Asset Manager Automated Process Manager and HP Connect-It Administration Guide, chapter Asset Manager Automated Process Manager, section Configuring the modules monitored by Asset Manager Automated Process Manager, sub-section Add NT users to the database module (AddUser). Step 3: Activate the updating process for the first time 1 Select the Action/ Activate menu. 2 Select the option corresponding to the Add NT users to the database task. 3 Click OK. Asset Manager begins the update. Note: If the number of users concerned by this operation exceeds the number of Named logins authorized by the License Keys activated in your database, Asset Manager Automated Process Manager declares the users as having Floating type logins. Step 4: Complete the description of the employees in the Asset Manager database Your database now contains one employee per NT user detected on the chosen domain. Their login is in the form:
[domain]\[user]
The users created do not have a valid password. Note: Following this operation, we advise you to verify that all the records created in the Departments and Employees table correspond to an Asset Manager user. You must notably re-enter the value of the Password field. Step 5: Activate the automatic triggering of the Asset Manager Automated Process Manager modules 1 Select the Tools/ Configure modules menu item. 2 Select the Add NT users to the database module. 3 Populate the fields of the Verification schedules frame. 4 Check the Enabled box. 5 Click Modify.
Asset Manager connection Once the previous operation is completed, the NT users can directly access Asset Manager. During their first connection, all they need to do is select the Use integrated NT security option, then click Open. No other authentication information will be asked for the next connections. If a user wants to connect using another login, however, they can always do so by activating the connection box via the File/ Connect to database menu. Rules applied by Asset Manager during the creation/modification of users
n
The Asset Manager login is created by concatenating the Windows Domain name and User name in the form of: <Domain name>\<User name> The following set of fields are used as the reconciliation key for the users of the Asset Manager database: n Name (Name)
n n
When a user is imported, the user is only created if the reconciliation key does not yet exist in the database. All the fields corresponding to the HP Connect-It scenario are then populated. If a record corresponding to the reconciliation key already exists, then all the fields in the HP Connect-It scenario will be updated except those constituting the reconciliation key. Note: The Password field is populated with a special character that prohibits the user to access the Asset Manager database via any other means than the automatic login. You thus must populate this field manually if you want to authorize this user to access the database using a manual login (especially if the user wants to login on a different computer).
Remember that there is an index in Asset Manager composed of the Bar code field. This index must be unique. You also need to verify that the Bar code field is populated with a different value for each user. This way, you can create different users who might share the very same name. For this, you can use the default value calculation script installed by Asset Manager.
Asset Manager Web client: Implementing Single Sign-On using Active Directory on IIS (prior to version 7)
Using Single Sign-On to access Asset Manager Web can be handled in several ways depending on the environment you are using. This section does not describe all possibilities and is limited to a description of Single Sign-On authentication using Active Directory, and versions of IIS prior to IIS 7. A procedure for IIS 7 is given, in Asset Manager Web client: Implementing Single Sign-On (SSO) using Active Directory on IIS 7 32-bit [page 203] Note: You can use a Single Sign-On system other than Active Directory. Use this example as a guideline and and tailor it to your needs. IIS (Internet Information Services) is the only Web server that correctly supports Single Sign-On on Windows. However, you can use different application servers (Tomcat, WebSphere, etc), given that they are correctly configured to communicate with IIS. The installation and configuration of Single Sign-On with Tomcat as the application server is described in this section. The steps to perform on the machines where you have installed Asset Manager Web Service and Asset Manager Web Tier are listed below (if they have been installed on different machines, each of the steps needs to be performed on each machine). Prerequisites Before starting, make sure that you have the following: An operational Active Directory implementation on your network. n The steps in this section describe an implementation using the Active Directory version provided with Windows Server 2003 R2, but are also valid for previous versions of Active Directory. An operational DNS (Domain Name Service) server. To check this, at the n command line (command prompt window) enter the following:
ipconfig
Then:
nslookup < IP address of the DNS server>
n n
Asset Manager Web using Tomcat as application server. IIS (Web server provided with Windows).
Install the Jakarta ISAPI redirector plugin You must first establish a connection between IIS and Tomcat. Apache provides an ISAPI ISAPI (Internet Server Application Programming Interface) redirector plugin that needs to be implemented. Please refer to the official Apache Tomcat Connector - Webserver HowTo documentation at http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html. Tip: The Apache Tomcat connectors distribution is available from the following site: http://tomcat.apache.org/download-connectors.cgi Configure 1 2 3 ISS On the desktop, right click My Computer. Click Manage. Expand the Services and Applications/ Internet Information Services/ Web Sites/ Default Web Site branch. 4 Right click jakarta then click Properties. 5 Click the Virtual Directory tab and check the parameters. The following items must be enabled: When connecting to this resource, the content should come from: A n directory located on this computer. Local Path section: n Script source access n Read n Log visits n
n
Application Settings section: Application name: jakarta n Execute Permissions: Scripts and Executables n (If field available) Application Protection: Medium (Pooled) n
6 Next, return to the Default Web Site, Right-click on it and click Properties. On the ISAPI Filters tab, you should see the jakarta filter with a green arrow pointing up, which indicates that the filter is functioning correctly. If this is not the case: a Click Add. b Filter Name field: Type Jakarta.
Executable field: Browse to the isapi_redirect.dll file located in the bin subfolder of the folder where you installed the Jakarta ISAPI redirector. For example: C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\bin\isapi_redirect.dll
If the installation folder of the Jakarta ISAPI redirector is different on your machine, replace C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\ with the path to the correct installation folder. This installation folder example will be used throughout this guide. d Click OK, then click OK again on the Default Web Site properties page. e Re-open the properties page. You should see the green arrow pointing up in front of the Jakarta filter. 7 Still in the Default Web Site Properties window, click the Directory Security tab. 8 In the Authentication and access control section, click Edit.... 9 Clear Anonymous access option. 10 Enable the Digest authentication for Windows domain servers and Integrated Windows authentication options. 11 Make sure your domain name appears in the Default domain field. Configure the port transfer 1 The objective is to transfer the port between IIS (which, by default, listens on port 80) and Tomcat (which listens on port 8080) and to tell Tomcat not to display a login window requesting authentication. To do this, open C:\Tomcat\conf\jk2.properties (the location of this file may be different depending on your Tomcat installation folder. This example will continue to use this path.) with a text editor and add the two following lines to the end of the file:
request.tomcatAuthentication=false request.registerRequests=false
2 To check that the port transfer works correctly, perform the following test: Open the default Tomcat application and enter the following URL: http://localhost:8080/jsp-examples/. Note: If it does not work, make sure that you have launched Tomcat. Now, open the following URL in your browser:
HP Asset Manager 9.30 - Administration | 201
http://localhost/jsp-examples/. You should see the same page as before. This confirms that the port transfer has been correctly configured. 3 Next, you must instruct Jakarta to manage the Tomcat default application and Asset Manager. To do this, open C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\conf\uriworkermap.properties in a text editor and add the following lines to the appropriate section: On machines where Asset Manager Web Service has been installed, add n the following line in the file:
/AssetManagerWebService/*=wlb
n
On the machine where Asset Manager Web Tier has been installed, add the following line in the file:
/AssetManager/*=wlb
Note: If Asset Manager Web Service and Asset Manager Web Tier are installed on the same machine, add the lines given above to the appropriate section of the C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\conf\uriworkermap.properties file. Restart Tomcat. 4 If you are connected as a Windows user, you should be able to access the Asset Manager Web client without having to authenticate again. 5 However, if a login screen still appears, restart your system. If the problem persists, open the C:\Tomcat50\conf\server.xml file in write mode and remove the comment characters (<!-- and -->) for the following line:
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
This forces Tomcat to generate an additional log file named: catalina_log.YYYY-MM-DD.txt. Open the log file and check the entries for the following parameters:
YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: me>\<User name> YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: queryString=null remoteAddr=192.178.0. remoteAddr=192.178.0. remoteUser=<Domain na requestedSessionId=nu
This example indicates that Single Sign-On is operating correctly. IIS transmits all of the user's Windows authentication certificates. Tomcat then authenticates the user. If the remoteUser field is empty, make sure that all the previous steps have been correctly completed.
Asset Manager Web client: Implementing Single Sign-On (SSO) using Active Directory on IIS 7 32-bit
This section applies to specifically IIS7 32-bit. Prerequisites Before starting, make sure that you have the following: An operational Active Directory implementation on your network. n The steps in this section describe an implementation using the Active Directory version provided with Windows Server 2003 R2, but are also valid for previous versions of Active Directory. An operational DNS (Domain Name Service) server. To check this, at the n command line (command prompt window) enter the following:
ipconfig
Then
nslookup <IP address of the DNS server>
n n
Asset Manager Web using Tomcat as application server. IIS 7 (Web server provided with Windows, only supported in Windows Server 2008 and Windows Vista). For Windows Server 2008, default component selection of Web Services is enough for the configuration below. For Windows Vista, manually select the following options: component ISAPI Filter, ISAPI Extension and Windows Authentication. Note: For further information about installing IIS 7, refer to the following links: http://learn.iis.net/page.aspx/29/installing-iis7-on-windows-server-2008/ http://learn.iis.net/page.aspx/28/installing-iis-70-on-windows-vista/
Note: A procedure for IIS prior to version 7 is given, in Asset Manager Web client: Implementing Single Sign-On using Active Directory on IIS (prior to version 7) [page 199] Install the Jakarta ISAPI redirector plugin You must first establish a connection between IIS and Tomcat. Apache provides an ISAPI ISAPI (Internet Server Application Programming Interface) redirector plugin that needs to be implemented. Please refer to the official Apache Tomcat Connector - Webserver HowTo documentation at http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html. Tip: The Apache Tomcat connectors distribution is available from the following site: http://tomcat.apache.org/download-connectors.cgi Configure IIS 1 On the desktop of the server where IIS is installed, right click My Computer. 2 Click Manage.
3 Expand the Roles/ Web Server (IIS)/ Internet Information Services (IIS) Manager, as in the example shown below:
4 In the Internet Information Services (IIS) Manager panel, select your host, and then double click ISAPI and CGI Restrictions. 5 Click Add in the Actions list. 6 Set ISAPI or CGI path poiting to the isapi_redirect.dll file (e.g. C:\tomcat\Jakarta\bin\isapi_redirect.dll) and Description as jakarta. Check Allow extension path to execute.
7 Click OK button. 8 Click on the Default Web Site and navigate to ISAPI Filters. 9 Click Add in the Actions list. 10 Add a new filter with Executable pointing to isapi_redirect.dll (e.g. C:\tomcat\Jakarta\bin\isapi_redirect.dll) and Filter name as Jakarta. 11 Click OK. 12 Click on the Default Web Site again. 13 Add a virtual directory and set Alias to jakarta. Set the Physical path to point to the directory containing isapi_redirect.dll. See the example below:
14 Click OK.
15 Click on the newly created virtual directory jakarta. 16 Double click the Handler Mappings. 17 Add a script map in the Actions list with Request path as *.jsp, Executable pointing to isapi_redirect.dll, Name as jakarta. 18 Click Request Restrictions. Check the following options: n Open Mapping tab, check Invoke handler only if request is mapped to:, select File or Folder
n
19 Still in the Default Web Site Properties window, click Authentication. 20 Disable Anonymous Authentication and enable Digest Authentication and Windows Authentication.
21 Navigate to Default Web Site Properties. 22 Select Basic Settings in the Actions list. 23 Set Physical path to <Tomcat installation folder>\webapps. See the example below.
24 Click the OK button. 25 Navigate to your host again and click Restart in the Actions list. Configure the port transfer 1 Open <Tomcat installation folder>\conf\server.xml with a text editor and disable tomcat authentication as in the following example:
<Connector port="8009" enableLookups="false" redirectPort="8443" protoc ol="AJP/1.3" tomcatAuthentication="false" />
2 To check that the port transfer works correctly, restart tomcat and then perform the following test: 3 Open a browser and navigate to following URL: http://localhost:8080/AssetManager/
Tip: If it does not work, make sure that you have launched Tomcat. 4 Instruct Jakarta to manage the Tomcat default application and Asset Manager. To do this, open <Tomcat installation folder>\conf\uriworkermap.properties in a text editor and add the following line in the file:
/AssetManager/*=wlb
5 Restart Tomcat and IIS 6 If you are connected as a Windows user, you should be able to access the Asset Manager Web client without having to authenticate again. Trouble Shooting Here are some of the most common problems, and potential solutions to them: I can open Asset Manager with 8080 port, but failed to open with port 80 n with "Page not found" error. ANSWER: First, make sure IIS service is up, then open the Jarkata file (<Tomcat installation folder>\Jarkata\conf\uriworkermap.properties ), check if the Asset Manager application has been added. After SSO is enabled, Asset Manager login is still required. n ANSWER: Make sure all the previous steps are correctly completed. Open the <Tomcat installation folder>\conf\server.xml file in write mode and remove the comment characters (<!-- and -->) for the following line:
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
This forces Tomcat to generate an additional log file named: Catalina_log.YYYY-MM-DD.txt Open this log file and check the entries for the following parameters:
YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: queryString=null YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteAddr=192.178.0. 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteAddr=192.178.0. 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteUser=<Domain na me>\<User name>
If the remoteUser field is empty, check Tomcat authentication again. Open the <Tomcat installation folder>\conf\server.xml file, make sure Tomcat authentication is disabled. I get the following error:
Login failed with error "Error: com.peregrine.ac.AmException: Error (12 ,008): Login 'xxx' unknown."
ANSWER: Check if the user exists in database and user has authorized role to access Asset Manager. Pay attention to the user login name. To check if login name contains domain name, open the <Tomcat installation folder>\webapps\AssetManager\WEB-INF\classes\application-context.html file and check the keepDomain value. If you want to keep domain name, update this value to "true". Otherwise, update it as "false". Restart Tomcat and try again.
Asset Manager Web client: Implementing Single Sign-On (SSO) using Active Directory on IIS 7 64-bit
This section applies to specifically IIS7 64-bit. Prerequisites Before starting, make sure that you have the following: An operational Active Directory implementation on your network. n The steps in this section describe an implementation using the Active Directory version provided with Windows Server 2003 R2, but are also valid for previous versions of Active Directory. An operational DNS (Domain Name Service) server. To check this, at the n command line (command prompt window) enter the following:
ipconfig
Then
nslookup <IP address of the DNS server>
n n
Asset Manager Web using Tomcat as application server. IIS 7 (Web server provided with Windows, only supported in Windows Server 2008 64-bit and Windows Vista). Manually select the following component options if they are not already installed: ISAPI Filter, ISAPI Extension and Windows Authentication.
Note: For further information about installing IIS 7, refer to the following links: http://learn.iis.net/page.aspx/29/installing-iis7-on-windows-server-2008/ http://learn.iis.net/page.aspx/28/installing-iis-70-on-windows-vista/ Install Java for Microsoft Windows 64-bit For details of how to install the 64-bit version of Java, as well as the download link, visit http://java.sun.com/j2se/1.4.2/install-windows-64.html Once installed, you lust configure it: 1 On the Windows desktop, right click My Computer. 2 Select Properties, then navigate to the Advanced tab/ Environment variables 3 Under the System variables list, click New. 4 Create a new variable with the following properties: Variable name: JAVA_HOME Variable value: <Java installation folder>\jdk1.5.0_19 Note: Adapt the above path to the folder where you installed Java 64-bit. 5 Click OK on each of the open configuration windows to save your changes. Install the Jakarta ISAPI redirector plugin You must first establish a connection between IIS and Tomcat. Apache provides an ISAPI ISAPI (Internet Server Application Programming Interface) redirector plugin that needs to be implemented. 1 Download the 64 bit redirector from the following site:
http://apache.oregonstate.edu/tomcat/tomcat-connectors/jk/binaries/win6 4/jk-1.2.28/amd64/isapi_redirect-1.2.28.dll
2 Put the isapi_redirect-1.2.28.dll file in your <Tomcat installation folder>Jakarta\bin folder. Rename it to isapi_redirect.dll Please refer to the official Apache Tomcat Connector - Webserver HowTo documentation at http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html. 3 Use a text editor to create a file called <Tomcat installation folder>\Jakarta\conf\workers.properties.minimal with the following contents:
# # # # # # #
workers.properties.minimal This file provides minimal jk configuration properties needed to connect to Tomcat. The workers that jk should create and work with
worker.list=wlb,jkstatus # # Defining a worker named ajp13w and of type ajp13 # Note that the name and the type do not have to match. # worker.ajp13w.type=ajp13 worker.ajp13w.host=localhost worker.ajp13w.port=8009 # # Defining a load balancer # worker.wlb.type=lb worker.wlb.balance_workers=ajp13w # # Define status worker # worker.jkstatus.type=status
4 Use a text editor to create a file called <Tomcat installation folder>\Jakarta\conf\uriworkermap.properties with the following contents:
# # # # # # uriworkermap.properties - IIS This file provides sample mappings for example wlb worker defined in workermap.properties.minimal The general syntax for this file is: [URL]=[Worker name]
/AssetManager/*=wlb # # Mount jkstatus to /jkmanager # For production servers you will need to # secure the access to the /jkmanager url # /jkmanager=jkstatus
5 Add the redirector to the Windows Registry: a Use a text editor to create a file with a .reg extension and the following contents:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isap i Redirector\1.0] @="" "extension_uri"="/jakarta/isapi_redirect.dll" "log_file"="C:\\Tomcat\\Jakarta\\log\\isapi_redirect.log" "log_level"="info" "worker_file"="C:\\Tomcat\\Jakarta\\conf\\workers.properties.minimal " "worker_mount_file"="C:\\Tomcat\\Jakarta\\conf\\uriworkermap.propert ies"
Note: Adapt the paths to your Tomcat installation folder. b Double click on the file to import the it into the Registry. c Open the Registry Editor (Run regedit in the command line), expand HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0, and verify that Jakarta is registered successfully. Configure IIS 1 On the desktop of the server where IIS is installed, right click My Computer. 2 Click Manage.
3 Expand the Roles/ Web Server (IIS)/ Internet Information Services (IIS) Manager, as in the example shown below:
4 In the Internet Information Services (IIS) Manager panel, select your host, and then double click ISAPI and CGI Restrictions. 5 Click Add in the Actions list. 6 Set ISAPI or CGI path poiting to the isapi_redirect.dll file (e.g. C:\tomcat\Jakarta\bin\isapi_redirect.dll) and Description as jakarta. Check Allow extension path to execute.
7 Click OK button. 8 Click on the Default Web Site and navigate to ISAPI Filters. 9 Click Add in the Actions list. 10 Add a new filter with Executable pointing to isapi_redirect.dll (e.g. C:\tomcat\Jakarta\bin\isapi_redirect.dll) and Filter name as Jakarta. 11 Click OK. 12 Click on the Default Web Site again. 13 Add a virtual directory and set Alias to jakarta. Set the Physical path to point to the directory containing isapi_redirect.dll. See the example below:
14 Click OK.
15 Click on the newly created virtual directory jakarta. 16 Double click the Handler Mappings. 17 Add a script map in the Actions list with Request path as *.jsp, Executable pointing to isapi_redirect.dll, Name as jakarta. 18 Click Request Restrictions. Check the following options: n Open Mapping tab, check Invoke handler only if request is mapped to:, select File or Folder
n
19 Select the new Jakarta handler mapping. In the righthand panel select Edit Feature Permission as shown in the example below.
21 Still in the Default Web Site Properties window, click Authentication. 22 Disable Anonymous Authentication and enable Digest Authentication and Windows Authentication. See the example below:
23 Navigate to Default Web Site Properties. 24 Select Basic Settings in the Actions list. 25 Set Physical path to <Tomcat installation folder>\webapps. See the example below.
26 Click the OK button. 27 Navigate to your host again and click Restart in the Actions list. Configure the port transfer 1 Open <Tomcat installation folder>\conf\server.xml with a text editor and disable tomcat authentication as in the following example:
<Connector port="8009" enableLookups="false" redirectPort="8443" protoc ol="AJP/1.3" tomcatAuthentication="false" />
2 To check that the port transfer works correctly, restart tomcat and then perform the following test: 3 Open a browser and navigate to following URL: http://localhost:8080/AssetManager/ Tip: If it does not work, make sure that you have launched Tomcat. 4 Instruct Jakarta to manage the Tomcat default application and Asset Manager. To do this, open <Tomcat installation folder>\conf\uriworkermap.properties in a text editor and add the following line in the file:
/AssetManager/*=wlb
6 If you are connected as a Windows user, you should be able to access the Asset Manager Web client without having to authenticate again. Trouble Shooting Here are some of the most common problems, and potential solutions to them: I can open Asset Manager with 8080 port, but failed to open with port 80 n with "Page not found" error. ANSWER: First, make sure IIS service is up, then open the Jarkata file (<Tomcat installation folder>\Jarkata\conf\uriworkermap.properties ), check if the Asset Manager application has been added. After SSO is enabled, Asset Manager login is still required. n ANSWER: Make sure all the previous steps are correctly completed. Open the <Tomcat installation folder>\conf\server.xml file in write mode and remove the comment characters (<!-- and -->) for the following line:
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
This forces Tomcat to generate an additional log file named: Catalina_log.YYYY-MM-DD.txt Open this log file and check the entries for the following parameters:
YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: queryString=null YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteAddr=192.178.0. 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteAddr=192.178.0. 1 (type your IP address here) YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: remoteUser=<Domain na me>\<User name> YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: requestedSessionId=nu ll YYYY-MM-DD HH:MM:SS RequestDumperValve[Catalina]: scheme=http
If the remoteUser field is empty, check Tomcat authentication again. Open the <Tomcat installation folder>\conf\server.xml file, make sure Tomcat authentication is disabled. I get the following error:
Login failed with error "Error: com.peregrine.ac.AmException: Error (12 ,008): Login 'xxx' unknown."
ANSWER: Check if the user exists in database and user has authorized role to access Asset Manager. Pay attention to the user login name. To check if
login name contains domain name, open the <Tomcat installation folder>\webapps\AssetManager\WEB-INF\classes\application-context.html file and check the keepDomain value. If you want to keep domain name, update this value to "true". Otherwise, update it as "false". Restart Tomcat and try again.
Asset Manager Web client: Implementing Single Sign-On (SSO) using identity management tools such as Siteminder or Webseal
Asset Manager Web client: Sharing user authentication using Lightweight Single Sign-On (LW-SSO) [page 220]
Asset Manager Web client: Sharing user authentication using Lightweight Single Sign-On (LW-SSO)
Overview When the Lightweight Single Sign-On (LW-SSO) framework is enabled, a user only needs to login once (to a single HP Software BTO application) during a session. The user's login information will be propagated to to other HP Software BTO applications deployed on same domain. LW-SSO solves both the Web and Web Services SSO problems for HP Software BTO products, using lightweight technology, and without having to install any additional infrastructure. LW-SSO use cases LW-SSO can be used to address the following use cases: 1 Web Single Sign-On: A user logs in one BTO application using his credentials and then wants to access the second BTO application in the same browser. Since the user has already logged in, LW-SSO enables the user to enter the second application without requiring him to interactively re-authenticate his credentials. 2 Web Services Single Sign On: During a user request to one BTO application, a call must be executed to the second BTO application. LW-SSO transfers User Data to the second BTO application. 3 Web Service calls: A Web Service call must be executed from the first BTO application to the second BTO application using information from the non-interactive user. LW-SSO transfers user data to the second BTO application. 4 LW-SSO is used as an abstraction layer between BTO applications and external Identity Management (IdM) / SSO tools. This facilitates product integration with the IdM / SSO tool and overall developmental costs.
Key features LW-SSO does not provide or mediate user authentication as such; each n application is responsible for authenticating the user. LW-SSO is responsible only for passing user information from Application1 n to Application2 (via shared cookies). Thus LW-SSO is not a replacement for other IdM solutions. n BTO Application1 and BTO Application2 can use either the same user n storage or separate user storages. However, if using separate user storages, they need to be able to synch user names, which is not handled in the LW-SSO framework. LW-SSO is symmetric solution: user can first login in Application1 and than n transparently open a link to Application2, or vise versa: first login in Application2 and then open a link to Application1. Configuring LW-SSO Configuring on the fly The Asset Manager Web Service deployment includes an administration screen to configure basic LW-SSO parameters. Connect to the following URL: http://${AMWebServiceServer}:${AMWebServicePort}/{AssetManagerWebServiceContext}/ssoConfig.jsp Example: http://localhost:8081/AssetManagerWebService/ssoConfig.jsp Note: Your application server e.g. Tomcat must be correctly configured and running. The sign-on screen displays, as in the following example:
Populate the fields as described in the table below. Note: This screen requires administrative rights.
Usage When this option is checked, the LW-SSO framework is enabled on the target domain, defined in the next field. Domain on which user login information is propagated between hosted HP Software BTO applications which subscribe to a compatible version of LW-SSO. This must be the full DNS name of the application server. For instance: asiapacific.mycompany.net Shared encryption key This is a secret text string that is used as the encryption key for LWSSO cookies. This is used to populate the initstring parameter. Other HP Software BTO applications which subscribe to LW-SSO must be configured to use the same initstring to be able to decrypt and share common cookies. See also LW-SSO Security Considerations [page 222] Request header key HTTP header responses must make reference to the specified user containing the user name. (This can be used to support SSO solutions such as for Sitemindname er, etc). As the label suggests, you need only to specify the name of the header key.
Additional configuration can be achieved by making manual changes to the LW-SSO API. Disable shared cookies When LW-SSO is enabled, by default logging out from one application that subscribes to LW-SSO will trigger a logout from all other subscribing HP Software BTO applications hosted on the same domain. To prevent this, thus requiring an explicit logout per application, add the following entry to the file lwwssofmconf.xml located in AssetManager.ear/AssetManager.war/WEB-INF/classes.
<logoutURLs> <url> .*cwc/logoutcleanup.jsp.* </url> </logoutURLs>
LW-SSO Security Considerations Note: LW-SSO should be disabled unless it is specifically required Confidential initString parameter in LW-SSO security LW-SSO uses Symmetric Encryption to validate and create LW-SSO tokens. The initString or secret phrase configuration parameter is used to initialize the encryption key. An application creates a token, and each application that uses the same initString parameter validates the token.
Note: Important Notes regarding the initString: It is not possible to use LW-SSO without setting the initString parameter. n The initString parameter is confidential information and should be treated as n such in terms of publishing, transporting, and persistency. The initString should be shared only between applications integrating with n each other using LW-SSO. The minimum length of the initString is 12 characters. n How authentication security level is determined The Application that uses the weakest authentication framework and issues a LW-SSO token that is trusted by other integrated applications, determines the level of authentication security for all the applications. It is recommended that only applications using strong and secure authentication frameworks issue an LW-SSO token. Symmetric encryption implication LW-SSO uses symmetric cryptography for issuing and validating LW-SSO Tokens. Therefore, any application using LW-SSO can issue a token to be trusted by all other applications sharing the same initString. This potential risk is relevant when an application sharing the initString either resides or is accessible in an untrusted location. User mapping (Synchronization) LW-SSO does not ensure user mapping between the integrated applications. Therefore, the integrated application must monitor user mapping. It is recommended that you share the same user registry (as LDAP/AD) among all integrated applications. Failure to map users may cause security breaches and negative application behavior. For example, the same user name may be assigned to different real users in the various applications. In addition, in cases where a user logs onto an application (AppA) and then accesses a second application (AppB) that uses container or application authentication, the failure to map the user will force him/her to manually log onto AppB and enter a username. If the user enters a different username than he/she used to log onto AppA, the following unexpected behavior can arise: If the user subsequently accesses a third application (AppC) from AppA or AppB, then he/she will access it using the usernames that were used to log onto AppA or AppB respectively.
Identity Manager is used for authentication All unprotected resources in the Identity Manager must be listed as nonsecureURLs in the LW-SSO configuration. LW-SSO Limitations Domain Names To benefit from LW-SSO, a user must access their BTO applications such as Asset Manager using the Fully Qualified Domain Name (FQDN) in the login URL, e.g. http://fhedaraly.emea.hpqcorp.net:8080/AssetManager LW-SSO does not support URLs with an IP Address, e.g. http://16.59.45.143:8080/WebApp LW-SSO does not support URLs without a domain, e.g. http://flood:8080/WebApp LW-SSO framework integration Applications can leverage and use LW-SSO capabilities only if integrated within the LW-SSO framework in advance. Multi-domain support limitations Multi-domain functionality is based on the HTTP referrer. Therefore, n LW-SSO supports links from one application to another and does not support typing a URL into a browser window, except when both applications are in the same domain. Cross-domain linking using HTTP POST is not supported: n Multi-domain functionality does not support the first HTTP POST request to a second application (only the HTTP GET request is supported). For example, if your application has an HTTP link to a second application, an HTTP GET request is supported, but an HTTP FORM request is not supported. All requests after the first can be either HTTP POST or HTTP GET. LW-SSO Token size limitation: n The size of information that LW-SSO can transfer from one application in one domain to another application on another domain is limited to 15 Groups/Roles/Attributes (note that each item may be an average of 15 characters long). Linking from Protected (HTTPS) to non protected (HTTP) in a Multi domain n scenario: Multi-domain functionality does not work when linking from a protected (HTTPS) to a non protected (HTTP) page. This is a browser limitation where the referrer header is not sent when linking from a protected to a non-protected resource. For an example, see: http://support.microsoft.com/support/kb/articles/Q178/0/66.ASP
"Third-Party" cookies in Internet Explorer: In IE6, Microsoft added a module that supports the "Platform for Privacy Preferences (P3P) Project", which means that cookies coming from a "Third Party" domain are by default blocked in the "Internet" security zone. This means that session cookies are considered "Third party" cookies by IE as well, and therefore are blocked, causing LW-SSO to stop working. For details, see: http://support.microsoft.com/kb/323752/en-us Note: A possible solution is to add the launched application (or a DNS domain subset as *.mydomain.com) to the "Intranet"/"Trusted" zone on your computer (using the Internet Explorer menu optionTools/ Internet Options/ Security/ Local Intranet/ Sites/ Advanced), which causes the cookies to be accepted. Warning: Important: The LW-SSO session cookie is only one of the "Third party" application cookies that is blocked by this parameter.
SAML2 token related limitations When using a Java based application integrated with LW-SSO to access another Java based application also integrated with LW-SSO, do not use the SAML2 token. Using the SAML2 token in this case can lead to unexpected behavior. Use the LW-SSO token instead. The SAML2 token should only be used when one of the applications is not integrated with LW-SSO. Logout functionality is not supported when the SAML2 token is used. Therefore, if the SAML2 token is used to access a second application, then a user who logs out in the first application will not be logged out in the second application. The SAML2 token's expiration is not reflected in the application's session management. Therefore, if the SAML2 token is used to access a second application, then each application's session management will be handled independently of each other. When your application uses Container Managed Security in Tomcat or JBoss servers, it is recommended that you enable the AutoCookieCreation feature for proper SAML2 support. If AutoCookieCreation is disabled, you must comply with the following rules, otherwise LW-SSO will not be able to properly authenticate requests with SAML2. The first resource (for example, a JSP page) should create an HTTP session. n The first resource should not include any protected resources (for example, n JPEG images)
The HTTP session should not be erased until user closes browser.
Tomcat-related limitations JAAS Realm in Tomcat is not supported n Using spaces in Tomcat directories is not supported. n It is not possible to use LW-SSO when a Tomcat installation path (folders) includes spaces (e.g. Program Files) and the LW-SSO configuration file is located in the common\classes Tomcat folder. Load balancer configuration A load balancer deployed with LW-SSO must be configured to use sticky sessions. LW-SSO Important Notes LW-SSO Token expiration The LW-SSO Token's expiration value determines the application's session validity. Therefore, its expiration value should be at least the same value as that of the application session expiration value. Recommended configuration of the LW-SSO Token expiration Each application using LW-SSO should configure token expiration. The recommended value is 60 minutes. For an application that does not require a high level of security, it is possible to configure a value of 300 minutes. GMT time synchronization All applications participate in an LW-SSO integration must use the same GMT time with a maximum difference of 15 minutes. protectedDomains settings Multi domain functionality requires that all applications participating in LW-SSO integration configure the protectedDomains settings, if they are required to integrate with applications in different DNS domains. In addition, they must also add the correct domain in the lwsso element of the configuration. Get SecurityToken for URL functionality To receive information sent as SecurityToken for URL from other applications, the host application should configure the correct domain in the lwsso element of the configuration.
nonsecureURLs setting We recommend that you do not configure the application's Login and Logout URL's as the nonsecureURLs setting. Configuring them in this way may lead to unexpected behavior LW-SSO Known Problems IdM security and outbound web services Applications that are integrated with LW-SSO, that use IdM security as the security token for outbound web service security, will not be able to create or issue LW-SSO security tokens for UI (either automatically created or else). In this case, the LW-SSO configuration must include the following values:
enableAutoCreation = "false" enableCookieCreation = "false"
No support for mulitple attribute values The LW-SSO security context supports only one attribute value per attribute name. Therefore, when the SAML2 token sends more than one value for the same attribute name, only one value is accepted by the LW-SSO framework. Similarly, if the IdM token is configured to send more than one value for the same attribute name, only one value is accepted by the LW-SSO framework. Multi-domain logout functionality with Internet Explorer 7 Multi-domain logout functionality may fail when using Internet Explorer 7 and when the application is invoking more then 3 consecutive HTTP 302 redirect verbs in the logout procedure. In such a scenario Internet Explorer 7 may mishandle the HTTP 302 redirect response and display an "Internet Explorer cannot display the webpage" error page instead. As a workaround, we recommend that, if possible, you reduce the number of application redirect commands in the logout sequence. LW-SSO System Requirements The following versions and configurations of browsers and related technology are supported by LW-SSO version 2.1.1
Name Java HTTP Servlets API Internet Explorer Version 1.5 and higher 2.1 and higher 6.0 and higher Comments
Browser should enable HTTP session cookie and HTTP 302 Redirect functionality
Name FireFox
Comments Browser should enable HTTP session cookie and HTTP 302 Redirect functionality
JBoss 4.0.3 JBoss 4.3.0 Standalone Tomcat 5.0.28 Standalone Tomcat 5.5.20 Acegi 0.9.0 Acegi 1.0.4 Axis 1 - 1.4 Axis 2 - 1.2 JAX-WS-RI 2.1.1
Troubleshooting The following tables list possible problems associated with LW-SSO, together with possible causes and suggested solutions. LW-SSO related use cases
Problem Possible Cause Impossible to open web client Tomcat repertory has not been of a BTO application, for incorrectly refreshed. stance after deploying additional web applications to Tomcat. Possible Solution Example: delete C:\Tomcat55\webapps\AssetManager This folder will be dynamically recreated when you next attempt to access the web client. Manually delete the folder under Tomcat<xx>\webapps that corresponds to the application that does not open.
Problem LW-SSO cookie is not created after logging in to a BTO web application.
Possible Cause A domain is not defined properly in the LW-SSO element of the configuration.
You did not access the application with the Fully Qualified Domain Name (FQDN) in the login URL (for example: http://localhost:8080/WebApp) LW-SSO fails to create a A domain is not defined propcookie for AutoCookieCreation erly in the LW-SSO element functionality. of the configuration.
The LW-SSO token is not val- The two applications have difidated. ferent initString parameters in the crypto element of the configuration (or other crypto parameters). The GMT time difference between the two applications is greater than 15 minutes.
Possible Solution Ensure that the domain defined in the LW-SSO element of the configuration is equal to the application's domain. Make sure that the domain that is passed as a parameter to the enableSSO function is equal to the application's domain. Make sure that you access the application with the Fully Qualified Domain Name (FQDN) in the login URL (for example: http://flood.mercury.global:8080/WebApp). Make sure that the domain defined in the LW-SSO element of the configuration is equal to the application's domain. Use the same initString in both applications (in addition to all other crypto parameters in the LW-SSO creation element). Make sure that all applications participating in a LW SSO integration are set to the same GMT time, with a maximum difference of 15 minutes.
Possible Cause In the configuration of one of the applications, a domain is not defined properly in the LW-SSO element.
In the configuration of one of the applications, a domain is not defined correctly in the protectdDomains list. The LW-SSO session cookie is blocked/denied when using the Internet Explorer 6.0, 7.0 or 8.0 browsers.
Some applications have different initString parameters in the crypto element of the configuration (or other crypto parameters). Some applications have a GMT time difference greater than 15 minutes.
Multi domain link goes from the protected (HTTPS) to the Non protected (HTTP) resource.
Possible Solution The domain defined in the LW-SSO element of the application's configuration must be the same as the application's domain according to real domains in use. Make sure that the domains in the protectedDomains list of all of the applications' configurations are defined correctly. Add all LW-SSO servers to the "Intranet"/"Trusted" zone in the Internet Explorer security zones on your computer (Tools/ Internet Options/ Security/ Local Intranet/ Sites/ Advanced). This will allow all cookies to be accepted. Use the same initString in all applications (in addition to all other crypto parameters in the LW-SSO creation element). Make sure that all applications participating in a LWSSO integration are set to the same GMT time with a maximum difference of 15 minutes. When linking/crossing from one domain to another, make sure that the first link/cross request goes from one protected resource (HTTPS) to another protected resource (HTTPS).
Problem
Possible Solution Make sure that the privateKeyAlias or privateKeyPassword configuration for SAML2 creation is valid and point to a valid private key. A keystore configuration for Make sure that the keystore SAML2 validation is not valid. configuration for SAML2 validIt most likely does not point to ation is valid and points to a a valid keystore. valid keystore. A certificate used for signing Make sure that the certificate is not imported in the conused for signing in is imported figured keystore with a rein the configured keystore quired public key alias. with a required public key alias. Note: The public key alias may be configured in the SAML2 validation configuration or it can be passed in SAML2 token by the issuer. The element's roleAttribute- Make sure that the elements Name or groupAttributeroleAttributeName or Name defined in the SAML2 groupAttributeName is configuration is different to defined equally in all of the the one configured in the ap- applications' configurations as plications' configurations ele- in the SAML2 configuration. ment.
Possible Cause A privateKeyAlias or privateKeyPassword configuration for SAML2 creation is not valid. They might not be pointing to a valid private key.
This chapter explains how to manage deadlines (alarms, purchase request approvals, stock reordering, etc.) and automatic triggering of actions (automatic issuing of reminder messages, etc.). The administrator manages the monitoring of deadlines and the automatic triggering of actions using the Asset Manager Automated Process Manager program, which is independent of Asset Manager.
Expense line split operations associated with cost centers. Verification of history lines. n Workflow deadlines. n Searches for new workflow execution groups. n Execution of workflow rules. n Verification of time zones. n If justified to do so by the deadlines, Asset Manager Automated Process Manager performs actions, such as issuing reminder messages in the Asset Manager database via the internal messaging system. If necessary, it calculates contract rent, lease contract loss-values, etc.
n
Warning: When you exit Asset Manager Automated Process Manager, all automatic monitoring functions are suspended if they have not been launched as services. It is possible to launch Asset Manager Automated Process Manager on several different machines. Therefore, deadlines to monitor and tasks to perform can be shared by different instances of Asset Manager Automated Process Manager. This enables you to improve the performance of Asset Manager Automated Process Manager. Note: You must make sure that a given task is only performed by one single instance of Asset Manager Automated Process Manager. You can use the same Login to connect to the database. This login must have administration rights.
In case of modification of the structure of the database If you modify the structure of the database via Asset Manager Application Designer or via the Configure object command in the shortcut menu, you must disconnect Asset Manager Automated Process Manager from the database and then reconnect.
Warning: The login is that of an Asset Manager administrator (either "Admin", or a user login with administration rights). Strings between <> should have no spaces. Example:
The
icon.
Disconnecting Asset Manager Automated Process Manager from a database To disconnect Asset Manager Automated Process Manager from the database, use one of the following: n The File/ Disconnect from database menu.
n
The
icon.
Refer to the Installation and upgrade guide for information concerning the compatibility and installation of Asset Manager on Unix.
The main window displays all events handled by Asset Manager Automated Process Manager. It enables you to access the following program menus and icons:
Table 13.1. Asset Manager Automated Process Manager program menus and icons Icon Menu File/ Connect to database File/ Disconnect from database Action/ Activate Action/ Empty list Action/ Connect to messaging Function Connect to a database. Disconnect from the database. Selectively activate deadline monitoring agents. Clear messages from main screen. Try to connect to external messaging systems. This button is grayed out if the connection is successful. If the connection fails, this button is available. Click to test the connection.
Whenever the list of events becomes too large, you can use the Action/ Empty list command to empty it.
Log file
File This file stores the messages displayed in the main window of Asset Manager Automated Process Manager. Max. size This field enables you to limit the size of the file that logs the messages shown in the main screen of Asset Manager Automated Process Manager. When this limit is reached, the oldest messages are deleted as and when new messages are recorded.
Time zones
In the Time zones frame of the configuration screen, you configure the type of test to be performed: Verify time zone of database server. n Verify local time compared to that of the server. n These two tests compare the time of the database server with that of the machine on which Asset Manager Automated Process Manager is installed. The time difference is expressed as [(n * 30minutes) + m] where m is between -15 minutes and + 15 minutes. In both cases If the time difference exceeds 5 minutes, Asset Manager Automated Process Manager offers to update the local time on the machine on which it is installed. If you refuse this update (for example, if you think that it is the time of the server that requires changing), the connection is refused. You can connect again once the difference between the two times no longer exceeds five minutes (resulting from either a modification to the time of the database server and/or
of the machine on which Asset Manager Automated Process Manager, is installed). Specific aspects of the Verify time zone of database server option If necessary, the information about the time zone of the server in the table of options of Asset Manager is updated (if the number (n * 30 minutes) does not correspond to the time zone of the server). To do this, the machine on which Asset Manager Automated Process Manager is running must have the correct time and have the correct information about daylight saving changes. Specific aspects of the Verify local time compared to that of the server option The time zone of the server, necessary for internal operations of Asset Manager, is recovered. Note: Whichever option you select, the tests are performed when Asset Manager Automated Process Manager connects to the database, then regularly according to the frequency defined in Asset Manager Automated Process Manager's Configuration of modules window (Tools/ Configure modules... menu).
The following sections describe each one of the modules managed by Asset Manager Automated Process Manager. These modules are identified by the description and the name that is listed in Asset Manager Automated Process Manager.
Monitoring times Periodical You can define two frequencies for the verification of a module that depend on the time of day. The first During period frequency applies to scheduled periods that you can create in two ways: Graphically, using the schedule bar. Click and drag on this bar to create a n schedule period. Directly, by entering an itemized list of values in the field to right of the n schedule bar. The following syntax is used:
<Start time of period> - <End time of period>
The time format defined in Asset Manager must be respected. To indicate several periods of time, you just need to separate them with semi-colons ";". The second Outside of period frequency is applied outside of those scheduled periods you have defined. Example:
Itemized list You can enter those times you want the verification to be carried out on in the field to the right. The time format defined in Asset Manager must be respected. n The semi-colon ";" is used to separate them. n Example:
Preview You can have a preview of: n A rule defining the monitoring schedules of a module in the Preview field of a rule description sub-tab. n All the rules concerning a module in the Preview sub-tab of the Modules tab, once the module is selected.
Add the computers listed in the NT domain to the database module (AddCpu)
Asset Manager Automated Process Manager enables you to program the recovery of those computers declared in the NT domain. The domain to analyze is specified at the HP Connect-It addcpu.scn scenario. Before activating the Add the computers listed in the NT domain to the database module, you need to verify that the following parameters are correct: Parameters of the Asset Manager Automated Process Manager module Add n the computers listed in the NT domain to the database. Parameters of the HP Connect-It addcpu.scn scenario, which is located in n the scenario\ntsec\ntac93 sub-folder of the HP Connect-It installation folder. Parameters of the module Add the computers listed in the NT domain to the database (User data item field). Here is the parameter line by default:
"$connectit_exedir$/conitsvc.exe" -once -wpplog '$connectit_exedir$/../sce nario/ntsec/ntac$version$/addcpu.scn' -dc:AssetCenter.SERVER=$cnx$ -dc:AssetCenter.LOGIN=$login$ -dc:AssetCenter .TEXTPASSWORD=$pwd
Information about certain parameters in this line: $connectit_exedir$ stores the path of the conitsvc.exe program in n the Windows Registry. You do not need to modify this parameter. -once indicates that conitsvc.exe must be executed one time (in other n words, using HP Connect-It's Once scheduler.). Do not modify this parameter; you define the programming at the level of the Asset Manager Automated Process Manager application. -wpplog is used to generate an execution log of the scenario in a format n readable by Asset Manager Automated Process Manager. $connectit_exedir$/../scenario/ntsec/ntac93/addcpu.scn is n the path to the HP Connect-It scenario to use. Modify this parameter if you want to use another HP Connect-It scenario. -d:Asset Manager.SERVER=$cnx$ -d:Asset Manager.LOGIN=$login$ n -d:Asset Manager.TEXTPASSWORD=$pwd$ stores the Asset Manager connection name opened by Asset Manager Automated Process Manager, as well as the login and password used for the connection. These parameters overwrite the values defined at the level of the Asset Manager connector in the addcpu.scn scenario. You have no need to modify these parameters.
Parameters of the addcpu.scn HP Connect-It scenario To modify the addcpu.scn scenario: 1 Execute the HP Connect-It scenario editor. 2 Open the addcpu.scn scenario, which is located in the scenario\ntsec\ntac93 sub-folder of the HP Connect-It installation folder. 3 Select the NT Security connector in the Scenario diagram window by clicking on the title bar of the NT security box; not inside of the box itself. 4 Select the Tools/ Configure menu. 5 Click Next. 6 Populate the Domain(s) field with the name of the domain from which you want to import the computers. Warning: The computers that can be recovered are: Those with the same domain as the one to which Asset Manager Automated n Process Manager is connected. Those domains that are trusted by the one to which the Asset Manager n Automated Process Manager is connected. Tip: To find out whether or not a computer has been recovered: 1 Execute the Windows explorer on the Asset Manager Automated Process Manager machine. 2 Display the network neighborhood. 3 The computers that you see are those from which Asset Manager Automated Process Manager could recover information. To find out which information is populated in the Asset Manager database, examine in detail the addcpu.scn scenario. The module populates the Next scan field (dtNextScan) in the Computers table (amComputer) with the date of the module's execution at 00:00. To learn how the NT Security connector works, refer to the HP Connect-It Connectors guide, chapter Application connectors, section NT Security connector. To learn how the Asset Manager connector works, refer to the HP Connect-It Connectors guide, chapter Hewlett-Packard connectors, section Asset Manager connector.
Information about certain parameters in this line: $connectit_exedir$ stores the path of the conitsvc.exe program in n the Windows Registry. You do not need to modify this parameter. -once indicates that conitsvc.exe must be executed one time (in other n words, using HP Connect-It's Once scheduler.). Do not modify this parameter; you define the programming at the level of the Asset Manager Automated Process Manager application. -wpplog is used to generate an execution log of the scenario in a format n readable by Asset Manager Automated Process Manager. $connectit_exedir$/../scenario/ntsec/ntac93/adduser.scn is n the path to the HP Connect-It scenario to use. Modify this parameter if you want to use another HP Connect-It scenario. -d:Asset Manager.SERVER=$cnx$ -d:Asset Manager.LOGIN=$login$ n -d:Asset Manager.TEXTPASSWORD=$pwd$ stores the Asset Manager connection name opened by Asset Manager Automated Process Manager, as well as the login and password used for the connection. These parameters overwrite the values defined at the level of the Asset Manager connector in the adduser.scn scenario.
You have no need to modify these parameters. Parameters of the adduser.scn HP Connect-It scenario To modify the adduser.scn scenario: 1 Execute the HP Connect-It scenario editor. 2 Open the adduser.scn scenario, which is located in the scenario\ntsec\ntac93 sub-folder of the HP Connect-It installation folder. 3 Select the NT Security connector in the Scenario diagram window by clicking on the title bar of the NT security box; not inside of the box itself. 4 Select the Tools/ Configure menu. 5 Click Next. 6 Populate the Domain(s) field with the name of the domain from which you want to import the computers. Tip: If you want to explore several domains, we recommend creating a HP Connect-It scenario and Asset Manager Automated Process Manager module per domain. Warning: The users that can be recovered are: Those on the same domain as the one to which the Asset Manager Automated n Process Manager user is connected. Those domains that are trusted by the one to which the Asset Manager n Automated Process Manager user is connected. Tip: To find out if a machine can be recovered: 1 Execute the Windows explorer on the Asset Manager Automated Process Manager computer. 2 Make a folder into a shared folder. 3 Define the permissions for this shared folder. 4 Add a user to the permissions. 5 The users that you see are those from which Asset Manager Automated Process Manager could recover information. To find out which information is populated in the Asset Manager database, examine in detail the adduser.scn scenario.
To learn how the NT Security connector works, refer to the HP Connect-It Connectors guide, chapter Application connectors, section NT Security connector. To learn how the Asset Manager connector works, refer to the HP Connect-It Connectors guide, chapter Hewlett-Packard connectors, section Asset Manager connector.
The Recalculation effective from field, proper to each rent, sets the date from which past and present expense lines associated with a periodic rent are recalculated. The lessee may directly modify the recalculation date of the non-projected expense lines by directly modifying the Recalculation effective from field. This flexibility enables you to recalculate erroneous expense lines in case of a change in tax rates, for example.
Loan payments Asset Manager Automated Process Manager regularly checks whether expense lines require generating or recalculating for all loan amortization schedules. Parameters Note: This section only applies to rent payments; It does not apply to loans. The User data item field is used to set the rent generation parameters. The syntax of this field is as follows:
<Duration>d
This duration set the number of days for which the calculation is made. For example, if you want to calculate rent over a period of 90 days, enter the following value:
90d
Note: The maximum number of rent calculations made per transaction is specified by the UserData entry in the Amsrv.cfg configuration file. Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. Asset Manager Automated Process Manager generates the projected expense lines for the specified period. In order to not generate any, you just need to set this field to 0. Example Let's consider the following configuration: The contract is effective from July 1, 2004 through July 1, 2007. n The rent is payable monthly on the first day of the month. n
Asset Manager Automated Process Manager verifies rent payments every 2 months and generates projected rent payments for the next 12 months. On July 1, 2005, Asset Manager Automated Process Manager is launched for the first time: it generates: Past rents from July 1, 2004 through July 1, 2005. n The present rent on July 1, 2005. n The projected rents from August 1, 2005 through July 1, 2006. n
n
Following these calculations, the Recalculation effective from field indicates the date of the last non-projected expense line, i.e. July 1, 2005. Asset Manager Automated Process Manager runs in the background: 2 months later on September 1, 2005, it generates: The projected rents from October 1, 2005 through September 1, 2006. n Past or present rents for which the payment date is later than that contained n in the Recalculation effective from field, i.e. the rents from August 1, 2005 through October 1, 2005.
Utility of this mode Assigning this task to Asset Manager Automated Process Manager rather than the Asset Manager application can increase the performances of those users receiving orders. Frequency of execution We recommend that you execute this module several times a day if you want the users to be able to quickly access the items received in their respective tables.
Alarms defined at suspension slip level Asset Manager Automated Process Manager monitors suspended Helpdesk tickets. When the suspension time limit (in the Suspend tab of the suspension slip detail) is overrun, Asset Manager Automated Process Manager automatically triggers the action defined in the Suspend tab of the suspension slip detail.
Log event and process immediately: As soon as the event occurs, Asset Manager Automated Process Manager saves it to the table with SQL name "amWfOccurEvent", and activates the transition. Process event immediately without logging: As soon as the event occurs, Asset Manager Automated Process Manager activates the transition.
Activation of transitions Asset Manager Automated Process Manager activates the transitions for events according to the frequency defined in the configuration screen. The following events are concerned: System events. n Database and Periodical type events whose processing mode is set to Log n event and process by server. Execution of tasks Asset Manager Automated Process Manager executes tasks resulting from Automatic action or Test / script type activities, except in the possible case of tasks resulting from activities whose Execute actions immediately (SQL name: bExecImmediately) box is selected. The frequency with which Asset Manager Automated Process Manager verifies and performs the tasks it has to carry out is indicated in the configuration screen of Asset Manager Automated Process Manager. In the case of a task originating from an Automatic action or Test / script type activity whose Execute actions immediately box (SQL name: bExecImmediately) is checked: This task is executed by Asset Manager Automated Process Manager if it n is Asset Manager Automated Process Manager that activates the transition creating the task. In this case, Asset Manager Automated Process Manager performs the task as soon as the transition it creates is activated. Otherwise, the Asset Manager client machine executes the task. n
Deletion field (seStatus) of the Input events table (amInputEvent). Expiration time defined by the Events management/ Expiration time for input events (hours), accessible via the Administration/ Database options menu in the Asset Manager application.
Deletion field (seStatus) of the Output events table (amOutputEvent). Expiration time defined by the Events management/ Expiration time for output events (hours), accessible via the Administration/ Database options menu in the Asset Manager application.
This message indicates that Asset Manager Automated Process Manager has not been launched on this database for over one hour and that without this process, monitoring functions will be interrupted. If the database server goes without receiving a signal from Asset Manager Automated Process Manager for over a week, it is no longer possible to connect to the database.
An Asset Manager agent modifies the Split operation status field (seSplitStatus) so it displays "Not split" at the level of the expense lines highest up in the split operation. When these high-level expense lines were split, they generated the expense lines belonging to the deleted cost center (after any intermediate split operations). When Asset Manager Automated Process Manager finds these expense lines, which are not split but have generated split expense lines, it deletes all the expense lines resulting from their split operations. In doing this, Asset Manager Automated Process Manager deletes the expense lines that, when split, generated the expense lines belonging to the deleted cost center. Then Asset Manager Automated Process Manager performs the split operations on those expense lines, which have not yet been split. It thus recalculates, using new parameters, all the expense lines that, when split, generated the expense lines of the deleted cost center. Detach all linked records In this case: The expense lines of the deleted cost center are no longer associated with a n cost center. The expense lines, which when split generated the expense lines for the n deleted cost center are split again. The expense lines, resulting from split operations on the deleted cost center, n are not modified. Attach linked records to another record In this case, you select another cost center X, which takes the place of the deleted cost center: The expense lines of the deleted cost center are attached to cost center X. n The expense lines, which when split generated the expense lines for the n deleted cost center, are split again; cost center X is considered as the new target cost center. The expense lines resulting from split operations on the deleted cost center n are deleted and the expense lines of cost center X are split.
At the contract level Several key dates are monitored: n The end-of-term date: Contract detail, General tab, End field (SQL name: dEnd). If the contract Type (SQL name: seType) is Lease schedule or Master n lease (leasing), alarms can be attached to the end of term option notice dates. These dates are shown to the right of the Buyout notice period, Renewal notice period or Return notice period fields on the sub-tabs where the possible end of term options, Renewal, Buyout, Return, are described. If the contract Type (SQL name: seType) is Lease schedule, alarms can n be attached to contract rent end dates in the Schedule frame of the Rents tabs. At the purchase request level If the acquisition method of the purchase request (Purchase request detail, Financing tab, Acq. method field (SQL name: seAcquMethod)) is set to Lease, Rental or Loan, it is possible to define an alarm associated with the rental, lease or loan end dates (Acq. method field on the Financing tab of the purchase request detail). The same is true for estimates and orders. What happens in two-level alarms when the first level action has been triggered? In the case of alarms with 2 levels, the triggering of the second level alarm depends on the action carried out at the first level. If the first-level alarm triggers an action other than the sending of a message n via Asset Manager's internal messaging system (such as sending a message via a third-party messaging system), the second-level alarm will always be triggered at the defined moment. If the first level-alarm sends a message to a group of Asset Manager users n via the internal messaging system, the action defined at the second level will not be triggered if one or more of the recipients has read the message.
Asset Manager Automated Process Manager checks at regular intervals, as defined in the Trigger the periodical chargeback rules module, whether to verify the chargeback system scheduler. This is determined by comparing the value of the Last execution of the rule field (dtLastExec) in the chargeback systems with the execution frequency of the scheduler. After executing a chargeback rule, Asset Manager Automated Process Manager stores the date and time of execution in the Last execution of the rule field (dtLastExec). If an expense line cannot be generated, Asset Manager Automated Process Manager creates a chargeback event. You can consult the list of chargeback events in the Events tab of a chargeback system and identify the cause. To configure the Trigger the periodical chargeback rules module, select the Enabled option, and populate the triggering calendar of the module; The User data field does not need to be populated.
Asset Manager Automated Process Manager calculates the quantity of items actually available from the Assignments field in the detail of a portfolio item. When the quantity falls below the value specified in the Reorder level (SQL name: lReordLevel) field of the stock rule detail, Asset Manager Automated Process Manager automatically creates a purchase request. The parameters of the purchase request can be found in the n Auto-request and Management tabs of the detail of the stock.
n
The purchase request specifies the quantity to be reordered (To order field (SQL name: lQtyToOrder) in the detail of the stock rule).
For as long as the request is not fully received, Asset Manager Automated Process Manager does not verify the stock rule that it has generated. Therefore, no new request is sent. As soon as delivery of the request is taken in full, Asset Manager Automated Process Manager: Readjusts the stock levels. n n Erases the contents of the Request line field (SQL name: ReqLine) in the stock rule detail. Reactivates the stock rule. n
Update the database using Enterprise Discovery inventory results module (EdAc)
This module lets you program the import of the results of the inventory executed by the software distribution tool into the Asset Manager database. Importing is done by HP Connect-It scenario edac.scn. Before activating the Update the database using Enterprise Discovery inventory results module, you need to verify that the following parameters are correct: Parameters of the Asset Manager Automated Process Manager Update the n database using Enterprise Discovery inventory results module. Parameters of the HP Connect-It edac.scn scenario, which is located in n the scenario\ed\ed<HP Discovery and Dependency Mapping Inventory version number>ac<Asset Manager version number> sub-folder of the HP Connect-It installation folder. Once these parameters are correct: Display the detail of the Update the database using Enterprise n Discovery inventory results module. n Select the Enabled option.
n
Parameters of the Update the database using Enterprise Discovery inventory results module (User data item field). Here is the parameter line by default:
"$connectit_exedir$/conitsvc.exe" -once -wpplog '$connectit_exedir$/../sce nario/ed/ed2ac$version$/edac.scn' -dc:'Asset Management.SERVER'=$cnx$ -dc:'Asset Management.LOGIN'=$login$ dc:'Asset Management.TEXTPASSWORD'=$pwd$
Information about certain parameters of this line: $connectit_exedir$ stores the path of the conitsvc.exe program in the n Windows Registry. You do not need to modify this parameter. -once indicates that conitsvc.exe must be executed one time (in other n words, using HP Connect-It's Once scheduler). Do not modify this parameter; you define the programming at the level of the Asset Manager Automated Process Manager application. -wpplog is used to generate an execution log of the scenario in a format n readable by Asset Manager Automated Process Manager. $connectit_exedir$/../scenario/ed/ed2ac$version$/edac.scn n is the path to the HP Connect-It scenario to use. Modify this parameter if you want to use another HP Connect-It scenario. -dc:'Asset Management.SERVER'=$cnx$ -dc:'Asset n Management.LOGIN'=$login$ -dc:'Asset Management.TEXTPASSWORD'=$pwd$ stores the Asset Manager connection name opened by Asset Manager Automated Process Manager, as well as the login and password used for the connection. These parameters overwrite the values defined at the level of the Asset Manager connector in the edac.scn scenario. You do not need to modify these parameters. Parameters of HP Connect-It scenario edac.scn. To modify the edac.scn scenario: 1 Start the HP Connect-It scenario editor. 2 Open the edac.scn scenario, which is located in the ed/ed2ac<Asset Manager version number > sub-folder of the HP Connect-It installation folder. 3 Select the Enterprise Discovery connector in the Scenario diagram window by clicking the Enterprise Discovery title bar (but not anywhere in the box). 4 Select the Tools/ Configure menu. 5 Populate the pages in the wizard.
6 Click Finish to confirm. To find out which information is populated in the Asset Manager database, examine in detail the edac.scn scenario.
Update mobile devices in the database using Enterprise Discovery inventory results (EdAcMD) module
This module lets you program the import into the Asset Manager database of the results of the mobile devices inventory executed by the software distribution tool. The import is carried out by the edac-mobiledevices.scn HP Connect-It scenario. Before activating the Update mobile devices in the database using Enterprise Discovery inventory results module, you need to verify that the following parameters are correct: Parameters of the Asset Manager Automated Process Manager Update n mobile devices in the database using Enterprise Discovery inventory results module. Parameters of the HP Connect-It edac-mobiledevices.scn scenario, n which is located in the scenario\ed\ed<HP Discovery and Dependency Mapping Inventory version number>ac<Asset Manager version number> sub-folder of the HP Connect-It installation folder. Once these parameters are correct: Display the detail of the Update mobile devices in the database using n Enterprise Discovery inventory results module. n Select the Enabled option
n
Parameters of the Update mobile devices in the database using Enterprise Discovery inventory results module (User data item field). The default command line parameters are as follows:
"$connectit_exedir$/conitsvc.exe" -once -wpplog '$connectit_exedir$/../sce nario/ed/ed2ac$version$/edac-mobiledevices.scn' -dc:'Asset Management.SERVER'=$cnx$ -dc:'Asset Management.LOGIN'=$login$ dc:'Asset Management.TEXTPASSWORD'=$pwd$
Information about certain parameters of this line: $connectit_exedir$ stores the path of the conitsvc.exe program in the n Windows Registry. You do not need to modify this parameter. -once indicates that conitsvc.exe must be executed one time (in other n words, using HP Connect-It's Once scheduler).
HP Asset Manager 9.30 - Administration | 261
Do not modify this parameter. Scheduling information is defined in Asset Manager Automated Process Manager. -wpplog is used to generate an execution log of the scenario in a format which can be read by Asset Manager Automated Process Manager. $connectit_exedir$/../scenario/ed/ed2ac$version$/edac-mobiledevices.scn specifies the path of the HP Connect-It scenario to use. Modify this parameter if you want to use another HP Connect-It scenario. -dc:'Asset Management.SERVER'=$cnx$ -dc:'Asset Management.LOGIN'=$login$ -dc:'Asset Management.TEXTPASSWORD'=$pwd$ stores the Asset Manager connection name opened by Asset Manager Automated Process Manager, as well as the login and password used for the connection. These parameters overwrite the values defined for the Asset Manager connector in the edac-mobiledevices.scn scenario. You do not need to modify these parameters.
Parameters of the edac-mobiledevices.scn HP Connect-It scenario To modify the edac-mobiledevices.scn scenario: 1 Start the HP Connect-It scenario editor. 2 Open the edac-mobiledevices.scn scenario, which is located in the ed/ed2ac<Asset Manager version number> sub-folder of the HP Connect-It installation folder. 3 Select the Enterprise Discovery connector in the Scenario diagram window by clicking the Enterprise Discovery title bar (do not click anywhere else in the box). 4 Select the Tools/ Configure menu. 5 Populate the pages in the wizard. 6 Click Finish to validate your input. To find out which information is populated in the Asset Manager database, examine in detail the edac-mobiledevices.scn scenario.
Enabling Web access to the Asset Manager Automated Process Manager service To enable Web access: Select a connection to a database. n n Select the Use this connection in service mode option. You can also: Edit the amsrvcf.ini file. n Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. In the [GLOBAL] section, modify the value of the "WebAdmin" key: If WebAdmin = 1, Web access is enabled. n If WebAdmin = 0, Web access is disabled. n In the [GLOBAL] section, check the value of the TCP/IP port used by the Asset Manager Automated Process Manager service. This value is stored in the "WebPort" key and is by default equal to 82. Modify this value if this port is already used by another program. Important: In Unix, the value of the port that is used must be superior to 1024. This is due to inherent reasons of security in the operating system. Start the Asset Manager Automated Process Manager service To start the Asset Manager Automated Process Manager NT service: 1 In Control Panel, click the Services utility. 2 Select the Asset Manager Automated Process Manager service. Then, if you want to start the service straightaway: Click Start. In the case of the Asset Manager Automated Process Manager u service, we advise against specifying any parameters directly in the Startup Parameters field. If you want to configure the Asset Manager Automated Process Manager service: 1 Click the Startup button. 2 Specify whether you want the Startup Type to be: Automatic: In this case, the service is launched when Windows is n started. Manual: In this case, the service must be launched manually by clicking n Start in the Windows NT services utility. Disabled: In this case, the NT service cannot be launched. n
Accessing the Asset Manager Automated Process Manager service via the Web
Note: Warning: In order to be able to access the Asset Manager Automated Process Manager service via the Web, the service must be started. Then, to access the Asset Manager Automated Process Manager service: 1 Launch your usual Web browser. 2 Enter the address of the computer on which the Asset Manager Automated Process Manager service is running, followed by the TCP/IP port number used by the Asset Manager Automated Process Manager service on this machine. The address of the computer and the port are separated by a colon ":". Examples of addresses: "http://colombo.taltek.com:82". n "http://laguardia.taltek.com:800". n It is also possible to enter the TCP/IP address of the computer on which the Asset Manager Automated Process Manager service is running, followed by the value of the port. Example: "127.0.0.1:82". 3 The Home Page is opened. Click the Connect button in this page. 4 A window authorizing access to the Asset Manager Automated Process Manager service is displayed. Use it to enter: 1 A "UserName": "WebAdmin". 2 The password associated with the "WebAdmin" UserName. By default, this password is empty.
Driving the Asset Manager Automated Process Manager service via the Web
This section describes the commands you have at your disposal once connected to the Asset Manager Automated Process Manager service. Connect to new database Using this command, you can: Connect manually to an Asset Manager database. n Configure Asset Manager Automated Process Manager service to connect n automatically to an Asset Manager database at startup. To do this: 1 Check the Reconnect at startup option.
2 Enter the name of the database connection to which the Asset Manager Automated Process Manager service must reconnect automatically. 3 Specify the Login name and password. Note: You can also configure the automatic connection of the Asset Manager Automated Process Manager service via the "AutoLogin" key in the "Database" section of the amsrvcf.ini file. AutoLogin = 0: Automatic connection disabled. AutoLogin = 1: Automatic connection is enabled. Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. Status of the server This command displays the last 100 messages from the Asset Manager Automated Process Manager log file. These messages are similar to those shown in the main window in the GUI version of Asset Manager Automated Process Manager. Click Clear to clear the all the messages displayed. Note: The maximum number of messages cannot be modified. Configure Using this command, you can define which modules are to be verified. Note: You cannot modify the verification schedules concerning the modules via the Web. To do this, you must use the Options/ Configure menu in Asset Manager Automated Process Manager's graphical interface. Activate Select this command to activate certain verifications straightaway. WebAdmin password Use this command to modify the "WebAdmin" password. By default, this password is empty.
Exit Click this command to disconnect from the Asset Manager Automated Process Manager service. Note: There is an automatic disconnection option in case of inactivity. This option is defined by the "TimeOut" key in the [SESSION] section of the amsrvcf.ini file. By default, it is set to 10 minutes. Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files.
14 Messaging
Asset Manager gives you the possibility of managing two types of messages: Messages issued from Asset Manager and sent to the Asset Manager n database via its internal messaging system. Messages created in Asset Manager and sent via an external messaging n system. This chapter details the configuration required to use the messaging system depending on the protocol used.
Overview of messaging
Asset Manager manages message-sending by using the following protocol types: AM (Asset Manager) n SMTP n MAPI n VIM n When receiving messages, Asset Manager only manages those messages using the AM (Asset Manager) protocol.
Refer to the Advanced use guide, section Messaging, for information about how to send, consult and receive messages.
Multiple recipients
Whatever protocol you use, you have to respect the following syntax in order to send a message to several recipients:
SMTP:[[email protected]], SMTP:[[email protected]]
For example:
SMTP:[email protected], SMTP:[email protected]
SMTP protocol
Detail of the user In order to send a message, Asset Manager needs to know the account of the sender, specified in the Employees and departments (amEmplDept) table (Messaging tab), and the messaging address of the recipient, specified in an action. Configuring the sender The account of the sender is identified by the following fields: n n Account (SQL name: MailLogin): this must be in the form:
SMTP:[name]
n
Password (MailPassword): Leave this field empty, unless your SMTP server requires a login.
Populate the Email field of the General tab with the following syntax:
SMTP:[[email protected]]
Configuring the receiver The recipient is identified by the To field (SQL name: MsgTo) in the detail of a messaging-type action. The Email can be sent either in plain text or HTML format. n Populate the To field (and the optional Cc and Bcc fields, if you wish) with the appropriate address, in the following manner:
SMTP:[[email protected]]
In this example, the To field is populated with the contents of the Email field, in the General tab of a user's detail. The administrator is put in copy. Select the HTML format (bHTML) option and enter the message contents in HTML tags if you want the Email to be sent in HTML format. Note: The HTML format is only applicable for messages sent in SMTP protocol.
Messaging parameters in mail.ini To use the messaging system in Asset Manager, you must manually create the mail.ini file and add the following command lines:
[mail] SMTP=1 SMTPserver=[server name] email=[messaging address@domain name] displayname=[user's full name]
Example
[mail] SMTP=1 SMTPserver=mail.prgn.com [email protected] displayname=Steven Blaine
Note: The mail.ini file must be created under a specific folder, the location of this file is: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. This applies to both Windows and UNIX platforms.
MAPI protocol
Detail of the user In order to send a message, Asset Manager needs to know the account of the sender, specified in the Employees and departments table (Messaging tab), and the messaging address of the recipient, specified in an action. Configuring the sender The profile of the sender is identified by the following fields: n n Account (SQL name: MailLogin): Populate the field in the following manner:
To find out the name of the user profile, look in the Windows Configuration Panel and click the Mail icon. In the window that appears, click Show Profiles.
n
Populate the Email field of the General tab with the following syntax:
MAPI:[mailbox name]
Configuring the receiver The recipient is identified by the To field (SQL name: MsgTo) in the detail of a messaging-type action. Populate the To field (and the optional Cc and Bcc fields, if you wish) with the appropriate address, in the following manner:
MAPI:[mailbox name]
In this example, the To field is populated with the contents of the Email field, in the General tab of a user's detail. Messaging parameters in mail.ini To use the messaging system in Asset Manager, you must manually create the mail.ini file and add the following command lines:
MAPI=1 MAPIX=1
Note: The mail.ini file must be created under a specific folder, the location of this file is: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. This applies to both Windows and UNIX platforms.
VIM protocol
Detail of the user In order to send a message, Asset Manager needs to know the account of the sender, specified in the Employees and departments table (Messaging tab), and the messaging address of the recipient, specified in an action.
Configuring the sender The account of the sender is identified by the following fields: n n Account (SQL name: MailLogin): this must be in the form:
VIM:[name/domain]
Populate the Email field (SQL name: Email) of the General tab with the following syntax:
VIM:[name/domain]
Configuring the receiver The recipient is identified by the To field in the detail of a messaging-type action. Populate the To field (and the optional Cc and Bcc fields, if you wish) according to the following syntax:
VIM:[name/domain]
In this example, the To field is populated with the contents of the Email field, in the General tab of a user's detail. The administrator is put in copy. Windows configuration You must configure the Windows Path in order for Asset Manager to be able to manage the VIM protocol. Depending on your version of Windows, the procedure differs slightly. 1 Note the access path to the vim32.dll file (located in your Lotus Notes folder). 2 Edit the computer's Path variable to include the path to this directory. Messaging parameters in mail.ini To use the messaging system in Asset Manager, you must manually create the mail.ini file and add the following command line:
SMI=1
Note: The mail.ini file must be created under a specific folder, the location of this file is: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. This applies to both Windows and UNIX platforms.
AM protocol
Configuring the sender In order for an internal message to be sent, the user must be registered in the Employees and departments table (amEmplDept) and have a login: n The login of the user is specified in the Employees and departments (amEmplDept) table (Profile tab).
You must also populate the Email field in the General tab of the user with the following syntax:
AM:[user login]
Configuring the receiver The messaging address of the recipient, specified in a messaging-type action, must be entered: u Populate the To field (and the optional Cc and Bcc fields, if you wish) in the following manner:
AM:[login of recipient]
In this example, the To field is populated with the contents of the Email field, in the General tab of a user's detail.
Web client: by selecting the action from the Action drop-down list or the shortcut menu on the context table screen.
Automatically, via Asset Manager Automated Process Manager. Automatically, via Asset Manager. n The creation of messaging-type actions is described the Advanced use guide, Actions chapter, section Creating an action/ Populating the Messaging tab.
n
Troubleshooting
"Connection to messaging system 'XXX': no messaging system specified. Verify the prefix of the messaging account in the 'Profile' tab in the employee detail." You need to prefix the Account field (SQL name: MailLogin) in the Messaging tab in the employee detail by: "MAPI:" if you use a MAPI standard messaging system (Microsoft Outlook, n Microsoft Exchange, etc.). "VIM:" if you use a VIM standard messaging system (Lotus Notes, CCMail, n etc.). "SMTP:" if you use an SMTP standard messaging system (Internet standard). n "Unable to connect to messaging 'XXX'." The Account field in the Messaging tab of the employee detail is correctly prefixed by "MAPI:" or "VIM:", but the name of the account is incorrect. Verify that this has been correctly entered. "Messaging account 'VIM': a password must be given (this cannot be empty). If you use a VIM messaging system, you must specify a password in the Password field (MailPassword), in the Messaging tab of the employee detail. The password cannot be empty. "Messaging account 'XXX': incorrect password." The password specified in the Password field in the Messaging tab of the employee detail is incorrect.
"Message not sent to 'XXX': messaging not available." This reveals a problem in the mail.ini file. In order for Asset Manager to work correctly with MAPI messaging systems, the mail.ini file must contain the following lines in the [Mail] section: MAPI=1 MAPIX=1 In order for Asset Manager to work correctly with VIM messaging systems, the mail.ini file must contain the following line in the [Mail] section: SMI=1 In order for Asset Manager to work correctly with SMTP messaging systems, the mail.ini file must contain the following lines in the [Mail] section: SMTP=1 SMTPServer=<Outgoing mail server> The following lines are optional: SMTPPort=<Port number of outgoing mail server> (25 by default) SMTPTimeOut=<Timeout value> (20 seconds by default) These four lines are not exclusive. If one of these lines is not present or its value is set to 0, you need to verify the proper functioning of the corresponding messaging system. To do this, use a program such as Microsoft Internet Mail for MAPI and Lotus Notes for VIM. If the messaging is working and you are not in the case described below, you can modify the [Mail] section of the mail.ini file as shown above. Warning: If MAPI is set to 1 but not MAPIX, it is possible that the messaging system does not support extended MAPI. Verify whether this is the case. Asset Manager cannot function correctly if the messaging system is not compatible with extended MAPI. "Error opening VIM session: password required" A password is required with "VIM" messaging systems. Add this password in your messaging system. Then indicate it in Asset Manager in the Password field (MailPassword), in the Messaging tab of the employee detail. "Error opening VIM session: Incorrect password" The password is invalid. Modify the value of the Password field (MailPassword), in the Messaging tab of the employee detail.
"Message container is corrupt" or "The configuration of your station is invalid". The VIM protocol recovers the information linked to the name and the location of the Lotus Notes notes.ini file. If this information is incorrect, you cannot send messages. Edit and modify the parameters in this file accordingly.
Overview
A planner viewer page can be added to: The detail of a table using Asset Manager Application Designer. n To a wizard, using Asset Manager. n This is only true if you have at least the following information: A field storing a beginning (either the date or the date and time). n A field storing an end (either the date or the date and time). n
Syntax: References: parameter syntax of the planner viewer pages [page 292]. 9 Add the field thus defined ( button). 10 Save the page by clicking Create. 11 Display the details of the table (View/ Screens menu). 12 Select the detail to which you want to add the previously created page. 13 Display the Pages tab. 14 Transfer the page previously created from the list of available pages to the list of detail pages ( button). Then place the page in the desired order among the other pages. 15 Save the detail thus modified by clicking Modify. 16 Save all these modifications in the database by selecting the File/Update the database structure. Tip: Do not populate the Conversion file field when it appears. Practical case 1 Launch Asset Manager Application Designer.
286 | HP Asset Manager 9.30 - Administration
2 Connect to the demonstration database by selecting the File/Open menu and clicking Open existing database. 3 Select the Work orders table (amWorkOrder). 4 Display the pages of the table (View/Pages menu). 5 Add a page by clicking New. 6 Populate the following fields in the General tab:
Field SQL name Title Value pg.In_progress In progress
7 Display the Contents tab. 8 Define a new field in the editing zone by typing the following string:
PlannerViewer-lWorkOrderId|StartDate=dtActualFixStart|EndDate=dtActualF ixed|EndBefore=dtSchedFixed|StartBefore=dtSchedFixStart|ItemColor=lTech Id|GenerateColors=true|CompleteDates=true|LineLabel=self|ItemLabel=Titl e
StartBefore
dtSchedFixStart
LineLabel
self
ItemLabel
Title
button).
10 Save the page by clicking Create. 11 Display the details of the table (View/ Screens menu). 12 Select the detail whose SQL name is sysamWorkOrder. 13 Display the Pages tab. 14 Transfer the In_progress page from the list of available pages to the list of detail pages ( button). Then place the page in the desired order among the other pages. 15 Save the detail thus modified by clicking Modify. 16 Save all these modifications in the database by selecting the File/Update the database structure. Tip: Do not populate the Conversion file field when it appears. 17 Launch Asset Manager. 18 Connect to the demonstration database by selecting the File/Connect to database menu. Warning: If you are already connected to the demonstration database, you must disconnect then reconnect. 19 Display the list of work orders (/Asset lifecycle/ Work orders/ Work orders menu). 20 Create two work orders. Only populate the following fields:
Tab Name of the field Work order # Notified on Type Title Technician SQL name of the field WONo dtNotif seType Title Contact Value for work order 1 CP3 July 19, 2002 11:00:00 Internal maintenance Analysis Select the technician of your choice. July 20, 2002 14:00:00 July 21, 2002 12:00:00 Value for work order 2 CP4 July 19, 2002 11:00:00 Internal maintenance Repair Select another technician of your choice. July 21, 2002 14:00:00 July 24, 2002 17:00:00
dtSchedFixStart dtSchedFixed
SQL name of Value for work order 1 the field dtActualFixJuly 20, 2002 08:00:00 Start dtActualFixed July 22, 2002 12:00:00
21 Select both CP3 and CP4. 22 Select the In progress tab. 23 Use the Scale cursor as well as the and buttons to view the entire period covered by the CP3 work order and beginning of the CP4 work order:
Work order CP3: The Actual start comes before the Planned start, but the Planned start is declared by the parameter StartBefore. This is why the circle and square are green. Work order CP3: The Actual end comes after the Planned end, but the Planned end is declared by the parameter EndBefore. That is why the circle and square are red.
Work order CP4: The Actual start comes after the Planned start, but the Planned start is declared by the parameter StartBefore. This is why the circle and square are red. Work order CP4: The Actual end is not populated. Its value is replaced by the current date, because the parameter CompleteDates equals true. This is why the box is extended until the current date. Work order CP3: The current day comes after the Planned date, but the Planned date is declared by the parameter EndBefore. This is why the circle is red (the square is not visible in this picture).
Syntax: References: parameter syntax of the planner viewer pages [page 292]. strIds identifies the list of records returned by the wizard whose events you want to display.
Note: The planner viewer page displayed by the wizard does not allow you to modify the events represented therein. Practical case 1 Launch Asset Manager. 2 Connect to the demonstration database by selecting the File/Connect to database menu. 3 Display the list of actions (Tools/ Actions/ Edit menu). 4 Create a new wizard. 5 Populate the following fields:
Name of the field Name Context Type SQL name of the field Name ContextTable seActionType Value CP (No table) Wizard
6 Display the Wizard tab. 7 Select PAGE1. 8 Add a PLANNER node to this page by right-clicking and selecting Edit/PLANNER from the shortcut menu. 9 Populate the CONTENT parameter of the PLANNER node with the following value:
RetVal = amGeneratePlanningData("amWorkOrder","MainField=lWorkOrderId|S tartDate=dtActualFixStart|EndDate=dtActualFixed|EndBefore=dtSchedFixed| StartBefore=dtSchedFixStart|ItemColor=lTechId|GenerateColors=true|Compl eteDates=true|LineLabel=self|ItemLabel=Title|WhereCond=seType\=0|OrderB y=Technician.Name, WONo","")
10 Save the wizard by clicking Create. 11 Test the wizard by clicking the icon
The table providing context to the other parameters is either: The table to which you add the planner viewer page. n The strTableSqlName table of the API amGeneratePlanningn Data(strTableSqlName, strProperties, strIds) that defines the wizard.
n
The table providing context to the other parameters is then the target table of LinkN. Exception: for the parameter LineLabel=[K], it's the source table of linkN that provides context. Example 1 If you add a planner viewer page to the Work orders table (amWorkOrder) and you want to view the work orders themselves, [A] equals lWorkOrderId. If you add a planner viewer page to the Work orders table (amWorkOrder) and you want to view the internal technician absences, [A] equals Technician.Absences. None Yes
Example 2
StartDate=[B]
Use Defines the start of events.
Values
A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Example Default value Mandatory For the Absences table (amAbsence), the Out date field, [B] equals dtOut. None Yes
EndDate=[C]
Use Values Defines the end of events. A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Example Default value Mandatory For the Work orders table (amWorkOrder), Planned end field, [C] equals dtSchedFixed. None Yes
StartBefore=[D]
Use Precautions Values Defines the deadline that the start of the event must not go over. You must not use the StartAfter parameter at the same time as the StartBefore parameter. A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Example For the Work orders table (amWorkorder), Expected resol. field, [D] equals dtResolLimit.
None No
EndBefore=[E]
Use Precautions Values Defines the deadline that the end of the event must be go over. You must not use the EndAfter parameter at the same time as the EndBefore parameter. A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Example Default value Mandatory For the Work orders table (amWorkorder), Planned end field, [E] equals dtSchedFixed. None No
StartAfter=[F]
Use Precautions Values Defines the deadline after which the event must start. You must not use the StartBefore parameter at the same time as the StartAfter parameter. A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Example Default value Mandatory For the Work orders table (amWorkorder), Notified on field, [F] equals dtNotif. None No
EndAfter=[G]
Use Defines the deadline after which the event must end.
Precautions Values
You must not use the EndBefore parameter at the same time EndAfter parameter. A Date or Date and time type field specified as follows: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Default value Mandatory None No
GenerateColors=[I]
Use Precautions Values Determines if colors must be used automatically to color the box that represents events. The color that is the reference for the generation of the other colors is ItemColor=[H]. true: the colors will be automatically modified each time the reference n color changes. false: the colors are defined in RGB format by a given field. n true No
ItemColor=[H]
Determines the reference color to use to color the box that represents events. Precautions The value can take [H] depending on the value that you gave the GenerateColors=[I] parameter. Values if Gener- [H] indicates which field or link conditions the color of the boxes. Each time ateColors=[I] the value if this field or link changes, the color of the box changes, too. equals true [H] can take one of the following forms:
n n
Use
<SQL name of a direct field in the table providing context> <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN> <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard)
Values if Gener- [H] indicates which type of Integer (32 bit) stores the color of the box in ateColors=[I] RGB format. equals false [H] can take one of the following forms: <SQL name of a direct field in the table providing context> n <SQL name of link1 in the table providing context>.<SQL name n of link2>...<SQL name of linkN>.<SQL name of the field>
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard)
Tip:
To learn how to determine the RGB value of a color, refer to this guide's chapter Record lists, section Main list layout/Using the 'Configure list' shortcut menu item. Default value Mandatory None Yes
CompleteDates=[J]
Defines what must be done when at least one of the fields defined by StartDate and EndDate is not populated. Example of utiliz- Managing work orders in progress. ation true: the dates not populated by these fields are replaced by the current Values n date. false: the dates not populated by these fields stay empty. n Default value false Mandatory No Use
ItemLabel=[L]
Use Identifies the title to use in the boxes that represent the events in the list .
Values
n n
self: the title takes the value of the table's description string. <SQL name of a direct field in the table providing context>: the name takes the value of the field. <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>: the name takes the value of the field. <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>.<SQL name of the field>: the name takes the value of the field.
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Default value Mandatory None No
LineLabel=[K]
Use Values Identifies the title to use to identify the events in the list of events to the left of the window self: the title takes the value of the table's description string. n <SQL name of a direct field in the table to which we add a n planner view page>: the label takes the value of the field. <SQL name of link1 in the table to which we add a planner n viewer page>.<SQL name of link2>...<SQL name of linkN>: the label takes the value of the description string or the LinkN table. <SQL name of link1 in the table to which we add a planner n viewer page>.<SQL name of link2>...<SQL name of linkN>.<SQL name of field>: the label takes the value of the field.
Note:
The table providing context is defined by the parameter PlannerViewer-[A] (table) or MainField=[A] (wizard) Default value
n n
If [A] is the table's primary key: description string of the table. If [A] is a succession of links: description string of the last link's table.
Mandatory
No
Progress=[M]
Usage Identifies a field that stores the progression percentage of events. The user type of this field must be Percentage.
Note:
You can create a new field with Asset Manager Application Designer.
Note:
You cannot use a calculated field. Values <SQL of a direct field in the table> <SQL name of link1>.<SQL name of link2>...<SQL name of n linkN>.<SQL name of field> None No
n
WhereCond=[N]
Use Values Filters the events to display. Condition expressed in AQL. The AQL condition is not surrounded by any delimiters. On the other hand, the = and | characters must be preceded by the \ escape character. For the Work orders table (amWorkorder), if you only want to keep the records whose Type field equals Internal maintenance, [N] equals seType\=0. None No
Example
OrderBy=[O]
Use Sorts the events to display.
Values
List of fields or links separated by the , character. The fields are represented by using one of the following syntaxes:
n n
<SQL name of a direct field in the table providing context> <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>.<SQL name of the field> <SQL name of link1 in the table providing context>: This returns the value of the primary key in the linked record. <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>.<SQL name of the field> <SQL name of link1 in the table providing context>.<SQL name of link2>...<SQL name of linkN>.self
Example
If you add a planner viewer page to the Work orders table (amWorkOrder), and you want to sort the work orders by technician, then the work order number [O] equals Technician.Name, WONo. None No
This section describes in detail the DDE calls recognized by Asset Manager when used as a DDE server. In this section, each theoretical description is followed by a practical example.
DDE service
In most cases, the "service" is the name of the executable loaded in memory. When using Asset Manager as a DDE server, the service is am.
DDE topic
The topic allows you to define the context in which the action is to be executed. For Asset Manager, this topic is Asset Manager.
DDE command
These are commands that will be sent to Asset Manager to be executed. They can be divided into several groups: Global commands, which do not require a table name or field name to be n executed. Commands associated with a table, requiring the SQL name of a table as a n parameter in order to be executed. Commands associated with a table and field or link, requiring the SQL name n of a table and field or link as parameters in order to be executed. Commands associated with taking calls. n Commands belonging to these groups can be of two types: "Execute", which enables you to execute a task in Asset Manager. n "Request", which enables you to ask Asset Manager for information. n How to find the SQL name of a table, field or link When you right-click any field of a table, Asset Manager displays a shortcut menu. If you select the Configure object menu, the window displayed by Asset Manager gives the SQL name the table and SQL name of the object (link or field) on which you have clicked.
Note: Once the context is defined, it is used by default in all following DDE commands until a new context is defined. 2 Launch the command itself. Two types of command are available. Execute: <command>(<parameters>) n Request: <command>(<parameters>) n 3 Close the previously defined context.
Particularities
Each application in Windows has its own way of sending and receiving DDE commands. The following sections of this document include: An exhaustive list of DDE commands that Asset Manager can receive. The n syntax of each of these commands is described in detail. Examples of how Asset Manager can be driven by DDE mechanisms, which n illustrate the use of these commands. Each of these examples uses a different programming language.
Global commands
"Global" commands do not depend on a given table or field. In particular, they do not require the SQL name of a table or a field as an argument. This chapter contains information about the following commands: Connect(Cnx, User, Password) n Disconnect() n ExecuteAction(ActionName) n ListAllTables([Mask]) n ListOpenTables([Mask]) n OpenView(ViewName) n
Description Connects to a database using the following parameters: <Cnx> This argument can either contain: A connection name defined in Asset Manager (which can be found in the n amdb.ini file). Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. The full definition of a connection to a database according to the syntax described below:
[<Database engine>;<Database localization>;<Login for the database engi ne>;<Password for the database engine>]
<User> This argument contains the name of the Asset Manager user that you want to use to connect to the database. <Password> This argument contains the password associated with the login (value of "<User>" argument). Examples The following command allows you to connect to an Oracle database for which a connection is already defined in Asset Manager. The name of this connection is "TDemo". The "Admin" login is used for the connection. The password is "password".
Execute:Connect(TDemo, Admin, password)
The following command performs the same connection without the connection being defined in Asset Manager. The "TDemo" database is located on the server "Joshua". The password for the Oracle connection is "Root".
Execute:Connect([Oracle;Joshua;TDemo;Root], Admin, password)
Disconnect()
Type of action Execute
Description Disconnects Asset Manager from the current database. Example The following command terminates the connection to the Asset Manager database:
Execute:Disconnect()
ExecuteAction(<ActionName>)
Type of action Execute Description Triggers the action called "<ActionName>". <ActionName> This argument contains the name of the action as defined in Asset Manager in the Name field (SQL name: Name) of the action detail. Example The following command triggers the action "Reminder: work order not completed":
Execute:ExecuteAction(Reminder: Work order not completed)
ListAllTables([Mask])
Type of action Request Description Lists all tables in the database. This list, composed of the SQL names of tables, can be filtered by using the "<Mask>" argument. <Mask> This argument allows you to filter data using the following: A question mark ("?") can be used as a wildcard for any single character. n
Examples The following command returns the list of SQL names of all the tables in the current database:
Request:ListAllTables()
The following command returns the list of SQL names of all the tables in the current database whose SQL names start with "amA":
Request:ListAllTables(amA*)
The following command returns the list of SQL names of all the tables in the current database containing the letter "v":
Request:ListAllTables(*v*)
The following command returns the list of SQL names of all the tables in the current database starting with "am" and whose fourth character is "t":
Request:ListAllTables(am?t*)
ListOpenTables([Mask])
Type of action Request Description Lists the SQL names of all open tables of the database. This list can by filtered using the "<Mask>" argument. <Mask> This argument allows you to filter data using the following: A question mark ("?") can be used as a wildcard for any single character. n An asterisk ("*") can be used to represent any character or group of n characters. Examples The following command returns the SQL names of all open tables in the current database:
Request:ListOpenTables()
The following command returns the SQL names of all open tables in the current database whose SQL name starts with "amA":
Request:ListOpenTables(amA*)
Let's suppose that the three following tables are open in Asset Manager: "amAsset", "amAction", "amModel". The previous command returns the SQL name of the two tables beginning with "amA", i.e.: "amAsset" and "amAction".
OpenView(<ViewName>)
Type of action Execute Description Opens a view defined in Asset Manager. <ViewName> This argument contains the SQL name of the view as it is defined in Asset Manager. Example The following command opens the view with the SQL name CurrentAssets:
Execute:OpenView(CurrentAssets)
OpenTable(<Table>)
Type of action Execute Description Opens the table with SQL name "<Table>". <Table> This argument contains the SQL name of the table to be opened. Example The following command opens the table of assets (SQL name: amAsset):
Execute:OpenTable(amAsset)
CloseTable(<Table>)
Type of action Execute Description Closes the table previously opened in Asset Manager. <Table> This argument contains the SQL name of the table to be closed. Example The following command closes the table of assets (SQL name: amAsset):
Execute:CloseTable(amAsset)
<Table>.GetRecordCount()
Type of action Request
Description Returns the number of records in the table with SQL name "<Table>". The table concerned by this command must first be opened in order for this command to work. <Table> This argument contains the SQL name of the table for which you want to know the number of records. Example The following command returns the number of records in the table of asset (SQL name: amAsset):
Request:amAsset.GetRecordCount()
<Table>.SetViewMode(<Mode>)
Type of action Execute Description Defines the view mode of a table that has been opened. <Table> This argument contains the SQL name of the table concerned. <Mode> This argument can be set to one of the following values: "Arbo": Records in the table "<Table>" are displayed in tree view. n "List": Records in the table "<Table>" are displayed in list view. n "ListOnly": Only the records from the table "<Table>" are displayed. n "DetailOnly": Only the detail of the selected record in the table "<Table>" n is displayed. "ListDetail": Displays both the list of records in the table "<Table>" and the n detail of the selected record in this list. Example This following command puts the table of products (SQL name: amPortfolio) in tree-view:
Execute:amPortfolio.SetViewMode(Arbo)
<Table>.SetRecordMode(<Mode>)
Type of action Execute Description Defines the mode of interaction with records from an open table. <Table> This argument contains the SQL name of the table concerned. <Mode> This argument can be set to one of the following values: "New": Starts the creation of a new record in the table "<Table>". The n command corresponds to clicking the New button. "Duplicate": Duplicates the selected record in the "<Table>" table. The n command corresponds to clicking the Duplicate button. "Delete": Deletes the selected record in the "<Table>" table. The command n corresponds to clicking the Delete button. "Modify": Confirms the modifications made to the selected record in the n table "<Table>". The command corresponds to clicking the Modify button. "Create": Confirms the creation of a new record in the table "<Table>". The n command corresponds to clicking the Create button. "CreateContinue": Combines a creation and a duplication. The command n corresponds to clicking the CreateContinue button. "Cancel": Cancels the creation of a new record or the modifications made to n the selected record. The command corresponds to clicking the Cancel button. "Close": Closes the previously opened table "<Table>". The command n corresponds to clicking the Close button. Example The following example opens the table of assets (SQL name: amAsset), starts the creation of a new record, then cancels this creation:
Execute:OpenTable(amAsset) Execute:amAsset.SetRecordMode(New) Execute:amAsset.SetRecordMode(Cancel)
<Table>.ListAllFields([Mask])
Type of action Request Description Returns the SQL names of all the fields in the previously opened table "<Table>". <Table> This argument contains the SQL name of the table concerned. <Mask> This argument allows you to filter data using the following: A question mark ("?") can be used as a wildcard for any single character. n An asterisk ("*") can be used to represent any character or group of n characters. Example The following command returns the SQL names of all the fields in the table of assets:
Request:amAsset.ListAllFields
The following command returns the SQL names of all the fields in the table of assets (SQL name: amAsset) whose SQL name starts with "se":
Request:amAsset.ListAllFields(se*)
<Table>.ListAllLinks([Mask])
Type of action Request Description Returns the SQL names of all the links in the previously opened table "<Table>". <Table> This argument contains the SQL of the table concerned. <Mask> This argument allows you to filter data using the following: A question mark ("?") can be used as a wildcard for any single character. n
Example The following command returns the list of SQL names of all the links of the table of assets (SQL name: amAsset):
Request:amAsset.ListAllLinks
The following command returns the list of SQL names of all the links of the table of assets (SQL name: amAsset) whose SQL name starts with "se":
Request:amAsset.ListAllLinks(se*)
<Table>.SetFilter(<Condition>)
Type of action Execute Description Filters the table "<Table>" according to the "<Condition>" argument. <Table> This argument contains the SQL name of the table concerned. <Condition> This argument contains the condition applied to the command. It is an AQL clause. Example The following command filters the table of assets (SQL name: amAsset). This filter displays only those records modified before 8/28/02 at 15:00:00:
Execute:amAsset.SetFilter(dtLastModif<[02/08/28 15:00:00])
<Table>.SetSelection(<Condition>)
Type of action Execute
Description Selects one or more records from the previously opened table "<Table>", according to the argument" <Condition>". <Table> This argument contains the SQL name of the table concerned. <Condition> This argument contains the condition applied to the command. It is an AQL clause. Example The following command selects assets whose asset tag is greater than or equal to "7":
Execute:amAsset.SetSelection(AssetTag>='7')
<Table>.GetSelectionId()
Type of action Request Description Returns the list of identifiers of selected records in the table "<Table>". <Table> This argument contains the SQL name of the table concerned. Example The following example selects those records in the table of assets (SQL name: amAsset) whose asset tag is greater than or equal to "7", then returns the list of identifiers of the selected records:
Execute:amAsset.SetSelection(AssetTag>='7') Request:amAsset.GetSelectionId()
<Table>:<Object>.AddLink()
Type of action Execute Description Simulates clicking the button of a list zone. This command allows you to add a link to a record in a table. <Table> This parameter contains the SQL name of the table concerned by the operation. <Object> This parameter contains the SQL name of the object concerned. Example The following command adds a value in an itemized list.
Execute:amItemizedList:ItemListVals.AddLink()
<Table>:<Object>.GetValue()
Type of action Request Description Returns the value of an "<Object>" (field or link) of the table "<Table>" for the selected record. <Table> This argument contains the SQL name of the table concerned. <Object> This argument contains the SQL name of the field or link of the table "<Table>" for which you want to recover the value. Example The following command returns the values of the Field1 field (SQL name: Field1) in the table of assets (SQL name: amAsset):
Request:amAsset:Field1.GetValue()
The following command returns the value of the Model link (SQL name: Model) of the table of assets (SQL name: amAsset):
Request:amAsset:Model.GetValue()
The following command returns the value of the Comment link (SQL name: Comment) of the table of assets (SQL name: amAsset):
Request:amAsset:Comment.GetValue()
<Table>:<Object>.Hilight()
Type of action Execute Description Sets the focus on a field and highlights it. <Table> This parameter contains the SQL name of the table concerned by the operation.
<Object> This parameter contains the SQL name of the field concerned by the operation. This command does not work for links. Example The following command highlights the Bar code field (SQL name: Barcode) in the table of assets (SQL name: amAsset):
Execute:amAsset:Barcode.Hilight()
<Table>:<Object>.RemoveLink()
Type of action Execute Description Simulates clicking the button of a list zone. This command allows you to delete a link to a record in a table. <Table> This parameter contains the SQL name of the table concerned by the operation. <Object> This parameter contains the SQL name of the object concerned. Example The following command deletes the selected value in an itemized list.
Execute:amItemizedList:ItemListVals.RemoveLink()
<Table>:<Object>.SetFocus()
Type of action Execute Description Sets the focus on the field or link "<Object>" of the table "<Table>" for the selected record.
<Table> This argument contains the SQL name of the table containing the field or link to which you want to set the focus. <Object> This argument contains the SQL name of the field or link or the table "<Table>" to which you want to set the focus. Example The following command sets the focus on the Asset tag field (AssetTag) of the Assets table (amAsset):
Execute:amAsset:AssetTag.SetFocus()
<Table>:<Object>.SetValue(<Value>)
Type of action Execute Description Populates the field "<Field>" in the table "<Table>", for the selected record, with the value "<Value>". <Table> This argument contains the SQL name of the table containing the field that you want to populate. <Field> This argument contains the SQL name of the field in the table "<Table>" that you want to populate. <Value> This argument contains the value you want to assign to the "<Field>" field in the table "<Table>" for the selected record. In the case of a "Date" or "Date and time" type field, this argument must be expressed using the international date format (yy/mm/dd hh:mm:ss). Example The following command attributes the value "Test" to the Field1 field (SQL name: Field1) in the table of assets (SQL name: amAsset), for the selected record:
Execute:amAsset:Field1.SetValue(Test)
The following command attributes the value "08/28/02" to the Acceptance date field (SQL name: dAccept) in the Assets table (SQL name: amAsset), for the selected record:
Execute:amAsset:dAccept.SetValue(02/08/28)
<Table>:<Link>.SetValueWhere(<Condition>)
Type of action Execute Description Populates the link "<Link>" in the table "<Table>", for the selected record, according to the condition "<Condition>". <Table> This argument contains the SQL name of the table containing the field that you want to populate. <Link> This argument contains the SQL name of the link of the table "<Table>" that you want to populate. <Condition> This argument allows you to identify the target record of the link. It is an AQL clause. Example The following example assigns the value "Test" to the Model link (SQL name: Model) from the table of the assets (SQL name: amAsset) for the selected record. The model "Test" must exist in order for the DDE command to execute correctly.
Execute:amAsset:Model.SetValueWhere(Name='Test')
<Table>:<Object>.Show()
Type of action Execute
Description Moves the focus to a field or a link that is not visible on the screen. The table containing the field or link must be open. <Table> This parameter contains the SQL name of the table concerned by the operation. <Object> This parameter contains the SQL name of the object concerned. Example The following command moves the focus to the A/C Code field (SQL name: AcctCode) in the table of assets (SQL name: amAsset):
Execute:amAsset:AcctCode.Show()
NewTicket()
Type of action Execute Description Triggers the answer-call tool in Asset Manager. Example The following command triggers the answer-call tool and allows you to populate a new helpdesk ticket:
Execute:NewTicket()
NewTicket.SetTicketMode(<Mode>)
Type of action Execute Description Simulates clicking of the buttons in the answer-call screen. <Mode> This argument can be set to one of the following values: n "Save": Save the current call. This mode corresponds to clicking the Save Call button.
n
"Solved": Close the current call. This mode corresponds to clicking the Close the ticket button. "Proceed": Proceed with ticket. This mode corresponds to clicking the Proceed button. "SaveNOpen": Save the call and open the ticket. This mode corresponds to clicking the Fill out button. "Cancel": Cancels the call. This mode corresponds to clicking the Cancel button. "Close": Closes the answer-call screen. This mode corresponds to clicking the Close button. "ForceNewFile": Triggers the creation of a sub-ticket for the ticket entered in the Ticket link of the answer call screen.
Example The following command triggers the answer-call tool then cancels it:
Execute:NewTicket() Execute:NewTicket.SetTicketMode(Cancel)
NewTicket.GetTicketNumber()
Type of action Request
Description Returns the number of the current ticket from the answer-call screen. Example The following command triggers the answer-call tool and returns the number of the ticket being created:
Execute:NewTicket() Execute:NewTicket.GetTicketNumber()
NewTicket:<Object>.SetValue(<Value>)
Type of action Execute Description Populates one of the ("<Object>") fields in the answer-call screen with the value of "<Value>". <Object> This argument can take one of the following values: "Description": The command populates the Description field in the n answer-call screen. "DescComp": The command populates the Additional description field in n the answer-call screen. "Notes": The command populates the Notes field in the answer-call screen. n <Value> This argument contains the value to be assigned to the "<Object>" field in the answer-call screen. Example The following command triggers the answer-call tool, then populates the Description and Notes fields:
Execute:NewTicket() Execute:NewTicket:Description.SetValue(Second problem on this hardware) Execute:NewTicket:Notes.SetValue(To fix urgently)
NewTicket:<Object>.SetValueWhere(<Condition>)
Type of action Execute Description Populates one of the ("<Object>") links in the answer-call screen according to the condition "<Condition>" <Object> This argument can be set to one of the following values: "Caller": The command populates the Caller link in the answer-call screen. n "File": The command populates the Ticket link in the answer-call screen. n "Asset": The command populates the Asset link in the answer-call screen. n "ProblemClass": The command populates the Type link in the answer-call n screen. "EscalScheme": The command populates the Escalation link in the n answer-call screen. "Contact": The command populates the Contact link in the answer-call n screen. <Condition> This argument contains the condition governing the command. It is an AQL clause. Example The following command triggers the answer-call tool, then populates the Caller and Type links. A person called "Dernham, Elliot" and a problem type called "Printer problem" must exist in the database:
Execute:NewTicket() Execute:NewTicket:Caller.SetValueWhere(Name='Dernham') Execute:NewTicket:ProblemClass.SetValueWhere(Name='Printer broken')
NewTicket:<Object>.GetValue ()
Type of action Request
Description Returns the value of the one of the ("<Object>") fields or links in the answer-call tool. <Object> This argument can be set to one of the following values: "Caller": The command returns the value of the Caller link in the answer-call n screen. "File": The command returns the value of the Ticket link in the answer-call n screen. "Asset": The command returns the value of the Asset link in the answer-call n screen. "ProblemClass": The command returns the value of the Type link in the n answer-call screen. "Description": The command returns the value of the Description field in n the answer-call screen. "DescComp": The command returns the value of the Additional description n field in the answer-call screen. "EscalScheme": The command returns the value of the Escalation link in n the answer-call screen. "Contact": The command returns the value of the Contact link in the n answer-call screen. "Notes": The command returns the value of the Notes link in the answer-call n screen. Example The following command returns the value of the Caller field in the answer-call tool:
Execute:NewTicket:Caller.GetValue
Introduction
We must first identify the service and topic needed to execute the DDE commands. We are in the general context of the Asset Manager application, therefore: Service: am n Topic: Asset Manager n We now just have to execute the command that opens the table of locations: Command: OpenTable() n Parameter: The SQL name of the table; in this case amLocation n The command is written as follows:
OpenTable(amLocation)
Asset Manager opens the table of locations. We now need to initiate the creation of a new record for this table: Command: SetRecordMode() n Prefix of the command: The SQL name of the table, i.e. amLocation n Parameter: The data entry mode; in this case New n The command is written as follows:
amLocation.SetRecordMode(New)
Entering data
Next, we need to give Asset Manager the appropriate commands for the fields that interest us:
Name field (name). The command to use and its arguments are as follows: Command: <Table>:<Object>.SetValue(<Value>) u * Argument <Table>: The SQL name of the table, i.e. amLocation * Argument <Object>: The SQL name of the field, i.e. Name * Argument <Value>: The value of the field, i.e. Headquarters
amLocation:TextLabel.SetValue(Headquarters)
City field (City). The command to use and its arguments are as follows: Command: <Table>:<Object>.SetValue(<Value>) u * Argument <Table>: The SQL name of the table, i.e. amLocation * Argument <Object>: The SQL name of the field, i.e. City * Argument <Value>: The value of the field, i.e. San Diego
amLocation:seDataType.SetValue(San Diego)
Postal code field (ZIP). The command to use and its arguments are as follows: Command: <Table>:<Object>.SetValue(<Value>) u * Argument <Table>: The SQL name of the table, i.e. amLocation * Argument <Object>: The SQL name of the field, i.e. ZIP * Argument <Value>: The value of the field, i.e. CA 92130
amLocation:Unit.SetValue(CA 92130)
For this example, execute DDE TestCenter.exe, which can be found by following this path: Samples\DDE\Program. This program allows you to execute Execute and Request type DDE commands. Note: Asset Manager must be launched in order to be able to receive DDE commands issued by the Basic program. This chapter contains information about the following topics: Source code of the program n Before starting n Executing the program n
Before starting
Installation In order to use this program, Visual Basic must be correctly installed on your machine. In particular, certain ActiveX controls must be correctly registered. If DDE TestCenter returns an error such as "Control XXXX is not registered", try the following: 1 Search for the control on your computer and go to its folder. 2 Execute the following command:
regsvr32 XXXX
3 Relaunch DDE TestCenter. If this fails, please refer to the documentation of Visual Basic. Recommendations In order to make the most of this example, we recommend that you: 1 Launch Asset Manager, then reduce the size of the application window to about half the size of your screen. 2 Launch "DDE TestCenter.exe" and move the application window so that is next to that of Asset Manager.
Note: In this way, you will be able to see the results of the orders issued by DDE TestCenter.exe in Asset Manager directly. Syntax This example is similar to the previous one. Only the DDE calls are different and correspond to the Visual Basic standard.
Click the button to execute the command. Any errors are displayed in the Last DDE Error field. Example 1: The following Execute command opens the table of features:
OpenTable(amLocation)
Example 2: The following Execute commands open the table of budgets, create a new record and populate the Name field (Name) in the detail screen. Execute these commands sequentially:
OpenTable(amBudget) amBudget.SetRecordMode(New) amBudget:Name.SetValue("Test")
Request type DDE command Go to the Request tab. Enter the command to be executed in the Command field. Use the following syntax:
Command=<command>(<arguments>)
Click the button to execute the command. The results of the request are displayed in the Request Result field. Any errors are displayed in the Last DDE Error field. Example 1: The following Request command displays the list of SQL names of all the tables in the current connection:
ListAllTables()
Example 2: The following Request command displays the list of SQL names of all the fields of the table of features (amFeature) opened beforehand:
amFeature.ListAllFields()
WAN networks are often characterized by: Low bandwidth n High latency n It is possible to configure Asset Manager in order to minimize these disadvantages. However, these configurations are made to the detriment of certain functions of Asset Manager. This chapter provides some tips that can be used to accommodate the limitations of WAN networks. All the same, it is important to perform tests to measure the trade-off between faster reaction times and loss of functionality.
You can limit the exchange of information between the client machine and the database server by adjusting the following options: n Do not load for longer than and Do not load more than options in the Lists category (main lists or others): We recommend limiting the number of lines loaded (for example, you can specify a maximum value of 50 lines in main lists and 15 in tab lists). It is up to you to determine the number of lines to be loaded - according to any filters you apply to the lists being displayed - and the likelihood of finding the required information in a given number of lines. n Regular test, Messages category: You can configure this option in order to test for messages on connecting to the database only, or space out the verification intervals (every 10 minutes, for example). n Caches category: You can increase the length of intervals used to define the frequency of refreshing the caches (Every column), or even disable cache refreshing during a session. In this case, caches are loaded on connecting to the database only. It is likely that if you do not refresh the caches on a regular basis, the data being displayed will not be up to date. However, the majority of cached data items are generated when Asset Manager is installed and are not subject to regular variations (itemized lists, dictionary of features, currencies, business calendars, etc).
Lists
Setting the parameters for a particular list
Main list and tab lists can be configured via the Configure list menu in several cases: n Lists displayed via the menus allowing you to access tables (Portfolio management/ Infrastructure managament/ Assets navigation menu, for example). n Lists displayed by views (Tools/ Views menu).
n n
Selection lists (Select link shortcut menu). Lists that appear in certain tabs of details.
Sorting lists These lists can be sorted in several ways: n By selecting your own sort conditions (Sort column).
n
The resulting performance of these two options sometimes differ. It is not possible to predict which option offers the best solution. You need to try both solutions for each list in Asset Manager before deciding on which method is the best for your database. Filters Lists can also be filtered. The time it takes to display a list increases with: The number of filtering criteria. n The distance of the tables to which the filter criteria applies (distance from n the table whose list displays the contents). The number of OR clauses in the filter query. n Selecting the columns to display The time it takes to display a list increases with: The number of columns to display. n The distance of the tables containing the fields and links are to be displayed. n Displaying in table or tree view. The tree view takes longer to display than the table view. Displaying icons in lists Icons take longer to appear than text.
Lists/ Other lists/ Do not load more than Lists/ Main lists/ Do not load for longer than Lists/ Main lists/ Do not load more than
By reducing the number of lines loaded in a list, you can decrease the time it takes to display a list. By reducing the maximum amount of time allotted for displaying a list, you thus limit the number of lines displayed according to what you deem a reasonable amount of loading time.
Note: These options are stored in the Asset Manager database and are the same for all users who access it. For more information on configuring the interface options, consult the Tailoring guide, part 1 Customizing client computers, chapter Customizing a client workstation, section General options.
Let's suppose that the Do not load more than option is set to 20. Let's also suppose that FetchingArraySize is set to 30. Then Asset Manager will fetch the list in 7 rounds (since 200 / 30 = 6,7). This requires more time than if the list was fetched just once. Tip: This amount of time is generally insignificant for a LAN but can be quite noticeable for a WAN.
Optimized example for a WAN If it takes a long time to display a list, you need to configure the application to fetch records just once. Here's the rule you need to apply:
FetchingArraySize = Do not load more than + 1
Note: We tested this scenario with a WAN with a 250 ms latency. By optimizing this parameter, we gained 1.5 s on displaying a list of 200 records. Example of application: n Do not load more than equals 200. Set the value of FetchingArraySize to 210. n Thus, Asset Manager fetches just once. n To modify amdb.ini 1 Edit the amdb.ini file. Location of this file: Asset Manager - Installation and upgrade guide, chapter .ini and .cfg files. 2 Search for the selection [<Asset Manager connection name to optimize>] 3 Find out if a line already exists in the section that starts with FetchingArraySize=. If this is the case, modify the value of the existing parameter. 4 If this is not the case, add a complete line in the section: FetchingArraySize=<Parameter value> Tip: This must be done on each client workstation.
Connection cache
You can also activate the connection cache, via the Cache tab in the connection detail screen: Activating the connection cache: Reduces connection time to the database. n Also saves time if you use images and icons. n In general, the default cache sizes are well optimized.
Access restrictions
It takes longer to display detail and list windows when there are access restrictions for the given login being used. This is due to the fact that Asset Manager performs a test before displaying the data. If you have a doubt, display the list or detail with an unrestricted login and compare the display speed. Delete any optional access restrictions as you see fit.
Index
A
Access (See Access control) Access control (See Authentication) Constraints, 165 Editing, 168 Functioning, 165 Usefulness of, 165 User connections, 178 Users, 176 Access restrictions, 172 Definition, 167 Links - default value, 174 , 174 Slow networks - tuning, 334 Actions Automatic triggering (See Asset Manager Automated Process Manager) Messaging, 279 Activating Databases, 17 Active Directory Configuring with Single Sign-On (SSO) , 203 Single Sign-On, 195 adbc.dll, 115 addcpu.scn (scenario), 244
AddLink (DDE), 314 Add NT users to the database (module), 245 , 245 Add the computers listed in the NT domain to the database (module), 243 , 243 adduser.scn (scenario), 246 Admin (login), 188 , 21 Administration rights (option), 177 alias (keyword), 86 AM (messaging), 278 amdb.ini, 334 , 332 amimpl.exe, 163 amsrvcf.ini, 264 Anonymous (access), 193 API, 27 APP_CTL_HEAP_SZ (UDB DB2), 54 AppBuild (property), 94 AppInfo (property), 94 AppLanguage (property), 94 APPLHEAPSZ (UDB DB2), 54 AppVersion (property), 94 Asset Manager Application Designer (See Databases) Documents - automatic loading, 22 Graphic interface, 21-26
Interface, 22 Languages, 22 Object types, 23 Options, 26 Precautions, 21 Presentation, 21 Searches, 26 Tables, 23 Asset Manager Automated Process Manager, 233-267 Administration - Web, 263 Activation, 264 Asset Manager Automated Process Manager service, 265 Driving, 265 Start-up, 264 Automatic disconnection, 267 Constraints, 234 Databases Connection, 236 Disconnection, 236 Execution Recommendations, 234 Unix, 236 Windows, 236 Exiting - consequences, 237 Functioning, 233 Icons, 237 Installation, 240 Launching Automatic launching, 235 DOS, 235 Manual launching, 235 Main screen, 237 Menus, 237 Messaging, 237 Modules - configuration, 240 Monitoring - time zones, 241 Options, 238 Service - executing as a, 265 Starting as a service, 263 Triggering immediately, 262 Web - limitations, 266 Asset Manager Databases (ODBC connection), 117
336 | HP Asset Manager 9.30 - Administration
Authentication, 187 (See Also LDAP) With Asset Manager only, 189 auto create statistics (Microsoft SQL Server), 52 auto update statistics (Microsoft SQL Server), 52 AvailableScript (object), 106
B
Bandwidth (See Slow networks - tuning) Base (object), 103 , 101 , 98 , 96 BaseType (property), 110 BASIC script (input type), 34 , 34 Basic scripts - import, 154 Boolean (input type), 33 Boolean (Yes/No) (input type), 33
C
cache (Oracle), 52 Caches, 334 CalcField (object), 111 CalcFieldDesc (instance), 107 CalcMode (property), 103 Calculated fields Import, 147 Calculate rents and loans (module), 247 Calculate stipulated loss values (module), 249 CaptionDetail (property), 109 CaptionList (property), 109 Cardinality (property), 100 CHARACTER SET (parameter), 50 Citrix XenApp Using to access Asset Manager Class (object), 105 CloseTable (DDE), 308 Collection (instance), 83 CollectionCount (function), 90 CollectionCreate (function), 89 CollectionCurrentIndex (function), 90 CollectionIsFirst (function), 89 CollectionIsLast (function), 89 CollectionName (function), 89
CollectionNext (function), 89 Columns Import - separators, 142 Slow networks - tuning, 331 Comment (type of information memorized by a link), 38 , 38 Comments, 84 CompleteDates (parameter), 296 ComputeString (property), 94 Concatenation, 152 config (folder), 24 Configure list (menu), 330 Connect (DDE), 303 Connected (property), 94 Connection (property), 94 Connections (See Also Connection slots) (See Also Declaration) (See Also LDAP) Declaration, 58 Managing, 178 Windows XP, 58 Connection slots Accidental termination, 185 Destruction, 184 Manual destruction, 185 Functioning, 183 Inactive users, 186 Updating - delays, 184 Copy (link type), 38 Count (property), 95 Create (property), 94 Create assets, consumables, etc. corresponding to items received (module), 249 CreationHistorized (property), 106 CurrentIndex (property), 95 Custom itemized list (input type), 35 , 34 , 34
D
DATA (Microsoft SQL Server configuration), 52 Database
License Keys, 13 database.txt, 79 , 32 , 28 Structure, 29 Database (instance), 93 , 82 Database (option), 238 Database administrators, 177 Database Owner (Microsoft SQL Server), 53 Databases (See Also Access control) (See Also Connection) (See Also Fields) (See Also Import) (See Also Indexes) (See Also Links) (See Also ODBC) (See Also Tables) Access types, 178 Floating, 178 Guest, 178 Named, 178 Activating, 17 Activation errors, 19 Creating Prerequisites, 47 Creation, 47-75 DB2 UDB, 54 DBMS, 49 Empty databases, 48 New database, 24 Preliminary verifications, 52 Data Export, 75 Import, 75 Definition, 27 Deletion, 76 Description, 79 Description - file, 79-112 Global variables Overview Parameters Description - templates, 83-93 Browsed components - count of Browsing components Comments
HP Asset Manager 9.30 - Administration | 337
else End-of-paragraph mark - deleting Filtering Fixed text Functions Global variables if Including another template, 84 Properties - value Sort Diagnostics, 113 Microsoft SQL Server, 52 Opening, 25 Repair, 113-114 Structure Asset Manager Application Designer, 59 Export, 75 Import, 75 Updating, 63 Viewing, 28 UDB DB2 - clients, 56 Database servers, 49 Data confidentiality, 166 Date (global variable of an Asset Manager database description instance), 112 Date (input type), 34 , 34 Date (type), 33 Date and time (input type), 34 , 34 Date and time (type), 33 db_block_buffers (parameter), 51 db_block_size (parameter), 50 DB2 UDB, 54 , 54 dbase.tpl, 29 Dbb.Ext (global variable of an Asset Manager database description instance), 112 Dbb.Fullname (global variable of an Asset Manager database description instance), 112 Dbb.Name (global variable of an Asset Manager database description instance), 112 Dbb.Path (global variable of an Asset Manager database description instance), 112
338 | HP Asset Manager 9.30 - Administration
Dbb.Shortname (global variable of an Asset Manager database description instance), 112 DbbVersion (property), 94 dbdict.tpl, 80 , 29 DBMS (See Databases) Changing, 74 DBMS login, 57 DDE, 301-328 Calls, 301 Calls - examples Internal calls, 324 Introduction, 323 Visual Basic, 325 Commands, 302 Introduction, 302 Commands associated with a table, 307 CloseTable, 308 GetRecordCount, 308 GetSelectionId, 313 ListAllFields, 311 ListAllLinks, 311 OpenTable, 308 SetFilter, 312 SetRecordMode, 310 SetSelection, 312 SetViewMode, 309 Commands associated with a table and a field or a link, 314 AddLink, 314 GetTicketNumber, 320 GetValue, 322 , 315 Hilight, 315 NewTicket, 319 RemoveLink, 316 SetFocus, 316 SetTicketMode, 320 SetValue, 321 , 317 SetValueWhere, 322 , 318 Show, 318 Commands associated with taking calls, 319 Context, 303 Global commands, 303 Connect, 303
Disconnect, 304 ExecuteAction, 305 ListAllTables, 305 ListOpenTables, 306 OpenView, 307 Prerequisites, 326 Services, 302 Topics, 302 DDE commands (See DDE) DDE command servers, 301 DDE services, 302 DDE TestCenter.exe, 326 DDE topics, 302 Deadlines - monitoring (See Asset Manager Automated Process Manager) Default (input type), 33 , 33 DefaultScript (object), 106 , 98 Define (link type), 38 Definitions Access restriction, 167 Databases, 27 DDE command servers, 301 Functional right, 168 User profile, 167 User right, 167 User roles, 166 Delete (property), 94 Departments - importing, 154 Desc (property), 109 , 108 , 107 , 104 , 102 , 100 , 97 , 94 Description strings, 31 Diagnostics/ Repair database (menu), 113 Disconnect (DDE), 304 Display languages, 65 Adding, 65 Object types, 67 Replacing, 66 Selecting, 67 dml_locks (parameter), 51 Documents Asset Manager Application Designer automatic loading, 22 Asset Manager Application Designer maximum number in memory, 24 Import, 155
Do not load for longer than (option), 330 Do not load more than (option), 330 Double-precision number (type), 33 DstField (object), 101 DstTable (object), 101 dtLastModif (field), 36 Import, 138 Duplicates (property), 102 Duration (input type), 35 , 34 , 34
E
edac.scn (scenario), 260 edac-mobiledevices.scn (scenario), 262 else (keyword), 87 elseif (keyword), 87 Employees - importing, 154 EmptyOnDup (property), 97 Enable automatic disconnection (option), 186 EndAfter (parameter), 294 EndBefore (parameter), 294 EndDate (parameter), 293 endfor (keyword), 85 endif (keyword), 87 endscript (function), 90 Enum (property), 105 Error messages Database activation, 19 ExecuteAction (DDE), 305 Execute workflow rules for execution group (module), 251 Exist (function), 88 Export database structure and data (menu), 75 Exporting structure and data, 75
F
FeatClassDesc (instance), 107 FeatDesc (instance), 104 FeatParam (object), 110 FeatParamDesc (instance), 105 Feature (object), 106 Feature value, 38
Feature values (information type memorized by a link), 38 FeatureValueTable (object), 95 FetchingArraySize (parameter), 332 Field (instance), 96 , 82 Field (object), 110 , 104 FieldCase (property), 97 FieldCount (property), 94 Fields Default value Access restrictions, 174 , 174 Description, 32 , 31 Label, 32 SQL names, 32 Types and formats, 32 Uniqueness of values - index, 44 File (option), 239 filter (keyword), 86 Filters Database description, 85 Slow networks - tuning, 331 Fixed text, 84 Floating - access, 178 Floating point number (type), 33 for (keyword), 85 ForceDisplayScript (object), 106 Foreign key, 42 ForeignKey (property), 97 Formula (property), 107 FrameLabel (property), 110 FullName (field), 36 Precautions, 36 Full name (field), 36 , 31 FullName (property), 107 FuncDomain (property), 108 function (function), 90 Functional rights, 174 Definition, 168 FVSourceTable (object), 95
GetRecordCount (DDE), 308 GetSelectionId (DDE), 313 GetTicketNumber (DDE), 320 GetValue (DDE), 322 , 315 Graphical representation of planning data (See Planner viewer) Guest - access, 178
H
HasClass (property), 105 HasFeatureValueTable (property), 95 HasMemoField (property), 95 HasNotebook (property), 108 HasParent (property), 107 HasSystemPage (property), 108 Hilight (DDE), 315 Historized (property), 100 , 97 History (type of information memorized by a link), 38 HistoryScript (object), 106 , 101 , 98 HP AutoPass License Keys, 13
I
Icons, 331 if (keyword), 87 IIS Configuring for SSO, 213 , 204 IIS 32-bit Configuring with Single Sign-On (SSO) , 203 IIS 64-bit Configuring Single Sign-On (SSO), 210 IIS7 Install Tomcat connectors (Jakarta ISAPI), 204 Install Tomcat connectors (Jakarta ISAPI): 64-bit configuration, 211 IIS-Tomcat redirector, 211 , 204 , 200 Image (type of information memorized by a link), 38 Import, 133-164 Calculated fields, 151 Characters - ISO code, 134
G
gbbase.xml, 24 gbbase*.*, 79 , 28 GenerateColors (parameter), 295
Constraints, 136 Databases, 134 Database structure and data, 75 Departments and employees, 154 Documents, 155 Fields to import Description, 143 Mapping, 147 , 145 Files, 140 Folders - creation, 160 Functioning, 134 Keys, 148 Links - creation parameters, 148 Multiple text files, 134 Numeric data, 135 ODBC - selecting the database, 139 Performance, 159 Process, 138 Recommendations, 135 Scripts, 163 , 161 Single text file, 134 Source tables - mapping, 146 Tables - description of parsing, 140 Text files Mapping, 146 Structure, 138 Text files - selection, 139 Transfer - configuring, 159 Import database structure and data (menu), 75 Importing access management line-of-business data, 168 Import scripts Executing from the command line, 163 Saving and running, 161 Index (instance), 102 , 82 IndexCount (property), 94 Indexes Description, 44 , 44 Labels, 44 Number, 50 SQL names, 44 Insert a language in the database (menu), 66 Integer (16 bit) (type), 33
Integer (32 bit) (type), 33 Integer (8 bit) (type), 33 InternalName (property), 109 , 108 , 102 , 100 , 97 , 94 IsCalcField (property), 110 IsConsolidated (property), 105 IsFeature (property), 110 IsFeatureValueTable (property), 95 IsField (property), 110 IsFirst (property), 95 IsHorizontalSplit (property), 110 IsInherited (property), 106 IsLast (property), 95 IsLink (property), 110 IsValidScript (object), 95 IsVerticalSplit (property), 110 IsVisible (property), 108 ItemColor (parameter), 295 ItemLabel (parameter), 296
J
Jakarta ISAPI redirector, 204 , 200 Jakarta ISAPI redirector: 64-bit configuration, 211 Jakarta Tomcat connectors, 211 , 204 Java for Windows 64-bit Installing with IIS 7, 211
K
Keys Import, 147 Examples, 155
L
Label (property), 109 , 108 , 107 , 104 , 102 , 100 , 97 , 94 Labels Fields, 32 Tables, 30 Languages Asset Manager Application Designer, 22 LDAP Activation, 193 Authentication, 192
Connections, 193 Implementation, 192 Passwords, 192 Reminders, 192 LDAP authentication (See LDAP) LDAP directory (See LDAP) Let Asset Manager Automated Process Manager create the items received in the portfolio (option), 249 License Key file Changing, 17 Database activation error, 19 License Keys, 13 License rights, 17 Lightweight Single Sign-On (See LW-SSO) LineLabel (parameter), 297 Link (instance), 100 , 82 Link (object), 110 LinkCount (property), 94 LinkFilter (property), 106 Links Cardinality, 38 Contextual links, 39 Description, 37 , 37 Import, 148 Label, 37 SQL names, 37 Types, 38 Link type Foreign key, 42 ListAllFields (DDE), 311 ListAllLinks (DDE), 311 ListAllTables (DDE), 305 ListOpenTables (DDE), 306 log_buffer (parameter), 51 LOG (Microsoft SQL Server), 52 LogError (function), 88 LoginId (property), 93 LoginName (property), 93 LongHelpComment (property), 105 , 100 , 97 LongHelpCommentNoHTMLTag (property), 105 , 101 , 97 LongHelpDesc (property), 105 , 101 , 97
LongHelpDescNoHTMLTag (property), 106 , 101 , 97 LongHelpSample (property), 105 , 101 , 97 LongHelpSampleNoHTMLTag (property), 106 , 101 , 97 LongHelpWarning (property), 105 , 101 , 97 LongHelpWarningNoHTMLTag (property), 106 , 101 , 97 Long text field (type), 33 LW-SSO Configuring on the fly, 221 Important Notes, 226 initstring parameter, 222 Key features, 221 Known Problems, 227 Limitations, 224 Overview, 220 SAML2, problem-solving, 230 Security Considerations, 222 System Requirements, 227 Troubleshooting, 228 Use cases, 220
M
mail.ini, 277 , 275 , 273 MainField (parameter), 292 MainIndex (object), 95 MandatoryScript (object), 106 , 98 MandatoryType (property), 138 MAPI (See Messaging) Max. size (option), 239 max server memory (Microsoft SQL Server), 52 MaxValue (property), 105 Messages (menu), 280 Messaging Acknowledgements of receipt, 280 Configuration, 270 Connection - problems, 280 Errors, 281 Test to perform if a problem is encountered, 281 Consulting messages, 280 Functioning, 269
HTML, 279 Interfacing, 269-283 Issuing messages, 279 MAPI, 275 mail.ini, 275 MAPI - Configuring employees, 273 Multiple recipients, 271 Receiving, 279 Sending, 279 SMTP, 273 Configuration, 271 Employees - configuration, 271 mail.ini, 273 Tests, 281 Using multiple protocols, 270 VIM, 277 Configuration, 277 Employees - configuration, 275 mail.ini, 277 Messaging (option), 239 Microsoft SQL Server Attaching an SQL 2000 database to an SQL 2005 server, 76 Clients, 53 Databases - creation, 52 Server, 52 Migration, 63 MinValue (property), 105 Modified on (field), 36 Modules License rights, 13 Monetary (input type), 34 , 34
Number (input type), 33 , 33 Number of open objects (parameter), 50 , 50 NumValue (property), 111
O
Object (instance), 83 ODBC, 115-117 Connections - creation, 117 Connection to use, 117 DBMS, 115 Driver Installation, 115 Usefulness of, 116 Exposed data, 116 Functioning, 115 Restrictions, 115 SAP Crystal Reports - creation, 117 ODBC access (See ODBC) ODBC driver (See ODBC) open_cursors (parameter), 51 Open an existing database (option), 25 Open database description file - create new database (option), 24 OpenTable (DDE), 308 OpenView (DDE), 307 optimizer_mode (parameter), 51 Oracle, 50 OrderBy (parameter), 298 Overflow, 41 Behavior of a link, 42 Tables, 41 Overflow links, 41 Overflow tables, 41 Implementation, 42 Own (link type), 38 Owncopy (link type), 38
N
Name (property), 111 , 107 Named - access, 178 Neutral (link type), 38 NewTicket (DDE), 319 Next (menu), 26 Normal (link type), 38 Normal (type of information memorized by a link), 38 NT services, 263 NullValues (property), 102
P
Page (instance), 109 PageItem (instance), 110 ParentClass (object), 107 Password (field), 198 Passwords
Admin login, 188 Lost passwords, 192 Modification, 191 Percentage (input type), 34 , 34 Performance (See Slow networks - tuning) Planner viewer, 285-299 Options, 285 Overview, 285 Planner viewer pages Adding to a table, 286 Adding to a wizard, 290 Configuration, 292 Practical case, 291 , 286 Unworked days, 285 PlannerViewer (parameter), 292 Positive (property), 98 Practical cases Planner viewer, 291 , 286 Previous (menu), 26 PrimaryKey (object), 95 PrimaryKey (property), 97 processes (parameter), 51 Progress (parameter), 298 Property (instance), 82 Purge the input events table (module), 253 Purge the output events table (module), 253
S
SAP Crystal Reports, 117 (See SAP Crystal Reports) ScreenFilter (property), 109 Screens, 333 Script Overflow link, 42 script (function), 90 Script (instance), 103 , 82 Script (object of an Asset Manager database description instance), 108 ScriptField (instance), 111 ScriptType (property), 103 Search for new workflow execution groups (module), 253 Security, 166 (See Also Access control) Security issues (See Also Authentication) Select folder (menu), 80 Selecting an Asset Manager user role (wizard), 178 SetFilter (DDE), 312 SetFocus (DDE), 316 SetOutput (function), 88 SetProperty (function), 88 SetRecordMode (DDE), 310 SetSelection (DDE), 312 SetTicketMode (DDE), 320 SetValue (DDE), 321 , 317 SetValueWhere (DDE), 322 , 318 SetViewMode (DDE), 309 shared_pool_size (parameter), 51 Show (DDE), 318 Signal presence of database server (module), 253 Single Sign-On (See Authentication) Web client IIS, 200 Jakarta ISAPI redirector, 200 Port transfer, 201 Prerequisites, 199
R
RAID, 49 RawSource (property), 103 Read (property), 106 , 100 , 96 ReadOnly (property), 96 Constraints, 138 ReadOnlyScript (object), 98 ReferencedStorageFieldCount (property), 104 Refresh list (menu), 80 Regular test (option), 330 RelDstField (object), 101 RelevantScript (object), 101 , 98 , 95 RelSrcField (object), 101 RelTable (object), 101 RemoveLink (DDE), 316 ReverseLink (object), 101
SiteMinder, 220 Using Active Directory, 199 Windows client Employees, 198 Functioning, 195 Implementation, 196 Using Active Directory, 195 Single Sign-On (SSO) Web client Configuring port transfer, 208 Configuring port transfer for IIS7 64-bit, 218 Jakarta ISAPI redirector, 204 Jakarta ISAPI redirector: 64-bit configuration, 211 Trouble shooting, 219 , 209 Single Sign-on (SSO) IIS 32-bit, 203 IIS 64-bit, 210 Size (property), 96 Constraints, 138 Slot timeout (option), 186 Slow networks - tuning, 329-334 Access restrictions, 334 Caches, 334 Lists, 330 Options, 329 Screens, 333 SMTP (See Messaging) sort_area_retained_size (parameter), 51 sort_area_size (parameter), 51 sort (keyword), 85 Sorts Databases - description Filtering, 85 Hierarchic lists, 31 Slow networks - tuning, 330 Source (property), 103 Split expense lines in cost centers (module), 254 SQLName (property), 110 , 109 , 108 , 107 , 104 SqlName (property), 102 , 100 , 97 , 94 SQL names Fields, 32
Indexes, 44 Links, 37 Tables, 30 Usage, 30 SrcField (object), 101 SrcTable (object), 101 SSO (See Authentication) StartAfter (parameter), 294 StartBefore (parameter), 293 StartDate (parameter), 292 Stored languages, 71 String (instance), 111 Strings - separators, 143 StringValue (property), 111 SysEnumValue (instance), 111 SysPage (object), 109 System (property), 109 , 108 , 104 , 102 , 100 , 97 , 95 system data source (UDB DB2), 56 System itemized list (input type), 35 , 34 , 34
T
Table (instance), 94 , 82 Table (object), 109 , 106 , 104 , 103 , 98 Table (object of an Asset Manager database description instance), 108 TableCount (property), 93 Table or field name (input type), 34 , 34 Tables Description, 30 , 30 Description string, 31 Intermediary tables, 40 Label, 30 Number, 50 Overflow table, 41 Reference tables, 41 SQL names, 30 tables.txt, 79 , 28 Structure, 29 Tablespaces (Oracle), 52 tempdb (Microsoft SQL Server), 53
Template.Ext (global variable of an Asset Manager database description instance), 112 Template.Fullname (global variable of an Asset Manager database description instance), 112 Template.Name (global variable of an Asset Manager database description instance), 112 Template.Path (global variable of an Asset Manager database description instance), 112 Template.Shortname (global variable of an Asset Manager database description instance), 112 Templates (menu), 80 Text (type), 33 Text files - importing, 138 Time (global variable of an Asset Manager database description instance), 112 Time (input type), 34 , 34 Time (type), 33 Time zones, 62 tpl (files), 83 , 79 , 28 Trees in drop-down lists (option), 329 Tree structure - import, 153 Trigger helpdesk alarms (module), 250 Truncate Log on Checkpoint (Microsoft SQL Server), 53 Type (instance), 101 Type (property), 108 , 104 , 100 , 98 , 96 Constraints to be respected when importing data, 137 Type-ahead after (option), 329 Typed (property), 100 TypeField (object), 101
Unit (property), 104 Update (property), 106 , 100 , 96 Update mobile devices in the database using Enterprise Discovery inventory results (module), 261 Update statistics for tables (module), 252 Update the database using Enterprise Discovery inventory results (module), 259 user data source (UDB DB2), 56 Userlogin (global variable of an Asset Manager database description instance), 112 User profiles, 170 Definition, 167 User rights, 170 Definition, 167 User roles, 169 Definition, 166 Selecting the user's role used at connection , 178 User type (field), 33 UserType (instance), 102 UserType (property), 108 , 100 , 99 , 96 Import - constraints, 136 UserTypeFormat (property), 99 , 96 Use this connection in service mode (option), 236 , 235 Use time zones (option), 62
V
Value (property), 111 ValueField (object), 106 ValueOf (function), 87 Value of feature (input type), 34 , 34 Variable length binary field (type), 33 VbReturnType (property), 104 Verify alarms (module), 256 Verify history lines (module), 258 Verify local time compared to that of the server (option), 239 Verify null-identifier records (module), 258 Verify stocks (module), 258 Verify time zone of database server (module), 255
U
UDB DB2 Clients, 56 Unicode, 71 Adding Oracle database support, 72 Unique index Precautions for deleting or modifying, 27
Verify time zone of database server (option), 239 View (instance), 108 VIM (See Messaging)
W
WAN (See Slow networks - tuning) WAN network (See Slow networks - tuning) WhereCond (parameter), 298 Write (property), 106 , 100 , 96
X
XenApp Using to access Asset Manager, 119