diff --git a/src/components/datas/DatasLink.vue b/src/components/datas/DatasLink.vue
index 896f7e61ded1d8cf7a37ae4632b1292799b2c0d9..5394eb14284f02b3b590419b97e07ac398470ee6 100644
--- a/src/components/datas/DatasLink.vue
+++ b/src/components/datas/DatasLink.vue
@@ -148,7 +148,7 @@ export default {
         const result = await getOrLoadDataByNaturalKey(
           props.application,
           props.referenceType,
-          props.columnId || props.value
+          props.value?.toLowerCase()
         );
         let referenceTypeForReferencingColumns = result.referenceTypeForReferencingColumns;
         if (result.rows.length !== 0) {
diff --git a/src/components/datas/DatasPatternLink.vue b/src/components/datas/DatasPatternLink.vue
index 09b141f5a7c1195c2a7fea8c01efef908abf5b08..82576851fb231f493bd3c4534c3335e8e3b8147e 100644
--- a/src/components/datas/DatasPatternLink.vue
+++ b/src/components/datas/DatasPatternLink.vue
@@ -104,8 +104,8 @@ export default {
     const isCardModalActive = useBoolean().refBoolean;
     const isLoading = useBoolean().refBoolean;
 
-    function showBtnTablePatternColumn(tableDynamicColumn) {
-      let showModal = Object.entries(tableDynamicColumn)
+    function showBtnTablePatternColumn(tablePatternColumn) {
+      let showModal = Object.entries(tablePatternColumn)
         .filter((a) => a[1])
         .map(function (a) {
           let obj = {};
diff --git a/src/model/application/Component.js b/src/model/application/Component.js
index 7a1517380d07c4c7648388712b7f58b8445a2dc0..acf685f96f612b6d4b08d4205689793f97e0ba3a 100644
--- a/src/model/application/Component.js
+++ b/src/model/application/Component.js
@@ -54,7 +54,7 @@ export class Component {
     return row.values[this.id];
   }
 
-  getDisplayValue = function (row) {
+  getDisplayValue = function(row) {
     let columnValue = this.getColumnValue(row);
     let displaysForRow = row.displaysForRow?.[this.refLinkedTo]?.[row.values[this.id]];
     if (displaysForRow && typeof columnValue !== "number") {
@@ -107,8 +107,8 @@ export class Component {
           getInternationalizedColumn(
             referenceName,
             component.patternColumnComponents[patternColumnComponent].exportHeader ||
-              component.patternColumnComponents[patternColumnComponent].exportHeaderName ||
-              component.patternColumnComponents[patternColumnComponent].componentKey,
+            component.patternColumnComponents[patternColumnComponent].exportHeaderName ||
+            component.patternColumnComponents[patternColumnComponent].componentKey,
             application
           );
       }
@@ -259,7 +259,7 @@ class PatternComponent extends Component {
     return this.originalName || this.exportHeader;
   }
 
-  getDisplayValue = function (row) {
+  getDisplayValue = function(row) {
     let columnValue = this.getColumnValue(row);
     let displaysForRow = row.displaysForRow?.[this.refLinkedTo]?.[row.values[this.id]];
     if (displaysForRow && typeof columnValue !== "number") {
@@ -329,7 +329,7 @@ class PatternComponent extends Component {
           column: col.id,
           columnName,
           value: value[col.id],
-          id: col.id,
+          id: col.id
         };
         returnValue[col.id] = value[col.id];
         return returnValue;
@@ -341,20 +341,37 @@ class PatternComponent extends Component {
         } else {
           columnName = dataId;
         }
-        let returnValue = {
-          component: col,
-          column: col.id,
-          columnName,
-          value: value[col.id],
-          id: col.id,
-        };
+        let pattern = col.id.match("(.*)::(.*)");
+        let returnValue;
+        if (pattern) {
+          returnValue = {
+            component: col,
+            column: col.id,
+            columnName,
+            value: value[pattern[2]],
+            id: col.id
+          };
+
+        } else {
+          returnValue = {
+            component: col,
+            column: col.id,
+            columnName,
+            value: value[col.id],
+            id: col.id
+          };
+        }
         returnValue[col.id] = value[col.id];
         return returnValue;
       }, []);
-      adjacents.forEach((adjacent) => {qualifiers.push(adjacent);})
+      adjacents.forEach((adjacent) => {
+        qualifiers.push(adjacent);
+      });
     } else {
       qualifiers = [...this.patternQualifierComponents];
-      this.patternAdjacentComponents.forEach((adjacent) => {qualifiers.push(adjacent);})
+      this.patternAdjacentComponents.forEach((adjacent) => {
+        qualifiers.push(adjacent);
+      });
     }
 
     return qualifiers;
@@ -447,7 +464,7 @@ class PatternAdjacentComponent extends Component {
     }
     pattern = this.id.match("(.*)::(.*)");
     if (pattern) {
-      return row.values[pattern[1]]?.[0]?.[pattern[2]]
+      return row.values[pattern[1]]?.[0]?.[pattern[2]];
     }
     return "PatternAdjacentComponent not found " + this.id;
   }