cancel
Showing results for 
Search instead for 
Did you mean: 

RUN LOGIC:Invalid Dimension

Former Member
0 Kudos

We are getting the following error when running the script logic below...

RUN LOGIC:Invalid Dimension:"DATATYPE].[VOL" in Application: "REVENUE" Failed

We were able to successfully run the script in QA, but once we went to Production, we get the error above.  The dimension and dimension member referenced in the error do exist. 

We are currently on BPC 7.5 NW SP6 Patch1.  Any help would be appreciated. 

 

//ADDED KWH_TAX to XDIM_MEMBERSET UNIT 09/28/2011

// Derive Revenue from RATE & VOLUME Recs

// Select Cal Month based on property of Rel Flag

*Select(%CALMO%,ID,TIME,"[REL_FLG]=Y")

// Select Cyc Month based on property of Rel Flag

*Select(%CYCMO%,ID,CYCLE_MONTH,"[REL_FLG]=Y")

// Select Rate Schedules based on property of Rel Flag

*Select(%RSC%,ID,RATE_SCHEDULE,"[REL_FLG]=Y")

// Select Baseline records from REVENUE application.

//NOTE: This script will NOT validate "as is" due to the TARIFF value being passed from the user selection within the DataManger package.

*XDIM_MEMBERSET DATA_SOURCE = RATE_INP

*XDIM_MEMBERSET FCST_YEAR AS %YR% = SELF($SELECTION$)

*XDIM_MEMBERSET CYCLE_MONTH = %CYCMO%

*XDIM_MEMBERSET TIME= %CALMO%

*XDIM_MEMBERSET DATATYPE = RATE

//*XDIM_MEMBERSET BILLNG_LINE_ITEM = <all>

*XDIM_MEMBERSET CUST_CLASS = <all>

*XDIM_MEMBERSET PRICE_BLOCK = <all>

*XDIM_MEMBERSET UNIT = TOT_KWH_DELV, KWH_TAX, PLS, TOT_KWH_NONSHOP, TOT_KWH_NONSHOP_FXD

*XDIM_MEMBERSET RATE_SCHEDULE = GLOBAL_RATE

*XDIM_MEMBERSET VERSION AS %VER% = SELF($SELECTION$)

*XDIM_MEMBERSET TARIFF AS %TAR% = SELF($SELECTION$)

// Select Company based on property of TARIFF

*Select(%CO%,COMP,TARIFF,"[ID]=%TARIFF_SET%")

*XDIM_MEMBERSET COMPANY = %CO%

*Select(%BL%,STATE,COMPANY,"[ID]=%CO%")

*XDIM_FILTER BILLNG_LINE_ITEM = [BILLNG_LINE_ITEM].properties("%BL%") = "Y"

// Multiply Factor from GL and derive the cal month, new datasource

*WHEN COMPANY

*IS *

*FOR %RS%=%RSC%

*REC(EXPRESSION=%VALUE%*([DATA_SOURCE].[VOL_INP],[BILLNG_LINE_ITEM].[BILL_DETER],[DATATYPE].[VOL],[RATE_SCHEDULE].[%RS%]),RATE_SCHEDULE=%RS%,DATA_SOURCE=REV_OUT,DATATYPE=REV_2)

*NEXT

*ENDWHEN

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

Sometimes I got this error too, but executes Ok.

Did you try execute this code in UJKT?

Regards

Lucas Costa

Former Member
0 Kudos

I just tried it executing it in UJKT but it doesn't seem to be doing anything.  Can you walk me through using this transaction as I'm not finding much documentation on it?  I entered the AppSetID, Application ID and User.  Then what do I put in Data Region..the script logic?

Thanks for your help!

Andrea

Former Member
0 Kudos

Hi,

Find the attached.

Is a simple documentation of the UJKT, that is a very usefull transaction.

Regards,

Lucas Costa

Former Member
0 Kudos

Thanks for the quick response!  I can see how this transaction is useful.  But I still don't understand why the script is failing.  We have 2 scripts, one to calculate non-global revenues and one to calculate global revenues. 

I validated both using UJKT, and both scripts give the same message: 

UJK_EXECUTION_EXCEPTION:Invalid format of *XDIM_FILTER "[BILLNG_LINE_ITEM].properties("")="Y""

When I execute the non-global revenues script, it works fine. The global revenues script fails. There isn't a lot of difference between the 2 scripts.

This is the log from UJKT for the global revenues script:

 

LOG:

FILE:\ROOT\WEBFOLDERS\PROD_FE_REVFCST \ADMINAPP\REVENUE\TEST.LGF

