Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Version 7.7.0
October 2018
7.7.0 INSTALLATION GUIDE
Table of Contents
Introduction ............................................................................. 6
Prerequisites for Personify360 Installation ........................................................ 6
Summary Outline of Installation Steps ............................................................... 6
2
7.7.0 INSTALLATION GUIDE
3
7.7.0 INSTALLATION GUIDE
Troubleshooting................................................................... 203
Configuring NLog across Application and Web Servers............................... 203
Setting up Personify360 to Remember a Password ...................................... 204
Overcoming Automatic Updates Error Message ............................................ 205
4
7.7.0 INSTALLATION GUIDE
5
7.7.0 INSTALLATION GUIDE
Introduction
This guide provides instructions for performing a fresh installation of the overall
Personify360 application.
NOTE: For specific information about using the Personify360 application, please see the
Personify360 7.7.0 Online Help.
For installing optional interfaces see the Third-Party Integrations section of the 7.7.0 Online
Help for the Spectrum Interface, Universal Payment Handler, and Lyris Interface.
Application Server: Windows Server 2012 R2 or 2016, IIS 8.x (for Windows Server
2012 R2) or 10.0 (for Windows Server 2016), BI 4.2 SP5 Client, .NET Framework
4.5.2
Database Server: Windows Server 2012 R2 or 2016, SQL Server 2016 SP1, .NET
Framework 4.5.2
Business Server: Windows Server 2012 R2 or 2016, IIS 8.x (for Windows Server
2012 R2) or 10.0 (for Windows Server 2016), .NET Framework 4.5.2
Business Objects Enterprise Server: Windows Server 2012 R2 or 2016
Install BOE software BI 4.2 SP5 Server
Service account for all Personify360 services, with local admin rights
Email server IP/name and mail relay enabled from APP/TRS/web servers
6
7.7.0 INSTALLATION GUIDE
7
7.7.0 INSTALLATION GUIDE
Getting Started
You should have a working knowledge of SQL Server to perform this installation. If you need
more information on performing actions in this tool, please refer to the Microsoft
documentation.
Before you begin the installation process outlined in this document, you must
perform the following:
1. Ensure that the system you are installing the software on meets the system
requirements outlined in the Personify360 Architecture Matrix document in the 7.7.0
package.
2. Verify you installed the .NET Framework Version 4.5.2 and any Framework service
releases, critical updates, or hot fixes that have been certified by Personify, Inc. For
further information on Microsoft Critical Updates certified for use with Personify360,
please contact your Personify, Inc. Project Manager.
3. Your database server must have SQL Server installed and ready to support new
databases.
NOTE: The Personify360 application, BusinessObjects, and TRS servers are currently
supported on 64-bit OS platforms.
The following table details the minimum software requirements for various Personify360
servers.
Additional Components
Microsoft .NET Framework 4.5.2
Minimum: Microsoft IIS 8.x (configured and active)
Other Software
Minimum:SQL Server 2016 Client Library
Load Balancing (optional)
BIGIP or similar recommended when multiple application servers
are deployed.
8
7.7.0 INSTALLATION GUIDE
Database
Minimum: SQL Server 2016
Additional Components
Microsoft .NET Framework 4.5.2
Personify360 Operating System
Process/Reports Minimum: Windows Server 2012 R2 or 2016
Server
NOTE: Latest Microsoft Service Packs must be installed.
Additional Components
Microsoft .NET Framework 4.5.2
Minimum Microsoft IIS 8.x (configured and active)
Other Software
Minimum: SQL Server 2016 Client Library
BusinessObjects XI 4.2 SP5
Spectrum Technology Platform 12.0 SP2
Server Setup
Server Configuration
The installation process will guide you through the recommended steps to create a network
environment as pictured below. There are options discussed in this document that can help
you create smaller and larger environments as required by the number internal users. Below
is a picture of a simple Personify360 server-database installation with relationships between
the servers.
9
7.7.0 INSTALLATION GUIDE
Please refer to the Personify360 Architecture Matrix document in the 7.7.0 package before
you begin this installation to make decisions concerning the number of servers that your
organization requires for optimum performance.
Use the “Database and Configuration Worksheet” in Appendix C to record your passwords
and XML configuration files path. Documentation of these key items makes changes in the
installation configuration easier to perform.
Server Allocation
Depending on the environment layout and expected load, you need to set server allocation.
A simple installation would include four servers with one each for Database, Application,
Web, and TRS.
This can be expanded to include multiple load-balanced servers depending on requirement.
10
7.7.0 INSTALLATION GUIDE
The suggested folder name on App, Web, and TRS Server is: [Folder
Name]:\Personify\[InstallationName]\. For example, C:\Personify\APA\.
Before beginning the installation, you must create the following folders on the servers:
App Server
ApplicationServerr
AutoUpdater
BackOfficeClient
OnlineHelp
PADSSAuditLogging
PersonifyHomePage
ServerFiles
Web Server
Ebusiness
IMS
PersonifyDataServices
PersonifyImageServices
SSO
Reporting/TRS Server
TRS
APPL
INPUT
OUTPUT
Services
CacheServer
InterfaceServer
NotificationServer
This structure is server independent. The underlying components can be moved between
servers but folder structure stays the same.
Personify, Inc. recommends following folder structure that can spread across multiple
servers:
11
7.7.0 INSTALLATION GUIDE
12
7.7.0 INSTALLATION GUIDE
\Mobile
\AutoUpdates
\Services
\Application
\Cache
\Interface
\TRS
\Image
\IMS
\Notification
\Logs
\WinClient
\Utilities
\Backups
\[mm-dd-yy]
Security
Document Conventions
The purpose of this document is to provide step-by-step instructions for installing the
Personify360 Enterprise suite of applications. For explanation purposes, please refer to the
following conventions used throughout this document as you perform your installation:
13
7.7.0 INSTALLATION GUIDE
<App Server This is name of the configuration file that provides the Personify360
Config File> Application Server with its runtime configuration information.
Example: C:\Personify\7.7.0\Services\Personify.Server
Application.Server.exe.config
<Local This is the path where you will install the Personify360 Components on
Installation your local system.
Folder>
X:\Personify\<Personify360 Release Name>
Example: C:\Personify\7.7.0
<Local Media This is the path on your local system where you will copy the installation
Path> materials prior to beginning this installation.
14
7.7.0 INSTALLATION GUIDE
NOTE: Please make sure your Environment Name, Association Name, or the Database
Name does not start with a number.
Format
[APP][ENVIRONMENT]_[TYPE][n]
Usage Description
[APP]: This defines the type of application. The following table contains valid type of
application. If the type of application does not appear in this table then use a common sense
naming convention.
Name Function
CUSTID This is the official customer ID, or acronym, associated with the
database.
PIDB Installation DB
SCRATCH Scratch DB, used for temporary and backup tables
ASPSTATE ASPNet session state DB
BOE Business Objects DB
[ENVIRONMENT]: This is the name of the environment type. The following table contains
default environment types and their definitions. If the environment you are creating exists in
this table then you must use the properly defined name. If the environment type does not
appear in this table then use a common sense naming convention.
Name Function
15
7.7.0 INSTALLATION GUIDE
Name Function
[TYPE]: This defines the DB type. The following table contains valid DB types. If the DB type
does not appear in this table then use a common sense naming convention.
Name Function
[n]: This is always an integer that defines the environment number. This is helpful as there
may be multiple environments or you may need to remove and older one and add a new
one in which case you would increment this integer by 1.
16
7.7.0 INSTALLATION GUIDE
Example Usage
Before you can perform the fresh install for the database, you must first copy the release
media to your local file system.
NOTE: The copying process is extended if you copy the Business Objects folder. Close all
other programs for maximum efficiency.
1. The installation media for each release of Personify360 can be found at <Network
Media Path>.
2. In the Releases folder, you will find sub-folders for each subsequent release.
3. Right-click the folder you want to install and select Copy.
The FTP is available to copy this package to your network. Ask your project manager
about the protocols.
4. Create a folder on your local hard drive to hold the release installation media.
A suggested folder name is “Personify Installation Media”.
5. Navigate to your newly created folder on your local machine.
6. Right-click the folder you want to paste the contents of the release media to your
local disk and select Paste.
When this operation is complete, you should have a folder structure similar to the following
on your local hard disk:
C:\Personify Installation Media\7.7.0\
This folder should contain the following:
AutoUpdater
BackofficeClient
BusinessObjects
Databases
Documentation
OnlineHelp
PROPRIETARY AND CONFIDENTIAL
17
7.7.0 INSTALLATION GUIDE
PADSS_Audit_Logging
PersonifyHomePage
Services
ThirdPartyInterfaces
TRS
UnifiedSearch
Utilities
WebApplications
WindowsMSI
You should have experience in performing a database restore in SQL Server. If not please
refer to the following article on how to restore from the backup:
http://msdn.microsoft.com/en-us/library/ms177429.aspx
NOTE: See Appendix B for the suggested server folder structure for your Personify360
installation.
1. The Personify360 application and several TRS processes, such as CUS600 and
MKT800, need to store data values in a temporary place until they are completed.
Each time SQL Server is restarted these variables are cleared. The script
Install_AddUserDefinedTypeToTempDB_To_SQLServer_Master_Database.sql cre
ates the data elements in the temporary database, which provide the TRS processes
a place to store data values during execution. More specifically this script does the
following:
Installs a stored procedure named AddUDTToTempDB to the Master database
within the SQL Server instance.
Sets this stored procedure to run automatically every time the SQL Server
service is started.
This script must be run by a SQL Server User that is in the SQL Server Fixed Role
“SysAdmins” (i.e., sa). It cannot be run as the user “Personify” or any other non-SQL
Server Admin account.
This script only needs to run once during the SQL Server installation. Updates to this
script could be made available, but those updates should be run by a user with SQL
Server SysAdmin permissions.
18
7.7.0 INSTALLATION GUIDE
NOTE: The Personify360 application does not require SysAdmin permissions and should
not be granted SysAdmin permissions just to allow this script to execute. Please login to
SQL Server with the SA account to execute this script.
The script
“Install_AddUserDefinedTypeToTempDB_To_SQLServer_Master_Database.sql” is
located in the following folder in your release package:
[Local Media Path]\Databases\Fresh
Install\AFTER_SQLSERVER_INSTALLATION
This must be executed when a new installation of SQL Server is set up and when
any Personify360 databases reside within this instance of the SQL Server.
a. Open SQL and login using SQL Login for the “SA” account.
b. Start a new query with the “Master” database selected.
c. Double-click the file.
4. Execute the
Install_AddUserDefinedTypeToTempDB_To_SQLServer_Master_Database.sql
script on database server from the following location:
Package\Databases\Fresh_Install\AFTER_SQLSERVER_INSTALLATION\
5. Using Level 0 or Level 2 databases directly, you can use the database backup files
from Databases\Fresh Install\Backups to restore from the backup.
Restore the database with the name of the Personify360 database.
NOTE: Level 0 contains no data and Level 2 contains sample setups of every module and
data. Personify, Inc. recommends using Level 2 for testing purposes.
19
7.7.0 INSTALLATION GUIDE
NOTE: Set the initial size for the database to 4GB and the auto growth size to 512MB. Set
the initial size of the log file to 512MB and auto growth size to 256MB.
NOTE: Please note that for Personify360 versions 7.4.2 and above, the SQL user name or
domain account name (including domain name) used to connect to the SQL database
CANNOT exceed 20 characters. If you do not do so, users may encounter the following
error in their Personify application: “Error – Msg 8152, Level 16, State 2, Procedure
GetBatchNextID, Line 83. String or binary data would be truncated. The statement has been
terminated.”
NOTE: For more information on how to restore a database backup, please refer to the
following article: http://msdn.microsoft.com/en-us/library/ms177429.aspx.
3. Use an existing login or create a new login to access the Installation Database.
4. Personify, Inc. recommends using Windows Authentication.
5. Set the owner of the Personify360 Installation database to "sa".
6. Set the database and log file initial size and auto growth size.
NOTE: Set the initial size for the database to 500MB and the auto growth size to 256MB.
Set the initial size of the log file to 256MB and auto growth size to 256MB.
7. Locate and open the SQL Script named TEMPLATE_Insert Data into
InstallationDatabase.sql in SQL Server 2012 Management Studio.
This script can be found at the following location:
...\7.7.0\Package\Databases\Fresh_Install\PersonifyInstallation\Post Personify
Database Restore.
8. Within this script, perform the following:
Type in COMMIT at the bottom of the script.
Change [ASSOCIATION] to an acronym for your association.
Change [ASSOCIATION NAME] to the name of your association.
PROPRIETARY AND CONFIDENTIAL
20
7.7.0 INSTALLATION GUIDE
After the Insert Data into InstallationDatabase.sql script is run, you might decide to
change the Server Files path. You will need to run the Update ServerConfig Column in
T_##_AppInstance Table.sql script, which is in the <Network Media Path>\ERROR: Variable
(Release_Number) is undefined.\Databases\Fresh_Install\PersonifyInstallation folder.
21
7.7.0 INSTALLATION GUIDE
NOTE: All Serverfiles path should be valid only; otherwise, the wrong reference can lead to
issues in particular features.
Online Store is a new feature from 7.4.2 Personify360 e-Business application. Using
Change Data Capture functionality enables the SQL database to track changes made to key
Personify360 setup tables. Change Data Capture functionality only available in Enterprise
edition of SQL Server. These changes are then reflected on e-Business within 4-5 minutes.
Multiple triggers are used to copy data in to online store tables or delete data.
This guide is intended for System Administrators with extensive knowledge of your
association’s Personify360 database, Personify360 Studio Tools, and Personify360 back-
end application. Users should have previous experience with SQL Server 2012 and web
service installation.
22
7.7.0 INSTALLATION GUIDE
OLS_SEARCH_PRODUCT
OLS_SEARCH_MTG_PRODUCT
The following stored procedures are part of App Data Cache effort.
WEB_PRODUCT_INFO_ADD_DATA
APP_DATA_CACHE_ADD_DATA
APP_DATA_CACHE_CLEAR_DATA
APP_DATA_CACHE_GET_DATA
The following stored procedures are internal to Personify .and are executed to maintain the
cache with most current data when product related information is changed and to reflect
those changes to the Application Data Cache, incrementally without having to refresh all of
the Application Data cache.
OLS_PRODUCT_FACET_INFO_ADD_DATA
OLS_PRODUCT_FACET_INFO_ADD_DATA_INCREMENTAL
OLS_PRODUCT_MTG_FACET_INFO_ADD_DATA
OLS_PRODUCT_MTG_FACET_INFO_ADD_DATA_INCREMENTAL
OLS_PRODUCT_SEARCH_ADD_DATA
OLS_PRODUCT_SEARCH_ADD_DATA_INCREMENTAL
The following stored procedure is related to both Online Store and App Data Cache process.
23
7.7.0 INSTALLATION GUIDE
NOTE: Please refer to SQL server installation documents for instructions to install and
configure Full Text Index on a SQL server instance.
System SQL tables to track change data for tables related to App Data Cache
process
SQL Jobs to manage Change Data Capture data collection and cleanup
cdc .<DatabaseName>_capture – This SQL job runs continuously and adds changed
data to the system tables mentioned above.
cdc .<DatabaseName>_cleanup – This SQL Job runs daily at 2:00 AM and deletes
data
Using Change Data Capture functionality enables SQL database to track changes made to
the tables listed next. These changes are then reflected on eBusiness within 4-5 minutes.
APP_CODE
APP_COUNTRY
APP_CURRENCY
APP_EXCHANGE_RATE
APP_ORG_UNIT
APP_ORGANIZATION
24
7.7.0 INSTALLATION GUIDE
APP_TYPE
CUS_ADDRESS_DETAIL_STRUCTURE
CUS_ADDRESS_STRUCTURE
CUS_PHONE_STRUCTURE
FAR_RECEIPT_TYPE
FGL_CASH_ACCOUNT
MBR_GROUP_DETAIL
PRODUCT_DISCOUNT
PRODUCT_DISCOUNT_DETAIL
PRODUCT_PRICING
PRODUCT_RATE_CODE
PSM_ONLINE_REPORT_VW
RATE_STRUCTURE
WEB_PRODUCT_INFO
The list of tables above is stored in Personify360 table APP_DATA_CACHE_TABLE_LIST.
NOTE: Personify, Inc. cannot guarantee that caching will work for any tables NOT listed
above.
25
7.7.0 INSTALLATION GUIDE
This script must be executed by user that has sysAdmin privileges on SQL
Server.
Please specify SQL User that will be used to run the SQL Job. Replace value
‘sa’ with SQL User name in line 110.
Please specify Database Name by doing a global replace of keyword
"DATABASENAME" with name of Personify360 database here. This global
replace should update keyword at 5 instances.
SQL job 2 - APP_DATA_CACHE_CLEAR_DATA – This SQL Job deletes old data from
table APP_DATA_CACHE_INFO.
By default, this stored procedure will delete data older than 10 days.
Script Execution Instructions:
This script must be executed by user that has sysAdmin privileges on SQL
Server.
Please specify SQL User that will be used to run the SQL Job. Replace value
‘sa’ with SQL User name in line 110.
Please specify Database Name by doing a global replace of keyword "DATABASENAME"
with name of Personify360 database here. This global replace should update keyword at 5
instances.
SQL job 3 - POPULATE_OLS_TABLES_WHEN_TYPES_AND_CODES_CHANGE– This
SQL Job will execute the stored procedure
usp_PopulateOLSWhenTypesAndCodesChange to repopulate the OLS with the most
up to date data.
This script must be executed by user that has sysAdmin privileges on SQL
Server.
26
7.7.0 INSTALLATION GUIDE
Before executing this script you will need to open the script in SQL Server
Management Studio and edit the values for the variables as shown in Table -
Populate OLS Tables When Types and Codes Change Variables below.
Table - Populate OLS Tables When Types and Codes Change Variables
Household SQL Job Creation
This step involves executing SQL scripts available in release package sub-folder –
...\Version.XX\Databases\SQL_EXECUTIVE_SCHEDULED_JOBS\Household.
The scripts in this folder must be executed in the Personify360 database when a new
installation of Online Store is set up for Personify360.
There is only one SQL Job script listed and one readme file in this folder
Read me file - READ ME - Household_Address_Refresh_SQLJob.TXT
SQL Job - Household_Address_Refresh_SQLJob.SQL
Please read the instructions in readme file before creating the SQL Jobs.
27
7.7.0 INSTALLATION GUIDE
This script must be executed by user that has sysAdmin privileges on SQL
Server.
Please specify SQL User that will be used to run the SQL Job. Replace value
‘sa’ with SQL User name in line 107.
...\Version.XX\Databases\SQL_EXECUTIVE_SCHEDULED_JOBS\CRM360.
The scripts in this folder must be executed in the Personify360 database when a new
installation of Online Store is set up for Personify.
There is only one SQL Job script listed and one readme file in this folder
Read me file - ReadMe_FIRST.txt
SQL Job - ADD_CRM360_DATA.SQL
Please read the instructions in readme file before creating the SQL Jobs.
SQL job – [DATABASENAME]_ADD_CRM360_DATA – This SQL Job will be used to insert
data to tables related to CRM 360. The default schedule for this SQL job is to run weekly.
This schedule can be modified as required for each Personify360 installation.
The SQL Job executes stored procedure usp_RunCRM360_SQLJob in the Personify360
database.
Script Execution Instructions:
This script must be executed by user that has sysAdmin privileges on SQL
Server.
28
7.7.0 INSTALLATION GUIDE
Please specify SQL User that will be used to run the SQL Job. Replace value
‘sa’ with SQL User name in line 110.
29
7.7.0 INSTALLATION GUIDE
2. Please specify SQL User that will be used to run the SQL Job. Replace value ‘sa’
with SQL User name in line 112.
3. Please specify Database Name by doing a global replace of keyword
"DATABASENAME" with name of Personify360 database here.
This global replace should update keyword at 5 instances.
AcsService SQL Job Creation (Address Change Service)
This step involves executing SQL scripts available in release package sub-folder –
...\Version.XX\Databases\SQL_EXECUTIVE_SCHEDULED_JOBS\AcsService.
SQL Job - Address_Detail_Key_Line_ID_CleanUp_SQLJob.sql
This script will be used to setup SQL Job that will execute stored procedure:
usp_Address_Detail_Key_Line_ID_CleanUp, which will insert data in
CUS_ADDRESS_DETAIL_AVAILABLE_KEY_LINE table and update data in
CUS_ADDRESS_DETAIL_KEY_LINE table.
The default schedule for the SQL Job is to run every 30 Minutes.
Script Execution Instructions:
1. This script must be executed by user that has sysAdmin privileges on SQL Server.
2. Please specify SQL User that will be used to run the SQL Job. Replace value ‘sa’
with SQL User name in line 112.
3. Please specify Database Name by doing a global replace of keyword
"DATABASENAME" with name of Personify360 database here.
This global replace should update keyword at 5 instances.
Purge_MBR_DIR_SETUP_REQUEST_LOG_Job
This step involves executing SQL scripts available in release package sub-folder –
...\Version.XX\Databases\SQL_EXECUTIVE_SCHEDULED_JOBS\
SQL Job - Purge_MBR_DIR_SETUP_REQUEST_LOG_Job.sql
This script will be used to setup SQL Job that will execute stored procedure:
usp_Mbr_Directory_Access_Log_Clean, which will remove data from
MBR_DIR_SETUP_REQUEST_LOG table.
The default schedule for the SQL Job is to run once in a week. If Directory usage is high,
then please update the schedule to once in a day.
Script Execution Instructions:
1. This script must be executed by user that has sysAdmin privileges on SQL Server.
2. Please specify SQL User that will be used to run the SQL Job. Replace value
‘OWNERUSERID’ with SQL User name in line 87.
PROPRIETARY AND CONFIDENTIAL
30
7.7.0 INSTALLATION GUIDE
This script must be executed by a user that has sysAdmin privileges on SQL Server.
Please specify the SQL User that will be used to run the SQL Job. Replace value ‘sa’
with SQL User name in line 110.
Please specify the Database Name by doing a global replace of keyword
"DatabaseName" with the name of the Personify360 database. There should be 5
instances of this keyword that will be updated.
PopulateBOEReports SQL Job Creation
This step involves executing SQL scripts available in release package sub-folder
“...\Version.XX\Databases\SQL_EXECUTIVE_SCHEDULED_JOBS\PopulateBOEReports”.
The scripts in this folder must be executed in the Personify360 database only. There is only
one SQL Job script listed and one readme file in this folder:
31
7.7.0 INSTALLATION GUIDE
This script must be executed by a user that has sysAdmin privileges on SQL Server.
Please specify the SQL User that will be used to run the SQL Job. Replace value ‘sa’
with SQL User name in line 110.
Please specify the Database Name by doing a global replace of keyword
"DatabaseName" with the name of the Personify360 database. There should be 5
instances of this keyword that will be updated.
32
7.7.0 INSTALLATION GUIDE
Provide access to service accounts on SQL Server to each of the following databases:
NOTE: The following section can only be modified after installing the Personify360
Application Server. Please refer back to this section after you have installed the
Personify360 Application Server to properly complete the PA-DSS Audit Logging
configuration.
33
7.7.0 INSTALLATION GUIDE
Audit logging can be enabled or disabled at the global level or at the event level.
To install PA-DSS Audit Logging, you must install the PA-DSS database and then the PA-
DSS Web Service. The PA-DSS database can be installed on the same SQL Server
instance or on a different SQL Server instance. Verify that the credentials for the PA-DSS
database are different from the ones needed to connect to the main Personify360 database.
To install the PA-DSS database:
34
7.7.0 INSTALLATION GUIDE
35
7.7.0 INSTALLATION GUIDE
6. Click OK.
36
7.7.0 INSTALLATION GUIDE
14. Set up security for the Web Service so it allows only the IP address of the workstation
that the Personify360 Application service is hosted. This would be part of managing
your Firewall by adding this IP Address.
Verify that Microsoft .Net Framework 4.5.2 is installed (as of Personify360 7.6.1
release).
Verify that following SQL CLR types are installed. These setups are required
since we are using geography/spatial data types from Personify database.
Verify that you have already installed Microsoft® System CLR Types for SQL
Server® 2008 R2
Verify that you have already installed SQL 2012 CLR types
To install a fresh copy of the Personify360 Application Server:
37
7.7.0 INSTALLATION GUIDE
38
7.7.0 INSTALLATION GUIDE
NOTE: With the release of Personify360 7.2, additional server-side diagnostics logging
capabilities were made available to Personify360 System Administrators. These capabilities
can be used to locate and identify SQL statements that cannot be executed for reasons
such as concurrency exceptions, deadlock scenarios, and malformed queries.
6. If you are multi domain environment like where servers are in one domain and users
are in another domain, you may want to enable LDAP Authentication. To enable
LDAP authentication, uncomment the required settings and update your LDAP
server details as when where exists.
39
7.7.0 INSTALLATION GUIDE
40
7.7.0 INSTALLATION GUIDE
Copy the following folder and rename “HomePage” and set virtual directory:
..\PersonifyHomePage\Fresh_Install\Extract
The Config file is required for all types of deployment for Automatic Updates. It provides the
server location and database name to the client launcher. Perform this task before
proceeding to the next step.
1. Copy the contents of the ...\7.7.0\Package\BackofficeClient to [Local Installation
Folder]\[Personify360 Release Name]\.
2. Navigate to the ...\7.7.0\Package\BackofficeClient\Config folder.
3. Rename the TEMPLATE_Config.xml file to "Config.xml".
4. Open Config.xml in your text editor (for example, Notepad, XML Editor, etc.) and
refer to the following table for more information on which parameters to replace.
41
7.7.0 INSTALLATION GUIDE
NOTE: By default, the Help menu in Personify360 will open the local online help files
installed on the application server. Because these files are only the latest as of your
upgrade, the online help content will soon become out-of-date, as Personify is constantly
making improvements. Therefore, you have the option of configuring Personify360 to open a
centrally available Online Help:
https://resource1.personifycorp.com/PersonifyOnlineHelp/7.7.0/. NOTE: This site requires a
Single Sign-On (SSO) login. If some of your users do NOT have a SSO login, it is
recommended that you do NOT change the default configuration. You DO have the option of
providing BOTH links in the Help menu (see below for more information).
42
7.7.0 INSTALLATION GUIDE
TOCFile="index.htm"
IndexFile="index.htm"
/>
c. Tooltip: the name of the tooltip that will display when users hover over the
menu item.
d. Command: the support URL you want to open when the user clicks the
support menu item.
11. If you would like to provide a menu option to open the centrally located online help
(SSO login required), perform the following:
12. Enter the following code after the code shown in step 3f:
<Tool Name="OnlineHelp" Caption="_Online Help" Tooltip
="Online Help"
Command="cmd://App/Shell?FileName=https://resource1.personifyc
orp.com/PersonifyOnlineHelp/7.7.0/" BeginGroup="True"
Image="books.ico"/>
IMPORTANT: Please note that the context-sensitive help will still open the local online help
files when the user presses F1 on his/her keyboard. If you would rather have the centrally
located online help function as the context-sensitive help, you can enter
https://resource1.personifycorp.com/PersonifyOnlineHelp/7.7.0/ as the "Server" in the
Config.xml (see step 3b above).
43
7.7.0 INSTALLATION GUIDE
The Automatic Updates tool works with Personify360 to provide users with the most recent
version of Personify360. When installed, the Automatic Updates copies all the necessary
files for Personify360 to run and function correctly from the server to the client’s
environment.
New functionality that was added to the Automatic Updates includes the ability to specify an
alternate directory to use as the root directory for Personify360 downloads.
This section explains the process for installing and configuring the Automatic Updates. If you
have any questions, please contact your system administrator or a Personify, Inc. business
analyst
Once you install Automatic Updates and start Personify360 for the first time, you will be
prompted to provide some basic configuration information. This allows the Automatic
Updates to download Personify360 for you and communicate any problems it may have to
the appropriate person.
To configure Personify360 Launcher:
44
7.7.0 INSTALLATION GUIDE
13. Set the [ConfigurationFileLocation] to the network update location you created in
step 1.
14. Using your command prompt, go to your network update location, and enter
“Personify.exe /generatemanifest”.
For more information, please see Manifest Generation.
15. For more information on deploying to user machines, please see Appendix A.
NOTE: The prerequisite for the product development is .NET Framework 4.0.
NOTE: If you have been following this installation guide from the beginning, the contents of
the Services folder should be copied over already.
45
7.7.0 INSTALLATION GUIDE
10. Open the Databases.xml file and modify the database connection information based
on your database.
This file specifies where your Personify360 database is set up so that the Caching
Service can reference it. If you are not sure about the parameter values, contact your
database administrator.
11. DBName should be the name of the Personify360 database you are using (not the
Installation database).
12. FriendlyName should be the same as DBName.
13. Data Source is the name of the server where the Personify360 database is located.
Initial catalog should be the same name as the Personify360 database. User ID and
Password are the credentials used to log into the SQL Server.
14. Save and close the file.
15. Once the files are modified, select the InstallTimssCache.bat file to install the
service.
16. Right-click the file and select Run as Administrator.
17. From the User Account Control dialog box, click Yes.
18. Open the Windows Services panel and set the Log On account to
“PersonifyReporting” account for the service named Personify [Client
environment] Cache Service – [port number].
19. Start the service named Personify [Client environment] Cache Service – [port
number].
20. Review the Event Viewer log under Administrative Tools and verify if there was any
error due to configuration.
46
7.7.0 INSTALLATION GUIDE
NOTE: If you want to uninstall the service, stop the service from the Windows Service panel
and right-click the UnInstallTimssCache.bat file. Click Run as Administrator and in the
User Access Control dialog box, click Yes.
This service is used to run Online Reports, Group1, File Transfer, Payflow Pro and other
interfaces.
To configure and install the Personify360 Interface Service:
1. Browse to the <Local Media Path>\Services\Interface folder.
2. Rename TimssInterfaceService_TEMPLATE.exe.config
to "TimssInterfaceService.exe.config".
3. Open the TimssInterfaceService.exe.config file and perform the following:
This contains configuration information about the service.
a. Verify the Port ID used for the caching service is correct.
For example, <TimssCache ServerURI="tcp://localhost:39235/" />.
If this service is running on a server other than the caching server, then you
must specify the server name instead of the localhost. The port number here
should match the port used with the Caching Service.
b. Verify the service configuration parameters are correct, including:
ServiceName – Name of the application service as it appears in the
Service Explorer: Personify [client environment] Interface Server –
[port number].
DisplayName – Descriptive name. This can be set to the same value as
the ServiceName.
47
7.7.0 INSTALLATION GUIDE
NOTE: Do not change the Port ID while it is being used in the application. The systemtoken
and plaintcp Port IDs are mentioned in the configuration file but they are not used because
you do not want to authenticate all calls to the Interface Service.
48
7.7.0 INSTALLATION GUIDE
NOTE: If your database section cannot be found, then create a new section as a copy of an
existing database and change the database name and other settings. The DBName
parameter value should correspond to the value set for DBName in the Databases.xml
configuration file.
Refer to the following table for more information on which parameters to replace.
49
7.7.0 INSTALLATION GUIDE
##label_name##
##company_name##
##phone_no##
50
7.7.0 INSTALLATION GUIDE
51
7.7.0 INSTALLATION GUIDE
NOTE: If the TRS service and the Interface service are on different servers, then you can
change the Log On account here to a domain user account with “Change” rights on the TRS
folder.
52
7.7.0 INSTALLATION GUIDE
The timssinterfaceconfig.xml should have the UNC path for the TRS folders, so by granting
permission to the Log On account, it can access the TRS folders.
1. Copy the contents from the ...\7.7.0\Package\TRS folder to the [Local Installation
Path]\[Personify360 Release Name]\Services\TRS folder, if this has not been done
already.
2. Navigate to [Local Installation Path]\[Personify360 Release Name]\Services\TRS.
Open the following files in Notepad and add the appropriate file where the TRS
service is located:
InstallTRS.bat
53
7.7.0 INSTALLATION GUIDE
UnInstallTRS.bat
NOTE: If the path has spaces in it, enclose the path name in double quotation marks.
3. Rename TEMPLATE_TRSDaemonService.exe.config to
"TRSDaemonService.exe.config".
4. Open the TRSDaemonService.exe.config file and perform the following:
a. Set <ThisService> ServiceName = Personify [client environment] TRS
Service and
DisplayName = Personify [client environment] TRS Service.
b. Set To = Admin@YourAssociation.com. In case of any error in the service,
the above email ID will be used by the service to communicate the error.
c. Set QueueSetup Path = [local installation path].
5. Rename TEMPLATE_TRSDaemon.xml to "TRSDaemon.xml".
6. Open the TRSDaemon.xml file and perform the following:
a. Set the folder paths:
<LOG_DIR> [local installation path] \Logs</LOG_DIR>
<TRS_HOME_DIR> [local installation path]</TRS_HOME_DIR>
<APPL_DIR> [local installation path] \Appl</APPL_DIR>
<OUTPUT_DIR> [local installation path] \Output</OUTPUT_DIR>
b. Verify the DBNAME matches the name provided in the databases.xml in the
Cache Service folder.
c. Set the following values:
PURGE_FLAG – “Y” enables purge
PURGE_HOUR – Starts the purge at a particular hour
PURGE_INTERVAL – Indicates how old TRS jobs has to be for purge
7. Save TRSDaemon.xml and close.
8. Rename the TEMPLATE_TimssToken.default file to "TimssToken.Default".
9. Open the TimssToken.Default file and verify the URI and the port information are
correct based on the Cache Service setup. You will need to change the network
locations to the servers that you have set up the services on, as well as their
respective port numbers.
10. Save any changes to TimssToken.Default and close.
11. Copy the TimssToken.Default file to the [Local Installation Path]\Appl folder or the
appropriate folder based on your installation.
12. Copy the config.xml file from WinClient folder to the target [Local Installation
Path]\Appl\Config folder.
13. Double-click the InstallTRS.bat file to install the service.
14. Right-click the file and select Run as Administrator.
54
7.7.0 INSTALLATION GUIDE
15. From the User Access Control dialog box, click Yes to install the service.
16. Open the Windows Services panel and start the service named Personify [client
environment] TRS Service.
NOTE: You must create your own organization’s org unit in Personify360 before installing
notification services. For more information, please see the Personify360 7.7.0 Online Help.
Before you can install and use the Personify360 Email Notification Service, you must first
configure the service. To configure the service navigate to the folder where you have copied
the Personify360 E-Mail Notification Service executable. Double-click on the batch
command file ConfigureNotificationService.cmd. This will open a dialog with five tabs
General Settings, SMTP Settings, Service Logon Credentials, Base Procedures, and Event
Procedures.
NOTE: The NTS services do not support TLS encryption. You will need to create a regular
SMTP server to send email from the notification services.
NOTE: If you want to install notification services via command line, please see Command
Line Options for Notifications.
55
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
56
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
Logging Level The logging level parameter specifies the amount of information written
to the Windows Application Event Log. The default value for this
parameter is NORMAL. You can set this value to VERBOSE for
debugging purposes, but this can cause performance degradation of the
system due to the amount of information being written to the event log.
Service Name The name of this service. When this service is installed, the value of
Service Name and Service Queue is concatenated to create the name of
the service as it appears in the Windows Service Control Manager.
Service The description of this service as it appears in the Windows Service
Description Control Manager.
Job Startup The delay, in seconds, to pause between jobs when initializing each job.
Delay To prevent a surge of requests on the server processor, when the
service first starts it pauses for the specified number of seconds before
attempting to process jobs while initialization is in process.
Each Notification Server instance must specify both organization and organization unit
parameters. When the server initializes at service start, it selects notification event
definitions based on the organization/organization unit. When a notification event processes,
these values are passed as parameters to the notification event stored procedure.
If your association utilizes the multi organization capabilities of Personify360, you can use
the org/org unit parameters in your notification event stored procedures to filter result sets
down by org/org unit.
If you do not use the multi organization capabilities of Personify360, you can choose not to
use the org/org unit parameters in the notification event stored procedure. The parameters
will still be passed when the notification event fires, but if you choose not to use them in the
predicates of the stored procedure select statements, a single notification server instance
can be used to service your entire organization.
57
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
SMTP Server The DNS name or IP Address of the server on your network that handles
Name outgoing SMTP requests.
SMTP Server The port number used to communicate with the SMTP Server. Defaults
Port to “25.”
Use Default If your SMTP server does not require authentication to allow clients to
Credentials send mail messages via SMTP, you should check this box.
For a more secure SMTP session, you can provide specific log-on
credentials to use to connect to the SMTP Server by leaving this
parameter unchecked.
User Domain The Domain Name of the user account used to authenticate the user to
Name the SMTP Server.
User ID The User ID used to authenticate to the user to the SMTP Server.
User Password The password associated with the User ID used to authenticate the user
to the SMTP Server.
Server Timeout The amount of time, in seconds, that a connection to an SMTP Server
will wait before responding with a SERVER_TIMEOUT error message.
Defaults to “30.”
58
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
Send Mail When checked, allows the notification service to send messages
Messages asynchronously. Checking this box brings an overall improvement to
Asynchronously system performance.
Parameter Description
Name
Logon as Local When this option is selected, the notification service will be installed to
Service run under the context of the Local Service Account. This account is
generally considered to be a “High Privilege” account and should not be
used in production systems except in instances where the Network
Service account is unavailable.
59
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
Logon as This is the default option. When this option is selected, the notification
Network Service service will be installed to run under the context of the Network Service
Account. This account is generally considered to be a “Low Privilege”
account and is recommended for use where minimal permission sets are
required by your service application.
Logon as When this option is selected, the notification service will be installed to
Specific User run under the context of the account specified using the Domain, User,
and Password properties. Advanced system administrators may choose
to use this option to maintain more control over the exact permissions
granted to a specific windows service or set of windows services.
Domain Name When the Logon as Specific User option is selected, you must provide
the active directory domain name to use when resolving the user ID. If
there is no active directory domain in place this value should be the
NETBIOS name of the server hosting the service.
User ID When the Logon as Specific user option is selected, you must provide
the user ID of the account that the service runs in the context of.
Password When the Logon as Specific User option is selected, you must provide
the password associated with the user ID.
The fourth tab in the notification server settings dialog is used to install the Personify360
Base Notification Event stored procedures.
Before you can install these procedures you must first ensure that you have setup a valid
database connection string on the first tab. Once you have a valid database connection
string, you can select any/all of the stored procedures shown on this tab and click the install
button.
When the configuration dialog loads it looks for a folder named
Notification_Event_Procedures in the same folder where the executable exists. If that folder
exists, then all SQL script files in that folder (and any sub-folders) are read and the tree view
is populated with the sub-folder name/script name.
60
7.7.0 INSTALLATION GUIDE
61
7.7.0 INSTALLATION GUIDE
62
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
General Settings
SQL Server The name or network address of the instance of SQL Server to which
Name you want to connect. Clicking the button next to the SQL Server Name
text box opens a dialog that lists the available SQL Servers on your
network.
Use Integrated When set to true, the connection to the database is based on the
Security currently logged on user of the workstation. When set to false, the login
is based on the SQL Server credentials.
SQL User ID The SQL Server login account.
SQL Password The password for the SQL Server account logging on.
Database Name The name of the database.
If you have provided a valid user ID/password for the SQL Server
instance, you can click the button next to the database name and be
provided with a list of available databases on the SQL Server instance.
Workstation ID The name of the workstation connecting to the SQL Server.
63
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
Advanced Settings
Network Library The network library used to establish a connection to an instance of
SQL Server.
Multiprotocol
Apple Talk
VIA
Shared Memory
IPX/SPX
TCP/IP
NOTE: If you do not specify a network and you use a local server (for
example, “.” or “(local)”), shared memory is used.
Packet Size Size, in bytes, of the network packets used to communicate with an
instance of SQL Server.
Connection The length of time, in seconds, to wait for a connection to the server
Timeout before terminating the attempt and generating an error.
Connection When a connection is returned to the pool, its creation time is compared
Lifetime with the current time and the connection is destroyed if that time span,
in seconds, exceeds the value specified by the connection lifetime.
64
7.7.0 INSTALLATION GUIDE
Parameter Description
Name
Connection Pooling
Use Connection When set to true, the SQL Connection object is drawn from the
Pooling appropriate pool or, if necessary, is created and added to the
appropriate pool.
Min. Pool Size The minimum number of connections allowed in the pool.
Max Pool Size The maximum number of connections allowed in the pool.
Connection Determines whether the database connection is reset when being
Reset removed from the pool. Setting to false avoids making an additional
server round-trip when obtaining a connection, but the programmer
must be aware that the connection state is not being reset.
Enlist When set to true, the pooler automatically enlists the connection in the
creation thread’s current transaction context.
The fifth tab in the notification server settings dialog is used to install the Personify360 Email
Notification Service stored procedures.
This tab works similar to the tab 4, “Base Procedures.” Please refer to the previous section
Tab 4: Base Procedures for more information.
65
7.7.0 INSTALLATION GUIDE
There are two batch command files in the folder where the Personify360 Email Notification
Service executable exists for installing and uninstalling the Personify360 Email Notification
Service. You can choose to use these batch files or you can open a command prompt and
execute the correct command line option for yourself.
NOTE: Before installing the service, ensure that you have followed the steps outlined in the
“Service Configuration” section.
If your organization allows mobile users to upload customer profile images or you include
product images on your product listing page, you should consider installing the Windows
Service. This service creates a Customer Images folder and helps you to standardize the
size of all uploaded images ensuring that all customer profile images displayed in the same
size as well as all product images. This way, your mobile users can upload an image of any
size and the application will not distort the image when it displays in the image space.
Additionally, if the back-office Application Parameter is set in step 10 below, pictures will
display in the Donor360 screen.
To install the Windows Service:
66
7.7.0 INSTALLATION GUIDE
67
7.7.0 INSTALLATION GUIDE
As of the Personify360 7.1 release, you can now have multiple Windows Service
installations. If you are installing more than one web service, then you must update the
config file with the name of the database connection, rename the files, and copy the files to
different folders.
To set up the IMS Windows Service:
68
7.7.0 INSTALLATION GUIDE
69
7.7.0 INSTALLATION GUIDE
70
7.7.0 INSTALLATION GUIDE
SSO/IMS Installation
3. After successful creation of new application Pool, select the newly created
application pool from middle pane of Application Pools. Right-click on the application
pool and select Advanced Settings.
71
7.7.0 INSTALLATION GUIDE
72
7.7.0 INSTALLATION GUIDE
</connectionStrings>
73
7.7.0 INSTALLATION GUIDE
i. Set the Password Strength Regular Expression - This regular expression will
enforce the strength of password for your web site. If you modify the default
password strength then also make sure that you set the same password
strength in DataServices “web.config” file as well.
<KeyValue Key=" PasswordStrengthRegularExpression " Value=”Enter
Value Here" />
74
7.7.0 INSTALLATION GUIDE
75
7.7.0 INSTALLATION GUIDE
Personify360 requires the setup of one back office screen for the Single Sign-On
application. For more information about a customer's SSO login information, please see
To set up Single Sign-On in the back office:
1. Logged in as the administrator, select System Admin > Configure and Verify
Interfaces from the menu bar.
The Configure and Verify Interfaces (APP014) screen displays, as shown below.
76
7.7.0 INSTALLATION GUIDE
3. In the Parameter Value column, enter either “Y” (Yes) or “N” (No) for Enable SSO.
4. Enter your merchant SSO PASSWORD.
Upon entering your password and tab-out, your password will automatically be
encrypted.
5. Enter your merchant SSO USERNAME.
6. Enter your merchant SSO WEB SERVICE URL.
7. Click Save.
See Appendix H
This document is the installation guide for Personify360 Data Services, which will be needed
to process web services created by the Web Service Designer and Data Services web
service is a required component for the web controls configuration. For web controls
configuration, please find the documentation at the
77
7.7.0 INSTALLATION GUIDE
“SeparatelyPackagedComponents\PersonifyWebControls\[Latest Version]\Upgrading
Personify e-Business with Personify Web Controls.pdf”.
Software Requirements
The following software applications are required for the server you plan to install the
Personify360 Data Services on:
MS Deploy
NOTE: If any error messages display, you must resolve the issues before proceeding with
the actual installation.
6. By default, various settings use the MSDeploy version 1 for deployment. If you
receive the following error, check the MSDeploy version installed on the server.
“ERROR: The system was unable to find the specified registry key or value.
Msdeploy.exe is not found on this machine. Please install Web Deploy before
78
7.7.0 INSTALLATION GUIDE
execute the script.”If you are using a later version of MSDeploy, such as version 2,
then modify the "PersonifyDataServicesBase.deploy.cmd" file with the appropriate
version number or with the correct registry key entry.
7. In a command prompt, go to the Package folder located on your server.
8. Run the following command on the prompt (this command performs the REST Web
Services installation): PersonifyDataServicesBase.deploy.cmd /y
9. Refresh your IIS Websites list. The PersonifyDataServices virtual folder, or whatever
name you gave your website, appears on the Connections list.
10. Copy the compatible Personify360 API to your web service’s bin folder.
11. Copy the following .reg file to your web server where E-business site is installed and
update the credentials inside the file:
..\Releases\SeparatelyPackagedComponents\PersonifyWebControls\1.8.0\Pack
age\WebControls\UniversalWebServiceCredentials.reg
12. Run the UniversalWebServiceCredentials.reg from your web server to create or
update the entries in the system registry.
This process is required for web controls to contact with the Personify360 Data
Services. Configuration files that required to be updated with the Personify360
information:
a. Web.config
b. Config.xml
c. NLogDS.config
Please make sure that all files are updated with the correct information. For more
information, please see the Personify360 Web Services Designer 1.9.0 Release Notes in
the following location:
P:\Personify\Releases\SeparatelyPackagedComponents\PersonifyDataServices\1.9.0
2. Configuring the Config.xml File
Once the Personify360 Data Services is installed, you need to modify the web services’
config.xml file to match your portal settings.
To modify the config.xml file:
1. Navigate to the Personify360 Data Services virtual folder you just installed.
2. Open config.xml in a text editor such as Notepad.
3. Locate the following lines of code in the file and update the bold font with your
application server location:
<Item Name="Remoting"
MessagingServiceUri="tcp://YOURSERVERNAME:PORTNUMBER/Messaging
Service.rem"/>
79
7.7.0 INSTALLATION GUIDE
4. Locate the following line in the file and enter the following values:
<Item Name="SeatInformation"
AssociationName=[YourAssociationName]
EnvironmentName=[YourEnvironmentName]
VersionName=[YourVersionName]
AppTypeName=[YourAppTypeName]
DatabaseName=[YourDatabaseName]
Login=[YourUserName]
Password=[YourPassword]/>
80
7.7.0 INSTALLATION GUIDE
81
7.7.0 INSTALLATION GUIDE
3. Apart from errors if you like to write extra in to log then uncomment the log file
templates defined for your ease.
You can use one or more templates.
NOTE: For more information on setting up a FTP for publishing custom web services, see
Appendix I.
82
7.7.0 INSTALLATION GUIDE
83
7.7.0 INSTALLATION GUIDE
7. If you are using Internet Explorer and got the following page, turn off the feed reading
view in the Internet Explorer option.
8. Go to the Tools > Internet Options > Content > Settings (Feeds and Web Slices) and
uncheck Turn on feed reading view.
9. Then restart Internet Explorer, and repeat step 5.
84
7.7.0 INSTALLATION GUIDE
Install IIS URL Rewrite Extension by downloading this extension from below
URL: https://www.iis.net/downloads/microsoft/url-rewrite
If your association currently runs on .Net Framework 3.5.1, please refer to the
Personify360 7.4.1 Release Notes or the Microsoft Download Center © at
http://www.microsoft.com/downloads/en/default.aspx for more information.
If your association currently runs on DNN 5.2.3, please refer to the Personify360
7.4.1 Release Notes for instructions on upgrading.
Verify that you have the correct version of Microsoft IIS installed based on the
version of Windows you are working on:
Microsoft IIS 8.x (for Windows Server 2012 R2) or 10.0 (for Windows Server
2016)
NOTE: As of Microsoft IIS 7.5, keep in mind that the memory recycling allocation
measurements are now done in KB.
If you experience any issues with memory related to your e-Business site, you should
consider enabling the API Serialization option implemented with Personify360 7.4.1.
Configuring IIS Application Pool for Personify360 e-Business and Web Services
This section provides detailed information about setting up a 32-bit application pool with a
2.4GB virtual memory recycling limit for IIS 8.x.
85
7.7.0 INSTALLATION GUIDE
NOTE: The images below show .NET v4.5.2. For Personify360 7.7.0, ensure you are on
.NET\Framework\v4.5.2.
To configure a 32-bit application pool with a 2.4GB virtual memory recycling limit:
86
7.7.0 INSTALLATION GUIDE
d. In the Recycling section, set the Virtual Memory Limit (KB) to “240000 KB
(2.4GB).”
e. Click OK and keep the other settings as the default.
f. Change the Identity to a named account from the Custom account field.
87
7.7.0 INSTALLATION GUIDE
h. Change all settings in the Generate Recycle Event Log Entry to “True”.
i. Recommended setting for Specific Times is 2:00AM.
j. Recommended setting for Regular Time Interval (minutes) is “0”.
k. Recommended setting for Idle Time-out (minutes) is “0”.
l. Click OK.
Configuring HTTP Compression
This section provides detailed information about IIS compression and how to enable/disable
compression in IIS 8.x.
HTTP compression provides faster transmission time between compression-enabled
browsers and IIS, regardless of whether content is served from local storage or a UNC
resource. You can compress static files and application response files.
IIS provides the following compression options:
88
7.7.0 INSTALLATION GUIDE
If the CPU utilization (% Processor Time) of web server is less than 60-70%
89
7.7.0 INSTALLATION GUIDE
NOTE: In most instances, the optimal compression level for static content is 9.
90
7.7.0 INSTALLATION GUIDE
NOTE: In most instances, the optimal compression level for dynamic content is 4.
91
7.7.0 INSTALLATION GUIDE
Before going ahead with the E-business sample site installation, please make sure that
following applications are already installed:
1. Personify360 Back Office Environment
2. Personify360 Image Service
3. SSO/IMS
4. Personify360 Data Services
NOTE: Personify360 Data Services are required to work with the Web Controls configured
with the default E-business sample site.
92
7.7.0 INSTALLATION GUIDE
93
7.7.0 INSTALLATION GUIDE
94
7.7.0 INSTALLATION GUIDE
NOTE: Personify, Inc. recommends that you install the e-Business Database first.
5. Enter the correct SQL Database Server in the provided text box.
NOTE: Make sure that you enter the correct value for your database server name defined in
SQL Server. Give the full network name if necessary. Localhost is the default value.
95
7.7.0 INSTALLATION GUIDE
NOTE: Personify360 7.7.0 only supports SQL 2016. If you are not able to find SQL 2016 in
the drop down list, please select the latest version available in the drop down list.
96
7.7.0 INSTALLATION GUIDE
NOTE: Ensure that the user has all permissions to restore a database, create new user
login, and can perform user mapping to the database.
c. Click Test Connection to ensure the username and password are correct.
The installation will not let you proceed unless the username and password
are correct.
9. Click Next.
The following screen displays.
97
7.7.0 INSTALLATION GUIDE
NOTE: Only select No if you already have installed the Personify360 e-Business database
and you want that database to use the database functions of this installer.
Back-up files needs to be copied to the Database server. This is the path where the
database server finds the backup file.
13. For example, in your Personify360 e-Business Install package, you have a database
folder with the name: Sample. In which, there is a database backup file.
98
7.7.0 INSTALLATION GUIDE
14. Enter the Database File Path and Database Log Path (the location on your
database server where the SQL Database for e-Business needs to be created) in the
text boxes provided. This is where you want your physical database files (.mdf and
.ldf) to go. There are no default entries for these text boxes.
The following screen displays an example of entered paths.
15. Click Create to verify your input. This creates a database and restores the DNN
database into the Database File Path specified.
99
7.7.0 INSTALLATION GUIDE
16. If this error message displays, click Try Again, and enter the correct information.
When the database creation completes correctly, the following screen displays.
100
7.7.0 INSTALLATION GUIDE
18. Click Yes to create a Personify360 e-Business database user or click No if you want
to use an existing user.
a. If you clicked Yes, the following screen displays.
i. Enter the user name (default value is PersonifyeBusiness)
ii. Enter the password for this user (default value is Personify123).
iii. Click Create.
The following screen displays if the user creation completes
successfully.
NOTE: If any errors occur, click Try Again to edit the information.
101
7.7.0 INSTALLATION GUIDE
a. If you click No, you are asked if you want to add an existing user on the
database server to your database. This does NOT create a user, but instead
adds an alias to your database for the user you specify.
i. If you click No on this screen as well, proceed to step 17. If you click
Yes, the following screen displays.
NOTE: The Database name is the Personify360 e-Business Database name. The Existing
Database Login is the user’s name that already exists on your database server that you
want to add to your Personify360 e-Business database.
102
7.7.0 INSTALLATION GUIDE
20. The Database Install is complete, and the option for creating a database is disabled.
Click Create eBusiness Virtual Directory.
103
7.7.0 INSTALLATION GUIDE
104
7.7.0 INSTALLATION GUIDE
from your earlier steps for setting up the database. If you skipped the database steps
or are installing the database afterward, please give the correct database name here.
27. Enter the Database Username.
This value comes from your earlier steps for setting up the database. If you skipped
the database steps or are installing the database afterward, please give the correct
database username here.
28. Enter the Database Password.
This value comes from your earlier steps for setting up the database. If you skipped
the database steps or are installing the database afterward, please give the correct
database password here.
29. Click Next to start the installation.
30. Click Finished to exit the application. If any error messages appear, the continue
button is available for you to go back and try again.
105
7.7.0 INSTALLATION GUIDE
NOTE: If your association runs on SQL 2008, you may receive an error at this point.
1. Assign the database user as the Database Owner of the database created.
3. Make sure the IIS has proper permissions to the physical folder mentioned in step 2.
106
7.7.0 INSTALLATION GUIDE
33. Online Store has improved APP Data Caching that must be turned on for improved
eBusiness response time. The “CDCEnabled” value (highlighted below in red) must
be set to “True” in the config file in order for the new caching mechanism to work.
<Section Name="ApplicationDataCache">
<!--if CDC Enabled is true, minimum polling interval can
be 2 minutes, else minimum polling interval should be 60
minutes. The time is to be specified in milliseconds.-->
<Item Name="CDCEnabled" Value="True"/>
<Item Name="PollingInterval" Value="120000"/>
</Section>
107
7.7.0 INSTALLATION GUIDE
c. Click Select.
The Select Application Pool pop-up displays.
d. Select the newly-created application pool from the drop-down.
e. Click OK and reset the IIS.
36. Run the “PADSS_ClientScript.sql” script to record all the logs in to Event Viewer of
DNN site.
PROPRIETARY AND CONFIDENTIAL
108
7.7.0 INSTALLATION GUIDE
NOTE: Ensure that your dbo.PortalAliastable contains all the combinations of aliases for
your site, including the internal server name (i.e., add entry to PortalAlias table of the DNN
database with the internal_server_name/Personify_site_name). Example query to insert
new row in the PortalAlias table:
INSERT [dbo].[PortalAlias] (PORTALID, HTTPALIAS) VALUES (0,
'localhost/Personify')
38. Once the PortalAlias table is updated with the correct web application name, please
see Changing Image Links and Page Redirection for Sample Site for updating the
page redirection settings using SQL Server.
39. Update the [Personify].[dbo].[WEB_PWF_PARAMETER] table,
[PARAMETER_VALUE] column present inside the Personify360 database (not DNN
database) with the correct values. This table needs to be updated to work with the
web controls setup provided as part of the sample site installation.
40. Update the web.config file installed inside web site folder with correct parameter
values.
Web.config file changes are required to configure the e-Business site to contact with
SSO/IMS setup and Personify360 Data Services.
41. Test your site by entering “http://localhost/Personify/Default.aspx” into a web
browser.
42. Login into your site as host using username “host” and password “dnnhost”.
43. Go to Personify Admin tab.
a. Go to Personify Site Settings.
i. Edit seat information.
b. Edit portal settings.
i. Change Product Image URL to match your virtual directory for product
images.
c. Go to Personify SSO IMS Setup.
i. Go to SSO Vendor.
ii. Click pencil next to TIMSS.
109
7.7.0 INSTALLATION GUIDE
For organizations using Personify, Inc.'s sample site, the image links and redirection page
must be changed.
There are two ways to update the Image Links and Page Redirection in sample site:
1. Update the DNN database directly to change the URL settings in one go. This will
update all the settings including URL history with your web site name. This step is
only required for the fresh installation of sample site provided as part of the 7.7.0
release. To go ahead with this type of change, please use the instructions from “To
change image links of sample site using Database update”.
2. Update the DNN site manually for every page. To go ahead with this type of change,
please use the instructions from “To change image links for sample site”.
Changing the Image Links of Sample Site for All the Pages using Database Update
The purpose of this script is to Update Image Links and Page Redirection settings of
Sample Site environment. These scripts are one time execution per new database; need not
be run for every release you upgrade going forward.
The script is available in the following location:
P:\Personify\Releases\7.7.0\Package\Web\Ebusiness\usp_UpdateURLInformation.SQL
P:\Personify\Releases\7.7.0\Package\Web\Ebusiness\FreshInstall\Changing Image Links
and Page Redirection SQL Script\usp_UpdateURLInformation.SQL
Pre-Integration Checklist
Before we can continue with Update Links in EBusiness site process, the following pre-
requisite conditions must be met.
1. DNN database needs to be installed before this integration to be successful.
2. Run the following select query to to get the existing URL information from the DNN
database.
SELECT Url FROM Tabs WHERE Url != ''
110
7.7.0 INSTALLATION GUIDE
111
7.7.0 INSTALLATION GUIDE
4. Click the triangle drop-down, as shown below, and select Edit Content.
112
7.7.0 INSTALLATION GUIDE
5. Replace the src attributes, as highlighted below with your install folder:
<div id="rotator" class="rotator">
<div class="thumbnails">
<a class="active" href="#"><img
src="/personifyebusiness/Portals/0/thumb-r3-1.png" alt="Alt
Text" /></a>
<a href="#"><img src="/personifyebusiness/Portals/0/thumb-
1.png" alt="Alt Text" /></a>
<a href="#"><img src="/personifyebusiness/Portals/0/thumb-
9.png" alt="Alt Text" /></a>
</div>
<a class="main active" href="#"><img
src="/personifyebusiness/Portals/0/slideshow-r3-1.jpg"
alt="Alt Text" /></a>
<a class="main" href="#"><img
src="/personifyebusiness/Portals/0/slideshow-1.jpg" alt="Alt
Text" /></a>
<a class="main" href="#"><img
src="/personifyebusiness/Portals/0/slideshow-9.jpg" alt="Alt
Text" /></a>
</div>
6. Click Save.
7. Similarly, all image links attribute on the eBusiness site need to be changed to point
to your organization's install folder path. By default, the image links will point to
Personify, Inc. default site. This has to be changed to point to your organization's
environment.
For example, from the Education screen, the Text/HTML need to be updated.
113
7.7.0 INSTALLATION GUIDE
114
7.7.0 INSTALLATION GUIDE
6. Enter the Location URL address to point to when you want to redirect.
7. Click Update.
Buy for Group button is displaying instead of Add To Cart button. To resolve this issue, log
into the eBusiness site as a Host user, open a product. and in Product Details page, click
Edit Web Control Container, as shown below. Without modifying any settings, click Save.
This process will refresh the settings of the module and provide you the Add to Cart button.
115
7.7.0 INSTALLATION GUIDE
1. Update the connection string in Web.config file of e-Business site with the SSO
database credentials:
<add name="IMSConnectionString"
connectionString="Server=[DBServer];Database=[SSO_DBName];uid=
[UserID];pwd=[Password];" providerName="System.Data.SqlClient"
/>
3. Replace [WebServerName] with the web server computer name where SSO web site
is installed.
4. Replace [SSOSiteName] with the virtual directory name where SSO web site is
installed.
5. Replace [IMSSiteName] with the virtual directory name where IMS web service is
installed.
116
7.7.0 INSTALLATION GUIDE
NOTE: If your association currently runs on IIS 8.x, you must also go to the bottom of the
web.config XML file and add the following line of code to the <httpModules> section:
1. You can specify browser versions supported by updating the following parameter,
where
I = Internet Explorer
F = Firefox
= Opera
s = Apple Safari
n = Netscape Navigator
c = Chrome
<add key="UpgradeBrowsersConfiguration"
value="vs:{i:8,f:26,o:15,s:5.1,n:9}, reminder:12"/>
2. If you have enabled caching in data services config.xml file, then you can set the
following keys to enable the caching by pointing to those files.
117
7.7.0 INSTALLATION GUIDE
4. The Shopping Cart web service was removed in 7.4.2. However, the following
configuration is still included in the web.config for legacy code. For fresh installations,
you need to remove or comment out the following code:
<add key="RESTShoppingCart_BaseUri"
value="http://[EBUSINESS_WEBSERVER_NAME]/[EBUSINESS_WEBSITE_NA
ME]/PersonifyShoppingCartSVCService/PersonifyShoppingCartServi
ce.svc/" />
3. Apart from errors if you like to write extra in to log then uncomment the log file
templates defined for your ease.
You can use one or more templates.
118
7.7.0 INSTALLATION GUIDE
119
7.7.0 INSTALLATION GUIDE
BusinessObjects Installation
System Architecture
Personify360’s business intelligence (BI) offering is tightly integrated with your current
Personify360 application. This section provides an overview of the business intelligence
solution’s architecture and how it is implemented into Personify360. It also details how to
install and configure the various business intelligence solutions.
Personify, Inc. provides three different configurations for using Personify360 and
BusinessObjects based on the number of users that will use it. The different configuration
options are the following:
Small Implementation
Designed for organizations that plan on having less than 15 concurrent users.
Personify360 Enterprise
120
7.7.0 INSTALLATION GUIDE
Personify360 Enterprise
121
7.7.0 INSTALLATION GUIDE
The following diagram illustrates a sample configuration of a medium implementation and its
architecture:
Personify360 Enterprise
Data Analyzer
122
7.7.0 INSTALLATION GUIDE
This section provides detailed information on how to install BusinessObjects for use with
Personify360 application. If you already use Personify360 and take advantage of the Data
123
7.7.0 INSTALLATION GUIDE
NOTE: These installation directions must be followed in order or the procedure will not
complete successfully.
Make sure the user installing the software is part of the administrators group, has the below
rights assigned, and the anti-virus is disabled before the installation.
NOTE: The CMS and AUDIT system odbc should be created on 64-bit Data Source
Administrator only. Personify360 system odbc should be created on both 32 bit and 64 bit
Data Source Administrators.
The Data Source Administrators can be located in the following locations:
32 BIT dsn - \Windows\SysWOW64
64 BIT dsn - \Windows\System32
If CMS/Audit/Personify db is on SQL Server 2012 or higher then only supported driver is
SQL Server Native Client 11.0
124
7.7.0 INSTALLATION GUIDE
Once you have created the necessary database, user, and data source name, you can now
install the BusinessObjects Enterprise application: Business Intelligence.
To install BusinessObjects Business Intelligence 4.2 SP4:
1. Copy the five parts of BI 4.2 SP4 files folder on your BO server.
2. Run the BI42_Server_SP4_part1.exe.
3. Unzip the files to a desired folder on the server.
4. Once the files are unzipped, the setup.exe is located at the following location,
depending on the location of the folder created in:
\\c$\software\BI42SP4\51052101\DATA_UNITS\BusinessObejctsServer_win
5. Double-click setup.exe to start the installation process.
6. Click Next once the prerequisites are all met.
7. Enter the product key and click Next.
NOTE: Remember that your product key code is client/environment specific. If you do not
have one, please contact your Personify, Inc. representative. This key code can be a named
user license key (NUL) or a concurrent user license key (CAL). Once the installation is
complete add the remaining key. The system should have both NUL and CAL license key
added.
125
7.7.0 INSTALLATION GUIDE
The Central Management Console, or CMC, is where you will configure your
BusinessObjects installation. During this step, you will configure Adaptive Processing
Server, configure platform search, create folders, universe folders, license key additions,
authentication settings, etc.
Configuring Adaptive Processing Server
1. Login to CMC and navigate to System Configuration Wizard, as shown below.
126
7.7.0 INSTALLATION GUIDE
2. Select all the products, except Analysis, and click Next, as shown below.
3. Select your BOE system capacity by selecting the RAM Size, as shown below.
127
7.7.0 INSTALLATION GUIDE
NOTE: These minimum and maximum heap sizes are minimum recommendations and
should be estimated per the installation and sizing document available on the
BusinessObjects website. The command line parameters from one server cannot be copied
to other server as the parameter will vary depending on the services selected for the server.
128
7.7.0 INSTALLATION GUIDE
2. Click the category icon to open a new pop up for creating a category.
3. Enter a new category name to reference your environment folder ( for example,
PPROD).
4. Once the category is created, click on it and repeat the above step and name the
new category “Mobile”.
The folders will appear as displayed below.
NOTE: Naming the category Mobile is critical because the app will display the reports stored
only in this category.
129
7.7.0 INSTALLATION GUIDE
9. Click Apply.
10. Click OK.
11. Close the User Security Screen.
12. Right-click the environment folder category you created (PPROD) and select User
Security.
13. Click Add Principals and search for [environment folder category_TR] (e.g.,
PPROD_TR) group and add it to the Selected Users/Groups section.
14. Click Add and Assign Security.
15. Select Full Control under Available Access Levels, and move it to Assigned Access
Levels.
16. Click Apply.
17. Click OK.
18. Close the User Security Screen.
Assigning the Named User License (NUL ) Key
Each customer receives one Named User License (NUL) and as many Concurrent Access
Licenses (CALs) as needed. Receiving only one NUL eliminates any license issues when
viewing operational reports or viewing/submitting TRS reports.
To apply and assign the NUL:
1. Log into the BusinessObjects CMC and click License Keys.
2. In the Add Key field, enter the license key.
130
7.7.0 INSTALLATION GUIDE
NOTE: Make sure the named user and concurrent user license count appears in the Named
User and Concurrent User Total Licenses field.
NOTE: This section removes the license keys in the image above for security purposes. It
does not appear this way on your application screen.
131
7.7.0 INSTALLATION GUIDE
6. Select the Named User radio button and click Update, as highlighted below.
NOTE: If the proxy user already used Named User connection type you can ignore the
steps 5 and 6.
7. Open the Central Configuration Manager and restart the Apache Tomcat and Server
Intelligence Agent.
Implementing Crystal Reports Processing Server Changes
This Crystal Reports Processing Server change is required to run crystal reports created
from stored procedures.
To implement the Crystal Reports Processing Server change:
132
7.7.0 INSTALLATION GUIDE
At the end of the Command Line Parameters text box, add a space after the last
character and copy and paste the following text after the space:
-procreportoptions __noverifydatabase
133
7.7.0 INSTALLATION GUIDE
4. Click Update.
Setting Top Level Security
1. Log into the BusinessObjects CMC.
2. From the drop-down at the top, select Folders.
134
7.7.0 INSTALLATION GUIDE
3. From the menu bar, click the down arrow next to Manage and select Top Level
Security > All Folders, as shown below.
4. Click OK.
5. Select the Everyone user group and click Assign Security, as shown below.
135
7.7.0 INSTALLATION GUIDE
8. Grant the View Objects and View Objects the user owns rights, as shown below,
by selecting the radio button for that right.
9. Click Apply, then click OK, and close out of the window.
Running the Configuration Batch File
In order for the Personify360 application to further integrate with Data Analyzer, you need to
run a single batch file that accomplishes the following:
Sets the isolation levels for Webi and Crystal Reports to defeat SQL Server
shared table locks when running BusinessObjects.
NOTE: If your organization is running BusinessObjects on Windows Server 2008, make sure
you have full control over the BusinessObjects installation folder before executing this step.
NOTE: The fonts in the Misc folder must be installed on the client machine in order to
enable barcode pritning.
136
7.7.0 INSTALLATION GUIDE
NOTE: You can restart tomcat when all the configuration changes are done. If you're not
seeing the new image after launching Data Analyzer, make sure you delete cookies in
Internet Explorer (IE).
137
7.7.0 INSTALLATION GUIDE
The client tools need to be installed on the APP server, and TRS server.
1. Unzip the BI42_Client_SP4.zip file to your local drive.
2. Navigate to the following folder:
\\BI42_Client_SP4\SBOP_BI_PLAT_4.2_SP4_CLNT_WIN_\DATA_UNITS\Business
ObjectsClient
3. Click Setup.
4. Select English and click OK.
5. Once the prerequisites are successful, click Next.
6. Agree to the license agreement and click Next.
7. Agree to the license agreement and click Next.
8. Select the destination folder and click Next.
9. Select all features including Developer components and click Next.
10. Click Finish once the installation is done.
1. Create a temporary folder called “Dashboards” on the local drive of the client
machine.
2. Navigate to the following file path in the Personify360 installation package:
...\Business Objects\Software Upgrades from BusinessObjects.
3. Unzip the Dashboards_SP4.zip file to the temporary folder you created in step 1.
4. Double-click setup.exe.
5. Enter the product key and follow the installation wizard to complete the installation.
NOTE: Your product key code is client/environment specific. If you do not have one, please
contact your Personify, Inc. Account Manager.
138
7.7.0 INSTALLATION GUIDE
NOTE: Also, you are entitled to receive one named user license at no cost as part of the
bundle. If you wish to have additional licenses, contact your Account Manager for pricing
details.
Live Office is a product of Business Objects that integrates with your Microsoft Office
environment. It works very similar to how your Microsoft Outlook plug-in does in that it helps
you distribute information you gather from Personify360 over the Web. Live Office works
with the reports you create in BusinessObjects with your Personify360 data and embeds
them in Microsoft PowerPoint, Excel and Word documents.
Installation Prerequisites
The following is a list of Business Objects and third-party software prerequisites required for
Business Intelligence LiveOffice 4.0 SP7 client components to function properly:
139
7.7.0 INSTALLATION GUIDE
NOTE: Optionally, you may run the setup in the silent mode by running the
LiveOfficeSetup.bat file located in the same folder of the release package as the LiveOffice
zip file. Before running the batch file, make sure to modify the server name in the batch file
in two locations.
3. Click the Enterprise tab and fill in the correct information, as shown below.
140
7.7.0 INSTALLATION GUIDE
User Name: The user name is similar to the Personify360 user name, but the
same name should be prefixed with the environment name and the organization
information. To make the step simpler, you may launch Data Analyzer from
Personify360 and copy the user name from the top right corner.
Password: This is same as the Personify360 application password.
Web Services URL: Your administrator would have configured this value when
installing the package. Replace “botest” with the appropriate server name.
System: Your administrator would have configured this value when installing the
package by entering the appropriate server name.
Authentication: Your administrator would have configured this value to
Enterprise when installing the package.
4. Click Log On to establish the connection with BusinessObjects Enterprise Server.
5. Click the General tab and check the Refresh Live Office object on document
open checkbox if you wish to refresh the data when the document is opened, as
shown below.
6. Click OK.
141
7.7.0 INSTALLATION GUIDE
Fresh install is done when customers are coming onto Personify360 for the first time and
below are the steps that are mainly involved in configuring the customers reporting
environment.
1. Setting up Reporting Environment Folders
2. Creating Universe Folder and Connection
3. Importing the Biar File
4. Updating Parameters on Personify360 Configuration Screen
5. Importing LCMBIAR File Content Using Command Line
6. Synchronizing Personify360 with BusinessObjects
7. Uploading Universes using Synchronizer
8. Setting Webi Universe Connection using Synchronizer
9. Configuring Dashboards.
10. Propagating Preferences in BusinessObjects
142
7.7.0 INSTALLATION GUIDE
To create a universe folder, you need to use the Universe Design tool. For more information
on Designer, please refer to the BusinessObjects Universe Design Tool, which is available
at http://help.sap.com/boall_en/.
NOTE: You can also create a universe folder using the CMC by right-clicking the root folder
in Universes and adding a new folder.
NOTE: You can access the Universe Design tool by selecting Start > SAP BusinessObjects
BI Platform 4 > SAP BusinessObjects BI Platform Client Tools.
143
7.7.0 INSTALLATION GUIDE
The next step is to change the BusinessObjects Configuration Parameters (APP014) in the
Personify360 application. Please enter appropriate parameters for each field in the picture
below.
144
7.7.0 INSTALLATION GUIDE
Parameter Description
145
7.7.0 INSTALLATION GUIDE
Parameter Description
RELEASEPROXYSESSIONURL The URL is used to release the license used by the proxy user to
launch reports. You must verify that the external IP address and port
are entered correctly. As of the 7.7.0 release, the default parameter
value is http://172.22.1.242:8080/BI/logon/logoff.do.
RELEASEUSERSESSIONURL The URL is used to release the license used to launch Data Analyzer.
You must verify that the external BO server name and port are
entered correctly. As of the 7.7.0 release, the default parameter value
is http://BOE40:8080/BI/logon/logoff.do.
SERVER The server name.
SERVERIPADDRESS The external IP address of the BusinessObjects server. This IP
address is used when launching an online report.
TRSAPPLICATIONPATH The network path for TRS bath processes.
TRSSOUTHPUTPATH The output folder in which TRS will generate the output and logs.
UNIVERSECONNECTION The name of the universe connection used by the universes.
UNIVERSEFOLDER The name of the universe folder where you stored the universes.
VIEWER Only HTML Viewing in supported.
WEBSERVICEURL Web Service access URL for BusinessObjects.
http://BO Server:6405/biprws
WEBSERVICEVERSION Web Service version for Business Objects.
4. Click Save.
5. Make sure the PSM_ORGUNIT_MEMBER has the right entries for the BO_USER
column reflecting the environment you are setting up. This table is used to filter data
for the logged in users org and org unit id. You can update the same using the
following script:
Alter Table PSM_ORGUNIT_MEMBER disable trigger all
GO
update PSM_ORGUNIT_MEMBER set BO_USER =
PARAMETER_VALUE+'_'+PSM_ORGUNIT_MEMBER.ORG_ID+'_'+PSM_ORGUNIT_
MEMBER.ORG_UNIT_ID+'_TR_'+PSM_ORGUNIT_MEMBER.USER_ID
from APP_INTERFACE_PARAMETER where INTERFACE =
'BUSINESSOBJECTS' and PARAMETER_NAME = 'CLIENTENVFOLDER'
Alter Table PSM_ORGUNIT_MEMBER enable trigger all
GO
146
7.7.0 INSTALLATION GUIDE
1. Launch the Synchronizer application and enter your username and password.
The database and server fields should already be populated.
2. Click OK.
147
7.7.0 INSTALLATION GUIDE
3. On the Main menu at the top of the screen, click Synchronize, as shown below.
4. On the left side of the screen, under Organizational Units, select one or more org
units to which you wish to apply the synchronization options.
5. On the right side of the screen, under Synchronization Options, select all the options
which will create the BOE environment Org_OrgUnit folders for the selected org and
org units, set the DSN to Online and TRS Reports and create BO users and groups.
6. Click Synchronize.
The process begins and its status is shown under Processing Status.
The output log, displayed in the Output window, provides details about the
synchronization process.
1. Copy the universes from the package to a local drive where synchronizer is being
launched.
2. Launch synchronizer and from the Main menu at the top of the screen, click
Publish Universe.
3. Prior to uploading the universes, have your System Administrator or DBA create
ODBC connections that can be used by the universes. For 64-bit servers, you must
create the ODBC using C:\Windows\SysWOW64\odbcad32.exe.
NOTE: This is very important as you will not be able to upload universes unless you select a
valid connection.
148
7.7.0 INSTALLATION GUIDE
NOTE: Once the universes have been uploaded using this tool, it will basically delete the
respective .unv files from your local drive.
1. Launch synchronizer and from the Main menu at the top of the screen, click
Webi Universe Connection.
2. Under webi universe assignment, click on one or multiple webi reports and click
Update Webi Data Provider to set the webi reports point to universes uploaded in
the previous section.
8. Configuring Dashboards
NOTE: These configuration changes should be done once the respective users and groups
are created in BusinessObjects done in Step 5.
149
7.7.0 INSTALLATION GUIDE
2. Grant the EnvironmentFolder_TR group (e.g., PPRO_TR) full control over the
Dashboard_750 universe folder and universe connection.
3. Launch Information Design Tool located on BOE Server Client Tools.
4. From the toolbar, click Window > Security.
5. Provide the CMS information and login as administrator.
6. Expand the universes folder under the universes/profiles section.
7. Expand Dashboard_750.
8. Select OrderDashboard.unx and click the Insert Data Security Profile icon, as
highlighted below.
9. Give an appropriate name for the data security profile (e.g., PPRO / PTST or Client
Name ).
10. Double-click Original Connection.
11. Select the reporting connection (e.g., PPRO) in the Define Replacement
Connections.
12. You should see the replacement connection added.
13. Click OK.
14. Now, select the EnvironmentFolder_TR group from the list of user groups available.
15. Add it to the Users / Groups.
16. Click Save (located below the toolbar).
Updating Dashboard Connections.
This is normally done by users who have access to the Dashboard (formerly Xcelsius)
installed locally on the machine.
1. Launch the SAP Dashboards Tool.
2. Select File > Open From Platform > Dashboards Object.
150
7.7.0 INSTALLATION GUIDE
To propagate preferences:
1. Log into the BusinessObjects CMC as an Administrator and navigate to users and
groups.
2. In CMC, navigate to your environment's everyone group, which is located in the
EnvironmentFolder_TR folder.
The environment folder name can be found from the following location Configure
and verify interface > Business Objects Enterprise > Setup Global Parameters
> ClientEnvFolder.
3. Right-click on the group and select BI launch pad Preferences.
The BI launch pad and preferences window displays.
4. Uncheck the No Preferences Defined checkbox.
5. Select the Documents tab radio button.
6. Select the Folders radio button
151
7.7.0 INSTALLATION GUIDE
BusinessObjects Upgrade
Personify360 7.7.0 now ships with Business Intelligence Platform 4.2 and clients upgrading
to Personify360 7.7.0 have to upgrade their existing BO environment as well. Once BI 4.2 is
installed and configured (refer to the BusinessObjects Server Installation section for details)
on the new server, follow the steps outlined below to upgrade Business Objects
environment.
1. Migrating Content to BI 4.2
2. Uploading Reports (Online and TRS)
3. Uploading Universes
4. Configuring Dashboards
5. Verifying BusinessObjects Reports will Display on the Web
Migration of content from old system to new BI 4.0 is a major portion of the upgrade process
and the tool used for this purpose is the Upgrade Management Tool (UMT). However,
before running the tool, certain best practices need to be considered.
Content Inventory and Cleanup: Perform a content inventory on the existing system and
perform a cleanup before moving the content.
Using Instance Manger in CMC, try to find out how many recurring jobs are running. Identify
if any of the jobs can be killed.
PROPRIETARY AND CONFIDENTIAL
152
7.7.0 INSTALLATION GUIDE
Identify the number of instances in the repository and set a limit on the public folders and
private folders to remove the excess report instances using the limits option on the folders.
Refer to http://scn.sap.com/docs/DOC-42952 for using query builder to get details of the
repository.
Incremental Content Migration: Depending on the amount of content to be migrated
discovered in the above step, it is always advisable to perform an incremental content
migration. Some of the scenarios to consider for content migration are:
Since TRS reports have report instance, depending on the number of instances,
you can consider just moving the TRS reports with instances.
Depending on the content, you can move all the content in one go as well.
Migrating from XI 3.1 or lower to 4.2
To migrate documents:
This tools needs to be used to migrate content from BO XI 3.1 or lower versions of BOE to
BI 4.2
1. Navigate to the Start menu, and under SAP BusinessObjects BI platform, click
Upgrade management tool.
153
7.7.0 INSTALLATION GUIDE
3. If your source information is 3.1, make sure the Upgrade Scenario is “Live to Live”,
then input the source information with your 3.1 BOE credentials and destination with
your 4.0 credentials, as displayed below. You can also use the BIAR file from your
154
7.7.0 INSTALLATION GUIDE
3.1 environment.
4. The resulting window will still show all the content available in the 3.1 BOE server, as
shown below.
5. Expand Folders and Objects / Universes / Users and Groups and select the DA
Environment objects you want to migrate, as highlighted below.
155
7.7.0 INSTALLATION GUIDE
NOTE: You can select the content in increments to migrate content from 3.1 to 4.0,
such as selecting just the online and TRS reports folder in first iteration and importing
them, then selecting the Webi content and universes alone, and finally, the users and
groups.
6. Click Options.
7. Select Export all instances of an object if the objects is selected to have its
dependencies exported, as shown below.
8. Click OK.
156
7.7.0 INSTALLATION GUIDE
9. Click Next.
The Summary screen displays, as shown below.
12. Make sure you created the DSN in both 32 and 64 data managers for the
Personify360 database.
PROPRIETARY AND CONFIDENTIAL
157
7.7.0 INSTALLATION GUIDE
19. Refer to Multi Organization Reporting and Enabling Multi Organization Reporting if
your organization supports multi-org and you want to enable multi-org reporting.
Migrating from 4.0/4.1 to 4.2
There are two options to migrate content from BI 4.0 / 4.1 to BI 4.2.
1. Upgrading the existing BOE with in place upgrade where in you are just installing the
BI 4.2 upgrade package on the existing server and content is all preserved on the
upgraded version of BOE. This will result in a downtime of the existing production
reporting system.
2. Install the same version of BOE as the source system on the new BOE server and
copy the content from the source BOE by restoring the BOE CMS repository and file
store onto the new BOE server ( Refer to the Copying Your BI Platform Deployment
section of BI 4.2 Administrators Guide )
Once the content is copied over, perform an inplace upgrade to BI 4.2 on the new server.
Once you have installed BI 4.2, refer to configuring Adaptive Processing Server section to
configure the APS servers.
158
7.7.0 INSTALLATION GUIDE
2. Uploading Reports
3. Uploading Universes
4. Configuring Dashboards
159
7.7.0 INSTALLATION GUIDE
16. Select OrderDashboard.Unx and click the Insert Data Security Profile icon, as
shown below.
17. Give an appropriate name for the data security profile (e.g., PPRO / PTST or Client
Name).
18. Double-click Original Connection.
19. Select the reporting connection (e.g., PPRO) in Define Replacement Connections.
You should see the replacement connection added.
20. Click OK.
21. Select the EnvironmentFolder_TR group from the list of user groups available.
22. Add it to Users / Groups.
23. Click Save (located below toolbar).
24. Delete all the files located under each Subsystem > Dashboard folder in current
environment
25. Copy both the files (Type Dashboard and Flash) for each subsystem in
Dashbaord_750 folder to the respective Subystem > Dashboard folder of your
environment.
160
7.7.0 INSTALLATION GUIDE
26. The dashboard folder should only contain two files, as shown below.
NOTE: While copying in some instances the file gets named as “Copy of –“ right click on the
file and rename the file without the copy of under properties.
161
7.7.0 INSTALLATION GUIDE
13. Navigate to a dashboard folder (e.g., PPRO > Abstracts > Dashboard).
14. Select New > Local Document.
15. Browse to the flash file that you saved for the respective dashboard that you saved
above and overwrite the existing file.
16. Repeat the same for other saved flash files.
NOTE: If the above reports are not manually set, they will fail setting the universe
connection.
162
7.7.0 INSTALLATION GUIDE
A known issue with reports with multiple queries and having prompts with results from
another query when you try to manually update the report data source is that the object
mapping screen is rendered as blank. The reports affected by this issue are the following:
163
7.7.0 INSTALLATION GUIDE
Take a note of which prompts have this option selected, as highlighted below.
11. Change it to constant, enter any dummy values, and run the queries.
12. Navigate to Data Access tab > Tools tab.
13. Click Change Source and select any query.
14. In the Change Data Source Wizard, select Specify a New Data Source and from the
drop-down, select Universe.
15. In the Universe Window, select the appropriate universe from your environment
folder.
16. Check the Apply the changes in all queries sharing the same data source checkbox.
17. Click Next.
The Object Mapping screen should display all the current report objects mapped to
objects from the new data source.
18. Click Finish.
19. Enter any values for the report parameters.
20. Once entered, navigate to the query panel, run the queries, and save the report.
21. Click the Data Access tab > Data Providers tab.
22. Click Edit.
23. Navigate to the National Membership query where the option results from another
query has been used.
24. Change the prompts that were changed to constant to results from another query.
25. Select the results from another query that will bring the available objects pop up from
query 1 or select prompt, this will bring previous value.
26. For the Member Master Customer ID field, select the Sub Group Member Master
Customer ID field.
27. For the Member Sub Customer ID field, select the Sub Group Member Sub
Customer ID field.
28. Run the queries and save the report.
164
7.7.0 INSTALLATION GUIDE
Miscellaneous
From Personify360 7.4.2, the universes have been modified to accommodate multi
organization reporting without logging into a specific org/org unit. Now, if a user has access
to multiple org units with the multi org reporting enabled, the data returned by the reports will
be from all the org/org units the user has access to.
Enabling Multi Organization Reporting
The multi organization reporting is not enabled by default and can be enabled by altering the
new BO_Psm_Org_Unit_Member_VW view added in Personify360 7.4.2.
Alter the BO_Psm_Org_Unit_Member_VW view by commenting out the following lines in
the view:
select Bo_User,User_Id,Org_Id,Org_Unit_Id
from dbo.PSM_ORGUNIT_MEMBER
and un-comment the following lines of code in the view:
select a.Bo_User,b.User_Id,b.Org_Id,b.Org_Unit_Id
from dbo.PSM_ORGUNIT_MEMBER a, dbo.PSM_ORGUNIT_MEMBER b
where a.user_id = b.user_id
So the modified view should look as follows:
alter view [dbo].[BO_Psm_Org_Unit_Member_VW]
AS(
--select Bo_User,User_Id,Org_Id,Org_Unit_Id
--from dbo.PSM_ORGUNIT_MEMBER
--<<Comment the above two lines and un-comment the below three lines
for multi ORG support>>
select a.Bo_User,b.User_Id,b.Org_Id,b.Org_Unit_Id
from dbo.PSM_ORGUNIT_MEMBER a, dbo.PSM_ORGUNIT_MEMBER b
where a.user_id = b.user_id)
Now execute the view. The results of the view have all the BusinessObjects users with data
for all the org/org units to which they have access. The universes and reports are configured
PROPRIETARY AND CONFIDENTIAL
165
7.7.0 INSTALLATION GUIDE
to look at the view for the logged in users org/org unit information, thereby allowing multi
organization reporting.
The BusinessObjects application gives you the ability to set up different printers and specific
printer options for each report. Reports that do not have anything specific set up will print
with the default printer installed on your BO server in the default report file layout.
This section explains how to set up general printer settings, custom printer settings, and
your DYMO printer in the case that you want to print your CUS500 reports on labels.
Configuring General Printer Settings for BusinessObjects
When you first open or run an Operational report or TRS report, part of the report runs off
the right edge of the page. You must configure the page layout in your printer settings to
ensure the reports print correctly.
To configure the general printer settings:
NOTE: You may need to open more folders before reaching your report.
166
7.7.0 INSTALLATION GUIDE
To ensure accuracy of your printer name, Personify, Inc. recommends opening the
properties of your printer, copying the name from the properties screen, and pasting it in the
“Specify a printer” text box.
10. Set any other options you desire using the available radio buttons, drop-downs, or
text boxes.
Number of Copies
Collate Copies
Page Range
Page Layout
NOTE: To change the page layout settings, select Custom Settings from the “Set Layout to”
drop-down. More settings will display.
1. Install your DYMO printer on the BO server using the Installation disk that came with
the printer.
NOTE: Make sure you do not set it as the Default printer for your BO server.
NOTE: You may need to open more folders before reaching the CUS500 report.
167
7.7.0 INSTALLATION GUIDE
NOTE: The Page Width and Page Height added in the graphic above are for shipping labels
(SKU 30256).
13. Verify the printer properties are set with the same settings as the Page Width and
Page Height.
14. From the Set collate option to drop-down, select “Do not collate”.
15. If desired, enter a specific page range.
16. Click Save and Close.
For non-United States based customers, you can change the date format for reports.
File Modified: Sqlsrv.prm
168
7.7.0 INSTALLATION GUIDE
When a user enters text into the Unified Search field, the application uses a Google Search
appliance connected to the Application Server to retrieve the search results and then
displays the results on an ASPX page that opens in Personify360.
169
7.7.0 INSTALLATION GUIDE
Pre-setup Checklist
170
7.7.0 INSTALLATION GUIDE
In order to be able to use Unified Search feature in Personify360, you need to first procure
the Google Mini/ Google Search Appliance from Google or a related third-party reseller.
This is an additional piece of hardware that is an integral part of the solution.
Pricing for Google Mini/ Google Search Appliance depends on the number of documents
that is included for search. This directly corresponds to the number of customer and
prospect records that need to be included in the search universe.
Before we can move forward with adding new SQL Database related objects for Unified
Search or setting up the website that displays the Unified Search results, you need to copy
the latest version of the UnifiedSearch folder from your Personify360 release package to the
server that will host the functionality.
The UnifiedSearch folder contains two subfolder:
Personify.UnifiedSearch.Database
Personify.UnifiedSearch.Website
There are 3 objects in the Personify.UnifiedSearch.Database folder:
1_MANUAL_DATABASE_INSTALL
Folder containing the SQL Server Query files needed for a fresh installation of
Unified Search.
2_UNIFIED_SEARCH_OBJECTS
Folder containing a script that creates the remaining Unified Search related SQL
objects, such as tables, stored procedures, and indexes.
Readme_FIRST.txt
Text file containing further instructions on running the scripts for installation and
upgrade.
PROPRIETARY AND CONFIDENTIAL
171
7.7.0 INSTALLATION GUIDE
NOTE: Personify, Inc. recommends opening the Readme_FIRST.txt and referring to the
additional installation instructions in the file while following the instructions in this guide.
Manually installing the necessary database objects for Unified Search involves executing
three (3) SQL scripts available in the “1_MANUAL_DATABASE_INSTALL” sub-folder of
your Unified Search file package. The included scripts perform the following actions:
1. ADD_FILEGROUP_AND_FILE_TO_PERSONIFY_DB_FOR_UNIFIED_SEARCH.S
QL
Adds the Database File Group and sets up the database Data File on your SQL
Server database.
2. ADD_SQL_CLR_TO_PERSONIFY_DB_FOR_UNIFIED_SEARCH.SQL
Adds a SQL CLR Assembly to your Personify360 database.
3. USEARCH_CREATE_SEARCH_FILES_SQL_JOB.SQL
Creates a SQL Job that generates data for the Google Mini to crawl and index.
Execution of these scripts is necessary to perform a fresh installation of Unified Search on
your Personify360 Application. More information on these scripts and steps for executing
them appear in the subsections below.
NOTE: Only users with SysAdmin privileges on the Personify360 database can execute
these scripts.
Adding the Database File Group and Setting Up the Database Data File on SQL Server
Database
All database tables containing data for Unified Search will be hosted in a separate data file
within the Personify360 database on your SQL Server. This ensures the processing of
records for Unified Search does not increase I/O contention on the remainder of the
Personify360 data.
In order to accomplish this, you need to run a script as outlined below to perform the
following functions:
Add a new data file to host data for the Unified Search related tables.
To add the database file group and set up the database data file:
PROPRIETARY AND CONFIDENTIAL
172
7.7.0 INSTALLATION GUIDE
Assembly Personify.UnifiedSearchCLR
173
7.7.0 INSTALLATION GUIDE
GO
174
7.7.0 INSTALLATION GUIDE
4. Locate this next bit of code below and replace the keyword ‘DatabaseName’ (as
highlighted in red) with the name of your local Personify360 database.
EXEC @ReturnCode = msdb.dbo.sp_add_jobstep
@job_id = @jobId, @step_name = N'EXEC_STORED_PROCEDURE'
, @step_id = 1
, @cmdexec_success_code = 0
, @on_success_action = 1
, @on_success_step_id = 0
, @on_fail_action = 2
, @on_fail_step_id = 0
, @retry_attempts = 0
, @retry_interval = 0
, @os_run_priority = 0
, @subsystem = N'TSQL'
, @command = N'EXEC dbo.USEARCH_JOB_RUNNER
GO'
, @database_name = N'DatabaseName' -----<<<<<----- UPDATE
DATABASE NAME HERE!
, @flags = 0
The next step is to add SQL objects to your Personify360 database specific to Unified
Search by running a command script.
A listing of the new database objects added to Personify360 as a result of running the
command script appear after the steps below.
175
7.7.0 INSTALLATION GUIDE
Tables
USEARCH_CUSTOMER
USEARCH_CUSTOMER_ADDRESS
USEARCH_CUSTOMER_ALIAS
USEARCH_CUSTOMER_COMMUNICATION
USEARCH_CUSTOMER_RELATIONSHIP
USEARCH_JOB_STATUS
USEARCH_MEMBERSHIP_INFO
USEARCH_ORDER_DETAIL
Stored Procedures
USEARCH_EXPORT_CUSTOMER_DETAIL
USEARCH_EXPORT_CUSTOMER_LIST
USEARCH_EXPORT_CUSTOMER_SEARCH
USEARCH_INSERT_DATA
USEARCH_JOB_RUNNER
Index
176
7.7.0 INSTALLATION GUIDE
Two SQL scripts that executed when you ran the command script added Indexes to your
existing Personify360 database tables. The indexes are essential to providing Personify360
data for Unified Search in the most efficient way.
Alter_Table_CUS_RELATIONSHIP_Add_Index.SQL
Alter_Table_CUSTOMER_Add_Index.SQL
Data
The following data script also executed when you ran the command script, and it added
placeholder data for the Unified Search Application Parameters in your Personify360
application: APP_PARAMETER_ADD_APP_PARAMETER_DATA_FOR_UNIFIED_SEARC
H.SQL.
The three (3) Application Parameters added to the system include the following:
UNIFIED_SEARCH_DEFAULT_FILE_UNC_PATH
This parameter defines the UNC File location on your App Server/ File Server
for file default.HTML and Customer Search files. (Discussed in the next section.)
UNIFIED_SEARCH_DETAIL_FILE_UNC_PATH
This parameter defines the UNC File location on your App Server/ File Server
for Customer Detail files. (Discussed in the next section.)
UNIFIED_SEARCH_MAX_RECORD_COUNT
This parameter defines the maximum record count for the number of Customer/
Prospect data to include in the search universe. This number is dependent on
the license limitation for the Google Mini search appliance.
Setting Up Location on App Server/ File Server to Host Unified Search Files
The Google Mini search appliance crawls through data in your Personify360 application
made available to the search. Data for the crawl is stored in HTML files hosted on your App
Server or File Server. The file repository can be located on the App Server or any File
Server as desired by your association. For associations where your App Servers is load
balanced, Personify, Inc. recommends storing the files on a file server accessible to all App
Servers.
System Administrators should ensure this file is accessible from both the SQL Server and
the Google Mini search appliance. The service account running the SQL Job that creates
the data files needs to have read, write, and delete permissions on the folders, and the
service account running the Google Mini appliance needs to have read permissions on the
folders.
177
7.7.0 INSTALLATION GUIDE
There must be one top level folder with a user-defined name. Within this folder, there must
be two sub-folders with names "search" and "detail". These folders host all files related to
the Unified Search feature. The "search" folder contains files that have a list of customers
and files that have search keyword data. The "detail" folder contains customer data used for
the search results page.
There are two sets of files that have a list of customers for Unified Search:
There can be multiple defaultXXX.html file for each association. The number of these files
depends on the total count of customers included in the Unified Search universe. Each
defaulXXX.html file contains a hyper-linked list of 5000 customers/ prospects. An
association with 50,000 customers in the Unified Search universe will have 10
defaultXXX.html files with names default001.html, default002.html … default010.html.
178
7.7.0 INSTALLATION GUIDE
179
7.7.0 INSTALLATION GUIDE
The "search" folder also contains one HTML file for each customer that has data included in
the search keyword universe. These files have names with the MasterCustomerID.html
format.
The "detail" folder contains one HTML file for each customer with data used for display in
the search results page. These files have names in the MasterCustomerID_detail.html
format.
In order for the Google Mini search appliance to crawl through data made available for
Unified Search, you need to set up a website accessible by Google Mini. This can be on the
App Server, Web Server, or any other web server accessible from Google Mini appliance.
The URL for this website can be
SubDomain.AssociationDomainName.Suffix/[Top_Level_Folder_Name]
Suffix can be .com or .org or .net or any other top level domain name.
Top_Level_Folder_Name is user-defined.
The URL for the default document should be based on the following format:
http:// SubDomain.AssociationDomainName.Suffix/[
Top_Level_Folder_Name]/default.html
1. Using IIS Manager, make sure your Application Pool is under the .Net 4.5.2
Framework in Integrated Mode.
2. Navigate to the UnifiedSearch folder on your server and open the
“Personify.UnifiedSearch.Website” folder.
This folder contains a script that, when ran, creates a website named
“PersonifyUnifiedSearch” on your Web Server that hosts the Personify360 ASPX
Home Pages.
3. If you want to modify this website and folder name, open
Personify.UnifiedSearch.SetParameters.xml in a text editor and modify the red text
below in the code:
<setParameter name="IIS Web Application Name" value="Default
Web Site/PersonifyUnifiedSearch" />
4. Save and close the file.
180
7.7.0 INSTALLATION GUIDE
NOTE: If you decide to modify the website and folder name, make sure you do not modify it
to a name that already exists in your . . . /innetpub/wwwroot folder.
If you have previously tried to apply the Personify360 Unified Search and therefore already
have a Personify360 Unified Search folder that exists in your . . . /innetpub/wwwroot folder,
make sure to delete this folder before proceeding.
If you do not have MSDeploy installed on your computer, please see the following
website for instructions on Web Deploy installation:
http://go.microsoft.com/?linkid=9278654.
6. When complete, the script should have created the PersonifyHomePage folder.
Navigate to the following file path on your Web Server and verify the website and
folder creation:
.../innetpub/wwwroot/PersonifyUnifiedSearch
If you modified the website and folder name, it should appear with your changes.
7. Make sure your IIS User has FULL privileges to this folder.
8. Record the URL for this newly created website.
For example, http://[your web server name]/PersonifyUnifiedSearch/
The Google Search Appliance must be purchased separately and connected to your
network and a local computer.
For more information and instructions on connecting the Google Mini or Google Search
Appliance to the network and performing the initial software configuration, please refer to the
Google documentation at the following site:
http://code.google.com/apis/searchappliance/documentation/50/installation/InstallationGuide
.html
Before you connect the search appliance, make sure to complete the preinstallation
checklists, documented in Planning for Search Appliance Installation section of the Google
documentation located here:
http://code.google.com/apis/searchappliance/documentation/68/planning/planning.html
The first time you start a Google Search Appliance, you may see an error message saying:
The battery hardware is missing or malfunctioning, or the battery is unplugged. If you
continue to boot the system, the battery-backed cache will not function. Please contact
181
7.7.0 INSTALLATION GUIDE
technical support for assistance. Memory/battery problems were detected. The adapter has
recovered, but cached data was lost.
The error message indicates that the power has drained from a rechargeable battery. The
power drains when the Google Search Appliance has not been plugged in for a week, which
may occur when the Google Search Appliance is being shipped to you. The Google Search
Appliance has not lost data and will function normally. The battery recharges in the twenty-
four hour period after the Google Search Appliance is powered up.
The Google Mini does not experience this problem.
To be able to serve data for searching, Google Mini needs to build the search index. This
process of browsing the data to build the search index is called "crawl".
To enable the initial crawl:
1. Login to Google Mini Admin site with an Administrator level user name/ password
credentials.
2. Navigate to Crawl and Index > Crawl URLs page in the Admin Console.
3. Specify URLs for following two elements:
4. Start Crawling from the Following URLs
5. Follow and Crawl Only URLs with the Following Patterns
182
7.7.0 INSTALLATION GUIDE
The Windows Imaging Service helps standardize the size of all uploaded customer images
ensuring that all profile images that display under the customer name in the Unified Search
results page appear in the same size and are the most current customer image entered in
the Personify360 database. See: “Install Image Services” .
183
7.7.0 INSTALLATION GUIDE
NOTE: This step only applies if your organization decides to keep the customer images
enabled on the Unified Search ASPX page. Imaging is enabled by default in the ASPX
page.
NOTE: The Personify360 application uses the same Windows Imaging Service for the
Personify360 Mobile application. If your organization has already installed the service for
Mobile, you do not need to install it again. Please proceed to Step 5.
When you ran the command script earlier to create the Unified Search database objects,
you added three (3) Application Parameters to the system. Now that you have also set up
your Unified Search website, you can specify the values for these parameters and connect
your Unified Search website to your Personify360 application.
To set the Unified Search APP Parameters:
1. Login in to Personify360 application as a System Administrator.
2. Navigate to System Setup menu and open Application Parameters screen.
The Parameter Maintenance (APP008) screen opens.
3. Select Subsystem = APP (Application Subsystem) and click Search.
4. Scroll down to parameters related to Unified Search (database related).
184
7.7.0 INSTALLATION GUIDE
After you finish installing and configuring the Unified Search functionality, you need to
enable the specify security groups in your database you want to allow access to it. No
security groups are set up with this ability by default.
To enable Unified Search for a security group:
1. From the Security Group Maintenance (PSM002) screen, open the security you want
to apply a default homepage to.
The Security Group record displays in Edit mode.
2. From the Security Group Options section, check the Can Use Unified Search
checkbox.
185
7.7.0 INSTALLATION GUIDE
5. Enter a text into the Unified Search textbox and click Enter to verify the results.
Before you complete the installation, you must install and integrate the interfaces between
the third-party applications and Personify360. The third-party applications include:
Address Validation
BusinessObjects
Data Analyzer
Outlook Plug-In
ApexSQL Audit
Lyris
If you receive errors when running CCP610, please verify the following:
The Application Server and Interface Service are installed on the same server.
The Interface Service you installed is not from a previous release. The service is
not backwards-compatible.
For information and instructions on installing and configuring each third-party interface
application, please refer to the related document. The following table lists the related
document for installing each interface application.
186
7.7.0 INSTALLATION GUIDE
NOTE: You can access this documentation from within the Personify360 application or from
the Support Portal.
This document is to guide system engineers in planning server design for an installation of
Personify360 e-Business sizing. The sizing tool spreadsheet should be used to calculate a
number of “cores” or “CPUs” necessary for your environment, based on server load
estimates. While you are using the sizing spreadsheet tool, consider the impact of designing
your infrastructure for average load or for peak load. Hardware sufficiently sized for the
average load can struggle during peak usage, resulting in performance degradation, such as
very slow page load times or page timeouts. Planning for peak load will enable your
organization to handle the maximum load gracefully. It will also mean that the system will
show low utilization for the majority of the time. The scope of this document and the sizing
tool is the Personify360 e-Business environment. The e-Business environment is defined as
the website components necessary for full function of Personify360 e-Business. Adding
other web applications or utilizing web services for purposes beyond Personify360 e-
Business may require additional resources and additional planning to accommodate the
additional load to the servers.
Personify360 e-Business provides great flexibility and scalability in its components. New
features in Personify360 e-Business relax former restrictions and permit even greater
187
7.7.0 INSTALLATION GUIDE
flexibility than before. From single servers to large web farms, any level of traffic
requirements can be met.
These sample configurations are not the limit to product setup. Personify, Inc. can work with
you to review your planned configuration.
Description of Method
Personify, Inc. performed load testing against a Personify360 7.7.0 environment. During the
testing, we measured the load placed on each component of the environment. From these
tests, we derived the proper ratios that we use to determine the level of resources
necessary for each component. With the ideal resources in place, we were able to increase
load and determine the load levels that require additional resources.
The e-Business environment can be implemented with various levels of resources. We have
categorized levels of implementation based on their various characteristics. We will use
these levels to discuss various implementation options in this document. The categories we
have identified are small, large, and enterprise. These categories are based on the #CPU
requirement identified by the sizing spreadsheet. There is some degree of overlap along the
spectrum from small to enterprise, as well. A large installation may only be different from a
small installation in the number of CPUs in its single server. At the enterprise end of the
spectrum, we present options for full redundancy and using multiple servers -web farms- for
load balancing.
Basics
e-Business Applications
There are several distinct categories of web applications within a Personify360 e-Business
environment. We have measured typical loads for each component, and we use this data to
create a ratio of performance required for each category.
1. e-Business – The main application, Personify360 e-Business, is based on the
DotNetNuke CMS framework. It requires a folder on the website and a database. It
also contains ShoppingCart Web service.
2. SSO / IMS – The Single Sign-On and Identity Management sites and web services.
3. PersonifyDataServices – The web service providing 3rd party integration, .NET
control support within e-Business. Its role in enabling the .NET controls within the
188
7.7.0 INSTALLATION GUIDE
website earn it its own category as its load is at least partially tied to the website
visitor load.
Other Web services – Personify360 has several various web services supporting 3rd party
integrations and customizations. These would include the Microsoft Outlook web service,
the Mobile data web service, Personify360 WCF services, and the Personify360 API
simple/universal web services. If your website customizations will leverage any of these web
services to provide content for a large percentage of site visitors, you will need to reassess
resource allocation to accommodate actual site usage.
CPU Allocation to Worker Processes
The sizing spreadsheet provides a number indicating how many CPU cores should be
dedicated to your e-Business environment. For optimum resource utilization, the number of
IIS worker processes on the server should match the number of CPUs. It is not necessary to
dedicate or assign CPUs per worker process. You will require additional CPUs or servers to
accommodate any additional software. The reason for this is that when your system is
operating at maximum load, the number of tasks to execute will not exceed the CPU count
in the system. For each worker process, 1 Gigabyte of RAM should be installed in the
server. The sizing spreadsheet includes an overhead calculation to provide for system RAM
and CPU overhead.
If any of your web applications will actually require less than a full CPU allotment, you may
consider them to be combined under one CPU; however one GB memory should still be
provided to each worker process.
By identifying these as ‘active’ worker processes, we mean that we are not counting the
worker processes that are available by default within IIS. You can rename and reconfigure
these, or delete them. If you ignore them, they all have timeout settings and will not become
active if they are not attached to any web application.
The CPU count will be implemented as vCPU in virtual servers, and as cores in physical
servers. Any combination of sockets and cores is permissible, as is the overall number of
servers – 24 cores could be 3 8-core servers, or one 24-core server.
Each application has differing audiences, and here we will provide some insight into the
roles played by these applications.
The audience for Personify360 e-Business is the web-using public, members and search
engines. It communicates with the SSO and IMS web services, and the .NET controls it
contains communicate with the PersonifyDataService. It uses the Personify360 API to
communicate with the Personify360 Application windows service to interact with the
PROPRIETARY AND CONFIDENTIAL
189
7.7.0 INSTALLATION GUIDE
Personify360 database. It requires connections to the DNN database and the SSO
database.
SSO has a few web pages. Your e-Business installation or partners may redirect clients to
these pages for SSO login or SSO account maintenance, like forgotten password reset or
account registration. e-Business and also partners will access the SSO and IMS web
services. They require database connectivity to the SSO database.
PersonifyDataServices may be accessed by partners, in-house or offsite 3rd party
integrations, customizations, as well as by the .NET controls available for Personify360 e-
Business. It uses the Personify360 API to connect to the Personify360 database.
The other web services are accessed by partners or 3rd party integrations. They also use
the Personify360 API.
The Personify360 client application also interacts with the web applications. Through the
Application Service, it can upload product files and product images for use in the online
store catalog, as well as several other categories of files. These upload folders are defined
in the Personify360 Installation Database. These folders should be on the web server or in
the network share housing Personify360 e-Business. The Application Service should run
under a domain credential with read/write access to these website folders, so the files can
be placed and modified. There are also some screens in Personify360 which are designed
to open up specific pages on the website; for example, the IMS management screen.
Database Server
The website environment requires an SQL server. The same server can hold the DNN,
SSO, and ASP.NET session state databases. These databases are small, and typically they
are only lightly used. Content compression and caching reduces much of the requirements
for DNN, and SSO uses very small transactions. This database server can be the
Personify360 database server. Your reporting and Personify360 client user base are
capable of having an impact beyond what is predicted by our load test. Monitor your
database server performance regularly, and keep your DNN requirements in mind. If your
website content expands greatly, for example if a large number of frequently visited pages
will be added, or if you plan to use discussion forum features or other DNN add-on modules,
the database requirements can increase greatly.
There are some changes to the default application pool settings that are best practice for a
production environment. After your application pool is created, open its advanced settings to
examine and modify these parameters.
190
7.7.0 INSTALLATION GUIDE
The Idle timeout is, by default, 20 minutes. After 20 minutes of inactivity, the worker process
will be stopped. It will not start again until a new visitor requests a page from the website.
The first request to a new worker process isslower than subsequent requests, as the
program has to start up, load all the libraries, and initiate network connectivity to required
resources. The best practice for production is to set the idle timeout to zero.
Application pool recycling is the process of restarting the web application. There are reasons
and benefits to restarting the application on a regular basis. By default, the pool is recycled
every 1740 minutes. Restarting every 29 hours will occasionally cause your application pool
to shut down and restart in the middle of your daily peak. Change this parameter to zero.
Set a daily pool recycle under Specific Times. Try not to have all of your pools recycling at
the same time. Pick a few minutes before or after 2am, for example. If you set up a web
farm on multiple servers, set them to go off in 5 minute intervals.
Using Integrated Authentication is the best practice for database connection security. There
is no password in plaintext in the web.config file. Configure the application pool to run as a
domain user who has the proper permission to the database required by the web
application. For example, create a domain account called “websql”, grant this user access to
the DNN and SSO databases, and then configure the application pools for Personify360 e-
Business and SSO to run as this user account. This provides windows domain-level
authentication, and gives the web application a unique, auditable credential.
If your web application is sized to use multiple CPUs, you will still configure one application
pool per CPU. This does not mean that you will create more than one application pool.
Configure one application pool and then set the “web garden” parameter to the total number
required. This parameter gives a count of how many copies of the application pool will be
spawned to handle requests.
Personify360 7.7.0 utilizes an SQL database for session state. This reduces the memory
requirements from previous versions that kept the session state information in memory.
Additionally, the session state information is available to any application pool servicing the
same application, eliminating the need to persist a particular client with a particular server
during its session. The session state database can be shared among web applications; each
will give their clients a session ID that is unique across the database.
Before the session state database was adopted by Personify360 e-Business, it was not
possible to run multiple worker processes on the same server. If you used multiple servers
in a web farm configuration, it was necessary to ensure each session persisted with the
same server for its duration, as each process kept session information in memory.
Persistence with multiple worker processes on the same server was not possible. With the
session information stored in a database, session persistence is no longer required. It is
191
7.7.0 INSTALLATION GUIDE
now possible to increase the number of worker processes running the e-Business
application on each web server.
In IIS, the application pool IIS has a feature called Web Garden. The Maximum Worker
Processes parameter defines the number of worker processes that will run in parallel to
service this web application. By default, this is one worker process. When the sizing
spreadsheet requires 5 CPUs for e-Business, you will open the advanced settings for the
worker process and change this parameter from 1 to 5.
Do note that the Personify360 Data Service requires a modified session state database.
This is compatible with the standard session state database, but it has some custom stored
procedures installed to it that are required by the PersonifyDataService. It can still be shared
with other applications.
Be sure to set up static and dynamic content compression as detailed in this guide. This
reduces network traffic, and total network traffic overhead.
Several types of content are uploaded from the Personify360 Back office application.
Various screens have the ability to upload product images, custom IMS role images,
electronic content distribution products known as DCDFiles, even customer images. These
files are uploaded by the application to the Personify360 Application Service, and stored in
folder paths that are defined in the Personify360 Installation Database.
The web servers must all have access to these paths. They will be added to the IIS website
as virtual folders. The best practice would be to ensure the folders are not within any web
application, so that uploads are not executable. The best location for these folders is the
local disk of the web server. If the web servers access their application folders by UNC path,
as in a web farm configuration, the upload folders may be set up on this file server. There
will be a performance disadvantage for larger files, due to implementation details within IIS
itself. For each of these files that are accessed by UNC path, the worker process must load
the entire file into memory before it can send it to the client. If the file is on the local disk, IIS
is capable of streaming the file to the client as it reads it. The optimum setup would be to
utilize Microsoft’s DFS-R to replicate these upload folders between webservers, so each has
a local copy. The disadvantage is more pronounced with larger files; if your organization is
not using DCDfiles it may not prove to be a concern.
Prior to Personify360 7.4.0, the system used the logged in PSM user to update
ADDOPER/MODOPER auditing information. As of Personify360 7.4.0, you can now store
192
7.7.0 INSTALLATION GUIDE
the ID of the customer who updated the information over the web, using our e-Business
solution or via customer site using our APIs. To make this possible, the Personfiy APIs and
eBiz core were modified to allow end users to update which value should be used for the
auditing log fields. To do so, you must set EnableAddModOperatorAlias to “True” in the
config.xml to enable this functionality to set WebUserId from eBiz. The default value for this
is “True”. If the value is not found in the configuration, the system assumes “False” value.
<Item Name="UserInterface"
SplashScreen="False"
ApplicationHostType="MDIMain"
. . .
. . .
EnableAddModOperatorAlias="True"
/>
The system will store this value as “WEB_000000000012|0” and this will be used to set the
ADDOPER / MODOPER.
NOTE: This functionality is only applicable to DNN web modules and cannot be used for
.NET controls.
Environment Scaling
Small Environment
The Small Environment has 4-8 CPUs indicated by the sizing chart. All web application
components can be installed on the server. All website files are installed on the local drive.
Create a folder for the environment, for example C:\EBIZ\PROD\, and under this folder
create folders for the web applications – SSO, IMS, PersonifyEbusiness,
PersonifyDataServices. Create a new website in IIS and set its home to be C:\EBIZ\PROD.
193
7.7.0 INSTALLATION GUIDE
Bind this website to a specific IP address on the host. Create a separate folder for the
shared folders, for example C:\EBIZ\PRODUCTFILES, and under this folder create the
upload folders, for example PRODUCTIMAGES, CUSTOMERIMAGES. Add these folders
as virtual directories under the website.
For this 4 CPU server, you will set up no more than 4 active application pools. This will be
one for e-Business, one for SSO/IMS, one for PersonifyDataServices, and one for other web
services.
As the CPU count requirement increases above about 8-12, your options broaden. At some
levels it can make sense to implement two servers instead of one. Initially, you will increase
the Maximum Worker Processes setting for e-Business and PersonifyDataServices. A
second can be used for SSO/IMS and web services, dedicating the first server to e-
Business.
For a two-server installation that divides applications between servers, you would need to
set up two hostnames and configure your applications accordingly. For example,
ebiz.yoursite.org for the personifyebusiness server, and sso.yoursite.org for the SSO/web
service server. Files are still stored on the local drive, and folder path setup can be similar to
the small setup.
Choose your server platform carefully to ensure greater uptime. Dual power supplies --
plugged into different circuits – and RAID arrays will keep the server online and functioning
194
7.7.0 INSTALLATION GUIDE
after hardware failure until replacement parts are obtained and a maintenance window can
be scheduled. ECC memory will warn of failures.
Organizations that have large load requirements or look for server redundancy will have
more requirements for their web server environment. Multiple servers can easily run the
Personify360 web applications. With session state being kept in a database, load balancing
is easier than before. Scaling out by adding more identical webservers can be leveraged to
provide capacity on demand, and the redundancy keeps websites online through server
failures.
Web farm implementations, with multiple web servers, requires a hardware load balancer.
These are available from various vendors. They are installed on your network, between
clients and servers. The load balancer is configured with a pool of servers, and a virtual
server implementing the website’s public IP address. The load balancer receives client
requests, and proxies them to one of the pool members, forwarding the reply back to the
client. The load balancer monitors parameters such as number of connections to each
server, and each server’s response time. The administrator can select a suitable load
balancing algorithm to influence server decision. Pool members can be manually disabled
for maintenance. The load balancer typically will also be able to run health checks against
each server in the pool, to detect if a pool member is offline.
Personify360 e-Business works well with a simple round-robin load balance algorithm. Other
algorithms could be chosen based on other considerations. We do not find need for anything
more than simple http port test for a health check. It would also be possible to set up and
use a page content test against a URL that fetches data from Personify360, like product
data, to test end-to-end. Separate server monitoring software should test the web pages on
each back-end node, in addition to testing the public website URL. It is also advantageous
to load balance multiple Personify360 Application servers. This provides redundancy and
load distribution for the application service. For the Application service, only a simple port
check is required for a health test. Anything at a higher level would require the Personify360
API and .NET framework to be available to the test program. Simple round-robin works well,
and no persistence is required.
Most web server farms will be in the range of 2-5 servers. At this level we recommend that
each server be identical, with each web application installed. This permits cloning of
machines to set up or replace servers. In a failure, all applications are still well-represented.
Larger farms may consider splitting applications into multiple pools, with multiple host names
used for the various applications. We recommend that you set up 8-CPU nodes, with
application pools in this ratio:
195
7.7.0 INSTALLATION GUIDE
e-Business 4
SSO 1
PersonifyDataServices 2
Other Web Services 1
Keeping files up to date on each web server can be a challenge if each is holding its own
copy of the documents. We recommend that the web applications be installed to a shared
folder on a separate file server. The file server can be a Windows cluster for redundancy, or
a NTFS share from a SAN or other network file system. If your database server cluster has
the horsepower, it can provide the redundant file server. File replication technologies such
as Windows DFS-R may also be viable, but there are issues you would need to work out
such as identifying folders to be excluded from the replication.
Configure each web server with a C:\EBIZ\PROD folder, and set this as the document root.
For each of the web applications, add a virtual application and use the UNC path of the file
server, for example add virtual application PersonifyEbusiness and use UNC path
\\Fileserver\website\personifyebusiness. Configure IIS to access this folder as your web user
credential as mentioned in the best practices section. Grant this user Modify permission to
the entire website\personifyebusiness folder.
You can set up IIS to use a shared configuration. This will cause the website settings and
application pool settings to be mirrored across each server. Create a folder on your website
share for IIS configuration. The IIS Shared Configuration dialog allows you to enter this
196
7.7.0 INSTALLATION GUIDE
folder, and select a credential to be used to access the folder. You will then give an
encryption key, and your server’s settings will be saved into this file, which will be used from
then on to store IIS configuration changes. Selecting this folder from another server and
entering the key, you will be able to copy all of the settings to that server as well. This tool
further enables webserver cloning.
As discussed in the section about web application connectivity, the e-Business site will need
to communicate with many of the web services. The URLs for the web services are set in
the site’s web.config file. If the site on a particular server can be set up to communicate only
with web services on the same server, the network round trip time and communication
overhead for the call is minimized. However, each server needs the website to be
configured identically. This is solved by entering the public hostname of the website into the
hosts’ file of each server, identifying the local IP address of the server as the address of the
website. Part of the server customization after cloning would then be to edit the hosts file to
set this up.
197
7.7.0 INSTALLATION GUIDE
Your users have the option to display only the databases that the user has access. By
configuring this option, only the databases that the user has rights to will display in the
Database drop-down upon logging in to the application. Please see the Security section of
the 7.7.0 Online Help for more information on this functionality.
NOTE: If you do not want your users to use this functionality, then do not perform these
steps.
1. Verify that the “EnableDatabaseFilter” entry in the config.xml file is set to “True” on
the client’s computer.
2. The scripts below (highlighted in red below) must be run from the following location:
\Current\Product\Install\Installation Database
198
7.7.0 INSTALLATION GUIDE
3. Open the Installation DB Users Sync project from the following location:
…\Current\Utilities\Installation DB Users Sync Utility
4. Build and run the Installation DB Users Sync project.
The Database User Sync Utility screen displays.
5. Enter the installation database connection details or enter the connection string and
click Test Connection.
A pop-up should display stating “Database users sync completed.”
6. Click Sync Database Users.
All active users’ records are copied into the installation database from the
Personify360 database server and a log is generated.
7. Install the latest Personify360 Application Server.
There are a number of database-stored procedures that populate data in some placeholder
tables, which are used for temporary processing of data. Over time, the data in these tables
could grow to large sizes, which may lead to performance issues.
To clean up this temporary data, a scheduled SQL job was created to periodically delete the
data. The scheduled job is set up to execute daily at 2:00 AM and purge data from the
199
7.7.0 INSTALLATION GUIDE
WORK_ tables that are older than 10 days. This setting is the default and can be configured
from the SQL Server Management Studio.
The name of the job is “Purge work table data from [YOURDBNAME] database.” For
example: if your database name is “PPRO,” then the job name would be listed as “Purge
work table data from PPRO database.”
Important points to note include:
Personify, Inc. recommends you set up this job during the off-working hours
when the load on the database is less.
Personify, Inc. recommends you do NOT stop or disable this job due to the
performance impact that could occur from large amounts of data in the WORK_
tables.
To configure the default setting:
1. Select the job from the SQL Server Agent > Jobs section.
The Job Properties screen displays.
200
7.7.0 INSTALLATION GUIDE
A scheduled SQL job has been created to periodically delete temporary data from the
FAR_TXN_NEXT_NUMBER table. The scheduled job is set up to execute daily at 2:00 AM
and purge data completely from the FAR_TXN_NEXT_NUMBER table. This setting is the
default and can be configured from the SQL Server Management Studio.
The name of the job is “Purge FAR_TXN_NEXT_NUMBER table data from
[DEFAULT_DATABASE_NAME] database.” For example: if your database name is “PPRO,”
then the job name would be listed as “Purge FAR_TXN_NEXT_NUMBER table data from
PPRO database.”
Important points to note include:
Personify, Inc. recommends you set up this job during the off-working hours
when the load on the database is less.
Personify, Inc. recommends you do NOT stop or disable this job due to the
performance impact that could occur from large amounts of data in the WORK_
tables.
To configure the default setting:
1. Run the usp_Purge_FAR_TXN_NEXT_NUMBER_SP.sql script.
This creates the [dbo][usp_Purge_FAR_TXN_NEXT_NUMBER_SP] stored
procedure on your Personify360 database using the SQL Server Query analyzer.
2. Run the SQL Executive Job script file
(Purge_data_from_FAR_TXN_NEXT_NUMBER_Job.sql) to create the SQL Job.
3. By default, this script contains “[DEFAULT_DATABASE_NAME]” as the database
name. Modify the script to handle your database:
201
7.7.0 INSTALLATION GUIDE
202
7.7.0 INSTALLATION GUIDE
Troubleshooting
To set up NLog as part Personify360, the following two keys are needs to be configured in
the application, as shown below.
In the following nlog node, LogFileName with full path needs to be configured (e.g.,
“C:\personify\Nlog.config”).
If you want to keep the NLog.config file within the same folder as the configuration file that
contains the following two keys, then you can specify the LogFileName as “Nlog.config” only
without specifying the full path.
Open the Nlog.config file and update the following two keys values, as shown below:
If you are configuring the Production application instead Development/Test, then update the
value of “VKeepFileOpen” to True:
<variable name ="VKeepFileOpen" value="false" />
Based on the logging level required, you can set the Nlog.config file.
Different logging levels are:
1. Off
2. Fatal
PROPRIETARY AND CONFIDENTIAL
203
7.7.0 INSTALLATION GUIDE
3. Error
4. Warn
5. Info
6. Debug
7. Trace
With the release template, we enabled “Error” level. Based on your logging requirement, you
can modify the settings.
For web applications, we have created different templates. You can any of the templates
based on your logging level requirement.
Some example templates are:
NLogWeb.errors.template
NLogWeb.loadTest.template
NLogWeb.debug.template
To set up Personify360 to remember a password, you must modify the config file located in
the WinClient\Config folder. In the config file, find the following section and change the
“RememberPassword” to equal “True,” as displayed in the last line of code below.
204
7.7.0 INSTALLATION GUIDE
Once modified to remember the password, a “Remember Password?” checkbox will display
on the login window. If the user checks this checkbox, Personify360 will remember the
password for future logins.
When you receive an error message stating “Access to the path ‘C:\...’ denied”, please
restart your computer or access Task Manager to quit the TIMSS.exe process.
205
7.7.0 INSTALLATION GUIDE
206
7.7.0 INSTALLATION GUIDE
<AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>GenuineChannels.dll</FileName>
<FileVersion>2.5.9.1</FileVersion>
<FileDate>3/14/2007 12:36:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>ICSharpCode.SharpZipLib.dll</FileName>
<FileVersion>0.80.0.1373</FileVersion>
<FileDate>3/14/2007 12:36:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>log4net.dll</FileName>
<FileVersion>1.2.9.0</FileVersion>
<FileDate>3/14/2007 12:37:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>MVP.Core.dll</FileName>
<FileVersion>7.0.1.1000</FileVersion>
<FileDate>3/20/2007 5:23:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>Personify.AutomaticUpdates.dll</FileName>
<FileVersion>7.0.1.1000</FileVersion>
<FileDate>3/23/2007 1:42:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
PROPRIETARY AND CONFIDENTIAL
207
7.7.0 INSTALLATION GUIDE
<FileName>Personify.exe config</FileName>
<FileVersion />
<FileDate>3/23/2007 1:39:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>TIMSS.CommunicationLayer.dll</FileName>
<FileVersion>7.0.1.1000</FileVersion>
<FileDate>3/20/2007 5:23:00 PM</FileDate>
</AutomaticUpdateManifest>
<AutomaticUpdateManifest>
<FileName>TIMSS.Shared.dll</FileName>
<FileVersion>7.0.1.1000</FileVersion>
<FileDate>3/20/2007 5:23:00 PM</FileDate>
</AutomaticUpdateManifest>
</AutomaticUpdateManifest>
208
7.7.0 INSTALLATION GUIDE
Application
<Drive The TIMSS Cache Server Service
Letter>\Personify\Production\Services\ Components.
Cache
<Drive The TIMSS Interface Server Service
Letter>\Personify\Production\Services\ Components.
Interface
<Drive Common Log File folder. All
Letter>\Personify\Production\Services\ Personify360 service components on
Logs a machine can write their log files to
this common log folder.
<Drive The Notification Server Service
Letter>\Personify\Production\Services\ Components.
Notification
<Drive The TRS Server Service
Letter>\Personify\Production\Services\ Components.
TRS
<Drive Letter>\Personify\Production\ Root folder where all Personify360
EnterpriseClient Enterprise Windows application
versions will be stored. Each version
should be in its own folder below this
folder.
SQL Server 2012 <Drive Letter>\SQL Server 2012 Location where all SQL Server 2012
Databases .MDF files are located. This location
can be further distributed across
multiple drives for improved
performance.
<Drive Letter>\SQL Server 2012 Each SQL Server user database
Databases\ should have its own folder within the
Personify SQL Server 2012 Databases folder.
<Drive Letter>\SQL Server 2012 Log Location where all SQL Server 2012
Files .LDF files are located. This location
can be further distributed across
multiple drives for improved
performance.
<Drive Letter>\SQL Server 2012 Log Each SQL Server log file should have
Files\ its own folder within the SQL Server
Personify 2012 Log Files folder.
209
7.7.0 INSTALLATION GUIDE
<Drive Letter>\SQL Server 2012 Each SQL Server database and its
Backups associated backups should have its
own folder within the SQL Server
<Drive Letter>\SQL Server 2012 2012 Backups folder.
Backups\
Personify
210
7.7.0 INSTALLATION GUIDE
211
7.7.0 INSTALLATION GUIDE
You can perform an unmanaged installation on a single PC directly by using the Windows
Installer or silently by using a batch file. The following sections describe how to perform both
methods.
Once you perform a managed or unmanaged installation, refer to the following sections in
this chapter to complete the Automatic Updates installation:
212
7.7.0 INSTALLATION GUIDE
2. Click Next.
The Destination Folder screen displays.
3. Select the folder where you want to install Personify360 Automatic Updates and click
Next.
NOTE: If you are using Vista, you cannot install Automatic Updates into the C:\Program
Files folder. When you modify files, the system displays the User Account Control
questionnaire, which causes Automatic Updates to not automatically update itself. Instead,
create a new folder such as C:\Personify Automatic Updates.
213
7.7.0 INSTALLATION GUIDE
4. If you would like Personify360 Automatic Updates to check for updates, then check
the checkbox and proceed to step 5.
If you do not want Personify360 Automatic Updates to check for updates, then
deselect the checkbox and skip to step 8.
5. Click Next.
The Network Updates screen displays.
6. Enter the network location where Personify360 Automatic Updates will check for
updates. This location can be specified in any of the following formats:
7. An http URI – http://yourserver.yourorganization.org/automaticupdates
8. A UNC path – \\yourserver\yoursharename\yourfoldername
9. A Drive Letter – P:\yourfolder\
10. Click Next.
11. Click Install to begin the installation.
12. Start Personify360 Automatic Updates by clicking Start > Programs > TMA
Resources > Personify.
214
7.7.0 INSTALLATION GUIDE
4. Open Active Directory Group Policy Editor and create a new Group Policy named
“Personify.”
5. Edit the Personify Group Policy.
6. Navigate to the user configuration node within Group Policy, expand the Software
Settings node, right-click Software Installation, and select New/Package as shown
in the following graphic.
7. Navigate to your file system, locate the administrative installation path, and select the
Personify.msi file.
8. Choose whether you want to “Assign” or “Publish” the package as shown in the
following graphic.
NOTE: We recommend that you choose to “Assign” your packages. By choosing assign,
your end users do not need to perform any further actions. The software is installed for them
the next time they log on once you make the Group Policy active.
215
7.7.0 INSTALLATION GUIDE
9. When you have completed the package setup, you should see a screen similar to the
following:
10. You can optionally configure the level of interaction your end users can have with the
package installation by navigating to the User Configuration > Windows Settings
216
7.7.0 INSTALLATION GUIDE
11. Right-click the Remote Installation Services node and select Properties.
The Choice Options Properties screen displays.
217
7.7.0 INSTALLATION GUIDE
12. Select the options available to users during the client installation.
These options include:
13. Automatic Setup
14. Custom Setup
15. Restart Setup
16. Tools
17. Click OK.
NOTE: Refer to the “Active Directory” section in the Security section of the 7.7.0 Online Help
for additional setup considerations.
By using third-party tools available from various vendors, you can modify the contents of the
internal tables of the MSI installation and provide information for various configuration items.
The steps that follow have been completed using the Orca toolkit produced by Microsoft and
were valid as of the time of this document’s release. For additional information on installing
and using Orca, visit http://support.microsoft.com/kb/255905.
To modify the internal tables of the MSI installation:
1. Make a copy of the Personify.msi file.
2. Run Orca.
3. Open the copy of the MSI file.
4. Select the Property table, as shown in the following graphic.
218
7.7.0 INSTALLATION GUIDE
8. Click OK.
219
7.7.0 INSTALLATION GUIDE
Setting a default server can save time in the future. If you set up multiple servers in the
Application Servers tab, then launch Personify360, you will see a dialog with a list of servers
to choose from. If you set one of those servers as the default, the default server displays
and you press Enter or click OK to continue. If you do not set a default server, you must
select a server from the list and then click OK.
NOTE: If you only set up one application server in the Application Servers tab, you will not
be prompted to choose an application server when starting the Automatic Updates.
On the Personify360 Middle Tier Server Definition screen, select the Default
Server checkbox.
On the Application Servers tab, highlight the appropriate server and right-click,
selecting Set as Default Server.
220
7.7.0 INSTALLATION GUIDE
You can use command line parameters to start the Automatic Updates.
To access the Configure Personify360 Automatic Updates screen:
1. From your desktop, select Start > Run.
2. Type cmd and click OK.
The Command Prompt screen displays.
3. Type the appropriate drive and location.
The default Automatic Updates installation path is C:\Program Files\TMA Resources
Inc\Personify Automatic Updates.
4. Type personify.exe /configure.
Note there is a space between “personify.exe” and the “/”. The following graphic is an
example:
221
7.7.0 INSTALLATION GUIDE
NOTE: If your command line parameter contains a space, you must enclose the parameter
in double quotation marks. For example: personify.exe
/applicationserver=tcp://someserver:39081 /association=“TMA
Resources”/applicationtype=“Back Office”
222
7.7.0 INSTALLATION GUIDE
/association= Allows you to pass an association name when you supply the
/applicationserver= parameter.
/applicationtype= Allows you to pass an applicationtype name when you supply the
/applicationserver= parameter.
NOTE: When this parameter is passed, you must also pass the
/applicationserver= and /association= parameters.
/Clean Get Forces a re-download of all of the files that comprise the
Personify360 application to a local workstation.
Manifest Generation
You can change the network location where Personify360 Automatic Updates checks for
updates by executing the following command line: Personify.exe /setnetworkupdatelocation.
223
7.7.0 INSTALLATION GUIDE
This will open a screen where you choose whether you want to download updates from a
Web server or a file server. Based on your choice, you can enter the appropriate URI and
click OK.
To deploy this change to your organization:
1. Ensure that the new network update location exists and that users have “Read”
permissions to the location. For http URI values, you must ensure that anonymous
access is turned on for the specific folder where updates are located.
2. Follow the directions from Manifest Generation to generate a new manifest file with
the changes you made to your network update location.
3. Copy the following file(s) to your original network update path:
4. PersonifyConfiguration.xml
5. Personify.manifest.xml
The next time your users run the Personify360 Automatic Updates application, your
configuration changes are recognized and the application checks that location for updates.
See the screen shots below for additional information.
224
7.7.0 INSTALLATION GUIDE
Before you can install and configure Online Store and App Data Cache on the system,
please ensure the following steps have been completed on the Personify360 database
server:
1. Upgrade SQL 2008 or SQL 2008R2 to Service Pack 1 (SP1) if using Enterprise
edition of SQL Server.
2. Configure SQL Server service to run using a Domain User Account
3. Start SQL Server Agent Service on SQL Server
A requirement for using App Data Cache functionality for Personify360 installations on
Enterprise edition of SQL Server (SQL 2008 or SQL 2008 R2) is the availability of Service
Pack 1 (SP1) for SQL 2008/ SQL 2008 R2. Change Data Capture (CDC) is enabled on SQL
servers with Enterprise edition as part of App Data Cache implementation. Enabling this
feature on RTM (Release To Manufacturing) version of SQL server will throw errors for any
Maintenance Jobs on SQL server that involve re-indexing tables. This is a bug in RTM
version of SQL server and has been resolved by applying SP1 to SQL server.
When using RTM version of SQL server, a Re-Index SQL Maintenance job will
fail with an error similar to the following message:
Msg 22983, Level 16, State 1, Procedure sp_cdc_ddl_event_internal, Line 77
The unique index ‘INDEX_NAME’ on source table 'TABLE_NAME' is used by
Change Data Capture. To alter or drop the index, you must first disable Change
Data Capture on the table.
Msg 3609, Level 16, State 2, Line 1
The transaction ended in the trigger. The batch has been aborted.
The error above has been recognized by Microsoft as a bug in RTM version of SQL 2008/
SQL 2008 R2 server. Please refer to this document for more information –
http://support.microsoft.com/kb/977076
Resolution – To resolve this issue, Microsoft recommends applying Service Pack 1 for SQL
2008. Service Pack 1 can be obtained at the following location –
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=20302
225
7.7.0 INSTALLATION GUIDE
NOTE: You may encounter the following situation after applying Service Pack 1 (SP1) for
SQL 2008/ SQL 2008 R2.
3. Let it run for 30 minutes. Once this is completed, close command prompt.
4. Start SQL service – if it stays on and does not stop, then your upgrade process is
done. If not, repeat step 2 and 3.
We can confirm issue resolution by successfully running of Re-Index SQL Maintenance job.
A critical step in normal processing of Online Store and App Data Cache SQL job is
generating HTML files that are consumed by Google Mini search appliance. This step
involves selecting data from the database and exporting it as an external HTML file. For this,
the user that runs the SQL Job needs to have read and wrote permission on the file
destination location.
This can be done with a domain user that has access to the database and has
above mentioned permissions on file server. This account can be any user
226
7.7.0 INSTALLATION GUIDE
account on the domain of can be the same account that runs SQL Server
service.
The SQL Server Agent Service needs to be started on SQL server instance where the SQL
job will be located. Not having the SQL Server Agent service running will return errors when
creating the job.
You may receive an error like this if you attempt to create the SQL Job on a server
that has SQL Server Agent Service turned off.
SQLServerAgent is not runningso it cannot be notified of this
action.
This option is applicable for Personify360 installations on Enterprise edition of SQL server.
For clients using the Enterprise Edition of SQL Server, the following SQL jobs are created
once script CHANGE_DATA_CAPTURE_ENABLE_ON_ONLINE_STORE_TABLES.SQL is
executed as part of database upgrade process:
cdc
227
7.7.0 INSTALLATION GUIDE
the database server. In this case, SQL script mentioned below must be executed on the
Personify360 database.
...\ Change Data
Capture\CHANGE_DATA_CAPTURE_ENABLE_ON_ONLINE_STORE_TABLES.SQL
NOTE: When performing a backup of Personify360 database that will restored on a non-
Enterprise edition of SQL Server:
228
7.7.0 INSTALLATION GUIDE
229
7.7.0 INSTALLATION GUIDE
Change Data Capture must be enabled again once the database backup process has been
completed. This can be enabled by executing the SQL script below:
…\Release.XX\Package\Databases\Post_Deployment_Scripts
\CHANGE_DATA_CAPTURE_ENABLE_ON_ONLINE_STORE_TABLES.SQL
NOTE: All data stored in CDC related tables will be lost when it is disabled on Personify360
database and there will be no change tracking for the duration of the database backup when
until CDC is enabled again.
NOTE: Personify, Inc. does not recommend using the above approach and strongly
suggests maintaining similar editions of SQL server (mix of Enterprise and Developer)
across the entire organization as previously mentioned. Please check your Microsoft
Software License Agreement for pricing details related to SQL Server editions. More
information can be found at the following website:
http://www.microsoft.com/sqlserver/en/us/get-sql-server/how-to-buy.aspx
230
7.7.0 INSTALLATION GUIDE
Create a batch file to install the application with parameters predefined for your end users
and either execute that batch file as part of a network logon script or ask your users to
navigate to a designated location and double-click the batch file to start the installation
process.
The parameters that can be set for the MSI installation include:
NETWORK_UPDATE_PATH
INSTALLDIR
Refer to the following table for examples of command lines that can be placed within a batch
file to define values for the MSI.
NOTE: These are all one single command on a single line, no carriage returns. You must
enclose parameters that contain spaces within double quotes.
231
7.7.0 INSTALLATION GUIDE
Optional Modifying the Internal Tables of the MSI Installation. See Appendix D.
232
7.7.0 INSTALLATION GUIDE
4. Click Next.
The Network Location screen displays.
5. Enter the network location where you want to deploy your administrative installation.
NOTE: This network share must have its NTFS permissions set correctly to allow end users
to read and execute files from this location.
233
7.7.0 INSTALLATION GUIDE
NOTE: You must verify that you reference the MSI file found within your network installation
path. When you perform an administrative install, the Windows Installer application creates a
new MSI file that contains the correct information to instruct your application as to where to
find its installation files. There is a file size difference between the original MSI file delivered
by Personify, Inc. and the size of the MSI file in your administrative network installation path.
The following NTFS file system security permissions are required for Personify360
Automatic Updates to work correctly:
Modify
Read
Write
Additionally, the end user will require that the same permission set in the location where
Personify360 is downloaded. By default, this location is C:\Documents and Settings\<User
ID>\Application Data\TMA Resources\Personify.
Example Installation
234
7.7.0 INSTALLATION GUIDE
NOTE: The above command is one command line with no returns in it. If your
NETWORK_UPDATE_PATH contains any spaces, you must enclose the parameter value in
double quotes. “Personify.msi” must be enclosed in double quotes.
18. Set the network path for the location of the administrative installation. This path can
be the same as the path you specified in Step 11 above.
19. Click Next.
20. To allow installation of this package with no user interface or with only a progress bar
to indicate the status of the installation, create a batch file with the following
command:
Msiexec /passive /I “personify.msi” NETWORK_UPDATE_PATH=<Path you
specified in step 11 above>
235
7.7.0 INSTALLATION GUIDE
NOTE: The above command is one command line with no returns in it. If your
NETWORK_UPDATE_PATH contains any spaces, you must enclose the parameter value in
double quotes. “Personify.msi” must be enclosed in double quotes.
21. From an end user’s workstation, navigate to the installation point where you ran the
administrative installation and double-click the batch file.
22. If everything installed correctly, you should be able to click Start > Programs > TMA
Resources > Personify and the application should immediately check for updates
and begin operation.
23. If the application does not start, then perform the following:
24. Check that you completed all of the steps outlined above.
25. Verify that the end user has access permissions to the network update path you
specified.
26. If the path is an http URL, then that URL must allow anonymous access. You can
verify this by opening the following URL in your browser: http://<your network update
location>/Personify.Manifest.xml. If you are able to open this file in a web browser
without entering any credentials, then you have anonymous access setup correctly. If
you cannot open this file, you need to check your Web server setup.
27. If the path is a UNC path, you can perform the steps above using Windows Explorer
and substituting the UNC path in place of the http URL.
28. If you are still having problems, please contact Personify, Inc. technical support.
236
7.7.0 INSTALLATION GUIDE
Email Notification stored procedures are not installed by default with Personify360. This is
done because if a Personify360 customer chooses not to use the Email Notification Service,
they will not be penalized with any overhead the procedures, triggers, etc. can cause.
This section includes:
237
7.7.0 INSTALLATION GUIDE
Service account access local resources as ordinary users. When they access network
resources, they do so using the credentials of the computer. A service running as Network
Service has the same network access as a service running as Local System, but it has
significantly reduced local access. The following security privileges are available to services
running in the Network Service account:
SeShutdownPrivilege
SeAuditPrivilege
SeChangeNotifyPrivilege
SeUndockPrivilege
SeImpersonatePrivilege
Minimum Service Account Security Permissions for Personify360 Email Notifications
Permission Reason
The local service and network service accounts have this privilege
assigned to them by default.
The account being used to install the notification service application must have local
administrator permissions in order to successfully install the service. During installation the
service needs to make modifications to the HKEY_LOCAL_MACHINE registry in order to
PROPRIETARY AND CONFIDENTIAL
238
7.7.0 INSTALLATION GUIDE
register the service with the service control manager. It also needs to register an event
source with the application event log in the Windows Event Viewer.
Once the service is installed on the machine successfully administrative permissions are not
required to configure or run the service application.
Open a command prompt at the folder location where you have copied the Personify360
Email Notification Service executable and execute the command:
Personify.Server.Notification.exe/?
-Or-
Personify.Server.Notification.exe/help
The table below lists the files that you must deploy for the Personify360 Email Notification
Service.
239
7.7.0 INSTALLATION GUIDE
240
7.7.0 INSTALLATION GUIDE
241
7.7.0 INSTALLATION GUIDE
Processor
Memory
1 GB minimum
2 GB suggested
10 GB of free space
242
7.7.0 INSTALLATION GUIDE
Network Adaptor
Microsoft IIS 8.x (for Windows Server 2012 R2) or 10.0 (for Windows Server
2016)
NOTE: These utility scripts have to be executed for clients upgrading from an earlier version
of Personify360 to 7.4.1 and later or for a fresh installation of 7.7.0.
The purpose of these scripts is to integrate web user customer existing in Personify360 into
SSO Database. This is required as we have now fully integrated SSO/IMS with Personify360
from 7.4.2 release onwards. These scripts are one time execution, need not be run for every
release going forward.
The scripts are available in the following location:
..\7.7.0\Package\Web\SSO\SSOWebUserMigrationScripts
Pre-Integration Checklist
Before we can continue with SSO Web User integration process, the following pre-requisite
conditions must be met.
1. SSO needs to be installed before for this integration to be successful.
2. Data from the following tables in SSO database needs to be cleared out (deleted) -
Customer, VendorCustomer.
243
7.7.0 INSTALLATION GUIDE
There is a script provided that can be used as template to clear out data from these
tables. This script is called "Extra Script - Clear out data from SSO tables.SQL"
3. Determine values for the following 2 parameters required for SSO Integration
process.
Parameters - Hashing Algorithm, Hash SALT.
Values for these parameters can be found in file Web.Config of SSO site. Search for
following section
<Cipher>
<HashSalt>HashSALT value</HashSalt>
<InitializationVector>12211A2B212A877987ABC5B3E212EEA3</
InitializationVector>
<PrivateKey>D39121236E22A2A3EB1B3A23669721B1</PrivateKey
>
<DefaultSymmetricAlgorithm>Rijndael</DefaultSymmetricAlg
orithm>
<DefaultHashingAlgorithm>Hashing Algorithm
Value</DefaultHashingAlgorithm>
</Cipher>
NOTE: If you do not want to create a new Web User record in above Scenario 3, then
please comment out following code snippet in SQL file:
----- Create new Web User record for missing
data
----- Comment out this INSERT statment if you do not want to create a new
244
7.7.0 INSTALLATION GUIDE
245
7.7.0 INSTALLATION GUIDE
The SQL code in this file creates the necessary SQL CLR procedures that are needed for
the SSO Integration procedure.
This script must be executed by user that has sysAdmin privileges on SQL Server.
Output - None
------------------------------------------------------------------------------------------------------
Script 3 - SSO Web User Integration
This is the main file that performs the SSO login integration from Personify360 database to
SSO database.
This script must be executed in the SSO database.
Output - The output of this script is a set of log records that are stored in table
SSOIntegration_Log.
All log records related to the execution of this script are returned to query window at the end
of the script execution.
This script may have to be run multiple times depending on the error encountered when
executing the script.
In such a situation, the error log record will indicate the error and will suggest possible fixes
to resolve the error.
------------------------------------------------------------------------------------------------------
Script 4 - Drop Linked Server connection to SSO database
This script will drop the Linked server created in Script 1.
This script should be executed only after the SSO Integration has been successfully
completed.
Output - None
------------------------------------------------------------------------------------------------------
SSO customer record is required for CRM360 screen to display icons for IMS roles.
246
7.7.0 INSTALLATION GUIDE
NOTE: If you do not find Add FTP publishing you need to add the FTP server role services.
3. Go to Administrative Tools > Server Manager > Roles > Web Server (IIS).
4. Go to Role Services and check whether FTP Server is installed or not.
5. If FTP Server is not installed then click on Add Role Services button and it will open
the Add Role Services wizard.
6. Select all FTP Server check boxes
7. Click Next
8. Click on Install button in next page.
9. Configure your binding and SSL settings. Recommended settings are as below:
247
7.7.0 INSTALLATION GUIDE
248