Symptoms
K2 PD: Default deployment action
Diagnoses
We are trying to understand the reason why K2 PD is setting the deployment action, for some K2 artefacts, as 'Create new View' and 'Create new SmartObject' instead of 'Create New Version of a View' and 'Create New Version of a Smartobject' when the artefacts already exists on the target environment?
We do deployments quite frequently and we are trying to minimize the number of times we have to change the deployment action.
Resolution
Resolution
So, in the event that the items are Create New Version:
1. System Name is exactly the same as the one on the target
2. GUID is exactly the same as the one on the target
3. However, the structure of the item has been changed (eg. They added a field/property to the item so it’s a new version of that item)
In the event of Conflict with item:
1. System Name is exactly the same as the one on the target
2. GUID differs to the one on the target (This can happen when the item is deleted and created from scratch
Further Elaboration:
1. System Name and/or GUID of one matches but not the other. Eg. You have done a “save as” of a Form or View so the System Names are the same, but not the GUID.
2. When you delete/add controls to a Form/View. What this does is causes the Form/View to “remove” the underlying panel control and re-add it with the new control on it. PandampD’s logic then detects that items were “removed” from the Form/View and, based on this, it infers that you have “less” in your package than on your target. We then raise it as a conflict to force the user to make a choice. The actual problem is the fact that SmartForms “deletes” the underlying control before replacing it causing our logic to detect those differences.
3. You deleted Properties/Methods from a SmartObject. Same as above. We detect that your “source” (aka. Your package) has “less” than your target and thus force you to make a decision as we cannot detect if existing artifacts on your target will break due to the removal of these properties/methods.