Planung von Daten im Connect Customer Analytics Data Lake - Amazon Connect-Kunde

View a markdown version of this page

Planung von Daten im Connect Customer Analytics Data Lake - Amazon Connect-Kunde

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Planung von Daten im Connect Customer Analytics Data Lake

In diesem Thema wird der Inhalt der Data Lake-Scheduling-Tabellen von Connect Customer detailliert beschrieben. In den Tabellen sind die Spalte, der Typ und die Beschreibung des Inhalts aufgeführt.

Es gibt zwei Möglichkeiten, auf den Analytics Data Lake zuzugreifen und Daten für die gemeinsame Nutzung zu konfigurieren:

Wenn Sie mit Option 1 nicht auf die Planungstabellen zugreifen können, versuchen Sie es mit Option 2.

Personalplanungsprofil

Name der Tabelle: staff_scheduling_profile

Beschreibung: Enthält die Konfiguration der Agentenplanung, einschließlich Personalgruppenzuweisung, Schichtprofil- oder Rotationsmusterzuweisung sowie ein Gültigkeitsfenster für die Planung.

Primärschlüssel: instance_id, agent_arn, staff_scheduling_profile_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • agent_arn— Verbindet sich mit Agent Event, Contact Record, staff_shifts, staff_timeoffs, users (as) user_arn

  • staffing_group_arn— Tritt staffing_groups, staffing_group_forecast_groups, staffing_group_supervisors bei

  • shift_profile_arn— Tritt shift_profiles bei

  • shift_rotation_pattern_arn— Schließt sich shift_rotation_patterns an

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
agent_arn Zeichenfolge Nein Der ARN des Kundendienstmitarbeiters.
staff_scheduling_profile_version bigint Nein Die Version des Personalplanungsprofils.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
staffing_group_arn Zeichenfolge Ja Der ARN der Personalgruppe, der der Kundendienstmitarbeiter zugewiesen ist.
start_timestamp Zeitstempel Ja StartTimestamp für den in den Personalregeln konfigurierten Agenten (Zeitpläne werden erst nach diesem Zeitstempel generiert).
end_timestamp Zeitstempel Ja EndTimestamp für den in den Personalregeln konfigurierten Agenten (Zeitpläne werden nicht nach diesem Zeitstempel generiert).
shift_profile_arn Zeichenfolge Ja Der ARN des Schichtprofils, das dem Agenten in den Personalregeln zugewiesen wurde. Schließt sich mit Shift Rotation Pattern gegenseitig aus.
shift_rotation_pattern_arn Zeichenfolge Ja Der ARN des Schichtwechselmusters, das dem Agenten in den Personalregeln zugewiesen wurde. Schließt sich mit Schichtprofil gegenseitig aus.
shift_rotation_start_step_id bigint Ja Die Schritt-ID, an der der Agent im zugewiesenen Shift-Rotationsmuster beginnt.
timezone Zeichenfolge Ja Für den Kundendienstmitarbeiter konfigurierte Zeitzone.
is_deleted Boolesch Ja Lautet True, wenn der Kundendienstmitarbeiter gelöscht wurde. Andernfalls lautet der Wert False.
last_updated_timestamp Zeitstempel Ja Zeitstempel, an dem das Personalplanungsprofil /gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.

Verschiebungsaktivitäten

Name der Tabelle: shift_activities

Beschreibung: Definiert die Arten von Aktivitäten, die innerhalb von Schichten zugewiesen werden können, einschließlich Aktivitätstyp (produktiv, unproduktiv, Urlaub), Nachverfolgung der Einhaltung und Bezahlstatus.

Primärschlüssel: instance_id, shift_activity_arn, shift_activity_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_activity_arn— Verbindet sich mit staff_shift_activities, staff_timeoff_balance_changes, staff_timeoffs

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_activity_arn Zeichenfolge Nein Der ARN der Schichtaktivität.
shift_activity_version bigint Nein Die Version der Schichtaktivität.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
shift_activity_name Zeichenfolge Ja Name der Schichtaktivität.
type Zeichenfolge Ja Typ der Schichtaktivität. Die möglichen Werte sind: PRODUCTIVE, NON_PRODUCTIVE und LEAVE.
sub_type Zeichenfolge Ja Der Untertyp der Schichtaktivität. Dies gilt nur für Aktivitäten vom Typ NON_PRODUCTIVE. Die möglichen Werte sind: BREAK_OR_MEAL und NONE.
is_adherence_tracked Boolesch Ja Lautet True, wenn die Schichtaktivität für die Nachverfolgung der Einhaltung von Vorschriften konfiguriert ist. Andernfalls lautet der Wert False.
is_paid Boolesch Ja Lautet True, wenn die Schichtaktivität als „Bezahlt“ konfiguriert ist. Andernfalls lautet der Wert False.
is_deleted Boolesch Ja Lautet True, wenn die Schichtaktivität gelöscht wurde. Andernfalls lautet der Wert False.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem die Shift-Aktivität /gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Schichtprofile

Name der Tabelle: shift_profiles

