Example #1
0
        /// <summary>
        /// Copy ExportParms members to ResultsFormat
        /// </summary>
        /// <param name="ep"></param>

        public void CopyFromExportParms(ExportParms ep)
        {
            QueryId           = ep.QueryId;
            OutputDestination = ep.OutputDestination;
            RunInBackground   = ep.RunInBackground;

            ExportFileFormat        = ep.ExportFileFormat;
            OutputFileName          = ep.OutputFileName;
            OutputFileName2         = ep.OutputFileName2;
            DuplicateKeyTableValues = ep.DuplicateKeyValues;

            if (ep.QualifiedNumberSplit != QnfEnum.Undefined)
            {
                QualifiedNumberSplit = ep.QualifiedNumberSplit;
            }

            ExportStructureFormat = ep.ExportStructureFormat;
            StructureFlags        = ep.StructureFlags;
            FixedHeightStructures = ep.FixedHeightStructures;
            ColumnNameFormat      = ep.ColumnNameFormat;
            IncludeDataTypes      = ep.IncludeDataTypes;
            OpenMode       = ep.OpenMode;
            ViewStructures = ep.ViewStructures;

            return;
        }
Example #2
0
        /// <summary>
        /// Setup text control with split option
        /// </summary>
        /// <param name="rf"></param>
        /// <param name="control"></param>

        public void Setup(QnfEnum qnf)
        {
            if ((qnf & QnfEnum.Split) != 0)
            {
                qnf |= QnfEnum.Qualifier | QnfEnum.NumericValue;                 // these are required
                QnfSplit.Checked = true;
                string tok = SerializeQualifiedNumberSplit(qnf);
                QnfSplitFormat.Text = tok;
            }
            else
            {
                QnfCombined.Checked = true;
                QnfSplitFormat.Text = "Qualifier, Number";
            }
        }
Example #3
0
        /// <summary>
        /// Format qualified number when destination device not known
        /// </summary>
        /// <param name="qc"></param>
        /// <param name="mergedField"></param>
        /// <param name="displayFormat"></param>
        /// <param name="decimals"></param>
        /// <param name="qnFormat"></param>
        /// <param name="includeLink"></param>
        /// <returns></returns>

        public string Format(
            QueryColumn qc,
            bool mergedField,
            ColumnFormatEnum displayFormat,
            int decimals,
            QnfEnum qnFormat,
            bool includeLink)
        {
            OutputDest outputDest;

            if (includeLink)
            {
                outputDest = OutputDest.WinForms;
            }
            else
            {
                outputDest = OutputDest.TextFile;
            }

            return(Format(qc, mergedField, displayFormat, decimals, qnFormat, outputDest));
        }
