Product:
Cognos Controller 8.5.1
Windows 2008 R2

Symptom:
FAP service is started but the FAP service manager give error that the FAP service is not started.
You have rebooted the server, but it has not helped.
There are no error log files in the C:\Program Files (x86)\Cognos\c8\Server\FAP folder.

Error Message:
It seems that no FAPService is running or FABdb is started/restarted after FAPService.
Start/restart FAPService to make FAP work correctly.

Cause:
Can be that the CCR_JAVA_HOME is pointing to a 64 bit jre instead of a 32 bit jre.
Ensure that the CCR_JAVA_HOME is pointing to a JRE folder.

You get a FAPFatalError.log like below when the FAP service is setup to point to a different database than the one you enter when you login in to the FAP Connect

Thu Oct 27 10:12:34 CEST 2011 – Fatal error when starting or running FAPService. Connection exceptionCould not connect to: jdbc:JSQLConnect://sslwin/database=controllerfap

Possible Solution:
Unpack jre.zip from the Controller folder C:\Program Files (x86)\cognos\c8\webcontent\ccr
to a folder on the FAP server named C:\Program Files (x86)\Cognos\java60\jre
Go to System and click on Advance system settings
Select Advance tab
Click on Environment Variables
Click on New system variables
Enter name: CCR_JAVA_HOME
Enter value: C:\Program Files (x86)\Cognos\java60\jre
Click OK
Click OK
Restart the FAP service.

The other issue is solve as below:

Open the FAPService.properties file in notepad and ensure that there is right database server name and database enter into the file. Save the file after changes and restart the FAP service.

Below an example.

IBM SOURCE CODE HEADER START
# =====================================================================
# OCO Source Materials
#
# BI and PM: ccr
#
# (C) Copyright IBM Corp. 2004, 2009. All Rights Reserved
#
# 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.
# =====================================================================
# IBM SOURCE CODE HEADER END
db=controllerfap
host=servername
dbType=sqlserver
user=cognos
passwd=cognos
#clientcamuri=http:///cognos8/cgi-bin/cognos.cgi

Product:
Cognos Controller 10.1 FAP service

Symptom:
The Controller FAP service does not publish and show that it cannot login to the TM1 cube.

Error Message:
Could not login to TM1, host: srv001, server name: tm1fap, user name: LAN\cognosservice
Could not logon with to CAM with user : cognosservice to clientCAMURI http://srv001/cognos8/cgi-bin/cognosisapi.dll

Cause:
The CAM url in the FAPservice.properties file is wrong, so the FAP service can not authenticate with the Cognos BI to access the TM1 cube.

Solution:
Stop the publish in the FAP service manager.
Stop the FAP service.
Open FAPservice.properties file in notepad
Change the Clientcamuri from

http://srv001/cognos8/cgi-bin/cognosisapi.dll

to

http://srv001/ibmcognos/cgi-bin/cognosisapi.dll

Save the file.
Start the FAP service.
Start the Data source in the FAP service manager
Start the Data Mart
Click in Update automatically in the Logs tab
Check that the Financial Analytics Publisher works now.

Product:
Cognos Controller 10.1 FAP service
Microsoft Windows 2008 R2

Symptom:
The Controller FAP service create a fatal error log file when you start your publish.

Error Message:
java.lang.NoClassDefFoundError: com.cognos.ccf.c8itk.ITKProxySession (initialization failure)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:140)
at com.ibm.cognos.fap.common.persistence.tm1.CAMHelper.login(CAMHelper.java:64)
at com.ibm.cognos.fap.common.persistence.tm1.CAMHelper$$FastClassByCGLIB$$1d0243e.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
at com.ibm.cognos.fap.common.persistence.retry.RetryInterceptor.intercept(RetryInterceptor.java:54)
at com.ibm.cognos.fap.common.persistence.tm1.CAMHelper$$EnhancerByCGLIB$$3249b283.login(<generated>)
at com.ibm.cognos.fap.common.persistence.tm1.TM1Context.login(TM1Context.java:128)
at com.ibm.cognos.fap.service.schedule.Scheduler.updateDatamarts(Scheduler.java:468)
at com.ibm.cognos.fap.service.schedule.Scheduler.run(Scheduler.java:251)
at com.ibm.cognos.fap.service.schedule.Scheduler$1.run(Scheduler.java:135)
at java.lang.Thread.run(Thread.java:736)
Error happened Mon Aug 22 13:58:51 CEST 2011

Cause:
The TM1 client software BIN folder is not part of PATH on the server that runs the Controller FAP service.