Beschreibung: Definiert Schichtprofilvorlagen, die Agenten zugewiesen werden können. Sie geben das Schichtmuster für die Zeitplangenerierung an.

Primärschlüssel: instance_id, shift_profile_arn, shift_profile_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_profile_arn— Verbindet sich mit staff_scheduling_profile, shift_rotation_steps

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_profile_arn Zeichenfolge Nein Der ARN des Schichtprofils.
shift_profile_version bigint Nein Die Version des Schichtprofils.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
shift_profile_name Zeichenfolge Ja Der Name des Schichtprofils.
is_deleted Boolesch Ja Lautet True, wenn das Schichtprofil gelöscht wurde. Andernfalls lautet der Wert False.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem das Schichtprofil /gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalgruppen

Name der Tabelle: staffing_groups

Beschreibung: Definiert Personalgruppen, die Agenten zu Planungszwecken organisieren und als primäre Organisationseinheit für das Personalmanagement dienen.

Primärschlüssel: instance_id, staffing_group_arn, staffing_group_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • staffing_group_arn— Schließt sich staff_scheduling_profile, staffing_group_forecast_groups, staffing_group_supervisors, staffing_group_demand_group an

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
staffing_group_arn Zeichenfolge Nein Der ARN der Personalgruppe.
staffing_group_version bigint Nein Die Version der Personalgruppe.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
staffing_group_name Zeichenfolge Ja Der Name der Personalgruppe.
is_deleted Boolesch Ja Lautet True, wenn die Personalgruppe gelöscht wurde. Andernfalls lautet der Wert False.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem die Personalgruppe /gelöscht wurde. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalgruppen – Prognosegruppen

Name der Tabelle: staffing_group_forecast_groups

Beschreibung: Stellt den Zusammenhang zwischen Personalgruppen und Prognosegruppen dar und verknüpft die Belegschaftskapazität mit Nachfrageprognosen.

Primärschlüssel: instance_id, staffing_group_arn, staffing_group_version, forecast_group_arn

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • staffing_group_arn, staffing_group_version— Tritt staffing_groups bei

  • forecast_group_arn— Tritt schedule_metrics, schedule_goals, staff_shift_activity_allocations bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
staffing_group_arn Zeichenfolge Nein Der ARN der Personalgruppe.
staffing_group_version bigint Nein Die Version der Personalgruppe.
forecast_group_arn Zeichenfolge Nein Der ARN der Prognosegruppe, die der Personalgruppe zugeordnet ist.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
is_deleted Boolesch Ja Auf False gesetzt, wenn die StaffingGroup-ForecastGroup Zuordnung gültig ist.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem die Staffing Group existierte. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalgruppen – Supervisoren

Name der Tabelle: staffing_group_supervisors

Beschreibung: Ordnet Supervisor-Verbände den Personalgruppen zu und verfolgt, welche Vorgesetzten für jede Personalgruppe verantwortlich sind.

Primärschlüssel: instance_id, staffing_group_arn, staffing_group_version, supervisor_arn

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • staffing_group_arn, staffing_group_version— Tritt staffing_groups bei

  • supervisor_arn— Tritt Agent Event (als agent_arn), Contact Record (als agent_arn) bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
staffing_group_arn Zeichenfolge Nein Der ARN der Personalgruppe.
staffing_group_version bigint Nein Die Version der Personalgruppe.
supervisor_arn Zeichenfolge Nein Der Kundendienstmitarbeiter-ARN des Supervisoren, der der Personalgruppe zugeordnet ist.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
is_deleted Boolesch Ja Auf False gesetzt, wenn die StaffingGroup-ForecastGroup Zuordnung gültig ist.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem die Staffing Group existierte. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalschichten

Name der Tabelle: staff_shifts

Beschreibung: Enthält einzelne Schichtinstanzen, die Agenten zugewiesen sind, einschließlich Schichtstart- und -endzeiten sowie Metadaten zur Erstellung.

Primärschlüssel: instance_id, shift_id, shift_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_id, shift_version— Verbindet sich mit staff_shift_activities, staff_shift_activity_allocations

  • agent_arn— Tritt staff_scheduling_profile, Agent Event, Contact Record und Benutzern (en) bei user_arn

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_id Zeichenfolge Nein Die ID der Schicht.
shift_version bigint Nein Die Version der Schicht.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
agent_arn Zeichenfolge Ja Der ARN des Kundendienstmitarbeiters.
shift_start_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem die Schicht beginnt.
shift_end_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem die Schicht endet.
created_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem die Schicht erstellt wurde.
is_deleted Boolesch Ja Lautet True, wenn die Schicht gelöscht wurde. Andernfalls lautet der Wert False.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem die Schicht /gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Schichtaktivitäten des Personals

Name der Tabelle: staff_shift_activities

Beschreibung: Enthält einzelne Aktivitätsblöcke innerhalb einer Schicht, einschließlich Start- und Endzeiten der Aktivität, Überstundenkennzeichen und Aktivitätsstatus.

Primärschlüssel: instance_id, shift_id, shift_version, activity_id

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_id, shift_version— Verbindet sich mit staff_shifts

  • activity_id— Tritt staff_shift_activity_allocations bei

  • shift_activity_arn— Tritt shift_activities bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_id Zeichenfolge Nein Die ID der Schicht.