Example #4
0
        /// <summary>
        /// Format qualified number
        /// </summary>
        /// <param name="qn"></param>
        /// <param name="qc"></param>
        /// <param name="mergedField"></param>
        /// <param name="displayFormat"></param>
        /// <param name="decimals"></param>
        /// <param name="qnFormat"></param>
        /// <param name="outputDest"></param>
        /// <returns></returns>

        public string Format(
            QueryColumn qc,
            bool mergedField,
            ColumnFormatEnum displayFormat,
            int decimals,
            QnfEnum qnFormat,
            OutputDest outputDest)
        {
            string result, uri, href, txt, tok;

            result = "";

            QualifiedNumber qn = this;

            MetaColumn mc = qc.MetaColumn;

            if (qn.Qualifier == null)
            {
                qn.Qualifier = "";
            }
            if (qn.TextValue == null)
            {
                qn.TextValue = "";
            }
            if (qn.Hyperlink == null)
            {
                qn.Hyperlink = "";
            }

            if (QnSubcolumns.IsCombinedFormat(qnFormat))             // normal combined number
            {
                if (qn.NumberValue == NullValue.NullNumber && qn.NValue == NullValue.NullNumber &&
                    qn.NValueTested == NullValue.NullNumber && qn.TextValue == "")
                {                 // null value
                    result = NullValueString;
                    if (outputDest == OutputDest.Html && (NullValueString == "" || NullValueString == " "))
                    {
                        result = "<br>";                         // html blank
                    }
                    return(result);
                }

                result = qn.Format(displayFormat, decimals);

                if (qn.NValue > 1 || qn.NValueTested > 1 ||                 // format with sd, n
                    (qn.NValue >= 0 && qn.NValueTested > qn.NValue) ||      // number tested > n
                    (qn.NumberValue == NullValue.NullNumber &&              // also null numbers if some nonzero nvalue
                     (qn.NValue > 0 || qn.NValueTested > 0)))
                {
                    txt = "";

                    if (qn.NValue > 1 && (qnFormat & QnfEnum.StdDev) != 0 &&                     // include sd
                        (qn.StandardDeviation != NullValue.NullNumber ||
                         qn.StandardError != NullValue.NullNumber))
                    {                     // format standard deviation
                        if ((qnFormat & QnfEnum.DisplayStdDevLabel) != 0)
                        {
                            txt += "sd=";
                        }

                        if (qn.StandardDeviation == NullValue.NullNumber)                         // calc sd from se if don't have
                        {
                            qn.StandardDeviation = qn.StandardError * Math.Sqrt(qn.NValue);
                        }
                        txt += FormatNumber(qn.StandardDeviation, displayFormat, decimals);
                    }

                    if (qn.NValue > 1 && (qnFormat & QnfEnum.StdErr) != 0 &&                     // include se
                        (qn.StandardError != NullValue.NullNumber ||
                         qn.StandardDeviation != NullValue.NullNumber))
                    {                     // format standard error
                        if (txt != "")
                        {
                            txt += ", ";
                        }
                        if ((qnFormat & QnfEnum.DisplayStdErrLabel) != 0)
                        {
                            txt += "se=";
                        }

                        txt += FormatNumber(qn.StandardError, displayFormat, decimals);
                    }

                    if (qn.NValue != NullValue.NullNumber &&
                        (qnFormat & QnfEnum.NValue) != 0)
                    {                     // format n value
                        if (txt != "")
                        {
                            txt += ", ";
                        }
                        if ((qnFormat & QnfEnum.DisplayNLabel) != 0)
                        {
                            txt += "n=";
                        }

                        txt += qn.NValue.ToString();
                        if (qn.NValueTested != NullValue.NullNumber && qn.NValueTested != qn.NValue)
                        {
                            txt += "/" + qn.NValueTested.ToString();                             // add number tested if different
                        }
                    }
                    if (txt != "")
                    {
                        result += " (" + txt + ")";                                // build complete string
                    }
                }

                if (qn.DbLink != null && qn.DbLink != "" && qn.DbLink != "." && !mergedField &&                 // do we have an associated resultId
                    (outputDest == OutputDest.WinForms || outputDest == OutputDest.Html))
                {
                    uri = qn.FormatHyperlink(qc);

                    //if (outputDest == OutputDest.Grid) // store link info in separate field
                    //  qn.Hyperlink = uri;

                    //else if (outputDest == OutputDest.Html) // build full html tag
                    //{
                    if (uri != "")
                    {
                        result = result = "<a href=" + Lex.Dq(uri) + ">" + result + "</a>";
                    }
                    //}
                }
            }

// Format one piece of a split qualified number

            else if ((qnFormat & QnfEnum.Qualifier) != 0)             // qualifier
            {
                result = qn.Qualifier;
            }

            else if ((qnFormat & QnfEnum.NumericValue) != 0)             // basic number
            {
                if (qn.NumberValue != NullValue.NullNumber)
                {
                    result = FormatNumber(qn.NumberValue, displayFormat, decimals);
                }

                else
                {
                    result = null;
                }

                //else (obsolete, don't output any text values into numeric column, add option for separate column later)
                //{
                //  if (qn.NValue != NullValue.NullNumber)
                //    result = "ND"; // some NValue, return not determined

                //  else result = qn.TextValue; // return any text value
                //}
            }

            else if ((qnFormat & QnfEnum.StdDev) != 0)             // standard deviation
            {
                if (qn.StandardDeviation != NullValue.NullNumber)
                {
                    result = FormatNumber(qn.StandardDeviation, displayFormat, decimals);
                }
            }

            else if ((qnFormat & QnfEnum.StdErr) != 0)             // standard error
            {
                if (qn.StandardError != NullValue.NullNumber)
                {
                    result = FormatNumber(qn.StandardError, displayFormat, decimals);
                }
            }

            else if ((qnFormat & QnfEnum.NValue) != 0)             // N
            {
                if (qn.NValue != NullValue.NullNumber)
                {
                    result = qn.NValue.ToString();
                }
            }

            else if ((qnFormat & QnfEnum.NValueTested) != 0)             // number tested
            {
                if (qn.NValueTested != NullValue.NullNumber)
                {
                    result = qn.NValueTested.ToString();
                }
            }

            else if ((qnFormat & QnfEnum.TextValue) != 0)             // text value
            {
                if (!Lex.IsNullOrEmpty(qn.TextValue))
                {
                    result = qn.TextValue;
                }
            }

            return(result);
        }
Example #5
0
        /// <summary>
        /// Serialize the QualifiedNumberSplit settings
        /// </summary>
        /// <param name="qnf"></param>
        /// <returns></returns>

        public static string SerializeQualifiedNumberSplit(
            QnfEnum qnf)
        {
            if ((qnf & QnfEnum.Combined) != 0)
            {
                return("");
            }

            string txt = "";

            if ((qnf & QnfEnum.Qualifier) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "Qualifier";
            }
            if ((qnf & QnfEnum.NumericValue) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "Number";
            }
            if ((qnf & QnfEnum.StdDev) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "SD";
            }
            if ((qnf & QnfEnum.StdErr) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "SE";
            }
            if ((qnf & QnfEnum.NValue) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "N";
            }
            if ((qnf & QnfEnum.NValueTested) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "NT";
            }

            if ((qnf & QnfEnum.TextValue) != 0)
            {
                if (txt != "")
                {
                    txt += ", ";
                }
                txt += "Text";
            }

            return(txt);
        }