Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .buildkite/scripts/run_models.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,4 @@ dbt run --target "$db" --full-refresh
dbt test --target "$db"
dbt run --vars '{employee_history_enabled: true}' --target "$db"
dbt test --target "$db"
dbt run --vars '{workday__using_military_service_incoming: false, workday__using_personal_information_ethnicity_incoming: false, workday__using_personal_info_v2_schema: false}' --target "$db"
dbt test --target "$db"
dbt run-operation fivetran_utils.drop_schemas_automation --target "$db"
11 changes: 0 additions & 11 deletions .quickstart/quickstart.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,6 @@ schema_key: workday_schema
dbt_versions: ">=1.3.0 <3.0.0"

table_variables:
workday__using_military_service_incoming:
- military_service_incoming
workday__using_personal_information_ethnicity_incoming:
- personal_information_ethnicity_incoming
workday__using_personal_info_v2_schema:
- personal_information_common_data
- country_personal_information
employee_history_enabled:
- worker_history
- worker_position_history
Expand Down Expand Up @@ -38,10 +31,6 @@ table_variables:
- position_organization
_fivetran_quickstart_worker_leave_status:
- worker_leave_status
_fivetran_quickstart_military_service_legacy:
- military_service_legacy
_fivetran_quickstart_personal_information_ethnicity_legacy:
- personal_information_ethnicity_legacy

destination_configurations:
databricks:
Expand Down
34 changes: 34 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,37 @@
# dbt_workday v0.9.0

