A004 - Meaning of Code System Properties on cancellation reasons

The documentation for A004 mentions “Code System Properties: Some properties are only returned for certain code systems” but not all of these properties are well described.

For cancellation reasons:

Property Code System
EffectiveFrom All Code Systems
EffectiveTo All Code Systems
AppointmentBookingCancellationReasonType APPOINTMENT-CANCELLATION-REASON
WillCancelWholeRequest APPOINTMENT-CANCELLATION-REASON
Usage APPOINTMENT-CANCELLATION-REASON
CommentIsMandatory APPOINTMENT-CANCELLATION-REASON / REFERRAL-CANCELLATION-REASON
BusinessFunction APPOINTMENT-CANCELLATION-REASON / REFERRAL-CANCELLATION-REASON
AppointmentRequestCancellationReasonType REFERRAL-CANCELLATION-REASON
CanCancelAppointment REFERRAL-CANCELLATION-REASON
ReferrerUsage REFERRAL-CANCELLATION-REASON

Key to our understanding is:

  1. Does WillCancelWholeRequest=true mean that calling A034 will also cancel the referral (as if we had called A036 as well)?
  2. If the above is true is the dual cancellation atomic or could one succeed and the other fail?
  3. Does CanCancelAppointment simply limit the reasons available when calling A036 for a referral that has a booked appointment?
  4. Will A036 similarly atomically cancel any booked appointment associated with the referral (as long as a CanCancelAppointment reason is provided)?

Hi Elliot,

Thanks for your query. You seem to be on the right track, ill answer each question below.

  1. Does WillCancelWholeRequest=true mean that calling A034 will also cancel the referral (as if we had called A036 as well)?

Yes, using this reason with A034 will cancel both the appointment and the referral. However, attempting to cancel only appointment with this reason will be rejected by the backend.

  1. If the above is true is the dual cancellation atomic or could one succeed and the other fail?

Atomic, both cancellations are performed in a single transaction, either both succeed or both fail.

  1. Does CanCancelAppointment simply limit the reasons available when calling A036 for a referral that has a booked appointment?

Yes, reasons without CanCancelAppointment=true should not be used with A036 when an appointment is currently booked.

  1. Will A036 similarly atomically cancel any booked appointment associated with the referral (as long as a CanCancelAppointment reason is provided)?

Same as above, eRS automatically cancels the appointment atomically within the same transaction.

Hope this helps,

George