Prescriptions are stuck in "Pending" status
In older versions of PTS 5 it was possible to assign permissions to the booking in activity, which was a frequent cause of misconfiguration.
Symptoms
After booking in a prescription it is stuck in pending status, no details appear in its timeline, and trying to record the next activity in the sequence returns the error message "Only Booking In can be recorded against pending prescriptions".
Sometimes it appears the prescription is not shown at all if your user views filter out pending prescriptions, or you may see a generic "prescriptions could not be loaded" or possibly "invalid user" error message.
Cause
- The user has permission to book in prescriptions, but not permission to record the booking in activity, which represents a configuration conflict.
- The booking in activity has been changed to be prescription unrelated.
- The booking in activity has been removed from the prescription type's scanning sequence, or is not the first activity in the sequence.
- The SQL Server's hard disk is full.
Solution
- Go to Setup > Activities > Booking In > Role Permissions and remove every role from the list. This is not the correct way to limit people's ability to book things in, and the role permissions tab is removed entirely from the Booking In activity in future versions of the application for this reason. To configure Booking In permissions correctly, go to Setup > Roles and for the appropriate roles set the BOOKIN permission, and/or under Type Permissions set whether they can View or Create (book in) each individual prescription type.
- Go to Setup > Activities > Booking In and ensure that the "prescription related" tick box is selected and then click the save button.
- Go to Setup > Prescription Types > [click the prescription type] > Scanning Sequence and ensure that Booking In is the first activity in the sequence. Valid scanning sequences always start with booking in.
- Have a DBA free up some space on the SQL Server's HDD. If the PTS database itself is consuming a lot of space you could TRUNCATE the Elmah_Error table (see Database Maintenance Script) and if absolutely necessary you can shrink the database.