From 5bf960b7d068896f911aefe9c822fa7b3c9916e1 Mon Sep 17 00:00:00 2001 From: Roly Gutierrez Date: Wed, 25 Aug 2021 18:27:43 -0400 Subject: [PATCH] PMCORE-3246 Improvement import validation when pmtable not contain all fields. --- workflow/engine/src/ProcessMaker/Model/CaseList.php | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/workflow/engine/src/ProcessMaker/Model/CaseList.php b/workflow/engine/src/ProcessMaker/Model/CaseList.php index 7c4148be5..0e4a2ead8 100644 --- a/workflow/engine/src/ProcessMaker/Model/CaseList.php +++ b/workflow/engine/src/ProcessMaker/Model/CaseList.php @@ -311,14 +311,11 @@ class CaseList extends Model //the fields have differences between the import file and the current table $requestData['invalidFields'] = $requestData['invalidFields'] ?? ''; if ($requestData['invalidFields'] !== 'continue') { - $fields = Fields::where('ADD_TAB_UID', '=', $array['tableUid']) - ->whereNotIn('FLD_NAME', self::$excludeColumns) - ->select('FLD_NAME') - ->get() - ->transform(function ($object) { - return $object->FLD_NAME; - }) - ->toArray(); + $fields = []; + $columns = CaseList::formattingColumns($array['type'], $array['tableUid'], []); + foreach ($columns as $column) { + $fields[] = $column['field']; + } foreach ($array['columns'] as $value) { if (!in_array($value['field'], $fields)) { return [