Hi Aude,
That's a creative use of this function I hadn't heard of until now. TM1's REST API obviously allows you to move an element, using the SetElement action (using a reference to the element begin moved instead of specifying a new element, both is valid), but it sounds like you'd be looking for a way to reorder the entire collection of elements of a hierarchy, or subset for that matter, instead.
How about we'd allow you to PATCH a hierarchy and replace the set of Elements by specifying references to the existing elements and just use that to reorder the whole collection in one go. That way we wouldn't care what is what drives that order, and/or if it came from something in TM1 or external, and reorder the whole collection in one go, optionally including new element and removing those there were no longer referenced?
And yes, I'm talking TM1 service/API level, totally understand if you'd be looking at one of the many TM1 front-ends to take advantage of such capability and add support your use case instead, just looking at making this easily available to any and all clients that have similar use case, irrespective if they were creative as you and used SwapAliasWithPrincipleName before or not.
------------------------------
Hubert Heijkers
STSM, Program Director TM1 Functional Database Technology and OData Evangelist
------------------------------
Original Message:
Sent: Tue December 09, 2025 07:01 AM
From: Aude Lameynardie
Subject: SwapAliasWithPrincipalName - No longer valid in PA 3.1.2
Hi Hubert,
The swapalias function was very usefull to reorder dimension elements based on an alias value.
- create an alias with an ordering key
- swapalias
- force dimension to compile
- swapalias again to return to original element name
Reordering element can be done in subsets but it's not the same that having the dimension on right order when the user will call "all elements".
It would be usefull to have a functionnality to reorder dimension elements base on an alias to replace the swapalias function. Thus there will be no regression for clients.
Best regards
------------------------------
Aude Lameynardie
Original Message:
Sent: Tue November 25, 2025 04:04 AM
From: Hubert Heijkers
Subject: SwapAliasWithPrincipalName - No longer valid in PA 3.1.2
Hi Phil,
I think you are getting there with "if used in the right way and the release controls are properly in place", but then we learned the hard way there was still often a dependency on the old principle names, now stored in the alias, and there being many references that were forgotten, or only were uncovered after the alias property got deleted afterwards etc. (trust me when I say some very ugly support cases were the result of the use of this function).
But all that would have been fine if it hadn't been for the fact that this function broke the first rule around stable IDs (in my case for the OData compliant REST API) and that is that stable IDs (read: keys) never change. But even haven gotten used to that fact and most implementers had the out of band knowledge and would have found some defensive coding strategy to guard them if that happened, it wasn't until TM1 v12, where we had to make anything and everything work with High Availability, apart from the fact that the whole service became now REST API only, where we had to decide that we can no longer support this breaking of all stable IDs that we internally now even more depend on (apart from the fact that we keep complete version history under the covers which also highly depends on stable IDs).
We understand the desire to 'rename' any object presumably, but most notably elements in a dimension. There are ideas about how to potentially help this happen, or at least make much easier, but I can tell you one thing, none of them will break our stable IDs ever again (read: might require client/consumers of TM1s REST API to have some new out of band knowledge depending on their use case).
But for now Phil I'm afraid I don't have any good news here, SwapAliasWithPrincipalName is, and will remain to be, gone in TM1 v12.
------------------------------
Hubert Heijkers
STSM, Program Director TM1 Functional Database Technology and OData Evangelist
Original Message:
Sent: Mon November 24, 2025 11:35 AM
From: Phillip Lidstone
Subject: SwapAliasWithPrincipalName - No longer valid in PA 3.1.2
Hi this function is no riskier than exporting cube data and re-hashing a dimension with a new name/alias every time this is required, if it is used in the right way and the release controls are properly in place.
In having to rebuild the cube, you will have to do mappings, output data to ASCII and Re-Load which is all Risky in its own right.
Kind regards
Phil
Original Message:
Sent: 11/24/2025 11:31:00 AM
From: Svetlana Pestsova
Subject: RE: SwapAliasWithPrincipalName - No longer valid in PA 3.1.2
Hi Vera,
No, there is no same function, this was considered as a risky function to have.
So you'd be better off by exporting the cube data , then recreating your dimension with the proper member names and aliases and then importing your data back,
Best regards,
------------------------------
Svetlana Pestsova
IBM Planning Analytics Product Manager
Original Message:
Sent: Fri November 21, 2025 12:14 PM
From: Vera Bachu
Subject: SwapAliasWithPrincipalName - No longer valid in PA 3.1.2
Is there any equivalent function is available in PA 3.1.2 as it saying deprecate?
when i try to use this function in PAW it is saying it is removed in current version of TM1.
Thanks.
------------------------------
Vera Bachu
------------------------------