Solution:
Copy the path to the TM1 bin folder.
Can be: D:\Program Files (x86)\Cognos\TM1\bin

Right Click on My Computer and click Properties
Click on Advanced System Settings
Click on Environment variables
Find PATH on system variables
Click on EDIT
Enter a ; last and past in the BIN path.

The path variable can look like this on the Cognos Controller FAP server:

C:\Program Files (x86)\Support Tools\;C:\Program Files\Legato\nsr\bin;C:\Program Files\HP\NCU;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\;D:\Program Files (x86)\Cognos\TM1\bin

Product:
Cognos Controller 10.1 FAP service

Symptom:
The Controller FAP service create a fatal error log file when you start your publish.

Error Message:
java.lang.ExceptionInInitializerError
at com.ibm.cognos.fap.common.persistence.tm1.TM1Context.(TM1Context.java:51)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
at com.ibm.cognos.fap.service.schedule.Scheduler.updateDatamarts(Scheduler.java:456)
at com.ibm.cognos.fap.service.schedule.Scheduler.run(Scheduler.java:251)
at com.ibm.cognos.fap.service.schedule.Scheduler$1.run(Scheduler.java:135)
at java.lang.Thread.run(Thread.java:736)
Caused by: com.ibm.cognos.tm1.TM1Exception: Could not load tm1api.dll due to: The specified module could not be found.

at com.ibm.cognos.tm1.API.internalInitialize(Native Method)
at com.ibm.cognos.tm1.API.initialize(API.java:357)
at com.ibm.cognos.tm1.API.initialize(API.java:97)
at com.ibm.cognos.fap.common.persistence.tm1.TM1Context.(TM1Context.java:48)
… 6 more
Error happened Mon Aug 22 13:33:43 CEST 2011

Cause:
The TM1 client software is not installed on the server that runs the Controller FAP service.

Solution:
Install TM1 9.5.2 client on the server.

Run setup.exe for Cognos TM1 32 bit version 9.5.2.
Select to install Clients – TM1 Clients.
Recommend also to install Developers Environment, so you have TM1 Architect.

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 Controller 8.5.1
Tm1 9.5.1

Symptom:
When doing a initial publish from controller database to the TM1 cube with the FAP (Financial Analytics Publisher) service you get a error.

Error message:
Could not execute TI process:Business AreaGroup_Process
ProcessAborted
Initial publish failed. Throwable exception.

Cause:
Some of the controller security groups have bad names or are invalid to be processed by the FAP.

Before you use below solution – ensure you have a complete backup of the Cognos controller database. Recommended that you take screen shoots of all the security groups you delete, so you later can recreate them with new names.

This to ensure that the security limits to controller users are in affect after the implementation of FAP functions.

Solution:
On the TM1 server go to the folder where the TM1 log files are created – can be the same folder as the TM1 server e.g. c:\tm1servers\tm1planning
Open the latest logfile in notepad e.g. the logfile name can be like this;
TM1ProcessError_20110225095005_Business AreaGroup_Process.log

Note what line it say there is a problem with
Error: Prolog procedure line (234): Element not found

Start TM1 architect
Select the TM1 cube e.g. tm1planning you are using to publish from FAP service.
Expand down to Processes and Business AreaGroup_Process
Double click on that process to open the Turbo Integrator.
Click on advanced – prolog tabs to show the script code.
Click on the GOTO LINE button on the right.
Enter the number and click OK.

Now you see the line in the script that gives the issues.
Can look like this;

ElementSecurityPut{‘Read’,’Business Area’,’BITO’,’U1IT’};

The last value is the security group name in Cognos controller.
You need to remove the U1 to get the name of the security group, in our example the group name is IT.

Log in to Cognos Controller client as the Administrator.
Go to Maintain – Rights –Security groups.
Click on Extended Dimensions tab.
Click on the CODE button to select the security group from the list.
Mark group IT and click OK.
Click on Delete button inside the security groups dialog.

You may get an information message like below

“There are users connected to this security group. All user connections must be removed before a security group can be deleted”

In that case you must delete the security group from the users that are using it.
Close the Security Groups dialog. Open the Users dialog by
Go to Maintain – Rights – Users dialog.
Click on Limitations tab and look at the line for Business Area Group.
Step trough all the Cognos Controller users to see who is using the Security group IT.

When you find a users who have security group IT in the right side – erase it – and click on save.
When all users are checked for the security group, you go back to the Security groups dialog.
Close the Users dialog, and open maintain – rights – Security groups dialog.
(you need to close the dialog between changes to make it understand the deleted connections)

Erase now the security group e.g. IT in our example.

