cancel
Showing results for 
Search instead for 
Did you mean: 

Time's monthnum property can't be read numerically by script logic

Former Member
0 Kudos

Hi Experts!

I am working on a script logic that uses monthnum to list a set of time periods for an xdim. The select statement is supposed to list all periods with monthnum greater than or equal to the time_set.

The problem is months OCT, NOV, DEC (those periods with 2-digit monthnum) is not being read as greater than the FEB - SEP. If my time_set is YEAR.AUG, my select statement will list only YEAR.AUG and YEAR.SEP. What's weird is that when i tried running the same logic on a VMWARE environment with the same BPC version (7.5MS), it worked! What can possibly be wrong here?

Any inputs will be highly appreciated. Thanks.

Aiza

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Post the code tat is giving you the error here, and i'll see whats wrong with it.

Cya

Former Member
0 Kudos

@ Nilanjan: i've tried that but it still didn't work.

@ Leandro: I have tried that as well but it gave a failure during validation for the lgf file (syntax unrecognized) though the lgx was a success. I also tried running the logic and it gave correct results but I'm afraid the lgf failure might have effects on the logic's stability.

We are now trying to use the TIMEID instead.

Thanks.

Former Member
0 Kudos

TRY THIS

*SELECT (%TIMES_IDS%,ID,TIME,"ID IN ()")

In between the parentheses you can write ANY sql code, meaning, this will give you a easier way to work with MDX Select statment,

in your case, i think this sql will do it.

SELECT ID FROM mbrTime WHERE CAST(MONTHNUM AS INTEGER) > 3 AND [YEAR] = 2011 AND [LEVEL]='MONTH'

Modify it to your specific needs.

Best

Leandro

Former Member
0 Kudos

Hi,

Do you have single digit for monthnum for the months from JAN to SEP? If yes, you can try to save the monthnum as 01, 02, 03, and so on. Then try to execute your script.

Hope this helps.