USER:FENETWORK\BLANKENSHIPAL

APPSET:PROD_FE_REVFCST

APPLICATION:REVENUE

[WARNING!] NO MEMBER SPECIFIED FOR DIMENSION:CUST_CLASS WILL QUERY ON ALL BASE MEMBERS.

[WARNING!] NO MEMBER SPECIFIED FOR DIMENSION:PRICE_BLOCK WILL QUERY ON ALL BASE MEMBERS.

[INFO] GET_DIM_LIST(): I_APPL_ID="REVENUE", #dimensions=14

BILLNG_LINE_ITEM,COMPANY,CUST_CLASS,CYCLE_MONTH,DATATYPE,DATA_SOURCE,FCST_YEAR,MEASURES,PRICE_BLOCK,RATE_SCHEDULE,TARIFF,TIME,UNIT,VERSION

#dim_memberset=13

FCST_YEAR:2011,1 in total.

VERSION:VER1,1 in total.

TARIFF:JC,1 in total.

DATA_SOURCE:RATE_INP,1 in total.

CYCLE_MONTH:201101,201102,201103,201104,201105,...61 in total.

TIME:2011.APR,2011.AUG,2011.DEC,2011.FEB,2011.JAN,...60 in total.

DATATYPE:RATE,1 in total.

CUST_CLASS:COM,COM_CU,IND,IND_CU,NO_CUST,...8 in total.

PRICE_BLOCK:D,D1,D2,D3,KVA1,...19 in total.

UNIT:TOT_KWH_DELV,KWH_TAX,PLS,TOT_KWH_NONSHOP,TOT_KWH_NONSHOP_FXD,5 in total.

RATE_SCHEDULE:GLOBAL_RATE,1 in total.

COMPANY:JC01,1 in total.

BILLNG_LINE_ITEM:BILL_DETER,ZCC_01,ZCED01,ZDDISL,ZDMD07,...77 in total.

UJK_VALIDATION_EXCEPTION:Invalid Dimension:"DATATYPE].[VOL" in Application: "REVENUE"

Former Member
0 Kudos

No problem!

Please, attach both scripts here, I can try to understand what is wrong.

If we assume, that the message is the error, ok. But sometimes, a message has nothing related to the real error.

In the past I have some erros related to the parentheses, spaces...

Regards,

Lucas Costa

Former Member
0 Kudos

Hi Lucas - The files are attached.  Thanks!

Former Member
0 Kudos

Hi Andrea,

As the only difference between the both scripts is the Rate Schedules, I think you should start by doing some changes in this point.

The script logic log is really very poor, surely is a small detail.

Please, clould you try this code, on rec statement?

*REC(RATE_SCHEDULE=%RS%,EXPRESSION=(%VALUE% * ([DATA_SOURCE].[VOL_INP],[BILLNG_LINE_ITEM].[BILL_DETER],[DATATYPE].[VOL],[RATE_SCHEDULE].[%RS%]) ) )

I know that has no difference, but as I said before, in the past I faced some errors, that is just a matter of parentheses or order in the code.

Regards,

Lucas Costa

Former Member
0 Kudos

Hi Lucas - I'm still getting the same error.  It seems like the issue has to do with [RATE_SCHEDULE].[%RS%], but I'm not sure why.  That seems to be the only big difference between the global and non-global scripts.

 

*WHEN COMPANY

*IS *

*FOR %RS%=%RSC%

*REC(EXPRESSION=%VALUE%*([DATA_SOURCE].[VOL_INP],[BILLNG_LINE_ITEM].[BILL_DETER],[DATATYPE].[VOL],[RATE_SCHEDULE].[%RS%]),RATE_SCHEDULE=%RS%,DATA_SOURCE=REV_OUT,DATATYPE=REV_2)

*NEXT

*ENDWHEN

Thanks

Andrea

Former Member
0 Kudos

Hi Andrea,

I agree with you, the error must be on the RATE_SCHEDULE, for this reason, I think you should do some tests on this.

Are sure that the SELECT statement is correct? I mean, is selecting members or more important, base members...

Try, take off the variable %%, and put some fixed dimension value, first just in the REC statement, and if not work take off the FOR also.

Regards,

Lucas Costa

Former Member
0 Kudos

Hi Lucas - I put in a fixed dimension member for RATE_SCHEDULE and the script worked.

Thanks

Andrea

Former Member
0 Kudos

So really is the SELECT.

Try to use another clause.

Regards,

Lucas Costa