Product:
IBM Cognos TM1 10.2.2
Microsoft Excel 2010
Windows server 2008 R2 Standard

Problem:
How install TM1 perspective and TM1 architect on Citrix server?

Possible solution:
Copy the setup media to an install folder on the Citrix server.
If you use 32 Bit Excel, then you should install 32 Bit Cognos TM1 Client programs.
Log on to the Citrix server as a local administrator.
Ensure that the prerequisite is installed, that is

  • Microsoft .NET Framework is needed for the Advanced Rules Editor and the publish to the Web feature in Cognos TM1 Architect and TM1 Perspectives.
  • Microsoft Visual C++ 2010 Redistributable Package (x86 and x64)

Both the x86 and x64 versions are required on a 64-bit Windows system if you plan to run any of the TM1 32-bit client applications such as Cognos TM1 Architect and TM1 Perspectives.

Turn off the UAC to make the installation easier.

Download the latest Cognos TM1 client fix pack
And place the media on the citrix c:\install folder.

Start a CMD prompt by right click and select “run as administrator”
Inside the CMD prompt change to the install folder
Then enter command “CHANGE USER /INSTALL”
Enter cd command to go to the win32 folder where you can in the CMD run the ISSETUP.EXE command.
Step through the installation selecting all the defaults.
This will only install TM1 Architect and TM1 Perspective.

After finish, change to the FIX PACK folder and run the ISSETUP.EXE for the TM1 fix pack to the same folder.
When this is done, you can start TM1 architect from the start menu and ensure that it works.
Close the TM1 architect program.

In the CMD prompt enter the command “CHANGE USER /EXECUTE”.
Now is the program installed.

You need to publish the following files in the Citrix portal for the users.

Publish TM1 architect as:
“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1a.exe”

Publish TM1 perspective as:
“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1p.xla”

Please note that each user must the first time they start Excel go into Options – Security center -Trusted folders and add the TM1 bin folder.

They must also inside TM1 Architect under menu Options enter the name of the Windows server where TM1 are, that they should connect to.

Then to get it to work better, you can do adjustments like this:

Due to a security issue in Excel 2007 and Excel 2010 you get an error about smart card when you start perspective.
Instead of publish the XLA file direct, create a BAT file with below content:

ECHO OFF

REM change trusted locations in excel

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Path /t REG_SZ /f /d “C:\Program Files (x86)\IBM\cognos\tm1\bin\

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v AllowSubfolders /t REG_DWORD /d 1 /f

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Description /t REG_SZ /d  “For TM1” /f

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Date /t REG_SZ /d “2016-08-24 10:45” /f

REM start tm1 perspective and excel

“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1p.xla”

 

Save that file as EXCELFOLDER.BAT
Then publish to start the EXCELFOLDER.BAT instead in citrix.
This will set the TM1 folder to be trusted inside Excel for that user during startup, so TM1 perspective will work.
You need to change the value 14.0 if you do not use Excel version 2010.

The REG ADD in the BAT/CMD file will update a value in the registry for that user who run the script, that is the HKEY_CURRENT_USER, therefor the script need to run after the person have logged in to the Citrix session.

 

Other issue is to prepopulate the TM1P.INI file with data about the server
If the file does not exist it will be created from a master in the folder,

C:\programdata\applix\tm1

Update this tm1p.ini file with the following lines

AdvancedRulesEditor = T
CognosGatewayURI = http://ServerName.Domain.Se/ibmcognos/cgi-bin/cognosisapi.dll
AdminHost = ServerName.Domain.Se
IntegratedLogin = T

 

Otherwise a VBscript like this will update the TM1p.ini file

‘ Script to update the ini file

Const OpenAsDefault = -2  ‘ Opens the file using the system default
Const OpenAsUnicode = -1  ‘ Opens the file as Unicode
Const OpenAs__ASCII =  0  ‘ Opens the file as ASCII
Const ForReading = 1
Const ForWriting = 2
Const ForAppending=8

set objShell = CreateObject(“WScript.Shell”)
profile_path = objShell.ExpandEnvironmentStrings(“%APPDATA%”)
profile_app = profile_path & “\Applix\TM1\tm1p.ini”
‘ profile_app = “C:\Users\cognos\AppData\Roaming\Applix\TM1\tm1p.ini”
‘ msgbox  profile_app

Set objFSO = CreateObject(“Scripting.FileSystemObject”)
Set objTextFile = objFSO.OpenTextFile( profile_app , ForReading, false , OpenAsUnicode)

Do Until objTextFile.AtEndOfStream
strNextLine = objTextFile.Readline
intLineFinder = InStr(strNextLine, “AdvancedRulesEditor”)
If intLineFinder <> 0 Then
strNextLine = “AdvancedRulesEditor = T”
End If

