Question on MDX

Dear Experts,
Can any body explain me wht is MDX & importance in BPC.
And how can i execute this below code.
IIF(Account.H1.CurrentMember is Account.H1.http://All Account.H1 And
Account.H3.CurrentMember is Account.H3.http://All Account.H3,
(Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH, NULL)
And Where i can see output.
I saw in a Function "AvgBal(FSA200)" in Formula Column of Account Dimension in a Sample Application. From where i can call this function & see out put.
Please explain.
Cheers,

Hi there is one logic library file called MDX.lgl
there you would see all mdx queries within *function and *end function something like that.
Then in your account type dimension member sheets excel file you have one more sheet called options
there write the below script
*include MDX.Lgl
then you can customise your own MDX functions and call them
Thanks and Regards
Harish B K

Similar Messages

  • 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

  • Question on MDX Dimension Formula.

    Dear Experts,
    Can any body explain me wht is MDX & importance in BPC.
    And how can i execute this below code.
    IIF(Account.H1.CurrentMember is Account.H1.[All Account.H1] And
    Account.H3.CurrentMember is Account.H3.[All Account.H3],
    (Account.H2.IFRSTRATE/Account.H2.WKSYR)*Account.H2.WKSCURMTH, NULL)
    And Where i can see output.
    I saw in a Function "AvgBal(FSA200)" in Formula Column of Account Dimension in a Sample Application. From where i can call this function & see out put.
    Please explain.
    Cheers,

    Hi Vadim,
    okay, let me explain the full Excel sheet in detail. It contains several reports all based on the same rows (accounts) and with the same dimensions in columns (datasource and entity). The difference is the members selected for datasource and entity. The whole report on one screenshot doesn't work, so here is the top left part:
    The yellow columns are the first report, the grey column to the right is my local member. Then follows the next report with a few columns, then another and so on.
    If we look at the local member in detail:
    you can see the formula is a sum listing individual members. In my options, the local member recognition is on and the option to use the position in axis is off.
    This is the definition of the local member
    My first attempt was to replace the formula with the one given above.
    the result is
    the sum now has only one element.
    I then tried to change the local member to this.
    which made the column disappear completely.
    Thanks,
    Arnold

  • Filter Function in MDX statement

    Hi Experts,
    I have a question on MDX, i hope this is the right place to post.
    I want to exclude a certain value of an infoobject in MDX output. How can i achieve this?

    Though not recommended for huge sets - are you not able to use things like not equal or not in list in your query filters?
    Anyways google " OLAP universes best practices" - its a good document

  • Running MDX Query in BEX

    I've a question regarding MDX Query .
    1.Can we run MDX Query in BEx.
    2.If yes , then can you please tell me how and where can we run MDX Query in BEx.
    Regards,
    -Neha

    Hello,
    BEx does not support MDX. You can use MDXTEST transaction to generate the MDX select statements against queries or infocubes but it cannot be used with BEx.
    Thanks,
    Michael

  • MDX Issues

    Dear Fellow BWers,
    I have been trying to create MDX statements and am at a fairly advanced stage with the queries that I have written, however if any of you can supply me with answers to the following question I would be most grateful:
    1. Having looked at the usual suspects (help.sap.com, blogs, forums, etc. ) I have been unable to find comprehensive documentation on how to use Set Functions, Member Functions and Numerical Functions - is there any such documentation out there? I have tried using the documentation offered by MSDN however this seems different to the way SAP want you to use MDX.
    2. Is there any program/transaction/BAPI (other than MDXTEST / MDDataSetBW / MDDataProvider BW) where MDX statements can be created off the back of existing BEx Queries? Is there anywhere we can see MDX queries being executed in the database? I have several queries which will each need to be created as individual MDX statements.
    3. The specific problem that I am trying to solve is how to get the sum rows (as per results from BEx Query) to appear in my MDX statement. The furthest I have got is as follows:
    WITH MEMBER [Measures].[x] AS
         'AGGREGATE( {
           [Measures].[C8E071GV6C8ACC8HNJIAFQCZ7],
           [0CUSTOMER].[LEVEL01].MEMBERS } )'
    SELECT {
    [Measures].[C8E071GV6C8ACC8HNJIAFQCZ7],
    [Measures].[x]  }
    ON COLUMNS,
    NON EMPTY
    CROSSJOIN
       { [0SALESORG].[LEVEL01].MEMBERS },
       { [0CUSTOMER].[LEVEL01].MEMBERS }
    } ON ROWS
    FROM [CUBE/QUERY]
    However in this case the x column does not yield any results.
    Please advise on the next steps that I can take.
    Thanks in Advance,
    Saad.

    http://stackoverflow.com/questions/21463364/mdx-sub-select-vs-where-performance-issues
    no sense in leaving points on the table ;-)
    BI Developer and lover of data (Blog |
    Twitter)

  • MDX 'TopPercent' function

    The Essbase Tech Reference gives the following MDX code as an example of the TopPercent function:
    SELECT
    CrossJoin(
    *[Product].[Diet].Children,*
    *[Year].Children*
    ON COLUMNS,
    TopPercent(
    *[Market].Levels(0).Members,*
    *25,*
    *[Product].[Diet]*
    ON ROWS
    FROM Sample.Basic
    *WHERE ([Scenario].[Actual],*
    *[Measures].[Sales])*
    The output of this is supposed to give us the markets that make up 25% of sales for all products under "Diet". In the example, Illinois, California and Colorado are shown as being the markets that make up 25% for all products under "Diet". This strikes me as a unrealistic, i.e. how is it that only these three states always make the top 25% ? What would the output be if New York was in the top 25% for just one of the products, say Diet.200-20? How would this be captured in the output? Would the output contain a fourth row for New York and only have a value in one cell, i.e. NewYork->200-20->Sales ?
    Appreciate any thoughts on this..
    thanks,
    Axe

    Hi Brian, i do not have experience in using MDX in EVDRE but i HAVE used it for EVEXP.
    Essentially we use the filter parameter of the EVEXP to supply the MDX statement i,e:
    (([ACCOUNT].[INPUT_FLG],[CATEGORY].[GROUP1],[DATASRC].[INPUT],[INTCO].[Non_InterCo],[RPTCURRENCY].[LC],[MEASURES].[YTD],[TIME].[FY10.M1])<>0)
    if you require an example of returning top 10 or something similar please let me know, but i believe the document you are refering to has some examples.
    If your question only MDX in context of EVDRE then, i hope an expert can inform me also as i am not aware of such functionality. I assumed the scope of the document was regarding 'filters' in EVEXP.
    Please let me know how you get on.

  • SUBSELECT vs WHERE performance issues MDX

    Hello,
    I've built SSRS report that gets CustomerID as parameter and runs MDX query with it.
    With WHERE clause it only takes 1 second to run, while if I pass it to SUBSELECT clause it takes 13 seconds!
    And I have to use SUBSELECT because I want to show the member's name in the results
    The syntax of the long query is:
        SELECT NON EMPTY { [Measures].[Revenue] } ON COLUMNS,
        NON EMPTY { ([CUBE DIM DATE].[Month CD].[Month CD].ALLMEMBERS *
        [CUBE DIM CUSTOMER].[Account MNG].[Account MNG].ALLMEMBERS *
        [CUBE DIM PRODUCT].[Product CD].[Product CD].ALLMEMBERS ) }
        DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME, MEMBER_KEY ON ROWS FROM
        ( SELECT ({ [CUBE DIM CUSTOMER].[Customer No].&[111111]})   on 0 from   [CUBE_Prod] )
    So if instead of the last line I use:
        [CUBE_Prod]  WHERE [CUBE DIM CUSTOMER].[Customer No].&[111111]
    ...leaving all the rest the same then it only takes 1 second.
    Obviously, I am missing something...
    Please help...
    Thank you in advance
    Michael
    Michael

    http://stackoverflow.com/questions/21463364/mdx-sub-select-vs-where-performance-issues
    no sense in leaving points on the table ;-)
    BI Developer and lover of data (Blog |
    Twitter)

  • 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.

  • 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.

  • 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

  • Basic question with measures & MDX

    Is there a way tell Essbase not to rollup a measure for example if at the lowest customer ID we did a calc X*Y but we don't want the parent customer to aggregate the sum of all of it's children for that one measure...For example if you had a parent and you gave each customer a rating according to sales turnover, when you get to the parent, you don't want to add all the sales turnover %s together, you might do a weighted avg.
    Thanks
    Heather

    Hi Gary,
    Thank you for responding.
    I am finding the syntax for MDX to be much more "challenging" than the Essbase syntax. I miss having the 2 pass.
    Here is the formula:
    case
    when [drawn/undrawn].currentmember=[drawn] and isleaf([customer].currentmember) then [amount]*[risk PCT]*[corp PCT]
    when [drawn/undrawn].currentmember=[drawn] and (not isleaf([customer].currentmember)) then [amount]*[risk PCT]*[corp PCT]
    when [drawn/undrawn].currentmember=[undrawn] and isleaf([customer].currentmember) then [amount]*[Commited PCT]*[corp PCT]
    when [drawn/undrawn].currentmember=[undrawn] and (not isleaf([customer].currentmember)) then [amount]*[Committed PCT]*[corp PCT]
    end
    Basically I need it to calc at level 0 and then roll up for anything not level 0. Now it is SUPER slow. I know it's the isleaf, but not sure what else to do. I tried islevel(customer,0) but didn't work. The customer dimension is HUGE!!! 154000 members stored.
    The data loaded at level 0 for drawn, customer, product, measure, period, year, Costcenter. I just want it to calc at this level and roll up only this portion of the calc. My issue is at level 1, etc it is still doing the amt*risk PCT* Corp pct. Which ultimately is giving us ridiculous answers.
    I pinged some of my colleagues and they said "yeah, this is why we try to do BSO when possible" There has to be a simple way to do this...it's not that complex of a calc....
    Thanks so much for any insight!!!

Maybe you are looking for

  • How to Print a Mail attachment that is a Word document?

    I'm working on a community project and other members of the group are sending their work which they have printed on Word on their PC as attachments to an email. I can open and read the documents, but am not able to print them. I get a popup from Micr

  • Thousand Separator is Not Appearing in Amount Fields iRecruitment

    Hey Guys, My requirment is to show comma as thousand Separator for example 10,000 but its showing 10000. I am facing this issue in all amount fields in iRecruitment like Vacancy Page (Min Propose and Max Propose) and Offer Page. I set the below profi

  • RU255 : No incorrect confirmations were founds

    Dear Experts, When a user log him on the system, the information message "RU255 No incorrect confirmations were founds" appear automatically, before to become on the SAP Menu. I've found the transactions CN30 (project) or IW36 (maintenance&services)

  • Can we order the UC7.0-KP-NFR?

    Dear all, Our BD manager told me that the Cisco NFR program only allowed the partner to purchase the hardware and software once a year. And the total quotation must between the minimum CPL $2300 and maximum CPL $450,000. We have purchased the NFR dev

  • IPad OS update error killed my iPad - Why do I have to pay for a new iPad?

    I have always been a happy iOS user, and my iPad serves me quite well for the last year or so. Lately, upgrading iTunes and iPad to the latest version caused me a lot of hassles and time - that after the iTunes update, I can no loner sync my iPad wit