diff --git a/src/files/tandemparametersfile.cpp b/src/files/tandemparametersfile.cpp
index 53b08bcf9c576893ebe5a946698ac0cd7253e609..6c7066f63036bd76214a86ba466dd673592e8a72 100644
--- a/src/files/tandemparametersfile.cpp
+++ b/src/files/tandemparametersfile.cpp
@@ -42,31 +42,41 @@ TandemParametersFile::TandemParametersFile(const QString &fasta_source)
 
   qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__ << " "
            << fasta_source;
-  setMethodName(_param_source.baseName());
 }
 TandemParametersFile::TandemParametersFile(const QFileInfo &fasta_source)
   : _param_source(fasta_source)
 {
-  setMethodName(_param_source.baseName());
 }
 TandemParametersFile::TandemParametersFile(const TandemParametersFile &other)
   : _param_source(other._param_source)
 {
-  setMethodName(_param_source.baseName());
 }
 TandemParametersFile::~TandemParametersFile()
 {
 }
 const QString
-TandemParametersFile::getMethodName() const
+TandemParametersFile::getMethodName()
 {
-  return m_methodName;
-}
-
-void
-TandemParametersFile::setMethodName(QString method_name)
-{
-  m_methodName = method_name;
+  setTandemParametersFileType();
+  if(m_fileType == ParamFileType::preset)
+    {
+      return _param_source.baseName();
+    }
+  else if(m_fileType == ParamFileType::result)
+    {
+      return m_presetFileInfo.baseName();
+    }
+  else if(m_fileType == ParamFileType::not_xtandem)
+    {
+      throw pappso::PappsoException(
+        QObject::tr("error : %1 is not a TandemParameters file\n")
+          .arg(_param_source.fileName()));
+    }
+  else // m_fileType == ParamFileType::no_file
+    {
+      throw pappso::PappsoException(QObject::tr("error : %1 Doesn't exist'\n")
+                                      .arg(_param_source.fileName()));
+    }
 }
 
 const QString
@@ -162,6 +172,8 @@ TandemParametersFile::getTandemParameters()
   TandemParameters parameters;
   XtandemParamSaxHandler *parser = new XtandemParamSaxHandler(&parameters);
 
+  setTandemParametersFileType();
+
   QXmlSimpleReader simplereader;
   simplereader.setContentHandler(parser);
   simplereader.setErrorHandler(parser);
@@ -192,44 +204,26 @@ TandemParametersFile::getTandemParameters()
           .arg(_param_source.absoluteFilePath())
           .arg(parser->errorString()));
     }
-  if(m_isTandemParameterFile)
-    {
-      setMethodName(parser->getTandemPresetName());
-    }
+
+  m_presetFileInfo = parser->getTandemPresetFileInfo();
+
   delete parser;
   parameters.setMethodName(getMethodName());
-
   return parameters;
 }
 
 bool
 TandemParametersFile::isTandemPresetFile()
 {
-
-  if(this->exists())
+  getTandemParameters();
+  if(m_fileType == ParamFileType::result || m_fileType == ParamFileType::preset)
     {
-
-      try
-        {
-          TandemParameters param = getTandemParameters();
-
-          if(!m_isTandemParameterFile)
-            return false;
-          param.getValue("spectrum, threads");
-        }
-      catch(pappso::ExceptionNotFound &error)
-        {
-          if(!m_isTandemParameterFile)
-            return false;
-        }
-      catch(pappso::PappsoException &error)
-        {
-          if(!m_isTandemParameterFile)
-            return false;
-        }
       return true;
     }
-  return false;
+  else
+    {
+      return false;
+    }
 }
 
 void
@@ -258,3 +252,40 @@ TandemParametersFile::writeXmlParametersFile(
   p_out->writeEndElement();
   p_out->writeEndDocument();
 }
+
+void
+TandemParametersFile::setTandemParametersFileType()
+{
+  if(this->exists())
+    {
+      try
+        {
+          TandemParameters param;
+          XtandemParamSaxHandler *parser = new XtandemParamSaxHandler(&param);
+
+          if(parser->getTandemPresetFileInfo().exists())
+            {
+              m_fileType = ParamFileType::result;
+            }
+          else
+            {
+              m_fileType = ParamFileType::preset;
+            }
+          delete parser;
+        }
+      catch(pappso::ExceptionNotFound &error)
+        {
+          throw pappso::ExceptionNotFound(
+            QObject::tr("error : %1 Doesn't exist'\n")
+              .arg(_param_source.fileName()));
+          m_fileType = ParamFileType::no_file;
+        }
+      catch(pappso::PappsoException &error)
+        {
+          throw pappso::PappsoException(
+            QObject::tr("error : %1 Doesn't exist'\n")
+              .arg(_param_source.fileName()));
+          m_fileType = ParamFileType::not_xtandem;
+        }
+    }
+}
diff --git a/src/files/tandemparametersfile.h b/src/files/tandemparametersfile.h
index fa73769d72a76fc3f3500975a732ac2b016ce69e..4a01c1ac8391f4f481f45915f3242074b2f9c3e0 100644
--- a/src/files/tandemparametersfile.h
+++ b/src/files/tandemparametersfile.h
@@ -34,6 +34,15 @@
 #include <QXmlStreamWriter>
 #include "../core/tandem_run/tandemparameters.h"
 
