Currently, I have setup the Apliqo UX development environment which is point to test instance. I have created the dashboard, view, process and etc that are referring to this test instance. After complete the testing, I would like to change all the dashboard, view, process and etc point to productive instance. Is there a way to change this without resetup the dashboard, view, process and etc to point to productive instance?
Actually, I have tried to convert the development to productive environment. The problem is that all the dashboard, view, process and etc are still looking/connecting to test instance. One solution I found out is to resetup everything point to productive instance. But this will be time consuming and I also scare I miss the important configuration. Please advise the best method to handle this situation. Thanks in advance.
in the instances json file,
there is rest-api mapping to the data model.
so you can change this restUri parameter.
To do this kind of changes, I suggest not to use dev/test/prod namings for instance name.
otherwise it can be confusing
After I changed the instance name (from Dev_BEPlanning to SKTest_BEPlanning) in the json file, the data in the view is always loading.
When I check the cube setting, all the cube that have been set previously in Dev_BEPlanning instance is gone. Looks like need to resetup if I change the instance.
Please advise. Thanks.
As already pointed out if you have a completely separate webapp for Test vs Prod then you should have the same instances.json file with the same instance names just different IP & port numbers. Change the IP and/or port numbers and you’re done.
If you have the above setup then all you need to do is use the built-in “UX Toolkit” admin app to export screens to migrate from the test environment and then use the same app in the productive instance to import the new or altered screens.
If however, you have one webapp which has both Test and Prod instances defined in the instances.json file then you can run a utility process in the contentStore }APQ.UX.Dim.App.ReplaceInstanceReference which will automatically replace all references to one TM1 instance with another. There is also the capability when importing apps to replace the instance reference with something else.
This is the exact opposite of what @monder was telling you. Keep the name in instances.json the same, change the IP:portNo
It would be helpful at this point if you actually posted the content of your instances.json file so that we can see if you have multiple instances defined or just a single one. If is just a single one then the recommended setup is that the defined instance name in the UX application is always “BEPlanning” then you won’t ever need to do a find/replace.
Think of the name defined in the instances.json file like a DNS. It’s a semantic reference. In the configuration of all screens within the UX application it is the instance name that is stored. And the instances.json file contains the mapping which determines which TM1 database will actually be queried. If all your screens are set up with a reference to “Dev_BEPlanning” and you change the instances.json file so that there is no longer a reference to “Dev_BEPlanning” then this is like deleting a DNS. Of yourse your screens don’t work! Becasue they are looking for Dev_BEPlanning which is now undefined.
Yes, if I use the same instance name (DEV_BEPlanning) for productive webapp, it is working. However, I would like to change the instance name from DEV_BEPlanning to PROD_BEPlanning (in this case I used SKTest_BEPlanning). Because DEV_BEPlanning is stand for development instance and I also didn’t know that I need to use the same instance name for different webapps that have the same screens with different instance.
I have two separate webapps with separate instances.json file setting
How to settle if I wish to change the instance name with separate webapp? Is it possible? Please advise. Thanks.
Yes it’s possible. As previously stated to do this you need to run the }APQ.UX.Dim.App.ReplaceInstanceReference process in the content store TM1 instance. I would advise you to run the process in BOTH your prod and dev content stores
- In prod run the replace instance name utility to change “PROD_BEPlanning” to “BEPlanning”
- In dev run the replace instance name utility to change “DEV_BEPlanning” to “BEPlanning”
Do steps above first. Then …
- In each instances.json file change instance name pointer to “BEPlanning” and save the file
- Restart the Apliqo Application Server
Now the instance name reference is consistent in both environments and all screens and settings should be working normally.
Whichever order you do both sets of steps above your application will be temporarily broken as there will be a mismatch between instance name referenced in the content store vs. instances.json file. So best to simply stop down the Apliqo Application Server while you are doing this.
You can review the documentation here Processes | UX Installation & Configuration Guide | Apliqo End User
Yes, it is working after replacing the instances using }APQ.UX.Dim.App.ReplaceInstanceReference process without resetup the screens and settings. Thanks for your help.