intLineFinder = InStr(strNextLine, “AdminHost =”)
If intLineFinder <> 0 Then
strNextLine = “AdminHost = ServerName.Domain.Se”
End If

intLineFinder = InStr(strNextLine, “IntegratedLogin”)
If intLineFinder <> 0 Then
strNextLine = “IntegratedLogin = T”
End If

intLineFinder = InStr(strNextLine, “CognosGatewayURI”)
If intLineFinder <> 0 Then
strNextLine = “CognosGatewayURI = http://ServerName.Domain.Se/ibmcognos/cgi-bin/cognosisapi.dll”
End If

If objTextFile.AtEndOfStream <> True Then
strNewFile = strNewFile & strNextLine & vbNewLine
End If

Loop

objTextFile.Close
Set objTextFile = objFSO.OpenTextFile( profile_app , ForWriting, true, OpenAsUnicode)
objTextFile.Write strNewFile
objTextFile.Close

Save above script as a file c:\IBM\updateini.vbs

The create a new text file named c:\IBM\updateini.bat that contain this value:

wscript “c:\IBM\updateini.vbs”

This BAT file is then called from loginscript or from published Citrix icon for the TM1 architect.

Note that this line gets the path to the user current running the script, so here it will update that user profile
set objShell = CreateObject(“WScript.Shell”)
profile_path = objShell.ExpandEnvironmentStrings(“%APPDATA%”)

If you set below value wrong the result of the TM1P.INI file may be in Chines language
Set objTextFile = objFSO.OpenTextFile( profile_app , ForReading, false , OpenAsUnicode)

Below rows check if the line read at the moment contain the text IntegratedLogin and if it does then it will replace the whole line with the value IntegratedLogin = T.
intLineFinder = InStr(strNextLine, “IntegratedLogin”)
If intLineFinder <> 0 Then
strNextLine = “IntegratedLogin = T”
End If

 

More information can be found here

https://blogs.technet.microsoft.com/heyscriptingguy/2004/11/30/can-i-edit-ini-files-using-a-script/

http://www.motobit.com/tips/detpg_asp-vbs-read-write-ini-files/

http://www.vbforums.com/showthread.php?168248-How-do-I-Update-an-INI-file-using-a-vbs-file

http://superuser.com/questions/761008/add-registry-key-entries-using-batch-file

https://support.microsoft.com/en-us/kb/2598139

http://www.tek-tips.com/viewthread.cfm?qid=856235

http://stackoverflow.com/questions/30329877/editing-ini-file-writes-garbage-chinese-characters-to-the-output-file

 

If the VBS script does not finish all the way, maybe the timeout have changed on the computer.

To change how long a VBS script can run, you can change it in registry at this point

[HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings]
“Timeout”=dword:0000000f
“DisplayLogo”=dword:00000001
When you deleted “Timeout”, which had a value of 0x0000000f (15),
you can get the script back to run for a long time.

If the resulting file contains chines characters instead of the one you want then you have set the format in the opentextfile to a format you are not using in your windows computer.

See below for the possibles;

OpenTextFile Method

Opens a specified file and returns a TextStream object that can be used to read from, write to, or append to the file.

Syntax

object.OpenTextFile(filename[, iomode[, create[, format]]])

Arguments

object

Required. Object is always the name of a FileSystemObject.

filename

Required. String expression that identifies the file to open.

iomode

Optional. Can be one of three constants: ForReading, ForWriting, or ForAppending.

create

Optional. Boolean value that indicates whether a new file can be created if the specified filename doesn’t exist. The value is True if a new file is created, False if it isn’t created. If omitted, a new file isn’t created.

format

Optional. One of three Tristate values used to indicate the format of the opened file (TristateTrue = -1 to open the file as Unicode, TristateFalse = 0 to open the file as ASCII, TristateUseDefault = -2 to open the file as the system default). If omitted, the file is opened as ASCII.

 

 

Product:
Cognos TM1 9.5

Symptom:
After installing a new TM1 instance – the new TM1 server is not shown in the drop down list for the TM1Web login. It only shows the login dialog for user name and password.

Cause:
The web.config file in the tm1web folder is configured to only talk to one tm1server.

Solution:
Open the web.config file from folder
C:\Inetpub\wwwroot\TM1Web
Search the file for TM1ServerName (it is close to the end of the file)

Change the line from
<add key=”TM1ServerName” value=”tm1servername” />
to this
<add key=”TM1ServerName” value=”” />
save the file.

Then surf to the TM1web and select the server you want to login to from the list.