+enum class ParamFileType : std::int8_t
+{
+  preset      = 0, ///< Preset file type
+  result      = 1, ///< Result file type
+  not_xtandem = 2, ///< Not XTandem file type
+  no_file     = 3, ///< No parameters file found
+
+};
+
 class TandemParametersFile
 {
 
@@ -47,7 +56,7 @@ class TandemParametersFile
    * File name if its a TandemPresetFile
    * or "list path, default parameters" value if its a Tandem result
    */
-  const QString getMethodName() const;
+  const QString getMethodName();
   const QString getFilename() const;
   const QDir getAbsoluteDir() const;
   const QString getAbsoluteFilePath() const;
@@ -68,14 +77,15 @@ class TandemParametersFile
   /** @brief set param file directory
    */
   void setDirectory(const QDir &directory);
-  void setMethodName(const QString method_name);
 
   private:
   void writeXmlParametersFile(QXmlStreamWriter *p_out,
                               const TandemParameters &parameters) const;
+  void setTandemParametersFileType();
 
   private:
   QFileInfo _param_source;
   bool m_isTandemParameterFile = false;
-  QString m_methodName;
+  ParamFileType m_fileType;
+  QFileInfo m_presetFileInfo;
 };
diff --git a/src/input/xtandemparamsaxhandler.cpp b/src/input/xtandemparamsaxhandler.cpp
index b387abd467f75866d1f9a85bc2c2d91a821f3d03..adaa54b1fe2e793fcee3e133c4203d26239147d3 100644
--- a/src/input/xtandemparamsaxhandler.cpp
+++ b/src/input/xtandemparamsaxhandler.cpp
@@ -31,7 +31,6 @@
 #include "xtandemparamsaxhandler.h"
 #include <pappsomspp/pappsoexception.h>
 #include <QDebug>
-#include <QFileInfo>
 
 
 XtandemParamSaxHandler::XtandemParamSaxHandler(
@@ -244,8 +243,7 @@ XtandemParamSaxHandler::endElement_note()
         {
           if(_current_label == "list path, default parameters")
             {
-              m_presetFileName =
-                QFileInfo(_current_text.simplified()).baseName();
+              m_presetFileInfo = QFileInfo(_current_text.simplified());
             }
           _p_tandem_parameters->setParamLabelValue(_current_label,
                                                    _current_text.simplified());
@@ -264,8 +262,8 @@ XtandemParamSaxHandler::endElement_note()
   return true;
 }
 
-QString
-XtandemParamSaxHandler::getTandemPresetName() const
+QFileInfo
+XtandemParamSaxHandler::getTandemPresetFileInfo() const
 {
-  return m_presetFileName;
+  return m_presetFileInfo;
 }
diff --git a/src/input/xtandemparamsaxhandler.h b/src/input/xtandemparamsaxhandler.h
index e6e039328616befa9968040974b1cec140db70c2..5a59557cb30a9b34380248c427cefd117652494f 100644
--- a/src/input/xtandemparamsaxhandler.h
+++ b/src/input/xtandemparamsaxhandler.h
@@ -33,6 +33,7 @@
 #include <QXmlDefaultHandler>
 #include <vector>
 #include "../core/tandem_run/tandemparameters.h"
+#include <QFileInfo>
 
 class XtandemParamSaxHandler : public QXmlDefaultHandler
 {
@@ -62,7 +63,7 @@ class XtandemParamSaxHandler : public QXmlDefaultHandler
 
   bool isTandemParameter() const;
 
-  QString getTandemPresetName() const;
+  QFileInfo getTandemPresetFileInfo() const;
 
   private:
   bool startElement_note(QXmlAttributes attributes);
@@ -77,5 +78,5 @@ class XtandemParamSaxHandler : public QXmlDefaultHandler
 
   QString _current_label;
   bool m_isTandemParameter = false;
-  QString m_presetFileName;
+  QFileInfo m_presetFileInfo;
 };
diff --git a/src/resources/model/QExactive_analysis_FDR_nosemi.xml b/src/resources/model/QExactive_analysis_FDR_nosemi.xml
old mode 100755
new mode 100644