Skip to Content
0

Scriot Logic with UJKT error

Dec 08, 2017 at 05:10 AM

55

avatar image

Hi All,

System : BPC 10.0 NW

We are facing a strange issue, where we are getting an Exception error when running the code in UJKT. Considering, it to be a straightforward code, we are unbale to find the exact issue.
"UJO_READ:An exception was raised"

here we are getting an Exception error when running the code in UJKT

We tried testing the same code in another environment and model and it worked without any issue.

*XDIM_MEMBERSET ACCOUNT = STAT_TAX
*WHEN  ACCOUNT
*IS STAT_TAX
*REC(FACTOR =1)
*ENDWHEN UJKT ResultLGX:

-------------------------------------------------------------------------------------------------------------------------------------
LOG:
FILE:\ROOT\WEBFOLDERS\XXXXXXXX \ADMINAPP\CONSOLIDATION\TEST.LGF
USER:XXXXXX
APPSET:XXXXXXX
APPLICATION:CONSOLIDATION
[INFO] GET_DIM_LIST(): I_APPL_ID="CONSOLIDATION", #dimensions=13 
ACCOUNT,AUDITTRAIL,CATEGORY,CONT_CTRY,ENTITY,FLOW,FUNC_AREA,INTERCO,MEASURES,PROFIT_CENTER,RPTCURRENCY,SCOPE,TIME

#dim_memberset=1 
ACCOUNT:STAT_TAX,1 in total.

REC :%value%*(1)

CALCULATION BEGIN:
QUERY PROCESSING DATA

UJO_READ:An exception was raised

Here is a code which is working perfectly

*SELECT(%LV_ACC%, ID, ACCOUNT, POPULATE = X)
*XDIM_MEMBERSET ACCOUNT = %LV_ACC%
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET ENTITY = EN_3113
*XDIM_MEMBERSET FUNC_AREA = FA_NONE
*XDIM_MEMBERSET TIME = %TIME_SET%, TMVL(-1,%TIME_SET%)

*WHEN  TIME
*IS TMVL(-1,%TIME_SET%)

*WHEN  ACCOUNT
*IS %LV_ACC%
*REC(EXPRESSION = %VALUE%, TIME = %TIME_SET%)
*ENDWHEN

*ENDWHEN 

LOGLGX:

*XDIM_MEMBERSET ACCOUNT = FC_SURVEY,STAT_TAX
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET ENTITY = EN_3113
*XDIM_MEMBERSET FUNC_AREA = FA_NONE
*XDIM_MEMBERSET TIME = 2017.09, 2017.08
*WHEN TIME
*IS 2017.08
*WHEN ACCOUNT
*IS FC_SURVEY,STAT_TAX
*REC(EXPRESSION = %VALUE%, TIME = 2017.09)
*ENDWHEN
*ENDWHEN

-------------------------------------------------------------------------------------------------------------------------------------
LOG:

LOG BEGIN TIME:2017-12-08 05:04:17
FILE:\ROOT\WEBFOLDERS\XXXXXXX \ADMINAPP\CONSOLIDATION\TEST.LGF
USER:XXXXX
APPSET:XXXXXX
APPLICATION:CONSOLIDATION
[INFO] GET_DIM_LIST(): I_APPL_ID="CONSOLIDATION", #dimensions=13 
ACCOUNT,AUDITTRAIL,CATEGORY,CONT_CTRY,ENTITY,FLOW,FUNC_AREA,INTERCO,MEASURES,PROFIT_CENTER,RPTCURRENCY,SCOPE,TIME

#dim_memberset=5 
ACCOUNT:FC_SURVEY,STAT_TAX,2 in total.
CATEGORY:ACTUAL,1 in total.
ENTITY:EN_3113,1 in total.
FUNC_AREA:FA_NONE,1 in total.
TIME:2017.08,2017.09,2 in total.

REC :%VALUE%

CALCULATION BEGIN:
QUERY PROCESSING DATA
QUERY TIME : 1.00 ms. 2  RECORDS QUERIED OUT.
QUERY REFERENCE DATA
CALCULATION TIME IN TOTAL :0.00 ms.
2  RECORDS ARE GENERATED.
CALCULATION END.

ENDWHEN ACCUMULATION: 2  RECORDS ARE GENERATED.

DATA TO WRITE BACK:
ACCOUNT	AUDITTRAIL	CATEGORY	CONT_CTRY	ENTITY	FLOW	FUNC_AREA	INTERCO	PROFIT_CENTER	RPTCURRENCY	SCOPE	TIME	SIGNEDDATA
FC_SURVEY	CNI_TAX	ACTUAL	CT_NONE	EN_3113	M800	FA_NONE	IC_NONE	PC_4370	USD	S_NONE	2017.09	1200.00 
STAT_TAX	CNI_TAX	ACTUAL	CT_NONE	EN_3113	M800	FA_NONE	IC_NONE	PC_4370	USD	S_NONE	2017.09	0.05 
2  RECORDS HAVE BEEN WRITTEN BACK.
WRITING TIME :1.00  ms.

