You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently if you are running a project, capture models are copied when you start working on a canvas. That copy is not updated if the project is updated. This ensures that any work done on a canvas is preserved and editable, however it also makes it more difficult to add fields or make corrections. Here is an overview of what could and could not be synchronised in a capture model.
Safe to sync
Existing field descriptive updates label, description at position
Adding a new field to an entity
Existing field functional updates (multiline, dropdown options etc.)
New entity with new fields
Adding selector to field
Possible risk
Updating dropdown options: the chosen value may not be in the new dropdown values for models
Initial values (no way to know if an empty value is correct)
Changing selector type (if there is an existing value)
Things we cannot sync (for now)
Capture model field changing type (we might be able to, if the values can be mapped, but not initially).
Removing a field - this goes against the capture model format. Existing data will remain.
Removing an entity
Changing entity or field from allowMultiple=true to allowMultiple=false
Moving fields and preserving values
There is also the question of how to perform these synchronisations. Currently the updating of capture models is a slow process and aims to be reliable at the cost of speed. However, for these broad synchronisations it may be impractically slow. For each of the safe to synchronise, and the possible risk list, we could generate a list of bulk operations across all existing models. This would involve loading all of the existing models and parsing them. The update operation could be a single request with a batch-style request of atomic changes. For example:
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Currently if you are running a project, capture models are copied when you start working on a canvas. That copy is not updated if the project is updated. This ensures that any work done on a canvas is preserved and editable, however it also makes it more difficult to add fields or make corrections. Here is an overview of what could and could not be synchronised in a capture model.
Safe to sync
Possible risk
Things we cannot sync (for now)
There is also the question of how to perform these synchronisations. Currently the updating of capture models is a slow process and aims to be reliable at the cost of speed. However, for these broad synchronisations it may be impractically slow. For each of the safe to synchronise, and the possible risk list, we could generate a list of bulk operations across all existing models. This would involve loading all of the existing models and parsing them. The update operation could be a single request with a batch-style request of atomic changes. For example:
As an example. This could then be processed directly by the capture model service and all models updated at once.
Beta Was this translation helpful? Give feedback.
All reactions