Hi all
I'm part way through building an app that will use two sharepoint lists as the data source. It is to administer a work experience scheme for around 1000 students. I have one list with the jobs available, and another with just the student email, the job ID and the application ID.
Each job can only be taken once by a single student. If another student tries to take it after the first one they can be added to a reserves list in case the first student doesn't fulfil the criteria (checked by manual review outside the app)
Because of the number of students involved, and the "first come first served" nature of the process, I'm a little worried that a student may see a job in the list, but by the time they click to reserve it another student has already taken it, but the app has read the job as available and writes two "applicant number 1" onto the application list.
Is there any best practice for situations like this? From what I've been told it's normally quite competitive for some of the jobs (they can receive 50+ applications in our current paper based systems) and I don't want to risk a job being double booked because two people clicked at virtually the same time. All I can think is the first click refreshes the data source, "locks" the job if it's still available, and then they do a second click to reserve it (or get a warning that someone else got there first)? Or am I just overthinking and it'll just all get sorted at the millisecond level with whichever request hits the server first? I need to have some sort of clear message to any student who misses out in this way so they know to keep looking for and apply to another job.
Thanks in advance for any helpful tips.

Report
All responses (
Answers (