No need for orchestra plugins. You can use elements states to store the response for each row/question and once user is ready to submit, you can send this to a backend WF to process the list of questions/answers.
For example, you can store data as a in a list of text like question|answer but you will also save the answer to the current cell into a state in a group of this cell (as a text). The workflow will trigger on response click to > remove the Current cell state from list of text state, set the current cell state with the new value (answer|response) and add this value to the list of text state (so if user change the response, this will also update the list of text)
Once it’s ready, send the list of text using Schedule API WF on a list (type text) and send the list of text to this WF and save in DB. You can use :split by | (first item for question, last item for response)
RG (custom text type list of text)
Inside RG > group (custom state type text)
Inside this group > Question / Answer
After that, it’s more related on how you populate RG and you store the data in database. But the idea is to store the actual response into the custom state and update the list of text at the RG level state. You need to always first remove the custom state (group/old answer) in RG state and after add the new value to the group state and to the list of text in RG. The idea behind the group state is just to store the last response to be able to remove it from RG list of text if this have been modified by user. The RG list of text is the full data stored that contain all individual state.
I’ve suggested to use a pipe delimiter and a simple text like question|answer, but it could also be a JSON that can be submitted to a backend WF using API Connector or directly using Data API with Bulk upload.
It is OK to use a custom state to store a list of values for each field as long as the field values are unique. Bubble list only stores unique values. If the values of your Answer fields are not unique, e.g. yes/no for some entries, then the striaght foward custom option won’t work for you. In that case, need to be a bit creative to make sure the values are not unqiue or consider other options.
Not totally true.
First, in this case, we store question|response, not just response.
Second, Bubble can have the same value only if you use a text string and not a list.
For example, instead of adding item to the list using :plus item, you just have a field of text type (not a list of text) and add the item using, for example, Dynamic state’s value, new value (you manually add a comma). You can split it using :split by and at this moment, you will have a list of text that contain “duplicated” value.
For example: consider we have a list of 1,2,3,4,5:
list of text state:plus item “5” (will not work)
text state,5:split by will work and return 1,2,3,4,5,5