IBM Support

Object variable or with block variable not set - Save Structure Import Specification or Lookup Table

Troubleshooting


Problem

User attempts to create a new (or modify an existing) 'Structure Import Specification' or 'Lookup Table'. User presses 'save' button. User receives error message.

Symptom


Information
Standard Error
Source: ControllerProxyClient
Description: System.Web.Services.Protocols.SoapException: Server was unable to process request. --> System.Runtime.InteropServices.COMException (0x800A005B): Object variable or With block variable not set
at FrDIBT.DIdefineTClass.CheckForVarOrFieldCycles(String& sGuid, String&sUser, String& sSpec, ...
<...>
--- End of inner exception stack trace ---
OK

Cause

There are several potential causes for this error:

  • Scenario #1 - Administrator had not yet rebooted server after performing changes in COM+ (for example the ones described inside separate IBM Technote 1372678).
  • Scenario #2 - Incorrect (e.g. older version) or missing DLL components inside <install folder>\c8\server, causing wrong/invalid/missing COM+ objects.
    • For example, the file FrDIBT.dll may be invalid or missing from <install folder>\c8\server
    • In turn, the root cause for this missing DLL file may be that your anti-virus product has aggressively scanned this file, and has incorrectly decided that this file is malware (and therefore quarantined and/or deleted the file)

Resolving The Problem

  • Scenario #1 - Reboot server and re-test.
  • Scenario #2 - Either:
    • Uninstall and reinstall IBM Cognos 8 Controller
    • or alternatively follow the steps inside separate IBM Technote 1372678

TIP: It has been seen that one particular anti virus product ('Sophos anti-virus version 7.3.3', running on the Controller application server) incorrectly quarantined this file. Therefore, it was necessary to perform the following steps:
  1. Right-click on blue Sophos Anti Virus 'shield' systrak icon (to the left of the clock) and choose 'Open Sophos Anti-Virus'.
  2. Inside the 'Status' section, click on the blue 'Quarantine' link.
  3. Locate the row/entry for C:\Program Files\cognos\c8\server\FrDIBT.dll
  4. Click on blue 'Authorise' button, inside column 'Available actions'
  5. Click 'yes' to confirm.

[{"Product":{"code":"SS9S6B","label":"IBM Cognos Controller"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Controller","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.4;8.3;8.2;8.1","Edition":"Not Applicable","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Historical Number

1031629

Document Information

Modified date:
15 June 2018

UID

swg21346946