From 2db1adc9ab672a6719c4db1982231d86d2925c1d Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Mon, 17 Jul 2023 11:34:01 -0500 Subject: [PATCH] CE-536 If records are supplied to the process input, then use them instead of running a query. --- .../etl/streamedwithfrontend/ExtractViaQueryStep.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/processes/implementations/etl/streamedwithfrontend/ExtractViaQueryStep.java b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/processes/implementations/etl/streamedwithfrontend/ExtractViaQueryStep.java index 1f3e776d..637b0f9e 100644 --- a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/processes/implementations/etl/streamedwithfrontend/ExtractViaQueryStep.java +++ b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/processes/implementations/etl/streamedwithfrontend/ExtractViaQueryStep.java @@ -39,6 +39,7 @@ import com.kingsrook.qqq.backend.core.model.actions.tables.query.QFilterCriteria import com.kingsrook.qqq.backend.core.model.actions.tables.query.QQueryFilter; import com.kingsrook.qqq.backend.core.model.actions.tables.query.QueryInput; import com.kingsrook.qqq.backend.core.model.metadata.tables.QTableMetaData; +import com.kingsrook.qqq.backend.core.utils.CollectionUtils; import com.kingsrook.qqq.backend.core.utils.JsonUtils; import com.kingsrook.qqq.backend.core.utils.StringUtils; @@ -80,6 +81,15 @@ public class ExtractViaQueryStep extends AbstractExtractStep @Override public void run(RunBackendStepInput runBackendStepInput, RunBackendStepOutput runBackendStepOutput) throws QException { + ///////////////////////////////////////////////////////////////////////// + // if records are already specified in the step input, then use those. // + ///////////////////////////////////////////////////////////////////////// + if(CollectionUtils.nullSafeHasContents(runBackendStepInput.getRecords())) + { + getRecordPipe().addRecords(runBackendStepInput.getRecords()); + return; + } + ////////////////////////////////////////////////////////////////// // clone the filter, since we're going to edit it (set a limit) // //////////////////////////////////////////////////////////////////