shift_version bigint Nein Die Version der Schicht.
activity_id Zeichenfolge Nein Die ID der Aktivität.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
activity_start_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem die Aktivität beginnt.
activity_end_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem die Aktivität endet.
shift_activity_arn Zeichenfolge Ja Der ARN der Schichtaktivität. Wenn shift_activity_arn Null ist, bedeutet dies, dass die Aktivität „Work“ lautet.
activity_status Zeichenfolge Ja Der Status der Aktivität. Dieser Wert lautet INACTIVE, wenn sich die Aktivität mit einem Urlaub überschneidet.
is_overtime Boolesch Ja Lautet True, wenn die Aktivität Teil der Überstunden ist. Andernfalls lautet der Wert False.
is_deleted Boolesch Ja Lautet False, wenn die Schichtaktivitäten gültig sind.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem die Schicht stattfand created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Änderungen am Urlaubsguthaben des Personals

Name der Tabelle: staff_timeoff_balance_changes

Beschreibung: Verfolgt Änderungen der Urlaubstage für Mitarbeiter und zeichnet Gutschriften und Abzüge aus verschiedenen Quellen auf, darunter Uploads, Anfragen und die Veröffentlichung von Terminen.

Primärschlüssel: instance_id, agent_arn, shift_activity_arn, timeoff_balance_version

Partitionsschlüssel: last_created_timestamp (täglich)

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • agent_arn— Verbindet sich mit staff_scheduling_profile, staff_shifts, Agent Event, Contact Record

  • shift_activity_arn— Tritt shift_activities bei

  • timeoff_id— Tritt staff_timeoffs bei

Spalte Typ NULLABLE Description
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
aws_account_id Zeichenfolge Ja Die ID des AWS Kontos.
agent_arn Zeichenfolge Nein Der ARN des Kundendienstmitarbeiters.
shift_activity_arn Zeichenfolge Nein Der ARN der Schichtaktivität, der dieses Guthaben zugewiesen ist.
timeoff_balance_version bigint Nein Die Version des Urlaubsguthabens, eine fortlaufende Zahl, die die Reihenfolge der Änderungen angibt.
balance_update_source Zeichenfolge Ja Quelle der Guthabenaktualisierung. Die möglichen Werte sind TIME_OFF_BALANCE_UPLOAD, CONNECT_TIME_OFF_REQUEST, SCHEDULE_PUBLISH, CSV_TIME_OFF_BALANCE_DELETION, TIME_OFF_BALANCE_BACKFILL, SYSTEM_UPDATE.
timeoff_id Zeichenfolge Ja Die ID des Urlaubs, der diese Guthabenänderung verursacht hat, falls vorhanden.
last_updated_by Zeichenfolge Ja Der ARN des Kundendienstmitarbeiter, der diese Guthabenänderung verursacht hat, falls vorhanden.
balance_change_in_hours double Ja Um viele Stunden das Urlaubsguthaben durch diese Änderung aktualisiert wurde. Wenn dieser Wert positiv ist, erhöht sich das Urlaubsguthaben durch diese Änderung. Wenn dieser Wert negativ ist, verringert sich das Urlaubsguthaben durch diese Änderung. Dieser Wert ist für Guthaben-Upload- und -Löschereignisse nicht definiert.
remaining_balance_in_hours double Ja Die verbleibenden Stunden Urlaubsguthaben nach diesem Änderungsereignis. Dieser Wert ist für Guthaben-Löschereignisse nicht definiert.
last_created_timestamp Zeitstempel Ja Der Zeitpunkt, zu dem der Datensatz zur Änderung des Urlaubsguthabens erstellt wurde.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalurlaube

Name der Tabelle: staff_timeoffs

Beschreibung: Zeichnet Urlaubsanträge und Genehmigungen für Agenten auf, einschließlich der Statusverfolgung im Genehmigungsworkflow und der effektiven Arbeitszeiten.

Primärschlüssel: instance_id, timeoff_id, agent_arn, timeoff_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • timeoff_id, timeoff_version— Verbindet sich mit staff_timeoff_intervals

  • agent_arn— Verbindet sich mit staff_scheduling_profile, staff_shifts, Agent Event, Contact Record

  • shift_activity_arn— Tritt shift_activities bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
