BI 4.2 SP2 (and SP3)
IDT throws an Arithmetic Overflow error
[Microsoft][SQL Server Native Client 11.0][SQL Server]Arithmetic overflow error converting expression to data type int.
when parsing a join to another table. Both columns are varchar(25), and contain account numbers (not all are numbers; there are some like S01234. I’ve tried to CAST both sides of the join as varchar to no avail.
I’ve tried ignoring the error and publishing the universe, but the WebI reports fail randomly with an INF error.
I’m trying to get the latest Client Tools patch, but in the meantime, any suggestions?
According to the error, it appears you are using CAST to change a field to an integer. Depending on the values of original field, this error could easily come up.
The columns are all VARCHAR. One is the GL Account Number, and can contain values like 60350 or S01234. Casting to INT just won’t work. I think this is a bug in the IDT - for whatever reason, it sees that “60350” and assumes it’s a number. Strange, because I’ve been using it for almost a year and this is the first time I’ve seen this behavior. Just downloaded patch 4 for SP03 Client Tools; I’ll give that a shot.
Just for laughs, I built the joins using the UDT. That works fine, so worst case, I can fall back to that.
I still fail to understand if all the DB driver and details are the same and everything is set correctly, why you would get the error with one (IDT) and not the other (UDT).
I think I found the issue: there was one table (in a join dialog) that didn’t have qualifier and owner set; once that was rectified, IDT parsed the joins. That was on my DEV system. I’m still getting the error on my UAT environment - there must be some code somewhere where qualifier/owner aren’t set (like in an LOV, maybe). I’ll promote the universe and see if that doesn’t fix things in UAT.