Close the security dialog and exit Cognos controller client.

Now you need to go to the FAP service manage program and start the FAP process again.

Product:
Cognos Controller 8.5.1
Microsoft Windows 2008 R2 server

Symptom:
When you start the Cognos Controller client from the link in Cognos Connection you get a error message.

Error message:
System.NullreferenceException: Object reference not set to an instance of an object.
at Cognos.Controller.AppContext.InitConfig()

Possible Solution:
Logon to the Cognos Controller server as administrator

Open folder C:\Windows\System32\inetsrv\config
Open file “ApplicationHost.config”
Change
to
Click Save

Restart the IIS server and test again

Product:
Cognos Controller 10.1 (32 bit)
Microsoft Windows 2008 R2 (64 bit)
Microsoft Excel 2010 (32 bit)

Symptom:
Get error message when you start excel from inside Cognos Controller 10 client on the server.
Cognos Controller is installed on a Microsoft Windows 2008 R2 server, and you test the Controller client by starting ccr.exe from the D:\Program Files (x86)\ibm\cognos\c10\webcontent\ccr folder.

Error message:
IBM Cognos Controller Link
Exception has been thrown by the target of an invocation.

Possible Cause:
Excel reads from the ccr.exe.config file to find the way to the Cognos Controller files.
The file will have this row if it is not working:

File ccr.exe.config, that excel is using, is found in folder C:\Users\username\AppData\Roaming\Cognos\ccr

If changed to this it will work

Solution:
Instead of test Cognos Controller by starting the ccr.exe direct, you should install Cognos Controller client on the server.

Ensure you have Microsoft Excel installed on the server
Ensure you have Adobe Reader installed on the server
Ensure you have Net framework 3.5 installed on the server
Ensure you have User Account Control Settings to lowest value

Copy the excel.exe.config file to the same folder as excel.exe
Run a batch file to set trust to the controller server in net framework 2.00
Ensure that the controller server name is in trusted zone in Internet Explorer on the server.

Run CCRLocalClient.msi from folder D:\Program Files (x86)\ibm\cognos\c10\webcontent\ccr
to install the client.

Select Typical and enter the following for the WSSUrl
http://servername/ibmcognos/controllerserver

Enter the following for the HelpUrl
http://servername/ibmcognos/controllerhelp

Leave “CacheDir” blank and press next.

After installation, you start Cognos Controller Client from the Start menu.

Note:
Replace servername above with your name of your Cognos Controller server.
More information about how to install the Controller client can be found here:
http://addedo-support.com/index.php?_m=downloads&_a=view&parentcategoryid=6&pcid=0&nav=0

Product:
Cognos Controller 8.5.1
Windows 2008 Server R2

Symptom:
When you run F9 in excel report you get a error message during the “Calling RunReport” process. You have activated Enhanced report optimization by doing this in the excel sheet:
1. Select cell A1 on the first sheet of the workbook.
2. Go to the menu Insert / Name / Define
3. Type in the name Optimise2 and click Add and then OK
4. Save the report
When you next run or refresh the report, ERO is used.

Error message:
Standard Error
Number: 5
Source
FrangoDirect. ExcelLinkD. FetchValuesBulk # ControllerProxyClient
Description: The underlying connection was closed. An unexpected error occurred on a receive.

Cause:
You have create the share \\servername\ero$ on the application server and given everyone full rights on the share.

You have enter the correct values in controller configuration for ERO, as this:
File mode: File Copy
Server: applicationservername
Share: ero$
(and left the rest of the fields blank)

But you have not given the SQL service account access rights to the NTFS.

Solution:
Right click on the ERO folder
Select Properties
Select Security tab
Click EDIT to change permissions
Click ADD
enter the name of the service account (e.g. domain\username) and click CHECK NAMES
Click OK
Mark Allow – Modify check box
Click APPLY
Click OK

Product:
Cognos Controller version 8.5.1

Symptom:
The Enhanced Reporting Optimization (ERO) does not work anymore, but it has before upgrade to new version of Cognos Controller.

Can be that you have changed the name of the controller database from Default to default.

Cause:
The settings for ERO are stored in the Windows Registry on the Controller Application Server.
Under a registry key for each database name, defined in Controller Configuration.
When you create new database – you must remember to setup the ERO values for the new database.

Solution:
Start Regedit on the Cognos Controller server
Ensure that the values under ey;
[HKEY_LOCAL_MACHINE\SOFTWARE\VB and VBA Program Settings\FrangoController\Shares\default]

Are correct for ;
“server”=”databaseservername”
“share”=”ero$”

Check that each key for each database are correct.