Exemplo n.º 1
0
        /// <summary>
        /// Adds the meta data XML node.
        /// </summary>
        /// <param name="Metadata">The metadata.</param>
        /// <param name="parameterDetail">The parameter detail.</param>
        private static void AddMetaDataXMLNode(XElement Metadata, ANSYSParameterDetail parameterDetail)
        {
            XElement ParameterDetails = new XElement("ParameterDetails");

            if (parameterDetail.IdPrefix == "pr")
            {
                ParameterDetails = new XElement("PropertyDetails");
            }
            ParameterDetails.SetAttributeValue("id", parameterDetail.IdString);
            XElement Name = new XElement("Name");

            Name.Value = parameterDetail.Name;



            if (parameterDetail.Units != null && parameterDetail.Units.Count > 0)
            {
                XElement Units = new XElement("Units");
                foreach (var item in parameterDetail.Units)
                {
                    XElement Unit = new XElement("Unit");
                    if (item.Attribite != null)
                    {
                        Unit.SetAttributeValue(item.Attribite, item.AttribiteValue);
                    }
                    XElement NameOfUnit = new XElement("Name");
                    NameOfUnit.Value = item.Name;
                    Unit.Add(NameOfUnit);
                    Units.Add(Unit);
                }
                if (parameterDetail.IdPrefix == "pr")
                {
                    ParameterDetails.Add(Units);
                    ParameterDetails.Add(Name);
                }
                else
                {
                    ParameterDetails.Add(Name);
                    ParameterDetails.Add(Units);
                }
            }
            else
            {
                if (parameterDetail.IdPrefix == "pr")
                {
                    XElement Unitless = new XElement("Unitless");
                    ParameterDetails.Add(Unitless);
                    ParameterDetails.Add(Name);
                }
                else
                {
                    ParameterDetails.Add(Name);
                    XElement Unitless = new XElement("Unitless");
                    ParameterDetails.Add(Unitless);
                }
            }

            Metadata.Add(ParameterDetails);
        }
        /// <summary>
        /// Modifies selected Strategy Instance's Parameter Details
        /// </summary>
        private void EditInstanceParametersExecute(object param)
        {
            // Update Parameter Details
            SelectedStrategy.ParameterDetails = ParameterDetails.ToDictionary(entry => entry.Key, entry => (ParameterDetail)entry.Value.Clone());

            // Close "Edit Instance" window
            ((Window)param).Close();

            OptimizationParameterDetails();
        }
