diff --git a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php index 4bc6c74ff8ec8ea1794970571611f87ac03bca12..888c7e24e64f1927a41db9bccc6a886b7b0e720c 100644 --- a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php +++ b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php @@ -1665,21 +1665,27 @@ trait SolrMarcFincTrait $idRetrieval = function ($value) { // use preg_match to get rid of the isil - preg_match("/^(\([A-z]*-[A-z0-9]*\))?\s*([A-z0-9]*)\s*$/", $value, $matches); + preg_match(self::KXP_PATTERN, $value, $matches); if (!empty($matches[2])) { - $query = 'record_id:' . $matches[2]; + $query = 'kxp_id_str:' . $matches[2]; if ($sid = $this->fields['source_id']) { $query .= ' AND source_id:'.$sid; } - $result = $this->searchService->search('Solr', new Query($query)); + $result = $this->searchService->search( + 'Solr', + new Query($query) + ); if (count($result) === 0) { - $this->debug('Could not retrieve id for record with ' . $query); + $this->debug( + 'Could not retrieve id for record with ' . $query + ); return null; } return current($result->getRecords())->getUniqueId(); } - $this->debug('Pregmatch pattern in getHierarchyParentID failed for ' . - $value + $this->debug( + 'Pregmatch pattern in getHierarchyParentID failed for ' + . $value ); return $value; };