how to check if field does not exist in old CDT

Let's say I have a CDT with two mandatory fields, A and B, used in forms in a long process. 

I then add another mandatory field C in the CDT and the interface. For processes that started after the field was added, there will be no problem.

For in-flight processes that started before, the CDT is an older version without the new Field C. Therefore it can't save on the form and the user is stuck. Updating the CDT in all the inflight processes manually is not possible.

I would like to a) use an expression to check if Field C exists in outdated CDT, if it doesn't then hide that section in the interface or b) bulk update all the CDTs in flight to the latest version without interrupting the process. 

Thanks,

Tommy

  Discussion posts and replies are publicly visible

Parents
  • 0
    Certified Lead Developer
    The way I've handled this before is to pass in a new parameter to the form, i.e. ri!isNewVersion (or ri!hasFieldXYZ), where the process model is updated to pass a value of true() into the form, so that you can use in-form logic to tell whether you're in a new instance or not. The nomenclature is completely up to you but hopefully you get the picture.
  • Hi Mike,

    Actually that's what we are currently doing at the moment. Our processes are sometimes over a year long and many new fields have been introduced due to the agile approach, we can not maintain an ever growing list of ri!hasFieldXYZ inputs in our interface.

    We have also tried to initialize a value for the new fields in the process and do a check to show the field when the field isn't prepopulated. For Legal reason we can't prepopulate some fields though.

    Thanks,
    Tommy
Reply
  • Hi Mike,

    Actually that's what we are currently doing at the moment. Our processes are sometimes over a year long and many new fields have been introduced due to the agile approach, we can not maintain an ever growing list of ri!hasFieldXYZ inputs in our interface.

    We have also tried to initialize a value for the new fields in the process and do a check to show the field when the field isn't prepopulated. For Legal reason we can't prepopulate some fields though.

    Thanks,
    Tommy
Children
No Data