From 571b6b20e0487dd43ddccacb5130f3e5a1f84a0d Mon Sep 17 00:00:00 2001 From: Aaron Bauman <aaron@messageagency.com> Date: Tue, 18 Mar 2025 14:15:23 -0400 Subject: [PATCH] Issue #3420549 by gcb: Wrong date field used in Pull Queue Worker --- .../salesforce_mapping/src/Entity/SalesforceMapping.php | 8 ++++++-- .../salesforce_pull/src/Plugin/QueueWorker/PullBase.php | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/modules/salesforce_mapping/src/Entity/SalesforceMapping.php b/modules/salesforce_mapping/src/Entity/SalesforceMapping.php index cf790bea..59d0c127 100644 --- a/modules/salesforce_mapping/src/Entity/SalesforceMapping.php +++ b/modules/salesforce_mapping/src/Entity/SalesforceMapping.php @@ -682,8 +682,12 @@ class SalesforceMapping extends ConfigEntityBase implements SalesforceMappingInt $mapped_fields = $this->getPullFieldsArray(); } $soql->fields = $mapped_fields; - $soql->fields[] = 'Id'; - $soql->fields[] = $this->getPullTriggerDate(); + $soql->fields['Id'] = 'Id'; + $pull_trigger_date = $this->getPullTriggerDate(); + $soql->fields[$pull_trigger_date] = $pull_trigger_date; + if ($pull_trigger_date !== 'LastModifiedDate') { + $soql->fields['LastModifiedDate'] = 'LastModifiedDate'; + } $start = $start > 0 ? $start : $this->getLastPullTime(); // If no lastupdate and no start window provided, get all records. diff --git a/modules/salesforce_pull/src/Plugin/QueueWorker/PullBase.php b/modules/salesforce_pull/src/Plugin/QueueWorker/PullBase.php index 6950cbaa..4abece93 100644 --- a/modules/salesforce_pull/src/Plugin/QueueWorker/PullBase.php +++ b/modules/salesforce_pull/src/Plugin/QueueWorker/PullBase.php @@ -168,7 +168,7 @@ abstract class PullBase extends QueueWorkerBase implements ContainerFactoryPlugi : $mapped_object->getChanged(); $pull_trigger_date = - $sf_object->field($mapping->getPullTriggerDate()); + $sf_object->field($mapping->getPullTriggerDate()) ?? $sf_object->field('LastModifiedDate'); $sf_record_updated = $pull_trigger_date ? strtotime($pull_trigger_date) : 0; $mapped_object -- GitLab