diff --git a/GUI/coregui/Models/FitParameterItems.cpp b/GUI/coregui/Models/FitParameterItems.cpp
index 4613d8b4f3ca6a4f8fd3039c2d5321225c816b3f..f42365a9416b20a8007eb689e0eac1177ba8f2ce 100644
--- a/GUI/coregui/Models/FitParameterItems.cpp
+++ b/GUI/coregui/Models/FitParameterItems.cpp
@@ -20,6 +20,7 @@
 #include "ModelPath.h"
 #include "FitParameter.h"
 #include "ParameterTreeItems.h"
+#include "JobItem.h"
 #include <cmath>
 
 namespace
@@ -122,15 +123,16 @@ std::unique_ptr<FitParameter> FitParameterItem::createFitParameter() const
     result->setStartValue(getItemValue(FitParameterItem::P_START_VALUE).toDouble());
     result->setLimits(attLimits());
 
-    const SessionItem* jobItem = ModelPath::ancestor(this, Constants::JobItemType);
+    const JobItem* jobItem = dynamic_cast<const JobItem*>(ModelPath::ancestor(this, Constants::JobItemType));
     Q_ASSERT(jobItem);
 
     foreach (SessionItem* linkItem, getItems(FitParameterItem::T_LINK)) {
-//        QString link = linkItem->getItemValue(FitParameterLinkItem::P_LINK).toString();
-//        std::string domainPath = "*" + ModelPath::translateParameterName(jobItem, link);
-//        linkItem->setItemValue(FitParameterLinkItem::P_DOMAIN, QString::fromStdString(domainPath));
+        QString link = linkItem->getItemValue(FitParameterLinkItem::P_LINK).toString();
+
+        ParameterItem *parItem = dynamic_cast<ParameterItem*>(
+                    ModelPath::getItemFromPath(link, jobItem->parameterContainerItem()));
+        Q_ASSERT(parItem);
 
-        ParameterItem *parItem = dynamic_cast<ParameterItem*>(linkItem);
         QString translation = "*/" + ModelPath::itemPathTranslation(*parItem->linkedItem(), jobItem);
         parItem->setItemValue(ParameterItem::P_DOMAIN, translation);
 
diff --git a/GUI/coregui/Models/JobItem.cpp b/GUI/coregui/Models/JobItem.cpp
index 3523b832b2571a9876e4bb4c3943a8bde80943fa..dadc12bcf98be952abccb6d2f46f6378ffccd52e 100644
--- a/GUI/coregui/Models/JobItem.cpp
+++ b/GUI/coregui/Models/JobItem.cpp
@@ -276,7 +276,13 @@ FitSuiteItem *JobItem::fitSuiteItem()
     return dynamic_cast<FitSuiteItem *>(getItem(JobItem::T_FIT_SUITE));
 }
 
-ParameterContainerItem *JobItem::parameterContainerItem()
+ParameterContainerItem* JobItem::parameterContainerItem()
+{
+    return const_cast<ParameterContainerItem*>(
+        static_cast<const JobItem*>(this)->parameterContainerItem());
+}
+
+const ParameterContainerItem *JobItem::parameterContainerItem() const
 {
     return dynamic_cast<ParameterContainerItem *>(getItem(JobItem::T_PARAMETER_TREE));
 }
diff --git a/GUI/coregui/Models/JobItem.h b/GUI/coregui/Models/JobItem.h
index b8f18cc05892a40af4d4425f01106bee78b1671e..3451404b22b4b7939e4692b5a576415570f98cdb 100644
--- a/GUI/coregui/Models/JobItem.h
+++ b/GUI/coregui/Models/JobItem.h
@@ -96,6 +96,8 @@ public:
 
     FitSuiteItem *fitSuiteItem();
     ParameterContainerItem *parameterContainerItem();
+    const ParameterContainerItem *parameterContainerItem() const;
+
     FitParameterContainerItem *fitParameterContainerItem();
     RealDataItem *realDataItem();