Planning Analytics

 View Only
  • 1.  MDX Cleanup in PAW and PAFE

    Posted Thu May 11, 2023 09:41 AM
    Edited by Adam Havas Thu May 11, 2023 09:43 AM

    Hello IBM Community,

    Wanted to start a quick dialogue on the MDX Cleanup performed in PAW and PAFE. This conversation may be of interest to @STUART KING / @Xavier Osorio / @Ted Phillips.

    Sincerely appreciate that MDX is front-and-center easily accessible in PAFE (Explorations) and in PAW (Cube Viewer MDX Button). I think most users of PA will agree that MDX is NOT something end-users ever interact with, it's something used only by power users, developers, admins.

    One of the benefits that comes with the MDX experience is what I call MDX Cleanup i.e. fixing of typos in MDX. While I understand the business case for MDX Cleanup, one of the things that's suboptimal is the inconsistency between PAFE and PAW. For example in PAW [dim].hier].[element] is accepted and seamlessly fixed in the background to add the [ to the left of hier. However in PAFE this is rejected as an error. Therefore MDX that I paste from Notepad++ into PAW that I think is working actually is not working when I try to paste it into PAFE. Creates some unnecessary time to troubleshoot that would have been addressed when working in PAW.

    My recommendation may be a bit unconventional. I totally understand MDX Cleanup, would prefer to keep it, and recognize standardizing the cleanup will be a long journey. But for the sake of power users and above, is it possible to get a checkbox in both PAFE and PAW MDX windows when checked disables any adjustments to the provided MDX? That will help ensure that any MDX that is entered is valid.

    Anyone else in the community feel this way and have been impacted by this?


    PS: In before @Hubert Heijkers reminds us that TM1 Server does not do any MDX Cleanup. :-)

  • 2.  RE: MDX Cleanup in PAW and PAFE

    IBM Champion
    Posted Fri May 26, 2023 11:31 AM
    Edited by Libby Ingrassia Wed May 31, 2023 01:56 PM

    Hi Adam,

    I think there are two types of clean-up at play in PAW at least.
    The first is not really on topic but really annoying. When pasting in hand-crafted MDX and committing it, formatting is lost and you are left with a wall of code that is largely indecipherable. Idea to have this behaviour remediated is here.

    The second is what you are referring to and confuses users and developers alike when there is no consistency across the interfaces.
    In a recent discussion someone raised a concern that MDX that works in PAW does not work when applying it to a set in TI.

    Something like the following worked in PAW but not in TI:

    Descendants([dim].[member1]), Descendants([dim].[member2])

    Two sets would be returned or would it be a tuple because of the use of the comma. Does PAW wrap this code in braces for us but when applying in TI, nothing is done so the code fails?

    Switching the comma for a + operator to perform a join seems to work in both PAW and TI, in this example.

    Which is the more correct/stricter syntax that we should follow and apply?
    Should PAW be helping us out by creating sub-par MDX?
    What other indiscretions is PAW forgiving now, only to cash in on future failures?

    George Tonkin
    Business Partner
    MCI Consultants