Exemplo n.º 3
0
        protected List <SyntaxToken> FormatParameterModifiers(ParameterDetails details)
        {
            ParamDef           parameterDefinition = details.Parameter;
            List <SyntaxToken> tokens = new List <SyntaxToken>();

            if (details.TypeDetails.IsByRef)
            {
                tokens.Add(new SyntaxToken("ByRef", SyntaxTokens.Keyword));
                tokens.Add(Constants.Space);
            }

            return(tokens);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Formats the indexer based on the language specification as a
        /// collection of syntax tokens.
        /// </summary>
        /// <param name="syntax">The syntax class that describes the indexer.</param>
        /// <returns>The collection of tokens describing the indexer in the language</returns>
        public SyntaxTokenCollection Format(IndexorSyntax syntax)
        {
            SyntaxTokenCollection tokens = new SyntaxTokenCollection();

            tokens.AddRange(FormatVisibility(syntax));
            tokens.Add(Constants.Space);
            tokens.AddRange(FormatType(syntax));
            tokens.Add(Constants.Space);
            tokens.Add(FormatIdentifier(syntax));

            // Provide the properties to access the indexer, these are
            // obtained from the get method.
            MethodSyntax getMethod = new MethodSyntax(
                _syntax.GetMethod != null ? _syntax.GetMethod : _syntax.SetMethod
                );

            tokens.Add(new SyntaxToken("[", SyntaxTokens.Text));
            List <ParameterDetails> parameters = getMethod.GetParameters();

            // dont output the last parameter if we are not using the get method as it is the return value...
            for (int i = 0; i < parameters.Count; i++)
            {
                ParameterDetails current = parameters[i];

                tokens.AddRange(FormatTypeDetails(current.TypeDetails));
                tokens.Add(Constants.Space);
                tokens.Add(new SyntaxToken(current.Name, SyntaxTokens.Text));

                if (i < parameters.Count - 1)
                {
                    tokens.Add(new SyntaxToken(", ", SyntaxTokens.Text));
                }
            }
            tokens.Add(new SyntaxToken("]", SyntaxTokens.Text));

            tokens.Add(new SyntaxToken(" {", SyntaxTokens.Text));
            if (_syntax.GetMethod != null)
            {
                tokens.Add(new SyntaxToken("\n\t", SyntaxTokens.Text));
                if (syntax.GetVisibility() != syntax.GetGetterVisibility())
                {
                    tokens.AddRange(FormatGetVisibility(syntax));
                    tokens.Add(Constants.Space);
                }
                tokens.Add(Constants.KeywordGet);
                tokens.Add(new SyntaxToken(";", SyntaxTokens.Text));
            }
            if (this._syntax.SetMethod != null)
            {
                tokens.Add(new SyntaxToken("\n\t", SyntaxTokens.Text));
                if (syntax.GetVisibility() != syntax.GetSetterVisibility())
                {
                    tokens.AddRange(FormatSetVisibility(syntax));
                    tokens.Add(Constants.Space);
                }
                tokens.Add(Constants.KeywordSet);
                tokens.Add(new SyntaxToken(";", SyntaxTokens.Text));
            }
            tokens.Add(new SyntaxToken("\n\t}", SyntaxTokens.Text));
            return(tokens);
        }
Exemplo n.º 5
0
        protected void Save_Click(object sender, EventArgs e)
        {
            string parameterName = "", customName = "";

            if (gvParameterList.ShowFooter)
            {
                ParameterDetails parameter = new ParameterDetails();
                //parameter.Id = (gvParameterList.FooterRow.FindControl("lblNewInputModule") as Label).Text;
                parameter.InputModule = (gvParameterList.FooterRow.FindControl("lblNewInputModule") as Label).Text;
                if (gvParameterList.FooterRow.FindControl("lblNewSubInput") != null)
                {
                    parameter.SubInputModule = (gvParameterList.FooterRow.FindControl("lblNewSubInput") as Label).Text;
                }
                else
                {
                    parameter.SubInputModule = "";
                }

                if (parameter.InputModule.Trim() == "Quality Parameters")
                {
                    string paramLHS = (gvParameterList.FooterRow.FindControl("txtNewParameter") as TextBox).Text;
                    parameter.Parameter  = paramLHS;
                    parameter.Customname = (gvParameterList.FooterRow.FindControl("txtnewCustomname") as TextBox).Text;
                    parameter.EntryType  = (gvParameterList.FooterRow.FindControl("lblNewQPEntryType") as Label).Text;
                    parameter.DataType   = (gvParameterList.FooterRow.FindControl("lblNewQPDataType") as Label).Text;
                }
                else
                {
                    parameter.Parameter = (gvParameterList.FooterRow.FindControl("txtNewParameter") as TextBox).Text;
                    parameter.EntryType = (gvParameterList.FooterRow.FindControl("ddlNewEntryType") as DropDownList).Text;
                    //parameter.DataType = (gvParameterList.FooterRow.FindControl("ddlNewDataType") as DropDownList).Text;
                    parameter.DataType   = (gvParameterList.FooterRow.FindControl("hdNewDatatype") as HiddenField).Value;
                    parameter.Customname = (gvParameterList.FooterRow.FindControl("txtnewCustomname") as TextBox).Text;
                }
                if (parameter.Parameter == "")
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "RecordsModalUpdated", "openWarningModal('Parameter Name required.');", true);
                    return;
                }
                parameter.Reccomandation = (gvParameterList.FooterRow.FindControl("txtNewRecommendation") as TextBox).Text;
                if ((gvParameterList.FooterRow.FindControl("newRecommendationImage") as FileUpload).HasFile)
                {
                    FileUpload fileUpload1 = gvParameterList.FooterRow.FindControl("newRecommendationImage") as FileUpload;

                    if (fileUpload1.HasFile)
                    {
                        using (BinaryReader br = new BinaryReader(fileUpload1.PostedFile.InputStream))
                        {
                            parameter.ImageLimit = br.ReadBytes(fileUpload1.PostedFile.ContentLength);
                        }
                    }
                }
                parameter.LSL        = (gvParameterList.FooterRow.FindControl("txtNewLSL") as TextBox).Text;
                parameter.USL        = (gvParameterList.FooterRow.FindControl("txtNewUSL") as TextBox).Text;
                parameter.Enableflag = (gvParameterList.FooterRow.FindControl("chkNewEnable") as CheckBox).Checked;
                //parameter.SortOrder = (gvParameterList.FooterRow.FindControl("txtNewSortOrder") as TextBox).Text;
                parameter.DefaultParam = (gvParameterList.FooterRow.FindControl("chkNewDefaultParam") as CheckBox).Checked;

                if ((gvParameterList.FooterRow.FindControl("ddlNewMandatory") as DropDownList).SelectedItem.ToString() == "Normal")
                {
                    parameter.Mandatoryflag = "0";
                }
                else if ((gvParameterList.FooterRow.FindControl("ddlNewMandatory") as DropDownList).SelectedItem.ToString() == "Mandatory")
                {
                    parameter.Mandatoryflag = "1";
                }
                else if ((gvParameterList.FooterRow.FindControl("ddlNewMandatory") as DropDownList).SelectedItem.ToString() == "Important")
                {
                    parameter.Mandatoryflag = "2";
                }
                parameter.AdminName = Session["EmpName"].ToString();

                parameter.Dependencyflag = (gvParameterList.FooterRow.FindControl("chkNewDependentParam") as CheckBox).Checked;
                if ((gvParameterList.FooterRow.FindControl("chkNewDependentParam") as CheckBox).Checked)
                {
                    ListBox ddcb = (gvParameterList.FooterRow.FindControl("newlbIndependentParam") as ListBox);
                    string  independentparamlist = "";
                    foreach (System.Web.UI.WebControls.ListItem item in ddcb.Items)
                    {
                        if (item.Selected)
                        {
                            if (independentparamlist == "")
                            {
                                independentparamlist = item.Text;
                            }
                            else
                            {
                                independentparamlist = independentparamlist + ";" + item.Text;
                            }
                        }
                    }
                    parameter.IndependentParameter = independentparamlist;
                }
                else
                {
                    parameter.IndependentParameter = "";
                }
                bool success;
                if (parameter.InputModule.Trim() == "Quality Parameters")
                {
                    string param     = parameter.Parameter;
                    string custoname = parameter.Customname;
                    if (custoname == "")
                    {
                        custoname = param;
                    }
                    parameter.Parameter  = param + ";Lower Target";
                    parameter.Customname = custoname + ";Lower Target";
                    success              = DBAccess.SaveNewParameters(parameter);
                    parameter.Parameter  = param + ";Upper Target";
                    parameter.Customname = custoname + ";Upper Target";
                    success              = DBAccess.SaveNewParameters(parameter);
                    parameter.Parameter  = param + ";Lower Actual";
                    parameter.Customname = custoname + ";Lower Actual";
                    success              = DBAccess.SaveNewParameters(parameter);
                    parameter.Parameter  = param + ";Upper Actual";
                    parameter.Customname = custoname + ";Upper Actual";
                    success              = DBAccess.SaveNewParameters(parameter);
                }
                else
                {
                    success = DBAccess.SaveNewParameters(parameter);
                }


                if (success)
                {
                    gvParameterList.EditIndex = -1;
                    //  ScriptManager.RegisterStartupScript(this, GetType(), "RecordsModalUpdated", "openSuccessModal('Data Updated Successfully.');", true);
                    gvParameterList.ShowFooter = false;
                    BindParameterList();
                    btnCancel.Visible = false;
                    btnNew.Visible    = true;
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "Success" + 1, "<script>showpop5('Record saved successfully!')</script>", false);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "RecordsTextopenModaladded", "openErrorModal('Record insertion failed.');", true);
                }
            }
            else
            {
                bool success = false;

                for (int i = 0; i < gvParameterList.Rows.Count; i++)
                {
                    byte[]           imageRecommendation = null;
                    ParameterDetails parameter           = new ParameterDetails();

                    parameter.Id             = (gvParameterList.Rows[i].FindControl("edtlblID") as Label).Text;
                    parameter.InputModule    = (gvParameterList.Rows[i].FindControl("edtlblInputModule") as Label).Text;
                    parameter.SubInputModule = (gvParameterList.Rows[i].FindControl("edtlblSubInputModule") as Label).Text;
                    parameter.Parameter      = (gvParameterList.Rows[i].FindControl("edtlblParameter") as Label).Text;
                    parameter.Reccomandation = (gvParameterList.Rows[i].FindControl("edtlblRecommendation") as TextBox).Text;
                    parameter.LSL            = (gvParameterList.Rows[i].FindControl("edttxtLSL") as TextBox).Text;
                    parameter.USL            = (gvParameterList.Rows[i].FindControl("edttxtUSL") as TextBox).Text;
                    parameter.Enableflag     = (gvParameterList.Rows[i].FindControl("edtcbEnable") as CheckBox).Checked;
                    // parameter.SortOrder = (gvParameterList.Rows[i].FindControl("edttxtSortOrder") as TextBox).Text;
                    parameter.DefaultParam = (gvParameterList.Rows[i].FindControl("edtcbDefaultParam") as CheckBox).Checked;
                    if ((gvParameterList.Rows[i].FindControl("edtddlMandatory") as DropDownList).SelectedItem.ToString() == "Normal")
                    {
                        parameter.Mandatoryflag = "0";
                    }
                    else if ((gvParameterList.Rows[i].FindControl("edtddlMandatory") as DropDownList).SelectedItem.ToString() == "Mandatory")
                    {
                        parameter.Mandatoryflag = "1";
                    }
                    else if ((gvParameterList.Rows[i].FindControl("edtddlMandatory") as DropDownList).SelectedItem.ToString() == "Important")
                    {
                        parameter.Mandatoryflag = "2";
                    }

                    parameter.AdminName = Session["EmpName"].ToString();

                    parameter.Dependencyflag = (gvParameterList.Rows[i].FindControl("edtcbDependentParam") as CheckBox).Checked;
                    if ((gvParameterList.Rows[i].FindControl("edtcbDependentParam") as CheckBox).Checked)
                    {
                        ListBox ddcb = (gvParameterList.Rows[i].FindControl("edtlbIndependentParam") as ListBox);
                        string  independentparamlist = "";
                        foreach (System.Web.UI.WebControls.ListItem item in ddcb.Items)
                        {
                            if (item.Selected)
                            {
                                if (independentparamlist == "")
                                {
                                    independentparamlist = item.Text;
                                }
                                else
                                {
                                    independentparamlist = independentparamlist + ";" + item.Text;
                                }
                            }
                        }
                        parameter.IndependentParameter = independentparamlist;
                    }
                    else
                    {
                        parameter.IndependentParameter = "";
                    }

                    if ((gvParameterList.Rows[i].FindControl("RecommendationImage") as FileUpload).HasFile)
                    {
                        FileUpload fileUpload1 = gvParameterList.Rows[i].FindControl("RecommendationImage") as FileUpload;

                        if (fileUpload1.HasFile)
                        {
                            using (BinaryReader br = new BinaryReader(fileUpload1.PostedFile.InputStream))
                            {
                                parameter.ImageLimit = br.ReadBytes(fileUpload1.PostedFile.ContentLength);
                            }
                        }
                    }
                    else
                    {
                        SqlConnection conn = null;
                        try
                        {
                            conn = ConnectionManager.GetConnection();
                            SqlCommand    cmd = null;
                            SqlDataReader rdr = null;
                            cmd             = new SqlCommand("select LimitImage from InputModuleParameterDetails where InputModule=@inputmodule and ParameterID=@id and SubInputModule=@suninputmodule", conn);
                            cmd.CommandType = CommandType.Text;
                            cmd.Parameters.AddWithValue("@inputmodule", parameter.InputModule);
                            cmd.Parameters.AddWithValue("@id", parameter.Id);
                            cmd.Parameters.AddWithValue("@suninputmodule", parameter.SubInputModule);
                            rdr = cmd.ExecuteReader();
                            if (rdr.HasRows)
                            {
                                while (rdr.Read())
                                {
                                    if (rdr["LimitImage"] != DBNull.Value)
                                    {
                                        parameter.ImageLimit = (byte[])rdr["LimitImage"];
                                    }
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                        }
                        finally
                        {
                            if (conn != null)
                            {
                                conn.Close();
                            }
                        }
                    }


                    if (parameter.InputModule.Trim() == "Quality Parameters")
                    {
                        string param = (parameter.Parameter).Substring(0, parameter.Parameter.LastIndexOf(';'));
                        if (parameterName != param)
                        {
                            customName = (gvParameterList.Rows[i].FindControl("edttxtCustomname") as TextBox).Text;
                            if (customName == "")
                            {
                                customName = param;
                            }
                            parameterName = param;
                        }
                        string rhs = (parameter.Parameter).Substring(parameter.Parameter.LastIndexOf(';'));
                        parameter.Customname = customName + rhs;
                    }
                    else
                    {
                        parameter.Customname = (gvParameterList.Rows[i].FindControl("edttxtCustomname") as TextBox).Text;
                    }


                    success = DBAccess.UpdateParameters(parameter, "");
                }

                if (success)
                {
                    gvParameterList.EditIndex = -1;
                    //  ScriptManager.RegisterStartupScript(this, GetType(), "RecordsModalUpdated", "openSuccessModal('Data Updated Successfully.');", true);
                    BindParameterList();
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "Success" + 1, "<script>showpop5('Records saved successfully!')</script>", false);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "RecordsTextopenModaladded", "openErrorModal('Records insertion failed.');", true);
                }
            }
        }
