Skip to main content

Fact does not exist at a level that can support the requested analysis

Error: SQLEngine got an Exception from DFC: [DFCENGINE] Engine Logic: Fact does not exist at a level that can support the requested analysis. Fact: "Visitor Count". Level: "Visitor ID, Visitor Center Name and ID".
Error in Process method of Component: SQLEngineServer, Project VUE Reporting, Job 43595, Error Code= -2147212800.

If you have worked with MicroStrategy, you have definitely come across this error at least once!

First things first - did you recently change any attributes? If you did, did you update the schema? If no, then that is most likely your problem. Update the schema from MSTR Desktop > Schema > Update Schema or Ctrl+U.

If that does not fix your problem, I may not be able to give you an exact answer but can guide you through troubleshooting the problem. Below, I will use my error mentioned above related to Visitors to guide you through troubleshooting. The steps mentioned below may be a little long for those of you who are already familiar with MSTR and object development.

1. Make a backup of your report
2. Remove all other metrics from the report template except for the metric in question - in my case Visitor Count
3. Run the report. Problem fixed? No, go to step 4. Don't forget to add these metrics back to the report template once the problem is fixed. If Yes, one of those metrics was the problem maker.
4. Remove the attributes mentioned in the error from report template - in my case [Visitor ID] and [Visitor Center Name and ID]. Does this fix the problem (keeping in mind you did remove the two attributes that are needed on your report)? Yes? Well, those attributes were your problem.
5. Check the relationships between those attributes - that is where the source of your troubles is.
6. Don't forget to add the other metrics back on the report, if you removed them.

Hope this helps! If you have more specific questions feel free to ask in the comments.

Comments

Lavanya said…
Thank you for sharing wonderful information with us to get some idea about that content.
Microstrategy Online Training
Microstrategy Online Course

The Popular Ones

Using SQL To Calculate XIRR (Internal Rate of Return)

Thanks to binaryworld.net , I was finally able to get a sql way to calculate XIRR. After 2 long hours of search I found this site and the logic as well as the code works perfectly well! XIRR is a function in excel that calculates Internal Rate of Return based on payments/income over a period of time. Without further ado, here is the code (a slightly modified version from BinaryWorld.net. Happy XIRRing! -- First, CREATE XIRR Table to store values CREATE TABLE XIRRTempData( amt float, dt datetime, guid varchar(128) ) go create function dbo.XIRR( @d datetime, @GUID varchar(128) ) returns decimal(18,10) as begin /* USAGE: select @IRR = dbo.xirr(null, guid) select @IRR IRR, @IRR * 100 'IRR %' Note: Leave the first parameter (date) null if you wish to see the XIRR calculated as of the maximum date in the dataset provided else provide a specific date to see the XIRR calculated as the given date. Created By: Ankeet Shah Created On: 7/16/2008 */ IF @d is null SELECT @d = max(d) from Inc...

Alternating Row Background Color For SSRS Matrix (Pivot Table)

I had a tough time to apply alternate row colors to a SSRS Matrix and finally figured out! Without further ado, here it is... Assume you have a matrix with more than 1, lets say 2 row groupings; RG1 and RG2. 1. Right-click on RG2 (innermost row group), and select "Insert Group"; for simplicity call it "RowColorGroup" 2. In the "Group On" section, add some constant value - for example ="" or ="ankeet" etc... you get the idea! 3. Select the newly created group "RowColorGroup" and enter the following in its "Value" property: =iif(RunningValue(Fields!RG1.Value & Fields!RG2.Value,CountDistinct,Nothing) Mod 2, "LightSteelBlue", "White") 4. Select the "BackgroundColor" property of "RowColorGroup" and enter "=Value" 5. Set the width of "RowColorGroup" to 0pt and "CanGrow" to false 6. Select the data cell(s) and set their "BackgroundColor" pro...

cannot create a column accessor for OLE DB provider "ibmdasql" for linked server

I have a linked server from Microsoft SQL 2008 to a DB2 server. Today when I tried to run a SELECT statement based on the linked server, I hit this error, "cannot create a column accessor for OLE DB provider "ibmdasql" for linked server". Earlier in the day, we had restarted the SQL Server Service. Running the following script on the 'affected' sql server should fix the issue. USE [master] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROC [dbo].[usp_enum_oledb_providers] AS exec sp_enum_oledb_providers GO sp_procoption 'usp_enum_oledb_providers', 'startup', 1 Restart the sql server service after running above script.