SCRIPT RUNNING TIME IN TOTAL:3.00 s.
LOG END TIME:2017-12-08 05:04:18


Now if I comment out the scoping of ENTITY from the above code, I will again get the same UJO_READ Exception error

The below code fails with an Exception error:

*SELECT(%LV_ACC%, ID, ACCOUNT, POPULATE = X)
*XDIM_MEMBERSET ACCOUNT = %LV_ACC%
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET FUNC_AREA = FA_NONE
*XDIM_MEMBERSET TIME = %TIME_SET%, TMVL(-1,%TIME_SET%)

*WHEN  TIME
*IS TMVL(-1,%TIME_SET%)

*WHEN  ACCOUNT
*IS %LV_ACC%
*REC(EXPRESSION = %VALUE%, TIME = %TIME_SET%)
*ENDWHEN

*ENDWHEN 

<u>UJKT<br></u>CALCULATION BEGIN:
QUERY PROCESSING DATA

UJO_READ:An exception was raised
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Vadim Kalinin Dec 08, 2017 at 07:20 AM
0

Try to find the entity member that is the reason of the issue. Scope number of entity members...

Show 7 Share
10 |10000 characters needed characters left characters exceeded

Hi Vadim,

Sorry, I didn't get the point of finding the entity member.
Are you referring to give some specific scoping for ENTITY member in all code?

As mentioned in the post, the 2nd code is working fine wth ENTITY member EN_3113

*XDIM_MEMBERSET ENTITY = EN_3113

And when I remove the scoping for ENTITY, without changing anything else in the code, it is throwing exception error.

Also, the below code snippets are also failing with this UJO_READ exception error

*XDIM_MEMBERSET TIME = 2017.07
*WHEN  TIME
*IS 2017.07
*REC(FACTOR =1)
*ENDWHEN

Another Code

*XDIM_MEMBERSET ACCOUNT = STAT_TAX
*WHEN  ACCOUNT
*IS STAT_TAX
*REC(FACTOR =1)
*ENDWHEN 
0

You scoped single entity member EN_3113. The result is fine. Scope more base members, check if adding some particular member will result in error.

0

Hi Vadim,

Ok...I got your point.

But, in my case, for the source dataset I am executing the logic, the data is available only for one ENTITY

*XDIM_MEMBERSET ACCOUNT = STAT_TAX
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET ENTITY = EN_3113
*XDIM_MEMBERSET FLOW = M800
*XDIM_MEMBERSET FUNC_AREA = FA_NONE
*XDIM_MEMBERSET TIME = 2017.08,2017.09
*WHEN  TIME
*IS 2017.08
*WHEN  ACCOUNT
*IS STAT_TAX
*REC(EXPRESSION = %VALUE%, TIME = 2017.09)
*ENDWHEN
*ENDWHEN 

SOURCE BW DATASET

TIME = 2017.08, 2017.09
ACCOUNT = STAT_TAX
FLOW = M800

As seen above, data is currently available only for 1 ENTITY

0

When you have no scope for entity dimension it means that you scope all members. Some member can be corrupted or...

That’s why I am asking to select number of members to narrow down the issue.

0

Hi Vadim,

On you other comment on scoping and additional WHEN statement, I agree that we dont need to scope the Target data and that we can remove the additional WHEN. I was testing some other scenarios and while posting the code, didnt clean up the code. The code will be looking like

*SELECT(%LV_ACC%, ID, ACCOUNT, POPULATE = X)
*XDIM_MEMBERSET ACCOUNT = %LV_ACC%
*XDIM_MEMBERSET CATEGORY = ACTUAL
*XDIM_MEMBERSET ENTITY =  EN_3113
*XDIM_MEMBERSET FLOW = M800
*XDIM_MEMBERSET FUNC_AREA = FA_NONE
*XDIM_MEMBERSET TIME = TMVL(-1,%TIME_SET%)

*WHEN  ACCOUNT
*IS *
*REC(EXPRESSION = %VALUE%, TIME = %TIME_SET%)
*ENDWHEN

As mentioned by you, I tried to scope ENTITY in this manner, by adding one by one all the BASE members of the TOP member of each Hierarchy and also additional single members outside the Heirarchy. The code was working fine.

*XDIM_MEMBERSET ENTITY = BAS(ABC),BAS(XYZ), EN_abcd, EN_xyz

However, when I remove the ENTITY scoping it fails with the same error.

0

Starting from some SP parent members are also scoped for when/endwhen

0

P.S. Strange idea to scope time for 08 and 09 if you want to copy from 08 to 09. Only 08 has to be scoped.

When you scope data before when/ENDWHEN only source region has to be scoped.

Also multiple when is useless in this script.

0