timeoff_id Zeichenfolge Nein Die ID des Urlaubs.
agent_arn Zeichenfolge Nein Der ARN des Kundendienstmitarbeiters.
timeoff_version bigint Nein Die Version des Urlaubs.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
timeoff_type Zeichenfolge Ja Die Art des Urlaubs. Die möglichen Werte sind: TIME_OFF und VOLUNTARY_TIME_OFF.
timeoff_start_timestamp Zeitstempel Ja Zeitpunkt, zu dem der Urlaub beginnt.
timeoff_end_timestamp Zeitstempel Ja Zeitpunkt, zu dem der Urlaub endet.
timeoff_status Zeichenfolge Ja Status des Urlaubs. Die möglichen Werte sind: PENDING_CREATE, PENDING_UPDATE, PENDING_CANCEL, PENDING_ACCEPT, PENDING_APPROVE, PENDING_DECLINE, APPROVED, ACCEPTED, REJECTED, CANCELLED, WAITING_ACCEPT und WAITING_APPROVE. Die Status WAITING geben an, dass „Timeoff“ auf eine Benutzeraktion wartet. Die Status PENDING geben an, dass „Timeoff“ auf die Verarbeitung einer Benutzeraktion durch das System wartet.
shift_activity_arn Zeichenfolge Ja Der ARN der Schichtaktivität, die für die arbeitsfreie Zeit verwendet wurde.
effective_timeoff_hours double Ja Gesamtzahl der effektiven Urlaubsstunden. Tatsächliche Urlaubsstunden werden auf Grundlage der Urlaubsabzugslogik berechnet. Dies ist nur für den Typ TIME_OFF festgelegt.
last_updated_timestamp Zeitstempel Ja Zeitstempel, an dem die Auszeit /gelöscht wurde/gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.

Personal-Urlaubsintervalle

Name der Tabelle: staff_timeoff_intervals

Beschreibung: Enthält die einzelnen Zeitintervalle innerhalb eines Urlaubsantrags, wobei mehrtägige oder mehrtägige Urlaubszeiten in einzelne Intervalle mit effektiven Stunden pro Intervall unterteilt werden.

Primärschlüssel: instance_id, timeoff_id, timeoff_version, interval_id

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • timeoff_id, timeoff_version— Verbindet sich mit staff_timeoffs

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
timeoff_id Zeichenfolge Nein Die ID des Urlaubs.
timeoff_version bigint Nein Die Version des Urlaubs.
interval_id Zeichenfolge Nein Die ID des Urlaubs-Intervalls.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
timeoff_interval_start_timestamp Zeitstempel Ja Zeitpunkt, zu dem das spezifische Urlaubs-Intervall beginnt.
timeoff_interval_end_timestamp Zeitstempel Ja Zeitpunkt, zu dem das spezifische Urlaubs-Intervall endet.
interval_effective_timeoff_hours double Ja Tatsächliche Urlaubsstunden für dieses spezifische Urlaubs-Intervall. Tatsächliche Urlaubsstunden werden auf Grundlage der Urlaubsabzugslogik berechnet.
last_updated_timestamp Zeitstempel Ja Zeitstempel, an dem die Auszeit /gelöscht wurde/gelöscht wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.

Bedarfsgruppe für Mitarbeiter

Name der Tabelle: staff_demand_group

Beschreibung: Ordnet Agenten Bedarfsgruppen mit Prioritätszuweisungen zu. Dabei werden sowohl Standardwerte auf Personalgruppenebene als auch Überschreibungen für die Bedarfszuweisung auf Agentenebene unterstützt.

Primärschlüssel: instance_id, agent_arn, demand_group_arn, staff_demand_group_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • agent_arn— Verbindet sich mit staff_scheduling_profile, staff_shifts, Agent Event, Contact Record

  • demand_group_arn— Tritt staffing_group_demand_group, staff_shift_activity_allocations bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
agent_arn Zeichenfolge Nein Der ARN des Kundendienstmitarbeiters.
demand_group_arn Zeichenfolge Nein Der ARN der Bedarfsgruppe.
staff_demand_group_version Long Nein Version, in der dieser Agent eine Gruppenzuweisung verlangt
priority Zeichenfolge Ja Priorität der Bedarfsgruppe für diesen Agenten. Kann NIEDRIG, MITTEL oder HOCH sein
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
ist_override Boolesch Ja Auf „true“ setzen, wenn es sich bei der Zuordnung zwischen Agent und Demand Group um eine Überschreibung auf Agentenebene handelt.
is_deleted Boolesch Ja Wird auf „true“ gesetzt, wenn die Zuordnung zwischen Agent und Bedarfsgruppe gelöscht wird.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem die Zuordnung zwischen Agent und Forderngruppe erfolgte created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Personalgruppen, Nachfragegruppe

Name der Tabelle: staffing_group_demand_group

Beschreibung: Stellt die Beziehung zwischen Personalgruppen und Bedarfsgruppen mit Priorität dar und verknüpft Organisationseinheiten mit Zielen für die Bedarfsallokation.

Primärschlüssel: instance_id, staffing_group_arn, demand_group_arn, staffing_group_demand_group_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • staffing_group_arn— Tritt staffing_groups, staff_scheduling_profile bei

  • demand_group_arn— Tritt staff_demand_group, staff_shift_activity_allocations bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
staffing_group_arn Zeichenfolge Nein Der ARN der Personalgruppe.
demand_group_arn Zeichenfolge Nein Der ARN der Bedarfsgruppe.
staffing_group_demand_group_version Long Nein Version für diese Zuordnung von Personalgruppe zu Bedarfsgruppe
priority Zeichenfolge Ja Priorität der Bedarfsgruppe für diese Personalgruppe. Kann NIEDRIG, MITTEL oder HOCH sein
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
is_deleted Boolesch Ja Wird auf „true“ gesetzt, wenn die Zuordnung zwischen Personalgruppe und Bedarfsgruppe gelöscht wird.
last_updated_timestamp Zeitstempel Ja Zeitstempel, an dem die Zuordnung zwischen Personalgruppe und Bedarfsgruppe erfolgte /gelöscht wurde. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Verteilung der Aktivitäten in der Schicht des Personals

