-
Notifications
You must be signed in to change notification settings - Fork 76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update }bedrock.cube.data.copy.pro #414
Open
wimgielis
wants to merge
1
commit into
cubewise-code:master
Choose a base branch
from
wimgielis:patch-1
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 major changes: - pCumulate works on strings too - for string cells, a prefix and/or suffix can be provided
Hi Wim, |
Hello Tomas,
When you migrate a customer from on premise to the cloud, the customer
often has CAMID security groups.
If the customer has CAoC, they continue to work. If the customer does not,
we have a problem. All such groups need to be renamed.
You copy over the }Groups dimension as well as all security related control
cubes.
Swapping with an alias does not work on that }Groups dimension and corrupts
the TM1 model. You should not that.
Then, an alternative is to loop over the CAMID groups and create a new
security group for each existing CAMID group. For instance, the new group
name is the old group name except the namespace.
Then you loop over all the security control cubes and use Bedrock to copy
over the fixed cell values from the source groups to the new target groups.
For the }ElementAttributes_}Groups cube, where you can have aliases, this
will be an issue. The new group cannot have the same alias value as the old
security group.
Therefore, if we add a prefix or suffix to make it unique, we are good.
After that, you can remove the old security groups, the alias value becomes
available and you can adjust the alias value on the new security groups to
be again the alias value from the old group.
I have been doing this exercise now 3 times and it's time consuming if you
don't automate it.
Long story, hope it's clear :-)
I can imagine other use cases as well. Granted, not thousands :-) Copying
values from 1 measure to another with a prefix or suffix to avoid a useless
rule or yet another TI to write ourselves.
…------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 21:31 schreef tomasfelcman ***@***.***>:
Hi Wim,
what is the use case of prefix and/or suffix? In what situations do you
fin that useful (just curious)?
I think there should also be specified the delimiter to use when doing the
concatenation of the strings - currently there is | ' ' | being used. Would
it make sense to add something like pStringCumulateDelimiter = ' '?
—
Reply to this email directly, view it on GitHub
<#414 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AEDHULJZF2JYGEIAOFMME6TZRT6XRAVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGA2DQNBSGU>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Well, a delimiter would be good too. It would be an easy fix in the TI
process. Not sure how useful it would be but it also does not cost a lot to
implement.
If we get really wild we could use Expand() too. Something like:
%newvalue% (%oldvalue%)
Such that the old value is between brackets, after the new value.
Probably overkill to implement but let's see what feedback others post.
A delimiter like a dash would already be a good simple option too, besides
my space.
…------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 22:02 schreef Wim Gielis ***@***.***>:
Hello Tomas,
When you migrate a customer from on premise to the cloud, the customer
often has CAMID security groups.
If the customer has CAoC, they continue to work. If the customer does not,
we have a problem. All such groups need to be renamed.
You copy over the }Groups dimension as well as all security related
control cubes.
Swapping with an alias does not work on that }Groups dimension and
corrupts the TM1 model. You should not that.
Then, an alternative is to loop over the CAMID groups and create a new
security group for each existing CAMID group. For instance, the new group
name is the old group name except the namespace.
Then you loop over all the security control cubes and use Bedrock to copy
over the fixed cell values from the source groups to the new target groups.
For the }ElementAttributes_}Groups cube, where you can have aliases, this
will be an issue. The new group cannot have the same alias value as the old
security group.
Therefore, if we add a prefix or suffix to make it unique, we are good.
After that, you can remove the old security groups, the alias value
becomes available and you can adjust the alias value on the new security
groups to be again the alias value from the old group.
I have been doing this exercise now 3 times and it's time consuming if you
don't automate it.
Long story, hope it's clear :-)
I can imagine other use cases as well. Granted, not thousands :-) Copying
values from 1 measure to another with a prefix or suffix to avoid a useless
rule or yet another TI to write ourselves.
------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 21:31 schreef tomasfelcman ***@***.***
>:
> Hi Wim,
> what is the use case of prefix and/or suffix? In what situations do you
> fin that useful (just curious)?
> I think there should also be specified the delimiter to use when doing
> the concatenation of the strings - currently there is | ' ' | being used.
> Would it make sense to add something like pStringCumulateDelimiter = ' '?
>
> —
> Reply to this email directly, view it on GitHub
> <#414 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AEDHULJZF2JYGEIAOFMME6TZRT6XRAVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGA2DQNBSGU>
> .
> You are receiving this because you authored the thread.Message ID:
> ***@***.***>
>
|
I also admit that I am not a big fan of the 1 in:
AttrPutS( v3, sDim1, v1, v2, 1 );
It avoids clashes of alias values but it can become ugly too.
…------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 22:09 schreef Wim Gielis ***@***.***>:
Well, a delimiter would be good too. It would be an easy fix in the TI
process. Not sure how useful it would be but it also does not cost a lot
to
implement.
If we get really wild we could use Expand() too. Something like:
%newvalue% (%oldvalue%)
Such that the old value is between brackets, after the new value.
Probably overkill to implement but let's see what feedback others post.
A delimiter like a dash would already be a good simple option too, besides
my space.
------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 22:02 schreef Wim Gielis ***@***.***>:
> Hello Tomas,
>
> When you migrate a customer from on premise to the cloud, the customer
> often has CAMID security groups.
> If the customer has CAoC, they continue to work. If the customer does
not,
> we have a problem. All such groups need to be renamed.
>
> You copy over the }Groups dimension as well as all security related
> control cubes.
>
> Swapping with an alias does not work on that }Groups dimension and
> corrupts the TM1 model. You should not that.
> Then, an alternative is to loop over the CAMID groups and create a new
> security group for each existing CAMID group. For instance, the new
group
> name is the old group name except the namespace.
> Then you loop over all the security control cubes and use Bedrock to
copy
> over the fixed cell values from the source groups to the new target
groups.
>
> For the }ElementAttributes_}Groups cube, where you can have aliases,
this
> will be an issue. The new group cannot have the same alias value as the
old
> security group.
> Therefore, if we add a prefix or suffix to make it unique, we are good.
> After that, you can remove the old security groups, the alias value
> becomes available and you can adjust the alias value on the new security
> groups to be again the alias value from the old group.
>
> I have been doing this exercise now 3 times and it's time consuming if
you
> don't automate it.
>
> Long story, hope it's clear :-)
>
> I can imagine other use cases as well. Granted, not thousands :-)
Copying
> values from 1 measure to another with a prefix or suffix to avoid a
useless
> rule or yet another TI to write ourselves.
>
>
> ------
>
> Best regards / Beste groeten,
>
> Wim Gielis
> IBM Champion 2024
> MS Excel MVP 2011-2014
> https://www.wimgielis.com <http://www.wimgielis.be>
>
>
> Op do 15 aug 2024 om 21:31 schreef tomasfelcman ***@***.***
> >:
>
>> Hi Wim,
>> what is the use case of prefix and/or suffix? In what situations do you
>> fin that useful (just curious)?
>> I think there should also be specified the delimiter to use when doing
>> the concatenation of the strings - currently there is | ' ' | being
used.
>> Would it make sense to add something like pStringCumulateDelimiter = '
'?
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <
#414 (comment)>,
>> or unsubscribe
>> <
https://github.com/notifications/unsubscribe-auth/AEDHULJZF2JYGEIAOFMME6TZRT6XRAVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGA2DQNBSGU>
>> .
>> You are receiving this because you authored the thread.Message ID:
>> ***@***.***>
>>
>
—
Reply to this email directly, view it on GitHub
<#414 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AEDHULL3C4FHB7XH6QGKGS3ZRUDF5AVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGEZDSNJXGE>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Another option to solve the problem of renaming/duplicating groups in PAoC
(or elsewhere):
you could delete groups or not transfer them by copying the }Groups
dimension from on premise.
Then add the desired group names in the target environment. And use Bedrock
or your own processes to dump the cube cells to text files and import again
on the new group name.
That seems to be more work and error prone when working with text files.
The TM1 REST API could be a solution but then the source environment needs
to be accessible too with the REST API. Older environments (I am migrating
some such) before TM1 10.2.2 are not. When the TM1 REST API works then
tm1py is a good option too.
For now I stick with using AddGroup and then Bedrock to copy cell values in
control cubes.
…------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 22:35 schreef Wim Gielis ***@***.***>:
I also admit that I am not a big fan of the 1 in:
AttrPutS( v3, sDim1, v1, v2, 1 );
It avoids clashes of alias values but it can become ugly too.
------
Best regards / Beste groeten,
Wim Gielis
IBM Champion 2024
MS Excel MVP 2011-2014
https://www.wimgielis.com <http://www.wimgielis.be>
Op do 15 aug 2024 om 22:09 schreef Wim Gielis ***@***.***>:
> Well, a delimiter would be good too. It would be an easy fix in the TI
> process. Not sure how useful it would be but it also does not cost a lot
> to
> implement.
>
> If we get really wild we could use Expand() too. Something like:
>
> %newvalue% (%oldvalue%)
>
> Such that the old value is between brackets, after the new value.
>
> Probably overkill to implement but let's see what feedback others post.
> A delimiter like a dash would already be a good simple option too,
besides
> my space.
>
> ------
>
> Best regards / Beste groeten,
>
> Wim Gielis
> IBM Champion 2024
> MS Excel MVP 2011-2014
> https://www.wimgielis.com <http://www.wimgielis.be>
>
>
> Op do 15 aug 2024 om 22:02 schreef Wim Gielis ***@***.***>:
>
> > Hello Tomas,
> >
> > When you migrate a customer from on premise to the cloud, the customer
> > often has CAMID security groups.
> > If the customer has CAoC, they continue to work. If the customer does
> not,
> > we have a problem. All such groups need to be renamed.
> >
> > You copy over the }Groups dimension as well as all security related
> > control cubes.
> >
> > Swapping with an alias does not work on that }Groups dimension and
> > corrupts the TM1 model. You should not that.
> > Then, an alternative is to loop over the CAMID groups and create a new
> > security group for each existing CAMID group. For instance, the new
> group
> > name is the old group name except the namespace.
> > Then you loop over all the security control cubes and use Bedrock to
> copy
> > over the fixed cell values from the source groups to the new target
> groups.
> >
> > For the }ElementAttributes_}Groups cube, where you can have aliases,
> this
> > will be an issue. The new group cannot have the same alias value as
the
> old
> > security group.
> > Therefore, if we add a prefix or suffix to make it unique, we are
good.
> > After that, you can remove the old security groups, the alias value
> > becomes available and you can adjust the alias value on the new
security
> > groups to be again the alias value from the old group.
> >
> > I have been doing this exercise now 3 times and it's time consuming if
> you
> > don't automate it.
> >
> > Long story, hope it's clear :-)
> >
> > I can imagine other use cases as well. Granted, not thousands :-)
> Copying
> > values from 1 measure to another with a prefix or suffix to avoid a
> useless
> > rule or yet another TI to write ourselves.
> >
> >
> > ------
> >
> > Best regards / Beste groeten,
> >
> > Wim Gielis
> > IBM Champion 2024
> > MS Excel MVP 2011-2014
> > https://www.wimgielis.com <http://www.wimgielis.be>
> >
> >
> > Op do 15 aug 2024 om 21:31 schreef tomasfelcman ***@***.***
> > >:
> >
> >> Hi Wim,
> >> what is the use case of prefix and/or suffix? In what situations do
you
> >> fin that useful (just curious)?
> >> I think there should also be specified the delimiter to use when
doing
> >> the concatenation of the strings - currently there is | ' ' | being
> used.
> >> Would it make sense to add something like pStringCumulateDelimiter =
'
> '?
> >>
> >> —
> >> Reply to this email directly, view it on GitHub
> >> <
>
#414 (comment)>,
>
> >> or unsubscribe
> >> <
>
https://github.com/notifications/unsubscribe-auth/AEDHULJZF2JYGEIAOFMME6TZRT6XRAVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGA2DQNBSGU>
>
> >> .
> >> You are receiving this because you authored the thread.Message ID:
> >> ***@***.***>
> >>
> >
>
> —
> Reply to this email directly, view it on GitHub
> <
#414 (comment)>,
> or unsubscribe
> <
https://github.com/notifications/unsubscribe-auth/AEDHULL3C4FHB7XH6QGKGS3ZRUDF5AVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGEZDSNJXGE>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
—
Reply to this email directly, view it on GitHub
<#414 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AEDHULKZ4VDT5QXYAX74PNLZRUGHZAVCNFSM6AAAAABMSEUVFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGE4TAMRSGE>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
2 major changes: