Is DATACOPY or similiar possible in ASO MDX?
I have source file that has 5 dims referenced: Accounts, Service, Quantity, Frequency and Size. In the 'Accounts' dim I have 3 members: Qty, Freq and Yd that all have values. So I extract all those values for all Service, Quantity, Frequency and Size.
However in my target app, I have 8 dims. The three additional ones are: Segment, Customer and Year. So I load this data file to 'No Segment', 'No Cust' and 'No Year'. Is there a way to copy that data to all the leaf level members of 'Segment', 'Customer' and 'Year'?? Obviously this is easy in BSO, but not sure possible in ASO.
Thanks,
I did it in BSO as follows:
Fix(@Relative("Zip Code",0))
SET CREATENONMISSINGBLK ON;
/* First populate the 'Qty' Measure to match the 'Quantities' metadata */
"Qty" (
IF(@ISMBR ("Qty 1"))
"Qty" =1;
ELSEIF(@ISMBR ("Qty 2"))
"Qty" =2;
ELSEIF(@ISMBR ("Qty 3"))
"Qty" =3;
ELSEIF(@ISMBR ("Qty 4"))
"Qty" =4;
ELSEIF(@ISMBR ("Qty 5"))
"Qty" =5;
ELSEIF(@ISMBR ("Qty 6"))
"Qty" =6;
ELSEIF(@ISMBR ("Qty 7"))
"Qty" =7;
ELSEIF(@ISMBR ("Qty 8"))
"Qty" =8;
ELSEIF(@ISMBR ("Qty 9"))
"Qty" =9;
ELSEIF(@ISMBR ("Qty 10"))
"Qty" =10;
ELSEIF(@ISMBR ("Qty 11"))
"Qty" =11;
Endif; )
/* Now populate the 'Yard' Measure to match the 'Yardages' metadata */
"Yard" (
IF(@ISMBR ("Yd 1.0"))
"Yard" =1;
ELSEIF(@ISMBR ("Yd 1.5"))
"Yard" =1.5;
ELSEIF(@ISMBR ("Yd 2.0"))
"Yard" =2;
ELSEIF(@ISMBR ("Yd 2.5"))
"Yard" =2.5;
ELSEIF(@ISMBR ("Yd 3.0"))
"Yard" =3;
ELSEIF(@ISMBR ("Yd 4.0"))
"Yard" =4;
ELSEIF(@ISMBR ("Yd 5.0"))
"Yard" =5;
ELSEIF(@ISMBR ("Yd 6.0"))
"Yard" =6;
ELSEIF(@ISMBR ("Yd 7.0"))
"Yard" =7;
ELSEIF(@ISMBR ("Yd 8.0"))
"Yard" =8;
ELSEIF(@ISMBR ("Yd 9.0"))
"Yard" =9;
ELSEIF(@ISMBR ("Yd 10.0"))
"Yard" =10;
ELSEIF(@ISMBR ("Yd 11.0"))
"Yard" =11;
Endif; )
/* Now populate the 'Freq' Measure to match the 'Frequencies' metadata */
"Freq" (
IF(@ISMBR ("Freq 1x"))
"Freq" =1;
ELSEIF(@ISMBR ("Freq 2x"))
"Freq" =2;
ELSEIF(@ISMBR ("Freq 3x"))
"Freq" =3;
ELSEIF(@ISMBR ("Freq 4x"))
"Freq" =4;
ELSEIF(@ISMBR ("Freq 5x"))
"Freq" =5;
ELSEIF(@ISMBR ("Freq 6x"))
"Freq" =6;
ELSEIF(@ISMBR ("Freq 7x"))
"Freq" =7;
Endif;)
Endfix
Similar Messages
-
Is this possible in ASO Procedural MaxL or am I crazy to try? 11.1.2.2
Hi,
Just want to know if any of you experts think this is possible in ASO Procedural calcs? I have been trying for days and can't get it to work, however my syntax in code might be wrong. Appreciate all advice.
IIF ( IS ( [Scenario].CurrentMember, [Actual] ) AND IS ( [Product].CurrentMember, [No_Product] ) AND IsUDA ( [Entity].CurrentMember, "Corporate" ) ,
( [EXPENSES] - ( [TOTAL ORIGINATION INCOME] * -1) + [45500] + [46000] - [TOTAL INTEREST EXPENSE] - [53635] - [53636] - [54005] -
[54006] - [54007] - [54030] - [54060] ) / ( [Funded Units] , [CORPORATE COST CENTERS] , [Actual] ) ,
IIF ( IS ( [Scenario].CurrentMember, [Actual] ) AND IS ( [Product].CurrentMember, [No_Product] ) AND IsUDA ( [Entity].CurrentMember, "CC9990Alloc" ) ,
( [EXPENSES] - ( [TOTAL ORIGINATION INCOME] * -1) + [45500] + [46000] - [TOTAL INTEREST EXPENSE] - [53635] - [53636] - [54005] -
[54006] - [54007] - [54030] - [54060] - [51120] - [51135] - [51136] - [51137] - [51139] ) / ( [Funded Units] , [CORPORATE COST CENTERS] , [Actual] ) ,
IIF ( IS ( [Scenario].CurrentMember, [Actual] ) AND IS ( [Product].CurrentMember, [No_Product] ) AND IsUDA ( [Entity].CurrentMember, "CC9999Alloc" ) ,
( ( (/* 41401 + 126260 +*/ [EXPENSES] - [TOTAL INTEREST EXPENSE] - [53635] - [53636] - [54005] - [54006] - [54007] - [54030] - [54060] - [54091] - [51150] - [51160] - [51170] - [51180] ) +
( ( [51150] + [51160] + [51170] + [51180] ) * .2 ) ) / ( [Funded Units] , [CORPORATE COST CENTERS] , [Actual] ) ) ,
IIF ( IS ( [Scenario].CurrentMember, [Actual] ) AND IS ( [Product].CurrentMember, [No_Product] ) AND IsUDA ( [Entity].CurrentMember, "CC9014Alloc" ) ,
( [EXPENSES] - ( [TOTAL ORIGINATION INCOME] * -1) + [45500] + [46000] - [TOTAL INTEREST EXPENSE] - [53635] - [53636] - [54005] -
[54006] - [54007] - [54030] - [54060] - [54080] ) / ( [Funded Units] , [CORPORATE COST CENTERS] , [Actual] ) ,
IIF ( IS ( [Scenario].CurrentMember, [Actual] ) AND IS ( [Product].CurrentMember, [No_Product] ) AND IsUDA ( [Entity].CurrentMember, "CC9999Alloc2" ) ,
( ( ( [51150] , [9999] ) + ( [51160] , [9999] ) + ( [51170] , [9999] ) + ( [51180] , [9999] ) ) * .8 ) / ( [Funded Units] , [CORPORATE COST CENTERS] , [Actual] ) ,
Missing ) ) ) ) )I tried this on the Demo Basic ASO application that I named 'z_aso' and same error. I moved the only upper level member to right side of equation here and it doesn't work. Maybe I misunderstood your post that upper level members are ok on right side of equation?
([Bud Var],[Jan],[Profit],[Stereo])
:= ([Actual],[Jan],[Stereo])
/ ([Budget],[Jan],[Profit],[Stereo]) ;
D:\scripts\z_aso>essmsh BudVar.mxl >BudVar.log
ERROR - 1300033 - Upper-level members, for example [Profit], are not allowed in argument [Script]. Select a level-0 member.
ERROR - 1241190 - Custom Calculation terminated with Essbase error 1300033 in SCRIPT. -
Hi,
Is there any possibility that we can use semicolon at the end of MDX member formulas for ASO database? If yes please let me know how we can write and calculate member formulas with semicolon at the end?
One thingI know for sure is we should not use semicolon at the end of member formulas for ASO in admin console.Syntax has changed for ASO member formulas and semicolons are no longer used. Why would you want to use the semicolon? With the new syntax it is not necessary.
-
ASO MDX query in outline??????
Trying to write a MDX query for the Account member
Hierarchy:
Account
A001
A002
A003
A008
Scenario
AG00
AG01
AG06
AG08
AG09
Organization
ETCE
E023
E024
E070
I need to caluculate for the Account AG08 the value should be derived from AG07 and for the same account AG08 for the Organization member "E070" the value should be same as AG09 ( i.e AG09 = AG08 )
I writen below query at the level "0" retrival query is good but when i use the Top level query "ETCE" parent level the value in "E070" is eliminating . Query writen below
NONEMPTYMEMBER [A001],[A007]
CASE
WHEN (IS([Organization].CurrentMember, [E070])) THEN
([A009])
WHEN (IS([Scenario].CurrentMember, [AG00])) THEN
(([A007] * -1)/100)
WHEN (IS([Scenario].CurrentMember, [AG01])) THEN
(([A007] * -1)/100)
WHEN (IS([Scenario].CurrentMember, [AG02])) THEN
(([A007] * -3)/100)
WHEN (IS([Scenario].CurrentMember, [AG03])) THEN
(([A007] * -10)/100)
WHEN (IS([Scenario].CurrentMember, [AG04])) THEN
(([A007] * -20)/100)
WHEN (IS([Scenario].CurrentMember, [AG05])) THEN
(([A007] * -80)/100)
WHEN (IS([Scenario].CurrentMember, [AG06])) THEN
([A007])
ELSE
Missing
END
At Bottom level "0" results are coming as expected but Its not working at the top level Organization ETCE level Please help ????
Thanks
Venu
Edited by: user13351102 on Oct 28, 2011 5:19 PM
Edited by: user13351102 on Oct 28, 2011 6:31 PMGuru's any help on this ASO Member formula query ??
-
Essbase 11.1.2.1 - Converting BSO Member Formula to ASO MDX Formula
Hi all,
I'm quite new at Essbase and I'm currently using Essbase 11.1.2.1. I have 2 cubes: one is a BSO cube and the other is an ASO cube.
In the BSO cube, I have an account that has member formula:
IF(@ISATTRIBUTE("US"))
("Sales"->"Budget"->"USD")-("Sales"->"Actual"->"USD");
ELSEIF(@ISATTRIBUTE("EU"))
("Sales"->"Budget"->"EUR")-("Sales"->"Actual"->"EUR");
ELSEIF(@ISATTRIBUTE("UK"))
("Sales"->"Budget"->"GBP")-("Sales"->"Actual"->"GBP");
ENDIF
Notes:
- Sales is an account
- US, EU, and UK are members of Country attribute dimension
- Budget and Actual are members of Scenario dimension
- USD, EUR, and GBP are members of Currency dimension
I understand that the member formula for BSO and ASO are different. Can anyone please advise me on what the formula should be in ASO cube as MDX formula?
Thank you very much!CASE [Currency].CurrentMember.[Country]
WHEN "US" THEN ([Sales], [Budget], [USD]) - ([Sales], [Actual], [USD])
WHEN "EU" THEN ([Sales], [Budget], [EUR]) - ([Sales], [Actual], [EUR])
WHEN "UK" THEN ([Sales], [Budget], [GBP]) - ([Sales], [Actual], [GBP])
ELSE 0
END
*Note that I am assuming Country is an attribute of Currency based on the information provided. -
ASO: MDX Retrieving Last non #Missing Value.
Hi,
I am trying to create MDX.
I have data as follows:
Jan Feb Mar Apr May Jun
10 20 #Missing #Missing #Missing #Missing
Is the following possible, that every member of the time period is parsed, and if data found #Missing, the value is changed to last available value.
So, in the above example, I get Mar through Jun as value 20.
All help is deeply appreciated. Let me know if any further description is required.
Thanks.
Ankur.At a fundamental level you would do something like
Create a member in your measures dimension called [Last_Sales]
add member formula
IIF((NOT IsEmpty([Measures].[Sales]), [Measures].[Sales], ([Measures].[Last_Sales], [Time].PrevMember)
Now this should work if you in fact encounter a value before reaching the beginning of the time dimension. If there is a chance no value will be found, this would error, so you will have to add more code around it to test for those scenarios.
This topic is covered in depth in Chapter 5 of George Spoford's book 'MDX Solutions'.
If you are going to be working with MDX, you should read this book. -
ASO MDX member formula and performance
Hi,
I am doing some testing about MDX formulas and performance. I found a performance issue but I can not understand why is taking so long time a report.
The situation is:
I create a report or a MDX query with:
6 dimensions in row and 1 dimension in column
rows:
Period - Filtered using a member
Year - Filtered using a member
Relationship Manager - Filtered using a member
Report Type - Filtered using a member
Local Relationship Manager - 4400 members level 0
Global Relationship Manager - 10400 members level 0
Column:
Account dimension, only a member
The member selected for Report Type (RM.Local) has a formula
My Report Type dimension has 10 members, there is one member where I store data called : RM.Input
My first test was
RM.Local his formula is [RM.Input] , the report is run in 1 second
RM.Local his formula is ([RM.Input],[MTD]) where MTD is a member level 0 store in my view dimension. The report run in 20 minutes. I was not expecting so bad performance when I only pointing at [RM.Input],[MTD]
Do you consider this time is reasonable when I am using this formula?
The mdx report is:
With
set [_Local Relationship Manager3] as 'Descendants([All Local Relationship Managers], 2)' = level 0 members
set [_Global Relationship Manager4] as '[Global Relationship Manager].Generations(4).members' = level 0 members
set [_Period0] as '{[Period].[Oct]}'
set [_Relationship Manager4] as '{[Relationship Manager].[Dummy1)]}'
set [_Report Type0] as '{[Report Type].[RM.Local]}'
set [_Year2] as '{[Year].[FY-2013]}'
select
{ [Account].[Expenses]
} on columns,
NON EMPTY {crossjoin({[_Local Relationship Manager3]},crossjoin({[_Global Relationship Manager4]},crossjoin({[_Period0]},crossjoin({[_Relationship Manager4]},crossjoin({[_Report Type0]},{[_Year2]})))))} properties MEMBER_NAME, GEN_NUMBER, [Global Relationship Manager].[MEMBER_UNIQUE_NAME], [Global Relationship Manager].[Memnor], [Local Relationship Manager].[MEMBER_UNIQUE_NAME], [Local Relationship Manager].[Memnor], [Relationship Manager].[MEMBER_UNIQUE_NAME], [Relationship Manager].[Memnor], [Period].[Default], [Report Type].[Default], [Year].[MEMBER_UNIQUE_NAME], [Year].[Memnor] on rows
from [DICISRM.DICISRM]Ok Try this one
But here you have to change the MDX formula every month.
Year
--FY2009
--FY2010
--FY2011
--FY2012
Period
--TotalYear
----Qtr1
-------Jan
-------Feb
-------Mar
Let say if you're CurrentYear is FY2011 and you're Current Month is March then you're MDX will be
case when contains([Year].CurrentMember,MemberRange([FY2009],[FY2010])) and contains([Period].CurrentMember,MemberRange([Jan],[Feb]))
Then
B
else
C
end
For the Next month you just have to make a change in the MemberRange I.e.,(Replace Feb with Mar)
*case when contains([Year].CurrentMember,MemberRange([FY2009],[FY2010])) and contains([Period].CurrentMember,MemberRange([Jan],[Mar]))*
Then
B
else
C
end
I tested it and Its working fine.
I think this will solve you're problem but there might be a more elegant solution out there.
Regards,
RSG -
Aso mdx issue !!!!!
([Jan],(Actual),(LOB]) verify's
([Jan],[SC_Actual],[LOB])=([lob1]*(.75))+[lob2]*(.25));
Error(1260052) - Syntax error in input MDX query on line 1 at token '=' CombinedLOB
please advise
Edited by: Next Level on Jul 8, 2012 4:43 AM
Edited by: Next Level on Jul 8, 2012 4:44 AMI tried
CASE WHEN (IS([Time Period].CurrentMember, [Jan]) AND IS([Scenario].CurrentMember, [SC_Actual]) AND IS([LOB].CurrentMember, [CombinedLOB]))
same Error(1260052) - Syntax error in input MDX query on line 1 at token '' CombinedLOB
why am i getting this ??????????????/
then i tried
CASE WHEN (IS([Time Period].CurrentMember, [Jan]) AND IS([Scenario].CurrentMember, [SC_Actual]) AND IS([LOB].CurrentMember, [CombinedLOB])) Then
([lob1]*(.75))+([lob2]*(.25))
End Case
Error(1260052) - Syntax error in input MDX query on line 2 at token '' CombinedLOB
why am i having an issue with CombinedLOB
all the issue are with CombinedLOB
this is the dimension
LOB Dynamic <2>
XXXXXXXXX (+) <3>
CombinedLOB (+)
LOB1 (+)
LOB2(+)
HELP !!!!!!!!!!!!!!!
Edited by: Next Level on Jul 8, 2012 9:45 AM -
ASO, MDX, Loading Level 0
<p>Maybe this is more simple than I am making it, but I am tryingto load a level 0 file into my ASO app. I get to messagesonce the data load happens. The first is:</p><p> </p><p>SourceTYPE SourceFile OperationStatus</p><p>Datafile e:\whatever.txt Warning</p><p> </p><p>And then when i click the line, below is what I get. Andmost of the time, the database is empty, and I can't aggregate whenthere is no data.<br><i><b>Parallel dataload enabled: [1] block prepare threads [1]block write threads.<br>Aggregate storage applications ignore update to derived cells.[5.04334e 007] cells skipped<br>Data Load Elapsed Time : [81.702] seconds<br>Database import completed ['FRaso'.'Finrpt']<br>Output columns prepared: [0]Warnin</b></i></p><p>I also get Buffer which is a success.</p><p> </p><p>Once I do get data in, how do I aggregate stuff. And can Imodify how things are being aggregated?</p><hr><p> </p><p> </p><p> </p>
<p>Let me give you an example of what I have in my outline. Using the Months example, I have:</p><p> </p><p>Outline:</p><p><span style=" color: #ff0000;"> MeasureAccounts <11> (Label Only)</span></p><p> <spanstyle=" color: #008080;"> - It'schildren</span></p><p><span style=" color: #ff0000;"> MonthTime Dynamic <13> (Label Only)</span></p><p><span style=" color:#008080;"> -Jan (~)</span></p><p><span style=" color:#008080;"> -Feb (~)</span></p><p><span style=" color:#008080;"> -....</span></p><p><span style=" color:#008080;"> -Dec(~)</span></p><p><span style=" color:#008080;"> -Mthly (~) <12></span></p><p> <span style=" color: #0000ff;">- JAN_MTHLY (+) [0: [JAN]]</span></p><p><span style=" color:#0000ff;"> -FEB_MTHLY (+) [0: [FEB]- [JAN]]</span></p><p><span style=" color:#0000ff;"> -.....</span></p><p><span style=" color:#0000ff;"> -DEC_MTHLY (+) [0: [DEC]-[NOV]]</span></p><p>I tried to indent as best as I could. But this is the typeof stuff I have. And you say I shouldn't have any of theseformulas in the different leaves?</p><p> </p><p> </p>
-
BSO member formula conversion to ASO MDX
Hi guys !
I am trying to convert the following BSO member formula to ASO.
My BSO member formula is :
"FPP70" -> "FPP" / "B70" -> "AP";
In ASO member formula I tried : (FPP70, FPP / B70, AP) but I have a syntax error with '/'
Can anyone please help me out with this?
Thanks,
Jonathanoops sorry, I made a minor mistake. you don't need the {}
It should be
([FPP70],[FPP]) /([ B70], [AP])
If this is a subset of another calculation you would wrap the whole thing in parens
(([FPP70],[FPP]) /([ B70], [AP]))
([FPP70],[FPP] ) is a tuple -
If I am evaluating a member using isUDA([Organization].CurrentMember,"Rework") on a shared member that is the current member, will the isUDA function return a true value if the base member is tagged with UDA value of "Rework"?<BR><BR>
If you use the IsUda function within an IIF statement then you would have to specify a true part and a false part.IIF (Search condition,true part,false part)
-
Hi,
Have a calc: Qty = Rate * 100
However the 100 needs to change based on whatever criteria user has. Users say it could range from 1 to 250 and they want to be able to choose it at time they retrieve. I'm thinking the only way to do this would be to create 250 Account members named 'Qty 1', 'Qty 2', 'Qty 3' etc..... and then have each formula with the corresponding value from 1 to 250?
Qty 1 = Rate * 1
Qty 2 = Rate * 2
Qty 3 = Rate * 3
Then they just choose the proper Account?Many will disagree with me, but I don't think it is a problem a calculation should solve. Because there is no rule or reason in place to determine the value. I think the best solution is to just store the rate and let the use calculate the result in their fornt end tool
-
ASO MDX IsLevel weirds result when a parent with only a child
Hi,
I am using the function IsLevel but I find funny results when I apply it with a parent member with only a child.
The result of the function is the level of the child
I am doing it in Essbase 11.1.2.2
Has anyone had the same issue?Hi Tim,
It is true, it is an implied share issue.
With the parent as never share works.
I don't remember that it happens with BSO, not with the attributes of the members (level, generation, UDA). -
Hi all,
I need some help with MDX functions. I want to use ASO function similar to @sumrange. Please advice.
ThanksHi Glenn,
Thanks for your quick reply, i'll try and let you know if i need more help on it.
Can you also help me with the other problem if possible :
Re: ASO cube
Please advice. -
BSO to ASO Formula Conversion - Help Needed
ASO is not my forte...I am trying to get a simple formula to work in ASO cube as part of BSO->ASO conversion.
If it is level 0 entity, the formula is (Last Shipped (PU) * Part Volume)...works fine.
If its upper level, it should just sum the values of its children. The BSO equivalent that we typically use is @SUM(@CHILDREN(@CURRMBR("Entity"))).
I attempted the same in the ASO MDX script as shown below, it is not yielding me the correct result....any thoughts why this is not working?
Thanks in advance.
Nima
Member Formula*
CASE WHEN ISLEVEL(Entity.CurrentMember, 0) THEN+
Last Shipped (PU) x Part Volume+
ELSE+
SUM(Children(Entity.CurrentMember))+
END+
Edited by: Nima.V on Nov 12, 2008 7:12 PMHave you tried specifying which measure you want it to sum?
e.g.
CASE WHEN ISLEVEL(Entity.CurrentMember, 0) THEN
Last Shipped (PU) x Part Volume
ELSE
SUM(Children(Entity.CurrentMember), [Measure].[Part Volume])
END
also I'm not sure whether the SUM is correct. This might work as it definately specifies the tuples:
SUM({Products.CurrentMember.children},[Measures].[Part Volume])
hope it helps,
Gee
Maybe you are looking for
-
I am playing card games at Yahoo in my iMac OS X version 10.6.8. Just recently it won't let me play anymore as it won't upload. Kinda frustrating. How can I fix it. The only thing that I know I have done is did an update on my computer.
-
How do I set up file sharing between iMAC and MacBook Pro?
I am unable to use "file sharing". When trying to connect as a "registered user" it asks for my server password. What is that? I have tried every password I think it could be. I also can not connect as "using an Apple ID"
-
How to unload externally loaded swf which contains 3D Carousel?
Hello to all I am learning AS3 and have been taking on various tutorials found on the net. While learning about AS3 I came across a lesson on http://tutorials.flashmymind.com/2009/05/vertical-3d-carousel-with-actionscript-3-and-xml/ titled "Vertical
-
ITS Dumps while Approving Shopping cart as Manager
Hi, I logged into SRM system as a Manager to Approve Shopping cart. Click Start Enterprise Buyer Inbox link and then Click Approve icon for a shopping cart. The following errors displayed Error when processing your request What has happened? The URL
-
WS-C2960X-48LPS-L - "Hardware is not present"
I have a 2960 stack with 3 switch members. If I show an interface summary I can see al switches, but none of the ports on the 3rd switch show active. If I do a show interface on any of those interfaces I see "Hardware is not present." Another weir