Exemplo n.º 6
0
        private List <string> GetFormattedParameters(
            List <ParameterDetails> conditionTypeParameters,
            List <Parameter> submittedParameters,
            Dictionary <string, Iterator> currentIterators,
            Dictionary <string, string> allMethods,
            ServiceMetadata serviceMetadata)
        {
            List <string> result = new List <string>();

            conditionTypeParameters = conditionTypeParameters.OrderBy(x => x.Index).ToList();
            submittedParameters     = submittedParameters.OrderBy(x => x.Index).ToList();

            for (int i = 0; i < conditionTypeParameters.Count; i++)
            {
                ParameterDetails details        = conditionTypeParameters[i];
                Parameter        submittedValue = submittedParameters[i];

                string value = string.Empty;
                bool   valid = false;

                string method    = submittedValue.Value.StartsWith("$") ? submittedValue.Value.Substring(1, submittedValue.Value.IndexOf('(') - 1) : null;
                string elementId = method == null
                    ? submittedValue.Value
                    : submittedValue.Value.Substring($"${method}(".Length, submittedValue.Value.Length - 1 - $"${method}(".Length);

                bool isProperty = method == null
                    ? serviceMetadata.Elements.ContainsKey(submittedValue.Value)
                    : serviceMetadata.Elements.ContainsKey(submittedValue.Value.Substring($"${method}(".Length, submittedValue.Value.Length - 1 - $"${method}(".Length));

                string processedValue = ProcessValue(submittedValue.Value, serviceMetadata, currentIterators, allMethods);

                foreach (Models.ValueType supportedType in details.SupportedTypes)
                {
                    if (supportedType == Models.ValueType.Decimal)
                    {
                        if (isProperty)
                        {
                            if (serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Decimal ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Int ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Integer ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NonNegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.PositiveInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Short)
                            {
                                value = processedValue + ".ToString()";
                                valid = true;
                                break;
                            }
                        }
                        else if (decimal.TryParse(submittedValue.Value, out decimal parsedDecimal))
                        {
                            value = $"\"{parsedDecimal.ToString()}\"";
                            valid = true;
                            break;
                        }
                    }
                    else if (supportedType == Models.ValueType.Int32)
                    {
                        if (isProperty)
                        {
                            if (serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Int ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Integer ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NonNegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.PositiveInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Short)
                            {
                                value = processedValue + ".ToString()";
                                valid = true;
                                break;
                            }
                        }
                        else if (int.TryParse(submittedValue.Value, out int parsedInt))
                        {
                            value = $"\"{parsedInt.ToString()}\"";
                            valid = true;
                            break;
                        }
                    }
                    else if (supportedType == Models.ValueType.Int64)
                    {
                        if (isProperty)
                        {
                            if (serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Int ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Integer ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.NonNegativeInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.PositiveInteger ||
                                serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.Short)
                            {
                                value = processedValue + ".ToString()";
                                valid = true;
                                break;
                            }
                        }
                        else if (long.TryParse(submittedValue.Value, out long parsedLong))
                        {
                            value = $"\"{parsedLong.ToString()}\"";
                            valid = true;
                            break;
                        }
                    }
                    else if (supportedType == Models.ValueType.ModelProperty)
                    {
                        if (isProperty && method == null)
                        {
                            value = processedValue + ".ToString()";
                            valid = true;
                            break;
                        }
                    }
                    else if (supportedType == Models.ValueType.String)
                    {
                        if (isProperty)
                        {
                            if (serviceMetadata.Elements[elementId].XsdValueType == BaseValueType.String)
                            {
                                value = processedValue;
                            }
                            else
                            {
                                value = processedValue + ".ToString()";
                            }

                            valid = true;
                            break;
                        }
                        else
                        {
                            value = $"\"{submittedValue.Value}\"";
                            valid = true;
                            break;
                        }
                    }
                }

                if (valid)
                {
                    result.Add(value);
                }
                else
                {
                    throw new Exception("Unsupported value type");
                }
            }

            return(result);
        }