Name der Tabelle: staff_shift_activity_allocations

Beschreibung: Zeichnet die prozentuale Zuordnung von Schichtaktivitäten zu Bedarfsgruppen auf und ermöglicht so die proportionale Zuweisung der Agentenkapazität über mehrere Bedarfsgruppen innerhalb einer einzigen Aktivität.

Primärschlüssel: instance_id, shift_id, shift_version, activity_id, demand_group_arn

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_id, shift_version— Verbindet sich mit staff_shifts, staff_shift_activities

  • activity_id— Tritt staff_shift_activities bei

  • demand_group_arn— Tritt staff_demand_group, staffing_group_demand_group bei

  • forecast_group_arn— Tritt staffing_group_forecast_groups bei (als forecast_group_arn)

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_id Zeichenfolge Nein Die ID der Schicht.
shift_version Long Nein Die Version der Schicht.
activity_id Zeichenfolge Nein Die ID der Aktivität.
demand_group_arn Zeichenfolge Nein Der ARN der Bedarfsgruppe.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
forecast_group_arn Zeichenfolge Ja Der ARN der Prognosegruppe.
allocation_percentage double Ja Prozentuale Zuordnung der Aktivität zur Bedarfsgruppe.
is_deleted Boolesch Ja Auf False setzen, wenn der gültig StaffingGroup-ForecastGroupassociation ist.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem die Staffing Group existierte. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht verwendet werden, um die Aktualität der Daten zuverlässig zu bestimmen.

Zeitplanmetriken

Name der Tabelle: schedule_metrics

Beschreibung: Enthält Kennzahlen zur Leistung des Zeitplans nach Intervallen, einschließlich der Anzahl der benötigten Mitarbeiter im Vergleich zu den geplanten Terminen, der Belegung, dem Prozentsatz des Servicelevels und der durchschnittlichen Antwortgeschwindigkeit.

Primärschlüssel: instance_id, metric_id, interval_start_timestamp

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • entity_arn— Schließt sich staffing_group_forecast_groups (als forecast_group_arn), staff_demand_group (als demand_group_arn) an

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Der ARN der Amazon-Connect-Instance.
instance_arn Zeichenfolge Ja Die ID der Amazon-Connect-Instance.
metric_id Zeichenfolge Nein Eindeutiger Bezeichner für den Metrikwert
aws_account_id Zeichenfolge Ja Die ID des AWS-Kontos.
entity_type Zeichenfolge Ja Gibt an, ob die Metrik für eine Prognosegruppe oder eine Bedarfsgruppe gilt.
entity_arn Zeichenfolge Ja Arn der Prognosegruppe oder Bedarfsgruppe
channel Zeichenfolge Ja Bezeichnet den Medienkanal wie Voice, Chat. Wenn die Zeile Metriken enthält, die nicht auf Kanalebene liegen, wird sie mit ALL aufgefüllt
interval_start_timestamp Zeitstempel Nein Zeitstempel, der den Beginn des Intervalls angibt
required_agent_count float Ja Gibt die Anzahl der erforderlichen Agenten an
scheduled_agent_count float Ja Gibt die Anzahl der geplanten Agenten an
planmäßige Belegung float Ja Gibt den Prozentsatz der Belegung an
Prozentsatz des geplanten Servicelevels float Ja Gibt den voraussichtlichen Prozentsatz des Servicelevels auf der Grundlage der geplanten Mitarbeiterzahl an
Servicelevel_Sekunden Ganzzahl Ja Bezeichnet die Sekunden des Servicelevels
Geplante_Durchschnittsgeschwindigkeit_der_Antwort float Ja Gibt die prognostizierte durchschnittliche Antwortgeschwindigkeit in Sekunden auf der Grundlage der geplanten Mitarbeiterzahl an
is_deleted boolesch Ja Gibt an, ob die Metrik gelöscht wurde
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem der Metrikdatensatz erstellt wurde.
data_lake_last_processed_timestamp Zeitstempel Ja Zeitstempel, der anzeigt, wann der Data Lake den Datensatz zuletzt verarbeitet hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig verwendet werden, um die Aktualität der Daten zu bestimmen.
Projected_Average_Time_To_Complete float Ja Gibt die durchschnittliche Zeit bis zur Fertigstellung in Stunden an
projected_backlog Ganzzahl Ja Bezeichnet die Backlog-Elemente

Ziele planen

Name der Tabelle: schedule_goals

Beschreibung: Speichert Service-Level-Ziele für die Terminplanung, einschließlich des angestrebten Servicelevels in Prozent, der Servicelevel-Sekunden und der durchschnittlichen Antwortgeschwindigkeit für Prognose- oder Bedarfsgruppen.

