# Validation Management

These settings determine how Maica manages Validation and its function throughout the application. Please refer to the below table for more information on each setting:&#x20;

{% hint style="warning" %}
Please note that the behaviour of the Settings below is interdependent. \
\
Please review each setting’s description carefully, then refer to the **Behaviour Matrix** and **Examples** sections at the bottom of this page to understand how these settings interact in different scenarios.
{% endhint %}

<table><thead><tr><th width="114.21875" data-type="number">Reference</th><th width="206.265625">Setting</th><th>Description</th></tr></thead><tbody><tr><td>1</td><td><code>Enforce Availability for Appointments /</code> <code>Shifts</code>  </td><td>This setting switches on (or off) the capability to enforce Resource Availability or Unavailability when creating or managing Appointments or Shifts. </td></tr><tr><td>2</td><td><code>Enforce Availability for Timesheets</code></td><td>This setting switches on (or off) the capability to enforce resource availability when creating or managing Timesheets. <br><br>This means, if the selected resources don't have an availability record for the time of the Timesheet, <strong>Maica</strong> will prevent the Timesheet from being created.</td></tr><tr><td>3</td><td><code>Availability Consideration</code></td><td><p>This toggle controls how Maica determines if a Resource is available when assigning them to appointments.</p><p><br><strong>ON</strong>: Maica will only consider Resources as available if they have an Availability record set up for that day.</p><p><br><strong>OFF</strong>: Maica assumes Resources are available by default unless an Unavailability record explicitly states otherwise.</p></td></tr><tr><td>4</td><td><code>Confirm Soft Unavailability</code> </td><td><p>When this setting is enabled, users must manually confirm any Resource marked as Unavailable with a Soft Unavailability record before proceeding with an Appointment or Shift. Within the <strong>Manage Appointment</strong> modal, clicking the Resource pill displaying an Unavailability warning confirms the user’s intent to assign that Resource despite the conflict.</p><p><br>If this setting is disabled, the Unavailability warning will still appear, but Users can proceed without confirmation.</p></td></tr></tbody></table>

### Validation Behaviour Matrix

<table><thead><tr><th width="72.3046875" align="center">1</th><th width="71.63671875" align="center">2</th><th width="68.1015625" align="center">3</th><th width="77.52734375" align="center">4</th><th>General Outcome</th></tr></thead><tbody><tr><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td><strong>Strictest validation</strong> — Maica enforces Resource Availability and Unavailability across all areas. Only Resources with Availability records can be assigned. Hard Unavailability blocks entirely. Soft Unavailability must be manually confirmed before proceeding.</td></tr><tr><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td><strong>Strict enforcement</strong> for both Appointments/Shifts and Timesheets. Only resources with Availability records can be assigned. Hard Unavailability blocks. Soft Unavailability shows a warning but does not require confirmation to proceed with Appointments/Shifts.</td></tr><tr><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td><strong>Unavailability enforced.</strong> Hard Unavailability blocks. Soft Unavailability must be confirmed before proceeding. Resources without Availability records are assumed available unless marked Unavailable.</td></tr><tr><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td><strong>Unavailability enforced.</strong> Hard Unavailability blocks. Soft Unavailability shows a warning only. Resources without Availability records are assumed available.</td></tr><tr><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td><strong>Appointments/Shifts validated</strong> against Availability records. Hard Unavailability blocks. Soft Unavailability must be confirmed before proceeding. Timesheets are not enforced.</td></tr><tr><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td><strong>Appointments/Shifts validated</strong> against Availability records. Hard Unavailability blocks. Soft Unavailability warning only. Timesheets are not enforced.</td></tr><tr><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td align="center">✅</td><td><strong>Appointments/Shifts enforced.</strong> Hard Unavailability blocks. Soft Unavailability must be confirmed before proceeding. Availability records not required.</td></tr><tr><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td><td><strong>Basic enforcement</strong> — Hard Unavailability blocks, but Soft Unavailability only shows a warning. Availability records not required.</td></tr><tr><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td><strong>Availability enforced for timesheets only.</strong> Hard Unavailability blocks Timesheet creation. Appointments follow normal flow but Soft Unavailability must be confirmed before proceeding. Resources without Availability records can be assigned, but a warning will show as it is not enforced. </td></tr><tr><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td><strong>Timesheets validated.</strong> Hard Unavailability blocks timesheet creation. Appointments follow normal flow with Soft Unavailability warnings only. Resources without Availability records can be assigned, but a warning will show as it is not enforced. </td></tr><tr><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td><strong>Timesheets validated.</strong> Hard Unavailability blocks timesheet creation. Appointments assume resources available unless marked Unavailable, but Soft Unavailability must be confirmed.</td></tr><tr><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td><strong>Timesheets validated.</strong> Hard Unavailability blocks timesheet creation. Appointments assume all resources available; Soft Unavailability shows warnings only.</td></tr><tr><td align="center">❌</td><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td><strong>No enforcement, but Availability is considered</strong> for Appointments or Shifts (warning shown when no Availability exists). Hard Unavailability shows a warning only. Soft Unavailability must be confirmed before proceeding.</td></tr><tr><td align="center">❌</td><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td><strong>No enforcement, but Availability is considered.</strong> Hard and Soft Unavailability both show warnings; no confirmation required.</td></tr><tr><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td><td align="center">✅</td><td><strong>No enforcement.</strong> Hard Unavailability shows a warning only. Soft Unavailability must be confirmed before proceeding.</td></tr><tr><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td><td><strong>No validation enforced.</strong> Hard and Soft Unavailability warnings appear, but users can proceed freely.</td></tr></tbody></table>

