Hello, me and a colleague are trying to make a database where we have a table called "students" and one called "subjects", meaning many students can take many subjects. We've been researching for a bit and the way explained in the Appian Documentation is the one explained here, it says create both the parents and child CDTs, then create a third table where you have: a primary key, a foreign key that corresponds to the first table, a foreign key that corresponds to the second table, and an index. The problem is that by doing so, you can add duplicates of each, meaning that the same student can be assigned to the same subject twice (this screenshot is the Intermediary record type):
(I made 3 record types, Subjects, Students and Intermediary). That's why I wanted to ask all of you for any suggestions so that this table does not take duplicates, or if there's anything that we are doing wrong. Thank you!
Discussion posts and replies are publicly visible
Two options:
1) Low-Level: Define a unique key on the two foreign key fields in the database. Trying to insert duplicates will fail which is not easy to manage in Appian.
2) High-Level: Implement a check in Appian to prevent a user adding an already existing combination. Simple to implement and great UX, but not 100%, as the check and the insert are delayed.
Just pointing out the obvious: Both options can be combined,