Conflict with guid and system name

  • 15 December 2017
  • 2 replies
  • 38 views

We have two environment dev and test. There are some smartobjects in dev that we want to move to test, however during deployment smartobject shows conflict and mismatch in guid. I updated guid from smartobject tester and guid looks same. But still during deployment it shows guid mismatch. I tried creating new smartobject with same system name and guid but it always shows conflict and doesn’t give any option to use new version . Smartobject conflict doesn’t let us proceed with deployment.


2 replies

Badge +8

Try deleting the SmartObjects in the environment where the form is being deployed. They let the package and Deploy tool create the SmartObjects. Are you getting the error during deployment? If the Package and Deploy tool creates the smartobjects the issue should resolve.

 

Thanks,

Bryan Peters

This happens when you rename a smartobject in the originating environment prior to ever deploying it to the target environment. The display name changes but the system name is still the original. P&D then unfortunately deploys the smartobject to the target environment successfully the first time but with both the system and display names being the new name. The second and subsequent deployments then error out because the system names in the two environments do not match. To correct this you must save a copy of the smartobject as a .sodx file, and record the original guid (shown in P&D or smartobject tester). If you use Visual Studio for smartobject creation, you'll already have this. If not you can export it from K2 studio. Then you must delete the smartobject from the originating server (easiest using smartobject tester). Next re-deploy the sodx to the originating envirnment either via Visual Studio or importing from K2 studio. Next you must edit the deployed smartobject using the smartobject tester and change the guid to the original guid you recorded earlier. The resulting smartobject will be a pristine copy with the new name as system and display names which matches that on the target server. You can then use P&D as normal from then on.

 

The previous recommendation of deleting the smartobject in the target environment before deployment will also work, but the error will crop up again the next time you re-deploy so you will have to delete it every time.

 

In my experience if you are using multiple environments, renaming a smartobject is more trouble than it is worth exactly because of this issue. If the object exists in all environments and you rename it everywhere, you'll avoid the error but if you ever spin up a new environment the issue will crop up again and you will have to do this process across all other environments to get matching system and display names everywhere.

Reply