Primärschlüssel: instance_id, goal_id

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • entity_arn— Schließt sich staffing_group_forecast_groups (als forecast_group_arn), staff_demand_group (als demand_group_arn) an

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Der ARN der Amazon-Connect-Instance.
instance_arn Zeichenfolge Ja Die ID der Amazon-Connect-Instance.
Ziel_ID Zeichenfolge Nein Eindeutiger Bezeichner für den Zielwert
aws_account_id Zeichenfolge Ja Die ID des AWS-Kontos.
entity_type Zeichenfolge Ja Gibt an, ob das Ziel für eine Prognosegruppe oder eine Bedarfsgruppe gilt.
entity_arn Zeichenfolge Ja Arn der Prognosegruppe oder Bedarfsgruppe
channel Zeichenfolge Ja Bezeichnet den Medienkanal wie Voice, Chat.
start_date_timestamp Zeitstempel Ja Zeitstempel, der den Beginn des Ziels angibt
end_date_timestamp Zeitstempel Ja Zeitstempel, der das Ende des Ziels angibt
goal_service_level_percentage float Ja Gibt den angestrebten Prozentsatz des Servicelevels an
goal_service_level_seconds Ganzzahl Ja Bezeichnet die Sekunden des Servicelevels
Ziel_Durchschnittsgeschwindigkeit_der_Antwort float Ja Gibt die durchschnittliche Antwortgeschwindigkeit in Sekunden an
is_deleted boolesch Ja Gibt an, ob das Ziel gelöscht wurde
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem der Zieldatensatz erstellt wurde.
data_lake_last_processed_timestamp Zeitstempel Ja Zeitstempel, der anzeigt, wann der Data Lake den Datensatz zuletzt verarbeitet hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.
Ziel_Durchschnittszeit bis zur Fertigstellung float Ja Gibt die durchschnittliche Zeit bis zur Fertigstellung in Stunden an.

Rotationsmuster verschieben

Name der Tabelle: shift_rotation_patterns

Beschreibung: Definiert Schichtwechselmusterkonfigurationen, bei denen Agenten im Laufe der Zeit verschiedene Schichtprofile durchlaufen, mit einem konfigurierbaren Startdatum.

Primärschlüssel: instance_id, shift_rotation_pattern_arn, shift_rotation_pattern_version

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_rotation_pattern_arn, shift_rotation_pattern_version— Verbindet sich mit shift_rotation_steps

  • shift_rotation_pattern_arn— Tritt staff_scheduling_profile bei

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_rotation_pattern_arn Zeichenfolge Nein Der ARN des Shift-Rotationsmusters.
shift_rotation_pattern_version bigint Nein Die Version des Shift-Rotationsmusters.
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
Name des Shift-Rotationsmusters Zeichenfolge Ja Der Name des Shift-Rotationsmusters.
start_date Zeichenfolge Ja Das Startdatum des Shift-Rotationsmusters im yyyy-mm-dd Format.
is_deleted Boolesch Ja Auf True setzen, wenn das Shift-Rotationsmuster gelöscht wird. Andernfalls lautet der Wert False.
last_updated_by Zeichenfolge Ja Der ARN des Benutzers, der das Shift-Rotationsmuster created/updated /gelöscht hat.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, an dem das Shift-Rotationsmuster /gelöscht wurde. created/updated
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.

Verschieben Sie die Rotationsschritte

Name der Tabelle: shift_rotation_steps

Beschreibung: Definiert die einzelnen Schritte innerhalb eines Schichtrotationsmusters, wobei jedem ein Schichtprofil eine Dauer in Wochen zugeordnet wird (bis zu 52 Schritte pro Rotation).

Primärschlüssel: instance_id, shift_rotation_pattern_arn, shift_rotation_pattern_version, step_id

Schlüssel verbinden:

  • instance_id— Verbindet sich mit allen Tabellen

  • shift_rotation_pattern_arn, shift_rotation_pattern_version— Verbindet sich mit shift_rotation_patterns

  • shift_profile_arn— Verbindet sich mit shift_profiles

Spalte Typ NULLABLE Description
instance_id Zeichenfolge Nein Die ID der Connect Customer-Instanz.
shift_rotation_pattern_arn Zeichenfolge Nein Der ARN des Shift-Rotationsmusters.
shift_rotation_pattern_version bigint Nein Die Version des Shift-Rotationsmusters.
step_id bigint Nein Die ID des Schritts innerhalb des Shift-Rotationsmusters. Die Schritte sind fortlaufend nummeriert (1, 2, 3,... bis zu 52).
instance_arn Zeichenfolge Ja Der ARN der Connect Customer-Instanz.
shift_profile_arn Zeichenfolge Ja Der ARN des Schichtprofils, das dem Rotationsschritt zugeordnet ist.
duration bigint Ja Die Dauer des Rotationsschritts in Wochen.
is_deleted Boolesch Ja Auf False setzen, wenn der Shift-Rotationsschritt gültig ist.
last_updated_by Zeichenfolge Ja Der ARN des Benutzers, der created/updated das Shift-Rotationsmuster verwendet hat.
last_updated_timestamp Zeitstempel Ja Der Zeitstempel, zu dem das Shift-Rotationsmuster verwendet wurde created/updated.
data_lake_last_processed_timestamp Zeitstempel Ja Der Zeitstempel, der anzeigt, wann der Data Lake sich das letzte Mal mit dem Datensatz beschäftigt hat. Dies kann Transformation und Backfill beinhalten. Dieses Feld kann nicht zuverlässig zur Bestimmung der Datenaktualität verwendet werden.