Product:
Cognos TM1 9.5.2 portlets
Cognos BI 10.1

Symptom:
You can not get a TM1 cube viewer to show up in your Cognos Connection Page.

Error message:
PRS-PRH-0221
The file “portal/variables_TM1.xml” could not be opened.

Cause:
The variables_tm1.xml file is installed to the Cognos Gateway folder, should be installed to folder C:\Program Files\ibm\cognos\c10_64\templates\ps\portal on the Cognos BI server.

Error message:
The forward URL does not exist or it has failed validation. Ensure that a valid forward URL is specified.

Cause:
The URL in the variables_tm1.xml file is wrong. Ensure it is correct, by compare it to a variables_tm1.xml file from a working Cognos BI server.

Solution:
Note that you must always restart the Cognos BI service, after changes to variables_tm1.xml file for the change to take affect.

The variables_TM1.xml file should look like this; replace SRV001 with your TM1 server name.

<?xml version=”1.0″ encoding=”UTF-8″?>

<!–

IBM Confidential

OCO Source Materials

BI and PM: tm1fragments

(C) Copyright IBM Corp. 2008, 2009

The source code for this program is not published or otherwise

divested of its trade secrets, irrespective of what has been

deposited with the U.S. Copyright Office.

–>

<CRNenv>

<urls>

<url is-regex=”true”>http://srv001/TM1Web/TM1WebLogin.aspx</url>

<url is-regex=”true”>http://srv001/TM1Web/TM1WebLoginHandler.aspx</url>

<url is-regex=”true”>http://srv001/TM1Web/TM1WebMain.aspx</url>

</urls>

<cookies>

<param name=”cam_passport”/>

</cookies>

</CRNenv>

Product:
Cognos TM1 contributor version 9.5.1

Symptom:
Can not logon and access a previous working TM1 Contributor application.
User surf to http://tm1servername:8080/pmpsvc
Is prompted with TM1 Login dialog that ask for user name and password
No matter what you enter – you get a error message.

Error message:
Could not logon to any available servers with the provided credentials.

Cause:
The TM1 Contributor is tie to a TM1 Application that use CAM security.
But the TM1 application was not using CAM security when you setup TOMCAT and TM1 Contributor – you have change the TM1 application later to use CAM (Cognos 8 logon) and therefore the TM1 Contributor ask for a TM1 login- but can not find any TM1 application that supports that logon method.

Suggested Solution:
(There may be other way to solve this)

You need to setup TM1 Contributor again.
Logon to your TM1 Contributor windows server.
Stop Apache Tomcat 6 service.
Remove the values for server name and admin_host in the pmpsvc_config.xml file.
Start the Apache Tomcat 6 service again.
Surf to http://localhost:8080/pmpsvc

You will be prompted with the TM1 Contributor Configuration page again.

Enter the TM1 server name at Admin Host:
(this can be a different server than the TM1WEB – it should be the server that runs the TM1 admin service)

The TM1 Web Client URL should be:
http://tm1servername/TM1web/contributor.aspx
(this should point to the server that runs the tm1web portal – often the same server as the Cognos gateway server)

In the server drop down list you should select your previous selected tm1planning server.
Now you will get two new lines to enter information (for the CAM security)

IBM Cognos 8 Gateway URI: enter here a value like this;
http://cognosservername:80/cognos8/cgi-bin/cognos.cgi

IBM Cognos 8 Dispatcher URI: enter here a value like this;
http://cognosservername:9300/p2pd/servlet/dispatch/ext

Click OK to save.
Now you will be prompted with the Cognos 8 logon page.
Then you are back in the TM1 Contributor page with your application.

Product:
Cognos TM1 10.1
PLANANALYTICS_version=PLANANALYTICS-AW32-ML-RTM-10.1.6237.212-0
Microsoft Windows XP

Symptom:
The TM1 instance does not start – even do it is set too automatic in Windows services.

Error message in windows events:
Event Type: Error
Event Source: tm1sd
Event Category: None
Event ID: 0
Date: 7/27/2016
Time: 10:06:50 AM
User: N/A
Computer: VCLASSBASE
Description:
The description for Event ID ( 0 ) in Source ( tm1sd ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: tm1sd error: 0, Corrupt “tm1s.log” transaction log file. Server is coming down.

In tm1server log you find:
2728 [] FATAL 2016-07-27 08:06:50.687 TM1.Transaction TM1TransactionLog::ProcessTransactionLog: Bad transaction log record, line number 1.
2728 [] FATAL 2016-07-27 08:06:50.687 TM1.Server Server terminated

In tm1s.log file there is:
#LOG_FORMAT=1
#LOGID=E
“”,”20160715135733″,”CubeSerialized: }CubeProperties: by Admin”
#””,”20160715135733″,”CubeSerialized: }DimensionProperties: by Admin”

