Data validation concepts

Post Reply
fabpas
Posts: 18
Joined: Fri Feb 01, 2013 9:59 am
OLAP Product: TM1
Version: 10.2
Excel Version: 2010
Location: Switzerland, Estavannens

Data validation concepts

Post by fabpas »

Hi guys,

I have a set of TM1 cubes which are loaded using TI processes. We have many data sources (> 50 csv file) which are loaded using these complex TI processes.
We would like to put in place a solution to validate the data loading. The validation should consider errors in data ( empty csv files or missing lines) rather that technical failure (such as missing file or data format error). My idea was to create a new cube with a measure called "dataValidationMeasure" and a set of dimension related to our input files. And then write rules to implement logical test to validate the data.
Do anybody have some experience to share for this kind of use case?
declanr
MVP
Posts: 1828
Joined: Mon Dec 05, 2011 11:51 am
OLAP Product: Cognos TM1
Version: PA2.0 and most of the old ones
Excel Version: All of em
Location: Manchester, United Kingdom
Contact:

Re: Data validation concepts

Post by declanr »

If all you want to do is flag up CSV files that are empty or don't exist, you can just put statements in your TI processes with an ItemReject to put a message to the log file explaining what was wrong (or send data to a validation cube instead if that's preferred.)
Declan Rodger
Wim Gielis
MVP
Posts: 3234
Joined: Mon Dec 29, 2008 6:26 pm
OLAP Product: TM1, Jedox
Version: PAL 2.1.5
Excel Version: Microsoft 365
Location: Brussels, Belgium
Contact:

Re: Data validation concepts

Post by Wim Gielis »

Sure, for example, have the dimension }Processes in your validation cube (or a similar dimension that you keep in sync with the dimension }Processes).

Example code to do an ExecuteProcess statement and capture the result in your validation cube. Rules could then convert the numeric process outcome into custom messages:

Code: Select all

vResult = ExecuteProcess('xxx');
If(vResult <> ProcessExitNormal() );
  ProcessError;
EndIf;
Constants for vResult:

ProcessExitByChoreQuit(): 16
ProcessExitNormal(): 0
ProcessExitMinorError(): 6
ProcessExitByQuit(): 8
ProcessExitWithMessage(): 5
ProcessExitSeriousError(): 10
ProcessExitOnInit(): 11
ProcessExitByBreak(): 7

As said above, ItemReject, creating custom text files with AsciiOutput, a validation cube, ... all are possible.
If the validation is very important to you / your customer, take the time to set up a good and convenient system for errors / inconsistencies.
But make sure it doesn't create a lot of overhead.
Best regards,

Wim Gielis

IBM Champion 2024-2025
Excel Most Valuable Professional, 2011-2014
https://www.wimgielis.com ==> 121 TM1 articles and a lot of custom code
Newest blog article: Deleting elements quickly
fabpas
Posts: 18
Joined: Fri Feb 01, 2013 9:59 am
OLAP Product: TM1
Version: 10.2
Excel Version: 2010
Location: Switzerland, Estavannens

Re: Data validation concepts

Post by fabpas »

Yes that's a good point and I will consider it. But ultimately what the business want is a "red" light indicating whether or not the data is loaded.
So by creating a dedicated cube and proper rules, my idea was to give to the business a report (or Perspective spreadsheet) with a matrix with all sources and a indicator saying if data is available or not.
Wim Gielis
MVP
Posts: 3234
Joined: Mon Dec 29, 2008 6:26 pm
OLAP Product: TM1, Jedox
Version: PAL 2.1.5
Excel Version: Microsoft 365
Location: Brussels, Belgium
Contact:

Re: Data validation concepts

Post by Wim Gielis »

You can indeed fill a separate cube with a 1 on the correct intersection, if data is loaded for that intersection in a different cube.
Shouldn't be hard to do, I do not understand the difficulty actually.
Best regards,

Wim Gielis

IBM Champion 2024-2025
Excel Most Valuable Professional, 2011-2014
https://www.wimgielis.com ==> 121 TM1 articles and a lot of custom code
Newest blog article: Deleting elements quickly
fabpas
Posts: 18
Joined: Fri Feb 01, 2013 9:59 am
OLAP Product: TM1
Version: 10.2
Excel Version: 2010
Location: Switzerland, Estavannens

Re: Data validation concepts

Post by fabpas »

I agree it is not difficult. It is just an open question to sense what TM1 developers have implemented in this respect.
Thx for your help!
Wim Gielis
MVP
Posts: 3234
Joined: Mon Dec 29, 2008 6:26 pm
OLAP Product: TM1, Jedox
Version: PAL 2.1.5
Excel Version: Microsoft 365
Location: Brussels, Belgium
Contact:

Re: Data validation concepts

Post by Wim Gielis »

Okay, if you have follow-up questions, go ahead.
Best regards,

Wim Gielis

IBM Champion 2024-2025
Excel Most Valuable Professional, 2011-2014
https://www.wimgielis.com ==> 121 TM1 articles and a lot of custom code
Newest blog article: Deleting elements quickly
tomok
MVP
Posts: 2836
Joined: Tue Feb 16, 2010 2:39 pm
OLAP Product: TM1, Palo
Version: Beginning of time thru 10.2
Excel Version: 2003-2007-2010-2013
Location: Atlanta, GA
Contact:

Re: Data validation concepts

Post by tomok »

fabpas wrote:But ultimately what the business want is a "red" light indicating whether or not the data is loaded.
Well, this is in direct contradiction you your original post:
fabpas wrote: The validation should consider errors in data ( empty csv files or missing lines) rather that technical failure (such as missing file or data format error).
I have done this type of thing at a number of clients and it has never involved rules (if you are talking about rules in the TM1 context). You simply create a cube, at a minimum using the }Processes dimension, and then any other dimensionality you want like Time and then Measures and you populate the intersections with messages every time you run the process. You can then create an Active Form report to display those messages. You can use conditional formatting in the report to turn things different colors if you want. It's all very low tech the key is decide what you want to "validate" and how you actually go about performing the validation. A TM1 rule can't do that for you.
Tom O'Kelley - Manager Finance Systems
American Tower
http://www.onlinecourtreservations.com/
Post Reply