Hi Jez
Life Sciences customer here.
I will say first that if your process industry customer is FDA regulated I strongly recommend getting GxP licensing for them, as there are a large number of controls around user access and audit logs of record changes that are critical for ensuring compliance with FDAâs regulations around traceability of device history record/electronic batch record data.
However, if that is not a concern for you, how I have approached this in medical device manufacture is by using a table for all our assemblies. Along with other attributes, each assembly gets a
- Location (Text)
- Step (Integer)
Location corresponds to the app used for that part of the process, and step corresponds to how far through the app the device has proceeded. When users scan in their assembly, the app checks that the assembly is at the correct location, then directs the user to the appropriate step in the app based on the current step of the assembly.
When the user then finishes all the material on the step, the app either bumps the assembly to the next location, or bumps it to the next step (i.e., the next step of the process)
Note that this is indeed very similar to Tulipâs recommended pause/resume functionality, with the caveat that while Tulip uses step names, we do not. That is because we want to avoid a scenario where someone updates a step name and as a result assemblies get lost in translation.
In the case that you have data you need to be able to review later in the process, my recommendation would be to set up a generic data table that hashes the batch ID to labeled data. For example,
- ID: MyBatch1/Cell1incubationTemperatureCelsius
- Assembly ID: MyBatch1
- Data Name: Cell1incubationTemperatureCelsius
- Type: Number
- Value: 20
If you then want to review what data was collected for a device later, you can retrieve it by querying all rows in this table that have Assembly ID == MyBatch1. You will probably want to alter this structure depending on how you manage your data. (For example, if you group batches by a purchase/work order, you will probably want to include purchase/work order as a field in this table