private void saveQuantifiers(QuantifierSettingStruct[] quantifiers, int taskID, string boxIdentity)
 {
     PropertySetting[] setting;
     Dictionary<string, double> properties = new Dictionary<string, double>();
     PropertySettingHelper propertySettingHelper;
     foreach (QuantifierSettingStruct quantifier in quantifiers)
     {
         setting = quantifier.setting;
         propertySettingHelper = new PropertySettingHelper(setting);
         properties.Clear();
         RelationEnum relation;
         //ParamP,ParamAlfa,ParamBeta,ParamDelta
         switch (quantifier.typeIdentifier)
         {
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.AboveAverageImplication.AboveAverageImplicationBoxInfo.typeIdentifier:
                 //15  Above Average Implication          ;;;;p
                 //ParamK
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamK"));
                 saveQuantifier(taskID, 15, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.BaseCeil.BaseCeilBoxInfo.typeIdentifier:
                 //18  BASE                               ;;count;p;
                 //19  Ceiling                            ;;count;p;
                 //17  Support                            p;;;;
                 //Relation,Treshold,Units
                 relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                 UnitsEnum units = (UnitsEnum)Enum.Parse(typeof(UnitsEnum), propertySettingHelper.GetStringProperty("Units"));
                 bool relative = false;
                 double treshold = propertySettingHelper.GetDoubleProperty("Treshold");
                 switch (units)
                 {
                     case UnitsEnum.AbsoluteNumber:
                         properties.Add("ParamAlfa", treshold);
                         relative = false;
                         break;
                     case UnitsEnum.RelativeToActCondition:
                         properties.Add("ParamBeta", treshold);
                         relative = true;
                         break;
                 }
                 switch (relation)
                 {
                     case RelationEnum.GreaterThanOrEqual:
                         saveQuantifier(taskID, 18, properties, relative);
                         break;
                     case RelationEnum.LessThanOrEqual:
                         saveQuantifier(taskID, 19, properties, relative);
                         break;
                 }
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.BelowAverageImplication.BelowAverageImplicationBoxInfo.typeIdentifier:
                 //16  Below Average Implication          ;;;;p
                 //ParamK
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamK"));
                 saveQuantifier(taskID, 16, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.DoubleFoundedImplication.DoubleFoundedImplicationBoxInfo.typeIdentifier:
                 //4   Double Founded Implication         p;
                 //ParamP
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 saveQuantifier(taskID, 4, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.DoubleCriticalImplication.DoubleCriticalImplicationBoxInfo.typeIdentifier:
                 //5   Double Lower Critical Implication  p;;Alpha
                 //6   Double Upper Critical Implication  p;;Alpha
                 //ParamP,ParamAlpha
                 relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 properties.Add("ParamAlfa", propertySettingHelper.GetDoubleProperty("ParamAlpha"));
                 switch (relation)
                 {
                     case RelationEnum.GreaterThanOrEqual:
                         saveQuantifier(taskID, 6, properties, false);
                         break;
                     case RelationEnum.LessThanOrEqual:
                         saveQuantifier(taskID, 5, properties, false);
                         break;
                 }
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.E.EBoxInfo.typeIdentifier:
                 //14  E-quantifier                       ;;Delta
                 //ParamP
                 properties.Add("ParamDelta", propertySettingHelper.GetDoubleProperty("ParamP"));
                 saveQuantifier(taskID, 4, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.Fisher.FisherBoxInfo.typeIdentifier:
                 //11  Fisher quantifier                  ;;Alpha
                 //ParamAlpha
                 properties.Add("ParamAlfa", propertySettingHelper.GetDoubleProperty("ParamAlpha"));
                 saveQuantifier(taskID, 11, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.FoundedEquivalence.FoundedEquivalenceBoxInfo.typeIdentifier:
                 //7   Founded Equivalence                p;
                 //ParamP
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 saveQuantifier(taskID, 7, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.FoundedImplication.FoundedImplicationBoxInfo.typeIdentifier:
                 //1   Founded Implication                p;
                 //ParamP
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 saveQuantifier(taskID, 1, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.ChiSquared.ChiSquaredBoxInfo.typeIdentifier:
                 //12  Chi-Squared quantifier             ;;Alpha
                 //ParamAlpha
                 properties.Add("ParamAlfa", propertySettingHelper.GetDoubleProperty("ParamAlpha"));
                 saveQuantifier(taskID, 12, properties, false);
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.CriticalEquivalence.CriticalEquivalenceBoxInfo.typeIdentifier:
                 //8   Lower Critical Equivalence         p;;Alpha
                 //9   Upper Critical Equivalence         p;;Alpha
                 //ParamP,ParamAlpha
                 relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 properties.Add("ParamAlfa", propertySettingHelper.GetDoubleProperty("ParamAlpha"));
                 saveQuantifier(taskID, 8, properties, false);
                 switch (relation)
                 {
                     case RelationEnum.GreaterThanOrEqual:
                         saveQuantifier(taskID, 9, properties, false);
                         break;
                     case RelationEnum.LessThanOrEqual:
                         saveQuantifier(taskID, 8, properties, false);
                         break;
                 }
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.CriticalImplication.CriticalImplicationBoxInfo.typeIdentifier:
                 //2   Lower Critical Implication         p;;Alpha
                 //3   Upper Critical Implication         p;;Alpha
                 //ParamP,ParamAlpha
                 relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                 properties.Add("ParamP", propertySettingHelper.GetDoubleProperty("ParamP"));
                 properties.Add("ParamAlfa", propertySettingHelper.GetDoubleProperty("ParamAlpha"));
                 switch (relation)
                 {
                     case RelationEnum.GreaterThanOrEqual:
                         saveQuantifier(taskID, 3, properties, false);
                         break;
                     case RelationEnum.LessThanOrEqual:
                         saveQuantifier(taskID, 2, properties, false);
                         break;
                 }
                 break;
             case Ferda.Modules.Boxes.LISpMinerTasks.FFTTask.Quantifiers.Functional.SimpleDeviation.SimpleDeviationBoxInfo.typeIdentifier:
                 //10  Simple Deviation                   ;;;;Delta
                 //ParamK
                 properties.Add("ParamDelta", propertySettingHelper.GetDoubleProperty("ParamK"));
                 saveQuantifier(taskID, 10, properties, false);
                 break;
             default:
                 throw Ferda.Modules.Exceptions.SwitchCaseNotImplementedError(quantifier.typeIdentifier);
         }
     }
 }
        private void saveQuantifiers(QuantifierSettingStruct[] quantifiers, int taskID, string boxIdentity)
        {
            PropertySettingHelper propertySettingHelper;
            string tableName = "tdDFQuantifier";
            string autoIncrementColumn = common.GetAutoIncrementColumnName(tableName);
            foreach (QuantifierSettingStruct quantifier in quantifiers)
            {
                propertySettingHelper = new PropertySettingHelper(quantifier.setting);
                OperationModeEnum operationMode = (OperationModeEnum)Enum.Parse(typeof(OperationModeEnum), propertySettingHelper.GetStringProperty("OperationMode"));
                RelationEnum relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                UnitsEnum units = UnitsEnum.AbsoluteNumber;
                try
                {
                    units = (UnitsEnum)Enum.Parse(typeof(UnitsEnum), propertySettingHelper.GetStringProperty("Units"));
                }
                catch
                {
                    units = UnitsEnum.AbsoluteNumber;
                }
                double treshold = propertySettingHelper.GetDoubleProperty("Treshold");
                int quantifierTypeID = 0;

                #region Quantifier switch
                switch (quantifier.typeIdentifier)
                {
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Aggregation.SumOfValues.SumOfValuesBoxInfo.typeIdentifier:
                        quantifierTypeID = 1;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Aggregation.MinValue.MinValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 2;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Aggregation.MaxValue.MaxValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 3;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Aggregation.BaseCeil.BaseCeilBoxInfo.typeIdentifier:
                        quantifierTypeID = 20;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Functional.FoundedImplication.FoundedImplicationBoxInfo.typeIdentifier:
                        units = UnitsEnum.AbsoluteNumber;
                        quantifierTypeID = 4;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Functional.AboveAverageImplication.AboveAverageImplicationBoxInfo.typeIdentifier:
                        units = UnitsEnum.AbsoluteNumber;
                        quantifierTypeID = 5;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Functional.DoubleFoundedImplication.DoubleFoundedImplicationBoxInfo.typeIdentifier:
                        units = UnitsEnum.AbsoluteNumber;
                        quantifierTypeID = 9;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDFFTTask.Quantifiers.Functional.FoundedEquivalence.FoundedEquivalenceBoxInfo.typeIdentifier:
                        units = UnitsEnum.AbsoluteNumber;
                        quantifierTypeID = 12;
                        break;
                    default:
                        throw Ferda.Modules.Exceptions.SwitchCaseNotImplementedError(quantifier.typeIdentifier);
                }

                #endregion

                long autoIncrementValue = common.GetTableAutoIncrementValue(tableName, 1);
                string query = "INSERT INTO " + tableName + " (" + autoIncrementColumn
                    + ",TaskID,SDQuantifierSourceTypeID,DFQuantifierTypeID,DFQuantifierValueTypeID,ValuePar,CompareTypeID) VALUES "
                    + "(" + autoIncrementValue + ","
                    + taskID + ","
                    + common.Constants.OperationModeEnumDictionary[operationMode] + ","
                    + quantifierTypeID + ","
                    + common.Constants.UnitsEnumDictionary[units] + ","
                    + "'" + treshold + "',"
                    + common.Constants.RelationEnumDictionary[relation]
                    + ")";
                common.ExecuteInsertQuery(query, tableName);
            }
        }
        private void saveQuantifiers(QuantifierSettingStruct[] quantifiers, int taskID, string boxIdentity)
        {
            Dictionary<string, double> properties = new Dictionary<string, double>();
            PropertySettingHelper propertySettingHelper;

            string tableName = "tdCFQuantifier";
            string autoIncrementColumn = common.GetAutoIncrementColumnName(tableName);

            foreach (QuantifierSettingStruct quantifier in quantifiers)
            {
                propertySettingHelper = new PropertySettingHelper(quantifier.setting);
                UnitsEnum units = UnitsEnum.AbsoluteNumber;
                bool quantifierWithUnits = true;
                try
                {
                    units = (UnitsEnum)Enum.Parse(typeof(UnitsEnum), propertySettingHelper.GetStringProperty("Units"));
                }
                catch (ArgumentException)
                {
                    quantifierWithUnits = false;
                }
                DirectionEnum direction = DirectionEnum.ColumnsOnRows;
                try
                {
                    direction = (DirectionEnum)Enum.Parse(typeof(DirectionEnum), propertySettingHelper.GetStringProperty("Direction"));
                }
                catch (ArgumentException) { }
                bool quantifierWithRelativeTreshold = false;
                bool aggregationQuantifierFlag = true;
                int fromColumn = 0;
                int toColumn = 0;
                int quantifierTypeID = 0;

                RelationEnum relation = RelationEnum.Equal;

                try
                {
                    relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                }
                catch (ArgumentException) { }
                double threshold = propertySettingHelper.GetDoubleProperty("Treshold");

                #region Quantifiers switch
                switch (quantifier.typeIdentifier)
                {
                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Aggregation.SumOfValues.SumOfValuesBoxInfo.typeIdentifier:
                        quantifierTypeID = 1;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Aggregation.MinValue.MinValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 2;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Aggregation.MaxValue.MaxValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 3;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Aggregation.AverageValue.AverageValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 4;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Aggregation.AnyValue.AnyValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 5;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.VariationRatio.VariationRatioBoxInfo.typeIdentifier:
                        quantifierTypeID = 8;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.NominalVariation.NominalVariationBoxInfo.typeIdentifier:
                        quantifierTypeID = 9;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.DiscreteOrdinaryVariation.DiscreteOrdinaryVariationBoxInfo.typeIdentifier:
                        quantifierTypeID = 10;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.ArithmeticAverage.ArithmeticAverageBoxInfo.typeIdentifier:
                        quantifierTypeID = 11;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.GeometricAverage.GeometricAverageBoxInfo.typeIdentifier:
                        quantifierTypeID = 12;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.Variance.VarianceBoxInfo.typeIdentifier:
                        quantifierTypeID = 13;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.StandardDeviation.StandardDeviationBoxInfo.typeIdentifier:
                        quantifierTypeID = 14;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.Skewness.SkewnessBoxInfo.typeIdentifier:
                        quantifierTypeID = 15;
                        break;

                    case Boxes.LISpMinerTasks.CFTask.Quantifiers.Functional.Asymetry.AsymetryBoxInfo.typeIdentifier:
                        quantifierTypeID = 16;
                        break;

                    default:
                        throw Ferda.Modules.Exceptions.SwitchCaseNotImplementedError(quantifier.typeIdentifier);
                }

                #endregion

                long autoIncrementValue = common.GetTableAutoIncrementValue(tableName, 1);
                string unitsColumn, unitsColumnValue, aggregationQuantifier, aggregationQuantifierValue;
                unitsColumn = unitsColumnValue = aggregationQuantifier = aggregationQuantifierValue = String.Empty;

                try
                {
                    units = (UnitsEnum)Enum.Parse(typeof(UnitsEnum), propertySettingHelper.GetStringProperty("Units"));
                }
                catch (ArgumentException)
                {
                    quantifierWithUnits = false;
                }

                try
                {
                    fromColumn = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("CategoryRangeFrom"));
                    toColumn = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("CategoryRangeTo"));
                }
                catch (ArgumentException)
                {
                    aggregationQuantifierFlag = false;
                }

                if (aggregationQuantifierFlag)
                {
                    //aggregationQuantifier = "FromCol,ToCol,";
                    aggregationQuantifierValue = fromColumn.ToString() + "," + toColumn.ToString() + ",";
                }
                else
                {
                    aggregationQuantifierValue = "1, -1, ";
                }

                if (quantifierWithUnits)
                {
                    unitsColumn = "CFQuantifierValueTypeID,";
                    unitsColumnValue = common.Constants.UnitsEnumDictionary[units] + ",";
                }

                string thresholdColumn;
                if (quantifierWithRelativeTreshold)
                {
                    thresholdColumn = "Threshold,";
                }
                else
                {
                    thresholdColumn = "ValuePar,";
                }

                string query = "INSERT INTO " + tableName + " (" + autoIncrementColumn
                    + ",TaskID,CFQuantifierTypeID,FromCol,ToCol," + unitsColumn + thresholdColumn + "CompareTypeID) VALUES "
                    + "(" + autoIncrementValue + ","
                    + taskID + ","
                    + quantifierTypeID + ","
                    + aggregationQuantifierValue
                    + unitsColumnValue
                    + "'" + threshold.ToString() + "'" + ","
                    + common.Constants.RelationEnumDictionary[relation]
                    + ")";

                common.ExecuteInsertQuery(query, tableName);
            }
        }
        private void saveQuantifiers(QuantifierSettingStruct[] quantifiers, int taskID, string boxIdentity)
        {
            PropertySettingHelper propertySettingHelper;
            string tableName = "tdDKQuantifier";
            string autoIncrementColumn = common.GetAutoIncrementColumnName(tableName);
            foreach (QuantifierSettingStruct quantifier in quantifiers)
            {
                propertySettingHelper = new PropertySettingHelper(quantifier.setting);
                int fromRow = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("RowFrom"));
                int toRow = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("RowTo"));
                int fromColumn = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("ColumnFrom"));
                int toColumn = Ferda.Modules.Helpers.Common.Parsing.ZeroBasedBoundFromOneBasedString(propertySettingHelper.GetStringProperty("ColumnTo"));
                RelationEnum relation = (RelationEnum)Enum.Parse(typeof(RelationEnum), propertySettingHelper.GetStringProperty("Relation"));
                double treshold = propertySettingHelper.GetDoubleProperty("Treshold");
                bool quantifierWithUnits = true;
                UnitsEnum units = UnitsEnum.AbsoluteNumber;
                OperationModeEnum operationMode = (OperationModeEnum)Enum.Parse(typeof(OperationModeEnum), propertySettingHelper.GetStringProperty("OperationMode"));

                try
                {
                    units = (UnitsEnum)Enum.Parse(typeof(UnitsEnum), propertySettingHelper.GetStringProperty("Units"));
                }
                catch (ArgumentException)
                {
                    quantifierWithUnits = false;
                }
                DirectionEnum direction = DirectionEnum.ColumnsOnRows;
                try
                {
                    direction = (DirectionEnum)Enum.Parse(typeof(DirectionEnum), propertySettingHelper.GetStringProperty("Direction"));
                }
                catch (ArgumentException) { }
                bool quantifierWithRelativeTreshold = false;
                bool kendalQuantifier = false;
                int quantifierTypeID = 0;

                switch (quantifier.typeIdentifier)
                {
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Aggregation.SumOfValues.SumOfValuesBoxInfo.typeIdentifier:
                        quantifierTypeID = 1;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Aggregation.MinValue.MinValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 4;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Aggregation.MaxValue.MaxValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 5;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Aggregation.AverageValue.AverageValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 6;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Aggregation.AnyValue.AnyValueBoxInfo.typeIdentifier:
                        quantifierTypeID = 7;
                        break;
                    /*
                     * (not implemented yet)
                     * usefull in future if somebody will be implementing functional quatnifiers for SDKL Miner
                     * no guarantee for rightness of the list of quantifiers below
                     *
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.FunctionSumOfRows.FunctionSumOfRowsBoxInfo.typeIdentifier:
                        quantifierWithRelativeTreshold = true;
                        quantifierTypeID = 9;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.FunctionEachRow.FunctionEachRowBoxInfo.typeIdentifier:
                        quantifierWithRelativeTreshold = true;
                        quantifierTypeID = 10;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.ConditionalEntropy.ConditionalEntropyBoxInfo.typeIdentifier:
                        quantifierTypeID = 10;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.MutualInformationNormalized.MutualInformationNormalizedBoxInfo.typeIdentifier:
                        quantifierTypeID = 13;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.InformationDependency.InformationDependencyBoxInfo.typeIdentifier:
                        quantifierTypeID = 11;
                        break;
                    case Ferda.Modules.Boxes.LISpMinerTasks.SDKLTask.Quantifiers.Functional.Kendal.KendalBoxInfo.typeIdentifier:
                        kendalQuantifier = true;
                        quantifierTypeID = 14;
                        break;
                    */
                    default:
                        throw Ferda.Modules.Exceptions.SwitchCaseNotImplementedError(quantifier.typeIdentifier);
                }
                long autoIncrementValue = common.GetTableAutoIncrementValue(tableName, 1);
                string unitsColumn, unitsColumnValue;
                unitsColumn = unitsColumnValue = String.Empty;
                if (quantifierWithUnits)
                {
                    unitsColumn = "DKQuantifierValueTypeID,";
                    unitsColumnValue = common.Constants.UnitsEnumDictionary[units] + ",";
                }
                /*
                 * // this direction is not implemented by LMGens
                 * if (direction == DirectionEnum.RowsOnColumns)
                 *      ;
                 * */
                string tresholdColumn;
                if (quantifierWithRelativeTreshold)
                {
                    tresholdColumn = "Threshold,";
                }
                else
                {
                    tresholdColumn = "ValuePar,";
                }
                string kendalColumn, kendalColumnValue;
                kendalColumn = kendalColumnValue = String.Empty;
                if (kendalQuantifier)
                {
                    kendalColumn = "KendalAbsValueTauB,";
                    kendalColumnValue = common.Constants.TrueValue + ",";
                }
                string query = "INSERT INTO " + tableName + " (" + autoIncrementColumn
                    + ",TaskID,SDQuantifierSourceTypeID,DKQuantifierTypeID,FromRow,ToRow,FromCol,ToCol," + unitsColumn + tresholdColumn + kendalColumn + "CompareTypeID) VALUES "
                    + "(" + autoIncrementValue + ","
                    + taskID + ","
                    + common.Constants.OperationModeEnumDictionary[operationMode] + ","
                    + quantifierTypeID + ","
                    + fromRow + ","
                    + toRow + ","
                    + fromColumn + ","
                    + toColumn + ","
                    + unitsColumnValue
                    + "'" + treshold.ToString() + "'" + ","
                    + kendalColumnValue
                    + common.Constants.RelationEnumDictionary[relation]
                    + ")";

               // Console.WriteLine(query);
                common.ExecuteInsertQuery(query, tableName);
            }
        }