Datenschema

Im Folgenden finden Sie ein Diagramm mit Entitätsbeziehungen, das die Struktur und die Beziehungen zwischen den Scheduling-Tabellen im Connect Customer Data Lake zeigt.

In jeder Tabelle werden ihre Primärschlüssel und Attribute mit ihren Datentypen angezeigt. Das Diagramm veranschaulicht, wie diese Tabellen durch Fremdschlüsselbeziehungen zueinander in Beziehung stehen, und bietet so einen umfassenden Überblick über das Planungsdatenmodell.

Ein Entitätsbeziehungsdiagramm, das die Struktur und die Beziehungen zwischen Scheduling-Tabellen zeigt.

Beispielabfragen

1. Abfrage, um alle geplanten Schichtaktivitäten von Kundendienstmitarbeitern abzurufen, die an einer bestimmten Prognosegruppe arbeiten

SELECT * FROM agent_scheduled_shift_activities_view where forecast_group_name = 'AnyDepartmentForecastGroup'

Führen Sie die folgenden Schritte aus, um die oben genannte agent_scheduled_shift_activities_view zu erstellen.

Schritt 1: Erstellen Sie eine Ansicht, um die Namen der Supervisoren abzurufen.

CREATE OR REPLACE VIEW "latest_supervisor_names_view" AS SELECT   staffing_group_arn , array_agg(supervisor_name ORDER BY supervisor_name ASC) supervisor_names FROM   (    SELECT      s.staffing_group_arn    , CONCAT(u.first_name, ' ', u.last_name) supervisor_name    FROM      ((       SELECT         staffing_group_arn       , supervisor_arn       FROM         (          SELECT            *          , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency          FROM            staffing_group_supervisors          WHERE (instance_id = 'YourAmazonConnectInstanceId')       )  t       WHERE (recency = 1)    )  s    INNER JOIN USERS u ON (s.supervisor_arn = u.user_arn)) ) GROUP BY staffing_group_arn

Schritt 2: Erstellen Sie eine Ansicht, um die Personalgruppe und die Prognosegruppe abzurufen, die einem Kundendienstmitarbeiter zugeordnet sind.

CREATE OR REPLACE VIEW "latest_agent_staffing_group_forecast_group_view" AS WITH   latest_staff_scheduling_profile AS (    SELECT      agent_arn    , staffing_group_arn    , last_updated_timestamp    FROM      (       SELECT         *       , RANK() OVER (PARTITION BY agent_arn ORDER BY staff_scheduling_profile_version DESC) recency       FROM         staff_scheduling_profile       WHERE ((instance_id = 'YourAmazonConnectInstanceId') AND (is_deleted = false))    )  t    WHERE (recency = 1) ) , latest_staffing_groups AS (    SELECT      staffing_group_name    , staffing_group_arn    FROM      (       SELECT         *       , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency       FROM         staffing_groups       WHERE (instance_id = 'YourAmazonConnectInstanceId')    )  t    WHERE (recency = 1) ) , latest_forecast_groups AS (    SELECT      forecast_group_arn    , forecast_group_name    FROM      (       SELECT         *       , RANK() OVER (PARTITION BY forecast_group_arn ORDER BY forecast_group_version DESC) recency       FROM         forecast_groups       WHERE (instance_id = 'YourAmazonConnectInstanceId')    )  t    WHERE (recency = 1) ) , latest_staffing_group_forecast_groups AS (    SELECT      staffing_group_arn    , forecast_group_arn    FROM      (       SELECT         *       , RANK() OVER (PARTITION BY staffing_group_arn ORDER BY staffing_group_version DESC) recency       FROM         staffing_group_forecast_groups       WHERE (instance_id = 'YourAmazonConnectInstanceId')    )  t    WHERE (recency = 1) ) SELECT   ssp.agent_arn , U.agent_username AS username , U.agent_routing_profile_id AS routing_profile_id , CONCAT(u.first_name, ' ', u.last_name) agent_name , fg.forecast_group_arn , fg.forecast_group_name , sg.staffing_group_arn , sg.staffing_group_name FROM  latest_staff_scheduling_profile ssp INNER JOIN latest_staffing_groups sg ON ssp.staffing_group_arn = sg.staffing_group_arn INNER JOIN latest_staffing_group_forecast_groups sgfg ON ssp.staffing_group_arn = sgfg.staffing_group_arn INNER JOIN latest_forecast_groups fg ON fg.forecast_group_arn = sgfg.forecast_group_arn INNER JOIN USERS u ON ssp.agent_arn = u.user_arn

Schritt 3: Rufen Sie die neuesten Schichtaktivitäten ab.