### Working Examples

**Example 1 – Strictest Validation (Row 1 above)**

**Settings:**\
1️⃣ Enforce Availability for Appointments/Shifts ✅ \
2️⃣ Enforce Availability for Timesheets ✅ \
3️⃣ Availability Consideration ✅ \
4️⃣ Confirm Soft Unavailability ✅

**Scenario:**

* **Appointment Time:** 10:00 am – 2:00 pm
* **Resource Records:**
  * Availability record exists (9:00 am – 5:00 pm)
  * Soft Unavailability record exists (12:00 pm – 1:00 pm)

**Outcome:**\
Maica enforces full validation. Because Setting 1 is on, only resources with Availability records can be assigned. The soft unavailability triggers a **warning**, and the user must **confirm** before proceeding.\
If the unavailability were **hard**, Maica would **block the appointment entirely.**

| Checkpoint                       | Result                  |
| -------------------------------- | ----------------------- |
| Availability record exists       | ✅                       |
| Unavailability type              | Soft                    |
| Can proceed without confirmation | ❌                       |
| User action required             | Must confirm to proceed |

***

**Example 2 – Appointments Enforced Only (Row 6 above)**

**Settings:**\
1️⃣ Enforce Availability for Appointments/Shifts ✅ \
2️⃣ Enforce Availability for Timesheets ❌ \
3️⃣ Availability Consideration ✅ \
4️⃣ Confirm Soft Unavailability ❌

**Scenario:**

* **Appointment Time:** 1:00 pm – 5:00 pm
* **Resource Records:**
  * Availability record exists (9:00 am – 12:00 pm)
  * Soft Unavailability record exists (4:00 pm – 5:00 pm)

**Outcome:**\
Because Setting 1 is on, Maica **enforces availability** for appointments. The resource does not have Availability covering the full appointment time, so Maica **blocks the assignment**. The soft unavailability would show a **warning**, but due to the enforcement of Availability, the user **cannot override** and proceed.&#x20;

| Checkpoint                                  | Result                                        |
| ------------------------------------------- | --------------------------------------------- |
| Availability record exists (for full range) | ❌                                             |
| Unavailability type                         | Soft                                          |
| Can proceed without confirmation            | ❌                                             |
| User action required                        | Cannot proceed until availability is adjusted |

***

**Example 3 – No Enforcement but Availability Considered (Row 13 above)**

**Settings:**\
1️⃣ Enforce Availability for Appointments/Shifts ❌ \
2️⃣ Enforce Availability for Timesheets ❌ \
3️⃣ Availability Consideration ✅ \
4️⃣ Confirm Soft Unavailability ✅

**Scenario:**

* **Appointment Time:** 8:00 am – 12:00 pm
* **Resource Records:**
  * **No Availability record** for the day
  * **Soft Unavailability record** exists (9:00 am – 10:00 am)

**Outcome:**\
Because Setting 1 is off, Maica does not enforce availability strictly. Setting 3 is on, so the system **considers availability** but does not require it — users can still proceed with confirmation. The soft unavailability triggers a **warning and confirmation prompt**, and the user must **confirm to continue**.\
If Setting 1 had been on, this same scenario would **block the appointment entirely.**

| Checkpoint                       | Result                                                   |
| -------------------------------- | -------------------------------------------------------- |
| Availability record exists       | ❌                                                        |
| Unavailability type              | Soft                                                     |
| Can proceed without confirmation | ❌ (confirmation required)                                |
| User action required             | Must confirm to proceed (despite no availability record) |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://knowledge.maica.com.au/maica-knowledge-base/maica-administration-guide/settings/validation-management.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
