MDX question

hi allAgregate storage databasei have dim [MEASURES] where some elements have UDA "NoScl"and dim [SCALE] where is two elemetsa1 - all data imports into itand a2 which has member formula iif (isuda([MEASURES].currentmember, "NoScl"), [a1]/1000)when i try to verify this formula essbase writes me "sintax error in input MDX query on line 1 at token ')' a2what is wrong with formula?if possible please mail me at [email protected]

I have this issue with Essbase 7.1 on a Unix server (Sun).If I remember correctly, when you remove the [] from any member name in your formula, then the formula validates.The problem is that the formula won't work properly.This should be solved in 7.2.Denis

Similar Messages

  • Statistical calc with MDX question (Mode function as an excel)

    Hi All,
      I need to create an MDX Calc to Returns the most frequently occurring, or repetitive, value in an array or range of data.
      For example, the mode of 2, 3, 3, 5, 7, 10 is 3.
      In Excel I use the MODE() function but I don't know how to do this in MDX and add it as a measure in Universe.
      I can't do the formula in WEBI because we have big data volume and I can't retrieve all the customers in WEBI.
      We have SAP BW 7.0 and SAP BusinessObjects XI 3.1 fix pack 1.3
    Thanks in advance.

    Hi,
    it looks like you created the entry twice so I would suggest you close on of them:
    Statistical calc with MDX question (Mode function as an excel)
    I don't think that those kind of statistical functions are available in MDX. you can always go to se37 and use the bapi_get_functions to see the list of supported functions.
    Ingo

  • Essbase MDX question

    Hi there
    I am at a client where I have to do comparative store analysis. Basically with MDX I need to do the following:
    When doing comparable store analysis on a daily level in my Time dimension a store must have traded a year ago on the same comparable day as per the company's trading calendar.
    When doing comparable store analysis on a weekly level a store must have traded a year ago for the full same comparable previous year's week (i.e. all the days in the week) as per company's trading calendar.
    If the criteria is not met #missing must be returned else the day or week value.
    On day level my MDX works fine:
    CASE
    WHEN
    IsLevel([Entity].CurrentMember, 0) AND
    IsLevel([Time].CurrentMember, 0) AND
    NOT IsEmpty([Periodicity].[LY])
    THEN
    ([LY], [Act], [Time].CurrentMember, [Entity].CurrentMember, [Account].CurrentMember)
    END
    The question is on a week level how do I check if a store traded on every single day of the same week last year. Getting the week is no problem, but checking every child of that week.
    Just another point on this: I need to do this on month, quarter etc levels as well, so hard coding to check from day 1 to 7 will not suffice.
    Thanks
    Johan

    You are correct, currently Essbase does not support updates via MDX.

  • Filtring and more/MDX Question

    Hello,
    I sure am new in MDX and since it differ so much from standart SQL Im looking for some help. For example in this particular query:
    select
    nonEmptyCrossJoin(
    [Customer].[Country].Members,
    [Customer].[State-Province].Members
    on 0,
    nonEmptyCrossJoin(
    [Date].[Calendar Year].Members,
    [Product].[Category].Members
    on 1
    from [Adventure Works]
    where (Measures.[Internet Sales Amount]) 
    1. How can I apply filter so I will only get results for 'Bikes' sold in particular period of time?
    2. Is it possible to remove all columns that contains at last one null value?
    3. And is it possible to apply filter on Sales Amount for example to obtain only values greater than 2.000.
    The database is AdventureWorks for analysis service from microsoft.
    Regards, Uszkers

    Try the query below. It gives u the ability to filter bikes only and sales amount > number.
    It is possible to put Country/state in your columns such as Country * state crossjoin, but this would mean you kinda get an odd table with multiple columns and a large amount of cells per column, and than it is not possible to filter. (Cause you will be
    forced to filter an entire row or entire column), if you know what I mean :)
    Please try query below as I'm new to MDX myself and still learning :)
    select
    ORDER(
    NONEMPTY(
    [Measures].[Internet Sales Amount] 
    BDESC
    ) on COLUMNS,
    FILTER(
    NONEMPTY(
    [Date].[Calendar Year].[Calendar Year]
    *[Product].[Product Categories].[Category].&[1]
    *[Customer].[Customer Geography].[Country]
    *[Geography].[State-Province].[State-Province]
    ,[Measures].[Internet Sales Amount]
    [Measures].[Internet Sales Amount] > 2000000
    )on ROWS
    FROM [Adventure Works]

  • Invalid mdx question

    Hi experts,
    I've built a dashboard that uses QAAWS against a BEx query. The user selects a parameter from a dropdown list and this is passed to the query. The dropdown is populated via another BEx query. Certain selections cause the error below but others work fine..
    A database error occured. The database error text is: The MDX query SELECT  { [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1N6LMLMAQHVEHK2ZSLZC3A], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1N6LMLMC9V42075V0QU4MU], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1N6LMLMDT8CPIU8Q8VOX6E], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09V98NHYRCDSG9Z852], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09VAS0QM9ZGNOEU0OM], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09VCBDZ9SMJIWJOT86], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09VD32LLJY2YIM47HY], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09VDUR7XB9ME4OJLRQ], [D9E1N6LMLM9YT92Q8JK6JJXTI].[D9E1RGK09VEMFU92L5TQQZ01I] }  ON COLUMNS , NON EMPTY  { [D9EXRDLJHLX0KVD68TZRK6KFQ].[D9EXVHBZ2PH1IWV1APPDCBNQU], [D9EXRDLJHLX0KVD68TZRK6KFQ].[D9EXUY6POKB6YZZPNWJYWP4VQ], [D9EXRDLJHLX0KVD68TZRK6KFQ].[D9EXUY6POK8VX50FPA94PEY2E], [D9EXRDLJHLX0KVD68TZRK6KFQ].[D9EXUY6POK7CJWCX27DWKK5IU], [D9EXRDLJHLX0KVD68TZRK6KFQ].[D9EXUY6POK6KVA15QNYAI4R92] }  DIMENSION PROPERTIES MEMBER_CAPTION ON ROWS FROM [Z_M25/Z_M25_Q023] SAP VARIABLES [!V000002] INCLUDING 58DFDF3E4D542B47B8128DD98EFB7B6C failed to execute with the error Invalid MDX command with DFDF3E4D542B47B8128DD98EFB7B6C.
    Does this mean that the value of the prompt "DFDF3E4D542B47B8128DD98EFB7B6C" is invalid? If I run the query in Analyzer and paste this value in the query executes successfully.....
    Thanks

    Just an update on this one in case anyone else has the same issue. Turns out to be a bug. See SAP Note 1505565 - "Error WIS 10901 when the SAP prompt value starts with a digit/number in Xcelsius".
    Workaround was concatenating double quotes around the prompt value which the MDX parser accepted.

  • Another MDX question.

    In MDX, What is the correct way to retrieve the set of level-0 descendants of a CurrentMember that is at Level-2 or higher? I am using the following:
    *count(TopPercent([Region].CurrentMember.Levels(0).Members , 80, [Measures].[SALES] ))*
    This is counting ALL level 0 members, not just the ones that are descendants of the CurrentMember.. I also tried to use:
    *count(TopPercent(Leaves([Region].CurrentMember) , 80, [Measures].[SALES] ))*
    but in this case, I get #Missing values for my Count cells!
    Lastly, in the hope of simply subtracting Level 1 members from the set of all descendants I also tried the following:
    *count(TopPercent(Descendants([Region].CurrentMember) , 80, [Measures].[SALES] )) - count(TopPercent([Region].CurrentMember.Children, 80, [Measures].[SALES])*
    this gives me a count which is 2 less than the expected value. What is the best way of getting at CurrentMember level-0s ?
    thanks.
    Edited by: axe1 on Oct 7, 2010 12:34 PM

    I simply want a function that will return a set of all level 0 members for a given Current Member. My Current Member can be at any level higher than 0. If my CurrentMember is at Level 1 then this is simply achieved by using *[<DIM_NAME>].CurrentMember.Children*. But what do I use if my CurrentMember is at Level-2 or higher. I tried using the following:
    1. *[<DIM_NAME>].CurrentMember.Levels[0].Members* -> this doesn't work
    2. Leaves([<DIM_NAME>].CurrentMember) -> this doesn't work either
    3. I also tried *(distinct (union (Descendants( [<DIM_NAME>].CurrentMember), ( [<DIM_NAME>].CurrentMember.Children)* -> this does work when CurrentMember is at Level 2, but at Level 3 and higher it doesn't work, because the resulting set contains both level 1 and level 0 members..
    Again, I just want to be able to get a set of Level 0 members that are descendants of a given CurrentMember...
    Descendants([<DIM_NAME>].CurrentMember.Levels[0].Members) doesn't work either. This doesn't pass verification itself, because we can't pass a set as an argument to the Descendants function.

  • MDX question using MDXTEST

    Hello.  I was wondering if anybody has any experience using MDX to return an XMLA result set for a query that contains a hierarchy. Any help of simple example would be helpful.  We are trying to use the MDX web service within BI and are testing out various MDX queries.
    Thank you.

    Hello Aron,
    Please see this doc
    [Load Testing Web Services in ESA with Custom Examples|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/60f4cabe-0401-0010-fbba-fae6c7a8d29e]
    See this blog as well
    [SAP Network Blog: Work with XMLA Web Service for BI Data in External Applications!|/people/prakash.darji/blog/2006/09/04/work-with-xmla-web-service-for-bi-data-in-external-applications]
    Other docs
    [Web Dynpro Java Application to Execute MDX Query Using the Business Intelligence Java SDK|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/60f35908-ecd4-2910-6c89-e75e1054d9d1]
    [Using the MDX Editor (SAP Library - SAP NetWeaver Visual Composer: User Guide)|http://help.sap.com/saphelp_nw04/helpdata/en/45/f33574fee1487f9b8487d2986a2658/frameset.htm]
    Thanks
    Chandran

  • MDX Question - roll up to parent value

    Hi,
    I have a relatively simple issue that I am not able to solve.
    I have the following calculation as a calculated member in my cube:
    SUM([Territory].[State - City Hierarchy].[City].CurrentMember.Parent, [Measures].[Total Sales])
    What I would expect to see is that the City is assigned the total sales for the State.  So for example, if Total Sales is:
    WA - Seattle - 15
    WA - Tacoma - 10
    Then instead of seeing the above I would instead see:
    WA - Seattle - 25
    Wa - Tacoma - 25
    However with my code as is, this field is simply null.  Can anyone assist?

    Hi,
    Try removing the reference to the level of the hierarchy - that is;
    SUM([Territory].[State - City Hierarchy].CurrentMember.Parent, [Measures].[Total Sales])
    Also, you wont need the sum, so you can just define the measure as;
    ([Territory].[State - City Hierarchy].CurrentMember.Parent, [Measures].[Total Sales])
    HTH, 
    Paul
    www.paultebraak.wordpress.com

  • MDX question Named set

    Hai,
    This is my named set fomula in the cube (as 2008r2):
    subset
    (filter(descendants(period.period.year,1),VBA!Val(period.period.properties("id_"))<=VBA!Val(([period_now].item(0)).properties("id_"))),0)
    This shows>> Per1,Per2,Per3 etc.
    But now I want to show it like: Per3,per2,Per1 etc. How can I do that in the formula?
    Tnx for the information.

    Hi MYMY ,
    I would recommend to use the 'order' function (desc or asc depend on you per orde) .
    http://technet.microsoft.com/en-us/library/ms144767.aspx
    Regards, David .

  • Member ID in MDX

    Hi,
    MDX question:  In SSAS 2005 I have a dimension.  this dimension has several members.
    The attribute is designed to have key field (the ID in the source table) and a value field (the code in the source table)
    Now I want to write a MDX statement that gives me the Key field of all members and the value of all members.
    The last one is easy, but how do I get the ID via MDX,
    Nico

     Nico V wrote:
    How will I do it for all members?
    Code Snippet
    with member [Measures].[Keys] as '[Dim].[Hierarchy].currentmember.properties("key")'
    select [Measures].[Keys] on columns,
    [Dim].[Hierarchy].members on rows from
    [Cube Name]

  • Gary broke 1000

    Wow,
    I just noticed Gary Crisci passed the 1000 point mark in answers. He is my go to guy when it comes to MDX questions and its about time he made it to the 1k mark. Gary, I appreciate all of your efforts on the forum an with the ODTUG Hyperion SIG. Keep up the good work and you will soon surpass me. (I would say John Goodwin, but no one can catch that tireless guru. I just want to know when he sleeps, eats or works. I envision him locked up in a room doing nothing but answering posts. For those of us that do real work, 1K is a formitable task.

    I made a statment in jest in my first post about John Goodwin. I said " For those of us that do real work" implying that John does not work. While I don't know John personally, just through the board, I'm sure she works as hard if not harder than many of us. I also think he must not eat or sleep with the amount of time he spends helping others on the board. I think there is a bit of jealousy on my part, seein how much knowledge John has and his willingness to share and still have time to do his real work. While the post was to commend Gary for his efforts, getting 1000 points is tough to do, John is so far ahead of any of us, he could take a holiday for a year (I believe John is in England and so a holiday instead of a vacation) as we would still not catch up to his accomplishment.
    So, John, if I insulted you in any way, I would like to appologize
    GlennS_3 (and/or GlennS_2)

  • Question on MDX Query

    Hi,
    I have the following MDX query
    1.WITH
    2.MEMBER [GE].[GEOSUM] AS 'Sum({[GE].[TX],[GE].[OK]})'
    3.SELECT {[GE].[TX],[GE].[OK]} ON ROWS,
    4.{[Metrics].[Revenue]} ON COLUMNS FROM Cube1.Basic1
    The o/p is follows :
    Axis 1 || Revenue ||
    (TX) || 1000 ||
    (OK) || 2000 ||
    I am trying to create this MDX query dynamically at runtime. Line 1 and 2 would come from a table. I need to add append line 3 and 4.
    Is there any way that I can get the same output by replacing Line 3 (i.e {[GE].[TX],[GE].[OK]} ) with something more generic (like say [GE].[GEOSUM]....).I tried [GE].[GEOSUM].members but this returns me all the dimension members not just TX on OK.
    Is anyone aware of any MDX member functions that I can use to achieve this ?
    Appreciate any help/pointer in this regard.
    Thanks in advance,
    Joel
    --

    Hi Praveen,
    In SSAS, we can use Order() function to specify the order. Please take a look at the following articles:
    Order:
    http://www.ssas-info.com/analysis-services-faq/27-mdx/792-how-in-the-report-can-i-order-date-dimension-members-in-descending-order
    http://www.sqlchick.com/entries/2011/9/30/sorting-descending-in-analysis-services-for-a-date-dimension.html
    If you have any questions regarding Mondrian, please discuss it in the forum below:
    http://forums.pentaho.com/forumdisplay.php?79-Mondrian-Pentaho-Analysis-Services
    Regards,
    Elvis Long
    TechNet Community Support

  • What is MDX on earth? some questions ...

    Hello gurus
    I am planning to use a 3-party tool to make query to acccess data within SAP BW, which intends to replace Bex tools. I heard that OLE DB/OLAP BAPI/XMLA are three options of interfaces, and all those three interfaces are based on MDX. After rough investigation, I found that MDX is a standard query language to query MOLAP storage data. So I have the following questions:
    1. Since MDX only serves for MOLAP data storage, shall I firstly need to convert all the relative infocube in SAP BW from relational data storage into multidimensional data storage?
    2. Since MOLAP only serves for MS SQL 2000 database, so if we use oracle as SAP BW database server, then we cannot use MOLAP? and cannot use MDX?
    3. How to use MDX? Shall I firstly use tcode MDXTEST to generate the MDX code for certain infocubes, and then copy such code into 3-party tool?
    can anybody answer my questions or part?
    thank you very much!

    hi Patrick,
    what 3rd party tools will you use ?
    as mentioned by Anil, 1 & 2 are wrong.
    regarding XMLA, take a look
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/81dffe69-0a01-0010-af96-c0d285359e80
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/67acb63d-0401-0010-b685-b1b87dd78892
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/1d71d190-0201-0010-239a-8b96516bf372
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9d8dd190-0201-0010-069b-98b83362f6a3
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/daa5b390-0201-0010-de8b-f5e8c6625d9b
    hope this helps.

  • Question using Java API in a multi threaded application for MDX queries

    Currently I’m building a web application that makes a lot of MDX calls using the Essbase Java API. Each time we run an MDX call we basically run the following code:
    IEssbase ess = IEssbase.Home.create(IEssbase.JAPI_VERSION);
    IEssDomain dom = ess.signOn(userName, password, false, null, "embedded");
    IEssCubeView cv = cv=dom.openCubeView("view", hostName, appName, cubeName);
    IEssOpMdxQuery op = cv.createIEssOpMdxQuery();
    op.setQuery(false,mdx,false,IEssOpMdxQuery.EEssMemberIdentifierType.NAME);
    cv.performOperation(op);
    IEssMdDataSet mddata = cv.getMdDataSet();
    cv.close();
    My questions is, is this the correct way to use the API in multi threaded environment where many users may be hitting the application at the same time? For every request do I need to create a separate IEssbase object and sign on to an IEssDomain? Or can I use a single IEssbase and IEssDomain object for the entire application? If not should I call the IEssDomain.signOff() method after each user’s request has completed? Which of the above objects are thread safe? I’m using Essabae 9.3.1. Any insight would be really appreciated.
    Thanks
    David

    Thanks for the input friend,
    I should have mentioned that in my application all
    connections to Essbase use the same user name and
    password so the filtering isn’t a concern. This is my
    first Java application using Essbase has a data
    source, I’m used to connecting to various SQL
    databases and I always use a connection pool, how is
    connection pooling handled in the Essbase java API?I'm not sure what happened to it since I never used it, but there used to be something called the High Availability Services or something that was essentially a connection pool for Essbase JAPI connections, but it required an extra license.
    Since you don't care about identity (everyone has full access to everything), you can create your own connection pool, but you'll have to manage your multithreading yourself. Its been this way since the beginning. The C API isn't/wasn't thread-safe either (we tried).

  • Discussions relating to MDX and other Analysis Services or OLAP questions

    In my Analysis services i have DimGeography, DimCustomer, DimDate dimemsions and Sales measure group. 
    By using above cube i have created SSRS report for the Area wise sales. 
    DimGeography will contains the region values.(East, West, North, Souuth,.....)
    DimGeography will contains the Customers details.
    Now the the requirment is for few customers we have to devide the Region wise sales based on customers. 
    For example 
    in case of Customer_1, the sales will be 10% East, 30% West, 25% Notrth, 35% South..  
    in case of Customer_2, the sales will be 15% East, 40% West, 20% Notrth, 55% South..
    in case of Customer_n, the sales will be 30% East, 30% West, 25% Notrth, 15% South..
    The above persentage values will change for every quarter. We will generate report as per new values only. We are not considering old values. We will store these values in Table and will update every quarter These table not having in Cubes.
    Can you please suggest me how to impliment this logic in Report.
    Sudhan

    Thank you both for your comments, I had previous discussed this & the issue with the wrist strap, I'll have to find those comments & repost as advised by nokia support.
    So the sensor isn't idea, the inner ear canal exists unfortunately the sensor cannot deal with it when the sensor goes over the ear under those circumstances. I'll have to repost those comments soon.
    I'll have to check out Slide Answer to see if it helps, thanks.
    Remember, Questions and Answers are required by this Nokia support board. It's very strict, don't complain, criticise or express opinions which does not answer question or your post could be deleted. My friendly warning.

Maybe you are looking for