CREATE OR REPLACE VIEW "latest_shift_activities_view" AS SELECT   shift_activity_arn , shift_activity_name , shift_activity_version , type , sub_type , is_adherence_tracked , is_paid , last_updated_timestamp FROM   (    SELECT      *    , RANK() OVER (PARTITION BY shift_activity_arn ORDER BY shift_activity_version DESC) recency    FROM      shift_activities    WHERE (instance_id = 'YourAmazonConnectInstanceId') )  t WHERE (recency = 1)

Schritt 4: Erstellen Sie eine Ansicht, um die für den Kundendienstmitarbeiter geplanten Schichtaktivitäten abzurufen.

CREATE OR REPLACE VIEW "agent_scheduled_shift_activities_view" AS WITH   latest_staff_shifts AS (    SELECT      agent_arn    , shift_id    , shift_version    , shift_start_timestamp    , shift_end_timestamp    , created_timestamp    , last_updated_timestamp    , data_lake_last_processed_timestamp    , recency    FROM      (       SELECT         RANK() OVER (PARTITION BY shift_id ORDER BY shift_version DESC) recency       , *       FROM         staff_shifts sa       WHERE (instance_id = 'YourAmazonConnectInstanceId')    )  t    WHERE ((recency = 1) AND (is_deleted = false)) ) SELECT   asgfg.forecast_group_name , array_join(sn.supervisor_names, ',') supervisor_names , s.agent_arn , u.first_name , u.last_name , asgfg.staffing_group_name , ssa.activity_id , (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.shift_activity_name, 'Work') ELSE sa.shift_activity_name END) shift_activity_name , s.shift_start_timestamp , s.shift_end_timestamp , (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.type, 'PRODUCTIVE') ELSE sa.type END) type , (CASE WHEN (ssa.shift_activity_arn IS NULL) THEN COALESCE(sa.is_paid, true) ELSE sa.is_paid END) is_paid , ssa.activity_start_timestamp , ssa.activity_end_timestamp , ssa.last_updated_timestamp , ssa.data_lake_last_processed_timestamp , u.agent_username as username , u.agent_routing_profile_id as routing_profile_id FROM   staff_shift_activities ssa INNER JOIN latest_staff_shifts s ON s.shift_id = ssa.shift_id AND s.shift_version = ssa.shift_version INNER JOIN USERS u ON s.agent_arn = u.user_arn INNER JOIN latest_agent_staffing_group_forecast_group_view asgfg ON s.agent_arn = asgfg.agent_arn LEFT JOIN latest_shift_activities_view sa ON sa.shift_activity_arn = ssa.shift_activity_arn INNER JOIN latest_supervisor_names_view sn ON sn.staffing_group_arn = asgfg.staffing_group_arn WHERE (ssa.is_deleted = false) AND (COALESCE(ssa.activity_status, ' ') <> 'INACTIVE') AND (ssa.instance_id = 'YourAmazonConnectInstanceId')

2. Abfrage, um alle Urlaubsanträge der Kundendienstmitarbeiter in einer bestimmten Prognosegruppe abzurufen

SELECT * FROM agent_timeoff_report_view where forecast_group_name = 'AnyDepartmentForecastGroup'

Verwenden Sie die folgende Abfrage, um die oben genannte agent_timeoff_report_view zu erstellen.

CREATE OR REPLACE VIEW "agent_timeoff_report_view" AS WITH latest_staff_timeoffs AS (         SELECT t1.*,             CAST((t1.effective_timeoff_hours * 60) AS INT) total_effective_timeoff_minutes         FROM (                 SELECT RANK() OVER (                         PARTITION BY timeoff_id                         ORDER BY timeoff_version DESC                     ) recency,                     agent_arn,                     timeoff_id,                     shift_activity_arn,                     timeoff_status,                     timeoff_version,                     effective_timeoff_hours,                     timeoff_start_timestamp,                     timeoff_end_timestamp,                     last_updated_timestamp,                     data_lake_last_processed_timestamp                 FROM staff_timeoffs                 WHERE (                         instance_id = 'YourAmazonConnectInstanceId'                     )             ) t1         WHERE (recency = 1)     ) SELECT asgfg.forecast_group_name,     to.agent_arn,     asgfg.agent_name,     asgfg.staffing_group_name,     asgfg.username,     sa.shift_activity_name,     to.timeoff_start_timestamp,     to.timeoff_end_timestamp,     to.timeoff_status,     array_join(sn.supervisor_names, ',') AS supervisor_names,     sa.is_paid,     to.last_updated_timestamp,     to.data_lake_last_processed_timestamp,     u.agent_routing_profile_id AS routing_profile_id,     to.timeoff_id,     to.shift_activity_arn,     to.total_effective_timeoff_minutes FROM latest_staff_timeoffs to     INNER JOIN latest_agent_staffing_group_forecast_group_view asgfg ON asgfg.agent_arn = to.agent_arn     INNER JOIN latest_shift_activities_view sa ON sa.shift_activity_arn = to.shift_activity_arn     INNER JOIN latest_supervisor_names_view sn ON sn.staffing_group_arn = asgfg.staffing_group_arn     INNER JOIN users u ON u.user_arn = to.agent_arn