Page 1 of 1

Can a private subset be created via TI?

Posted: Fri Jan 09, 2009 3:49 am
by Paul Coggan
Has anyone used TI to create a private subset?

Re: Can a private subset be created via TI?

Posted: Fri Jan 09, 2009 4:23 am
by Alan Kirk
Paul Coggan wrote:Has anyone used TI to create a private subset?
Not directly possible, I don't think. TI's run as Administrator, not as the person who triggered them, if any.

If a chore is manually triggered then any changes to the data are logged under that person's name (which means that TM1 must know who pulled the trigger), BUT everything it does is based on Public objects. This makes sense because if the chore were to be scheduled, there wouldn't be anyone to create private objects for.

The closest workaround I can think of would be:
(a) Create the subset as a public subset; and
(b) Use a batch file (called from the ExecuteCommand function) to move the .sub file into the relevant user's private folder.

However the user would need to log out and back in to see it, and it may be a little too "tricky" to be adviseable.

Re: Can a private subset be created via TI?

Posted: Mon Jan 12, 2009 11:45 pm
by paulsimon
Paul

Another approach is to use the old TM1 Macros, eg

Code: Select all

Sub AddSubset()

    Dim bResult As Boolean

    bResult = Application.Run("SUBDEFINE", "netaserv:Test_Meas", "MyPrivateSubset", Range("F7:F7"))
    Debug.Print bResult

End Sub
In this Range("F7:F7") is a range on the sheet that has a list of elements to be inserted in to the subset.

Of course it is better to use a named range and include error checking etc but this should get the idea across.

As well as creating the subset, it can also be used to update an existing subset.

In the opposite of TI, it only seems to work on Private Subsets.

Regards


Paul Simon

Re: Can a private subset be created via TI?

Posted: Thu Jun 10, 2010 5:33 pm
by jpm_de
Hi all,

so there is definetly no way to create a real dynamic and private subset, based on (TM1) MDX and with TI?

A workaround would be to create an active form with a named range as input of the SUBDEFINE function. Any more suitable suggestions?


Anyway, did I mention that I want a MDX param for SUBNM!?! :shock:

Re: Can a private subset be created via TI?

Posted: Thu Jun 10, 2010 9:57 pm
by paulsimon
Hi

Given the absense of any other replies since Jan I would guess so.

Apart from my earlier suggestion of the SUBDEFINE Macro, there is no other way. Potentially since TI can trigger a command, then I guess that you could get TI to initiate this. One other alternative is to use the API. This might be a little easier to trigger from TI.

A problem I have solved in the past is using TI to drill thru from one cube to another. This involved creating a custom view on the destination cube. The View on the second cube had to reflect the selections on the first. As there could potentially be lots of users doing this, the View on the second cube needed to be distinct. I therefore created a View by appending the user name of the person running the TI to the std View Name eg zDrill_psimon. This then meant that each user had their own View, and therefore the Views did not get corrupted by someone drilling again, but with different selections in the first cube, resulting in different selections in the view on the second cube. I needed to add on the user's name since TI could only create a public View. It would have been much nicer to be able to create a private view, then I would not have had to bother about adding on the user name to make the View name unique. The zDrill Views also would not have cluttered up the list of available Views. It was also difficult to tidy up, since you could not delete the View as it was obviously in use. The only solution was a nightly chore.

In general Macros create private subsets and views, while TI always creates public.

Regards


Paul Simon

Re: Can a private subset be created via TI?

Posted: Fri Jun 11, 2010 9:47 am
by jpm_de
Hi Paul,

My thougts/consequences exactly... I just wondered, if it might slow down TM1 (logins) significantly, 'cause there would be a few hundred public subsets. Even with nightly deletion.

Nevertheless, this seems to be the only way. Thank you very much!

Best regards

Jan