Solution:
Erase the tm1s.log file and then start the service.

Product: Cognos BI 8.4.1
C8BISRVRRS_version=C8-AW32-ML-RTM-8.4.102.18-0
C8BISRVRRS_name=Cognos 8 Business Intelligence Server Application Tier

Symptom:

Can not add a URL in Cognos Connection to direct users to other server or website. In this case we want to add a link to a TM1 server.

The TM1 link to be used by Contributors

http://sekinsvtm1:8080/pmpsvc

The TM1 classic link looks like this

http://sekinsvtm1/tm1web/

Problem: you get a error message, that will be this in Swedish

IBM Cognos 8
Det har uppstått ett fel

DPR-ERR-2079 Brandväggssäkerhet – avvisning. Begärn nekades av brandväggsskyddet

CAF-avvisningsinformation är tillgängliga i loggen. Kontaka administratören.

Cause:

In Cognos BI 8.4 and later if the CAF is active – you must specify all HOST and SITES you are going to access via URL in Cognos Connection.

Solution:

Ensure that every possible valid combination of hostname and port which your gateway requests could come from is specified in theValid domains or hosts property on each application-tier server. Steps:

  1. Open Cognos Configuration.
  2. In the left pane, click on the Cognos Application Firewall node.
  3. Select the Valid domains or hosts property and click the edit button.
  4. Add additional webserver “hostname:port” entries as required.
  5. Repeat for every application-tier server.

In our case we must use FQDN like http://sekinsvtm1.company.com to access the server,

Therefore the values added in Cognos Configuration for CAF are;

Sekinsvtm1.company.com:8080

sekinsvtm1/tm1web

sekinsvtm1

.company.com

And the URL entered for the link are
http://sekinsvtm1.company.com:8080/pmpsvc

(The port number can be different at your site depending on how you set TM1 up)

 

 

 

Product: Cognos Express

When installing Cognos Express there are some things to remember when it comes to the location of the installation sofware

1.Special characters are not supported in the installation path
Certain extended characters are not supported when specifying the installation path for IBM Cognos Express and its components. Use only 7-bit ASCII characters when specifying the installation path for IBM Cognos Express as well as any of the client software applications provided with each of the IBM Cognos Express products.

2. Installation from a UNC path is not supported
You may be lucky and Congos Express will install and confiure properly. But when you try to install the Cognos Express modules, they all fail. Just uninstall Cognos Express, copy the installation software to a local disk of your server and install Cognos Express again. Now the Cognos Express modules will install properly

Product: Cognos TM1 9.x

1)  Open a DOS box / command prompt:  Start -> Run -> cmd
2)  Navigate to the TM1 bin directory using the cd command. Go to the TM1 bin directory, the default installation path is “C:\Program Files\Cognos\TM1\bin”.
3)  Type the following command:
tm1sd.exe -install -n”NameOfTM1Server” -z”PathtoTm1s.cfgFile”
Where the “NameOfTM1Server” (after the -n) is the name you want to give to this TM1 Server service.  If the name you are going to use contains any spaces, this value must be specified in double quotes.
Where the “PathtoTm1s.cfgFile” (after the -z) is the path to the tm1s.cfg file for this the TM1 Server you are setting up.
For example:
tm1sd.exe -install -n”TM1 Production Server” -z”C:\Program Files\Cognos\TM1\Custom\TM1Data\PData”

If the command is successful, it will return the following message:

TM1 Server / tm1 production server installed.

4)  You can then go into the services listing, and you will see the new TM1 Server service you setup.  Following the above example, the service would be listed as:
TM1 Server / tm1 production server
You can then configure the service to run automatically, and to run under a specific domain user.
NOTE:  If you are setting up a completely new TM1 Server for which you don’t already have a tm1s.cfg file, you can copy the tm1s.cfg from the Planning Sample TM1 Server and modify it accordingly.  At a minimum, you will need to modify the ServerName, DataBaseDirectory, and PortNumber parameter values.
If the service does not start (error message stating the service cannot be started), starting the same TM1 Logical server as a desktop application will usually provide more detailed information on the error.

Removal of the TM1 service

To remove a TM1 Server service (again, following the example above), follow steps 1 and 2, then type the following command:
tm1sd.exe -remove -n”NameOfTM1Server”

Where the “NameOfTM1Server” (after the -n) is the name of the TM1 Server service you wish to remove.
For example:
  tm1sd.exe -remove -n”TM1 Production Server”