[PR #30](https://github.com/fivetran/dbt_workday/pull/30) includes the following updates.

## Schema/Data Change
**5 total changes • 3 possible breaking changes**

| Data Model(s) | Change type | Old | New | Notes |
| ------------- | ----------- | --- | --- | ----- |
| `stg_workday__military_service` **(Breaking Change)** | Removed fields | `index`, `service_type` | N/A | Legacy fields from the [January 2026 Workday HCM schema update](https://fivetran.com/docs/connectors/applications/workday-hcm/changelog#january2026) removed; no longer present in the `military_service` source table. |
| `stg_workday__personal_information_ethnicity` **(Breaking Change)** | Removed field | `index` | N/A | Legacy field from the [January 2026 Workday HCM schema update](https://fivetran.com/docs/connectors/applications/workday-hcm/changelog#january2026) removed; no longer present in the `personal_information_ethnicity` source table. |
| `stg_workday__military_service` **(Breaking Change)** | Changed field | `coalesce(status_id, status)` aliased as `military_status` | `status_id` aliased as `military_status` | Legacy `status` column removed from source as of the [January 2026 Workday HCM schema update](https://fivetran.com/docs/connectors/applications/workday-hcm/changelog#january2026); `status_id` is now the sole value. |
| `stg_workday__personal_information_common_data`, `stg_workday__country_personal_information` | Changed field | Models gated behind `workday__using_personal_info_v2_schema` variable | Always enabled | The [Workday connector's April 6, 2026 deprecation](https://fivetran.com/docs/connectors/applications/workday-hcm/changelog#january2026) retired the legacy schema, making these models always required. |
| `stg_workday__personal_information` | Removed model | Model existed for legacy schema support | N/A | Removed alongside the legacy schema path in `int_workday__personal_details` as the legacy `personal_information` table is no longer supported per the [April 6, 2026 Workday HCM schema update](https://fivetran.com/docs/connectors/applications/workday-hcm/changelog#january2026). |

## Under the Hood
- Removes the `does_table_exist` macro and all `_incoming` table-switching logic from `stg_workday__military_service_base` and `stg_workday__personal_information_ethnicity_base`. Both base models now point directly to their canonical source tables.
- Removes the legacy schema path from `int_workday__personal_details`, including the `workday__using_personal_info_v2_schema` variable check and associated conditional joins.
- Removes source definitions for `military_service_incoming`, `personal_information_ethnicity_incoming`, `military_service_legacy`, and `personal_information_ethnicity_legacy` from `src_workday.yml`.
- Removes the following variables that were used during the January–April 2026 transition period: `workday__using_military_service_incoming`, `workday__using_personal_information_ethnicity_incoming`, `workday__using_personal_info_v2_schema`.

# dbt_workday v0.9.0-a1
[PR #29](https://github.com/fivetran/dbt_workday/pull/29) is a pre-release that includes the following updates:

## Schema/Data Change
**1 total change • 1 possible breaking change**

| Data Model(s) | Change type | Old | New | Notes |
| ------------- | ----------- | --- | --- | ----- |
| `workday__employee_daily_history` <br> `workday__worker_position_org_daily_history` | Data change | Default `employee_history_start_date` = `2005-03-01` | Default `employee_history_start_date` = `2025-03-01` | Aligns the dbt Core default with the Quickstart default. Users who do not explicitly set `employee_history_start_date` will now receive just over one year of history instead of all available history by default. See how to configure the `employee_history_start_date` to another date in the README. |

## Bug Fixes
- Fixes an issue where `workday__employee_daily_history` and `workday__worker_position_org_daily_history` would fail on Snowflake with a `Date 'None' is not recognized` error. The models now handle null results gracefully by falling back to the `employee_history_start_date` variable and today's date respectively.

# dbt_workday v0.8.2

## Feature Updates
Expand Down
29 changes: 2 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Include the following Workday HCM package version in your `packages.yml` file:
```yml
packages:
- package: fivetran/workday
version: [">=0.8.0", "<0.9.0"] # we recommend using ranges to capture non-breaking changes automatically
version: [">=0.9.0", "<0.10.0"] # we recommend using ranges to capture non-breaking changes automatically
```

#### Databricks dispatch configuration
Expand Down Expand Up @@ -135,7 +135,7 @@ vars:
employee_history_start_date: 'YYYY-MM-DD' # The first `_fivetran_start` date you'd like to filter data on in all your history models.
```

In dbt Core, the default date value in our models is set at `2005-03-01` (the month Workday was founded), designed for if you want to capture all available data by default. If you choose to set a custom date value as outlined above, these models will take the greater of either this value or the minimum `_fivetran_start` date in the source data. They will then be used for creating the first dates available with historical data in your daily history models.
In dbt Core, the default date value in our models is set at `2025-03-01`, bringing in approximately one year of history by default. If you choose to set a custom date value as outlined above, these models will take the greater of either this value or the minimum `_fivetran_start` date in the source data. They will then be used for creating the first dates available with historical data in your daily history models.

For Quickstart users, this variable is available as **Employee History Start Date** in the Quickstart Settings tab. The default value is `2025-03-01`, bringing in data from the last year to ensure your first Quickstart run has recent correct data. Set a different date to increase or reduce the volume of historical records the package processes.

Expand Down Expand Up @@ -166,31 +166,6 @@ vars:
workday_<default_source_table_name>_identifier: your_table_name
```

#### (Optional): Workday Schema Migration Configuration

Workday is migrating to a new API version with significant schema changes that will last for several months. Starting **January 5, 2026**, existing Fivetran Workday HCM connectors will begin syncing new tables with an "_INCOMING" suffix alongside existing tables during a transition period lasting until **April 6, 2026**. This package automatically detects which tables are available in your warehouse and uses the appropriate tables. **No action is required in most cases.**

##### Impacted Tables
The following tables have new versions with "_incoming" suffix:
- `military_service` → `military_service_incoming`
- `personal_information_ethnicity` → `personal_information_ethnicity_incoming`

Additionally, fields from `personal_information_history` have been split into new tables:
- `personal_information_common_data`
- `country_personal_information`

##### Leveraging Legacy or Incoming Table Names
If you need to leverage the old personal information schema or have set up a Workday HCM connector after January 5, you can set the following variables in your `dbt_project.yml`:

```yml
# dbt_project.yml

vars:
workday__using_military_service_incoming: false # Default is currently true
workday__using_personal_information_ethnicity_incoming: false # Default is currently true
workday__using_personal_info_v2_schema: false # To leverage old schema. Default is currently true
```

### (Optional) Orchestrate your models with Fivetran Transformations for dbt Core™
<details><summary>Expand for details</summary>
<br>
Expand Down
7 changes: 1 addition & 6 deletions dbt_project.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
config-version: 2
name: 'workday'
version: '0.8.2'
version: '0.9.0'
require-dbt-version: [">=1.3.0", "<3.0.0"]

models:
Expand Down Expand Up @@ -43,11 +43,6 @@ vars:
worker_position_history: "{{ source('workday','worker_position_history') }}"
worker_leave_status: "{{ source('workday','worker_leave_status') }}"
worker_position_organization_history: "{{ source('workday','worker_position_organization_history') }}"

# New core tables (v42.2) - PERSONAL_INFORMATION split into 2 core tables
personal_information_common_data: "{{ source('workday','personal_information_common_data') }}"
country_personal_information: "{{ source('workday','country_personal_information') }}"

# Incomings tables (transition period: Jan 5, 2025 - Apr 6, 2026)
military_service_incoming: "{{ source('workday','military_service_incoming') }}"
personal_information_ethnicity_incoming: "{{ source('workday','personal_information_ethnicity_incoming') }}"
2 changes: 1 addition & 1 deletion docs/catalog.json

Large diffs are not rendered by default.

253 changes: 3 additions & 250 deletions docs/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/manifest.json

Large diffs are not rendered by default.

43 changes: 23 additions & 20 deletions integration_tests/dbt_project.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: 'workday_integration_tests'
version: '0.8.2'
version: '0.9.0'
config-version: 2

profile: 'integration_tests'
Expand All @@ -11,12 +11,7 @@ dispatch:
vars:
workday_schema: workday_integration_tests

# # Schema migration variables (must be at root level for model configs). These can be removed after April 6, 2026.
# workday__using_military_service_incoming: false
# workday__using_personal_information_ethnicity_incoming: false
# workday__using_personal_info_v2_schema: false

# employee_history_enabled: true # @docs-include
# employee_history_enabled: true

workday:
workday_job_profile_identifier: "workday_job_profile_data"
Expand All @@ -40,19 +35,9 @@ vars:
workday_worker_position_history_identifier: "workday_worker_position_history_data"
workday_worker_leave_status_identifier: "workday_worker_leave_status_data"
workday_worker_position_organization_history_identifier: "workday_worker_position_organization_history_data"

# New core tables (splits personal_information)
workday_personal_information_common_data_identifier: "workday_personal_information_common_data_data"
workday_country_personal_information_identifier: "workday_country_personal_information_data"

# Incoming schema tables for existing customers (to be used 1/5/26 through 4/6/26)
workday_military_service_incoming_identifier: "workday_military_service_incoming_data"
workday_personal_information_ethnicity_incoming_identifier: "workday_personal_information_ethnicity_incoming_data"

# Legacy schema tables (to be deprecated after 4/6/26)
workday_personal_information_ethnicity_legacy_identifier: "workday_personal_information_ethnicity_legacy_data"
workday_military_service_legacy_identifier: "workday_military_service_legacy_data"



models:
Expand All @@ -67,9 +52,6 @@ seeds:
+quote_columns: "{{ true if target.type in ('redshift', 'postgres') else false }}"
+column_types:
_fivetran_synced: timestamp
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean
workday_integration_tests:
workday_position_data:
+column_types:
Expand All @@ -96,6 +78,9 @@ seeds:
pay_group_frequency_primary_compensation_basis: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
pay_group_frequency_total_base_pay: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
pay_group_frequency_total_salary_and_allowances: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean
workday_worker_leave_status_data:
+column_types:
age_of_dependent: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
Expand All @@ -110,6 +95,24 @@ seeds:
academic_pay_setup_data_annual_work_period_work_percent_of_year: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
business_site_summary_scheduled_weekly_hours: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
default_weekly_hours: "{{ 'FLOAT64' if target.type == 'bigquery' else 'float' }}"
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean
workday_personal_information_history_data:
+column_types:
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean
workday_position_organization_data:
+column_types:
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean
workday_worker_position_organization_history_data:
+column_types:
_fivetran_start: timestamp
_fivetran_end: timestamp
_fivetran_active: boolean

flags:
send_anonymous_usage_stats: False
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
fivetran_id,personal_info_common_id,country_code,_fivetran_synced,gender,hispanic_or_latino,hukou_locality,hukou_postal_code,hukou_region_code,hukou_subregion_code,hukou_type_code,local_hukou,marital_status,marital_status_date,native_region_code,native_region,personnel_file_agency_for_person,political_affiliation,religion,social_benefits_locality
aa9f3d767a7d101ce0f62a055bb21628,aa9f3d767a7d101ce0f62a055bb21628,MH,2023-10-30 05:37:46,Male,,,,,,,, Single_Marshall_Islands,,,,,,,
3aa5550b7fe348b98d7b5741afc65536,3aa5550b7fe348b98d7b5741afc65536,USA,2023-10-30 05:37:46,Male,,,,,,,,Married_United_States,,,,,,,
3aa5550b7fe348b98d7b5741afc65534,3aa5550b7fe348b98d7b5741afc65534,USA,2023-10-30 05:40:20,Male,,,,,,,,Married_United_States,,,USA-10,,Christian_USA,,
f57bf46a5f254ed48ed45b3228b57028,f57bf46a5f254ed48ed45b3228b57028,USA,2023-10-30 05:40:22,Female,,,,,,,,Married_United_States,,,USA-10,,,,
9d16e42ecde84c9087537fd5e7f303a2,9d16e42ecde84c9087537fd5e7f303a2,UK,2023-10-30 05:38:35,Male,,,,,,,,Single_UK,,,,,,,
fivetran_id,personal_info_common_id,country_code,_fivetran_synced,_fivetran_deleted,gender,hispanic_or_latino,hukou_locality,hukou_postal_code,hukou_region_code,hukou_subregion_code,hukou_type_code,local_hukou,marital_status,marital_status_date,native_region_code,native_region,personnel_file_agency_for_person,political_affiliation,religion,social_benefits_locality
aa9f3d767a7d101ce0f62a055bb21628,aa9f3d767a7d101ce0f62a055bb21628,MH,2023-10-30 05:37:46,false,Male,,,,,,,, Single_Marshall_Islands,,,,,,,
3aa5550b7fe348b98d7b5741afc65536,3aa5550b7fe348b98d7b5741afc65536,USA,2023-10-30 05:37:46,false,Male,,,,,,,,Married_United_States,,,,,,,
3aa5550b7fe348b98d7b5741afc65534,3aa5550b7fe348b98d7b5741afc65534,USA,2023-10-30 05:40:20,false,Male,,,,,,,,Married_United_States,,,USA-10,,Christian_USA,,
f57bf46a5f254ed48ed45b3228b57028,f57bf46a5f254ed48ed45b3228b57028,USA,2023-10-30 05:40:22,false,Female,,,,,,,,Married_United_States,,,USA-10,,,,
9d16e42ecde84c9087537fd5e7f303a2,9d16e42ecde84c9087537fd5e7f303a2,UK,2023-10-30 05:38:35,false,Male,,,,,,,,Single_UK,,,,,,,

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
fivetran_id,worker_id,_fivetran_synced,additional_nationality,blood_type,citizenship_status,city_of_birth,city_of_birth_code,country_of_birth,country_region_of_birth,date_of_birth,date_of_death,last_medical_exam_date,last_medical_exam_valid_to,medical_exam_notes,primary_nationality,region_of_birth
aa9f3d767a7d101ce0f62a055bb21628,aa9f3d767a7d101ce0f62a055bb21628,2023-10-30 05:37:46,,,"[""Citizen_by_Birth_Marshall_Islands""]",Bikini Bottom,,MH,,1983-10-24,,,,,MH,
3aa5550b7fe348b98d7b5741afc65534,3aa5550b7fe348b98d7b5741afc65534,2023-10-30 05:37:46,,,"[""Citizen_by_Birth_United_States""]",Springfield,,USA,,1966-06-21,,,,,USA,
3aa5550b7fe348b98d7b5741afc65536,3aa5550b7fe348b98d7b5741afc65536,2023-10-30 05:40:20,,,"[""Citizen_United_States""]",Bedrock,,USA,,1000-07-22,,,,,USA,
f57bf46a5f254ed48ed45b3228b57028,f57bf46a5f254ed48ed45b3228b57028,2023-10-30 05:40:22,,,"[""Citizen_United_States""]",Westfield,,USA,,1889-01-28,,,,,USA,
9d16e42ecde84c9087537fd5e7f303a2,9d16e42ecde84c9087537fd5e7f303a2,2023-10-30 05:38:35,,,"[""Citizen_United_Kingdom""]",London,,UK,,1990-08-05,,,,,UK,
fivetran_id,worker_id,_fivetran_synced,_fivetran_deleted,additional_nationality,blood_type,citizenship_status,city_of_birth,city_of_birth_code,country_of_birth,country_region_of_birth,date_of_birth,date_of_death,last_medical_exam_date,last_medical_exam_valid_to,medical_exam_notes,primary_nationality,region_of_birth
aa9f3d767a7d101ce0f62a055bb21628,aa9f3d767a7d101ce0f62a055bb21628,2023-10-30 05:37:46,false,,,"[""Citizen_by_Birth_Marshall_Islands""]",Bikini Bottom,,MH,,1983-10-24,,,,,MH,
3aa5550b7fe348b98d7b5741afc65534,3aa5550b7fe348b98d7b5741afc65534,2023-10-30 05:37:46,false,,,"[""Citizen_by_Birth_United_States""]",Springfield,,USA,,1966-06-21,,,,,USA,
3aa5550b7fe348b98d7b5741afc65536,3aa5550b7fe348b98d7b5741afc65536,2023-10-30 05:40:20,false,,,"[""Citizen_United_States""]",Bedrock,,USA,,1000-07-22,,,,,USA,
f57bf46a5f254ed48ed45b3228b57028,f57bf46a5f254ed48ed45b3228b57028,2023-10-30 05:40:22,false,,,"[""Citizen_United_States""]",Westfield,,USA,,1889-01-28,,,,,USA,
9d16e42ecde84c9087537fd5e7f303a2,9d16e42ecde84c9087537fd5e7f303a2,2023-10-30 05:38:35,false,,,"[""Citizen_United_Kingdom""]",London,,UK,,1990-08-05,,,,,UK,
Loading
Loading