Dear Forum,

When I import and publish a new application version, the existing processes do not see and use the new forms from the new application version.

How can I make the processes use the new forms?

Best Regards,

Joost van der Schoot

  • No labels

3 Comments

  1. Hi Joost,

    Some changes have been made to only show forms from the current app version itself for to be consistent with the process flow. Existing process instances will only load forms of its current app version.

    You must make changes to the forms of the app version itself.

    https://github.com/jogetworkflow/jw-community/commits/3.1-SNAPSHOT/wflow-consoleweb/src/main/java/org/joget/apps/app/controller/AppWebController.java

    Hope this clears the air.

    Thanks.

  2. Hi Hugo,

    I think I understand this.

    You say "You must make changes to the forms of the app version itself".

    How can I do this when a new version is created by importing an newly developed version from the development environment into the production environment.

    At that moment I have new versions of the forms. And the existing running process instances use the previous version of the forms.

    The previous version of the forms can not be changed anymore. So running processes keep on using the old forms anfd this cannot be changed anymore?

    So now I use the following release procedure as a work around, which is not really the proper way:

    1) Import the latest version form production to development/test environment.

    2) Remove all running process instances from development environment.

    3) Make changes in the development/test environment and test these with new process instances.

    4) Apply all changes again directly in the production environment.

    However this is not a right procedure, since errors can be made in step 4.

    What is the proper way to bring changes from development/test to production and apply these changes to running processes?

    Thanks,

    Joost van der Schoot

    1. Hi Joost,

      I understand on where you are coming from too and the issue that you are facing now. I would like to elaborate of what I mentioned earlier.

      Existing process instances will only load forms of its current app version.

      Previously, all running instances regardless of the app version version it started on will be using the same set of forms of the published app version but it the rules have been changed.

      This is because that very often, forms are tightly coupled with the process design. Using forms of a revised/changes process design may break the original flow of data/forms. Thus, the changes made to only use forms of its own app version that process instance started on.

      Under current circumstances, this is what I can think of.

      Up to point #3 of yours, I agree. But for point 4, there's a (slightly) better way of doing it.

      1. From the development server, open up the form in the form builder, at the bottom of the form, click on "ADVANCED: JSON Definition",

      2. copy the definition

      3. and paste it in the same place in the same form in the production server.

      4. Repeat these steps for each form.

      This way you can ensure that no mistake will be made in copying the form design over.

      Now, existing process instances will immediately use the new form designs that you have just applied.

      Hope this helps. Thanks.