If the “ID” field used to connect projects is somehow repeated (not unique) in the parent project, then in the child project you get an ‘indexed-repeat’ error message if using Collect

Hello!

If the “ID” field used to connect projects is somehow repeated (not unique) in the parent project, then in the child project you get an ‘indexed-repeat’ error message if using Collect.
Using Enketo instead does not return any error but the first record matching the ID.
Also, some issues in Collect still happen like the one described in New Support Article: Dynamic Data Attachments [Case Management] - #79 by iyadhoo

Will this be corrected?

@jventayol, this is because the system will match the identifier and pull the very first match like how it functions with the pulldata function.

That is why we say the identifier should be very unique and should not be repeating.

This error may depend on exactly how you are looking up matching entries from the parent data in your child form. Can you post your form(s) and sample data?

Will this be corrected?

You may not be getting a fatal error in Enketo [again, I’d have to see you forms and have a play myself…] but I’m curious what you believe the correct behavior should be when you have duplicate ‘unique’ identifiers in your data? Note, there is really no guarantee what order the entires may appear in the shared data file, or what order they are looked up in by the client. So if you do inadvertently end up with duplicate IDs, then which (first?) you happen to get back - in Enketo - is probably not reliably deterministic anyway.

Hello @Xiphware and @Kal_Lam,

After posting this thread I gave the ID a second thought and I ended changing to a unique ID (or at least “more unique” ID). Definitely it has more advantages than inconvenients.

Etiquetas fusion v11.xlsx (10.0 KB)
Test child cribado v9.xlsx (9.5 KB)

@Xiphware these are the files used. Etiquetas fusion is the Parent form. In order to reproduce the “issue” you have to swap lote_nucleos (unique) with lote_nucleos2 (not unique).

I thought Enketo reliably took the last record (most recent) with the matching identifier so I was just asking that Collect and Enketo had the same behavior. These differences between Enketo and Collect causes that testing in Enketo (usually more practical when editing a form) is not a guarantee that once implemented, the form will work smoothly in Collect.

Thanks again for your help (both of you)!