Exemplo n.º 1
0
        public List <CMeasure> GetMeasure()
        {
            string line;

            string[]        lineelemets;
            List <CMeasure> outlist = new List <CMeasure>();

            using (StreamReader sr = new StreamReader(path))
            {
                int Count = 0;
                while ((line = sr.ReadLine()) != null)
                {
                    lineelemets = line.Split(' ');
                    if (lineelemets.Count() != 3)
                    {
                        MessageBox.Show("Ошибка чтения из файла");
                        return(null);
                    }
                    CMeasure Measure = new CMeasure();
                    double.TryParse(lineelemets[1], out Measure.Current);
                    double.TryParse(lineelemets[2], out Measure.Voltage);

                    Count++;

                    outlist.Add(Measure);
                }
                MessageBox.Show("Чтение успешно завершено");
            }
            return(outlist);
        }
Exemplo n.º 2
0
 private void tItemを交換する_譜面上のチップ(int nItem番号1, int nItem番号2)
 {
     foreach (KeyValuePair <int, CMeasure> pair in this._Form.mgr譜面管理者.dic小節)
     {
         CMeasure c小節 = pair.Value;
         for (int i = 0; i < c小節.listチップ.Count; i++)
         {
             CChip cチップ = c小節.listチップ[i];
             switch (this._Form.mgr譜面管理者.listレーン[cチップ.nレーン番号0to].eレーン種別)
             {
             case CLane.E種別.WAV:
             case CLane.E種別.GtV:
             case CLane.E種別.BsV:
                 if (cチップ.n値_整数1to1295 == (nItem番号1 + 1))
                 {
                     cチップ.n値_整数1to1295 = nItem番号2 + 1;
                 }
                 else if (cチップ.n値_整数1to1295 == (nItem番号2 + 1))
                 {
                     cチップ.n値_整数1to1295 = nItem番号1 + 1;
                 }
                 break;
             }
         }
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Возвращает приложение к расчету
        /// </summary>
        /// <param name="objProfile">профайл</param>
        /// <param name="cmdSQL">SQL-команда</param>
        /// <returns>список расчетов</returns>
        public static List<CCalcOrderItem> GetCalcOrderItemList(UniXP.Common.CProfile objProfile,
            System.Data.SqlClient.SqlCommand cmdSQL, System.Guid CalcOrderID)
        {
            List<CCalcOrderItem> objList = new List<CCalcOrderItem>();
            System.Data.SqlClient.SqlConnection DBConnection = null;
            System.Data.SqlClient.SqlCommand cmd = null;
            try
            {
                if (cmdSQL == null)
                {
                    DBConnection = objProfile.GetDBSource();
                    if (DBConnection == null)
                    {
                        DevExpress.XtraEditors.XtraMessageBox.Show(
                            "Не удалось получить соединение с базой данных.", "Внимание",
                            System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
                        return objList;
                    }
                    cmd = new System.Data.SqlClient.SqlCommand();
                    cmd.Connection = DBConnection;
                    cmd.CommandType = System.Data.CommandType.StoredProcedure;
                }
                else
                {
                    cmd = cmdSQL;
                    cmd.Parameters.Clear();
                }

                cmd.CommandText = System.String.Format("[{0}].[dbo].[usp_GetCalcOrderListItemsFromERP_Report]", objProfile.GetOptionsDllDBName());
                cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((System.Byte)(0)), ((System.Byte)(0)), "", System.Data.DataRowVersion.Current, null));
                cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@CALCORDER_GUID", System.Data.SqlDbType.UniqueIdentifier));
                cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@ERROR_NUM", System.Data.SqlDbType.Int, 8, System.Data.ParameterDirection.Output, false, ((System.Byte)(0)), ((System.Byte)(0)), "", System.Data.DataRowVersion.Current, null));
                cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@ERROR_MES", System.Data.SqlDbType.NVarChar, 4000));
                cmd.Parameters["@ERROR_MES"].Direction = System.Data.ParameterDirection.Output;
                cmd.Parameters["@CALCORDER_GUID"].Value = CalcOrderID;
                System.Data.SqlClient.SqlDataReader rs = cmd.ExecuteReader();
                if (rs.HasRows)
                {
                    CProduct objProduct = null;
                    CCurrency objCurrency = null;
                    CCountry objCountry = null;
                    CProductTradeMark objProductTradeMark = null;
                    CProductType objProductType = null;
                    CProductSubType objProductSubType = null;
                    CMeasure objMeasure = null;
                    CCalcOrderItem objCalcOrderItem = null;

                    while (rs.Read())
                    {
                        objCurrency = null;
                        objCountry = null;
                        objProductTradeMark = null;
                        objProductType = null;
                        objProductSubType = null;
                        // товарная марка
                        objProductTradeMark = new CProductTradeMark();
                        objProductTradeMark.Name = (System.String)rs["OWNER_NAME"];
                        objProductTradeMark.ID_Ib = System.Convert.ToInt32(rs["OWNER_ID"]);
                        objProductTradeMark.ProductVtm = new CProductVtm();
                        objProductTradeMark.ProductVtm.ID_Ib = System.Convert.ToInt32(rs["VTM_ID"]);
                        objProductTradeMark.ProductVtm.Name = (System.String)rs["VTM_NAME"];
                        objProductTradeMark.ProcessDayCount = System.Convert.ToInt32(rs["OWNER_PROCESSDAYSCOUNT"]);
                        // товарная группа
                        objProductType = new CProductType();
                        objProductType.ID_Ib = System.Convert.ToInt32(rs["PARTTYPE_ID"]);
                        objProductType.Name = (System.String)rs["PARTTYPE_NAME"];
                        // товарная подгруппа
                        objProductSubType = new CProductSubType();
                        objProductSubType.ID_Ib = System.Convert.ToInt32(rs["PARTSUBTYPE_ID"]);
                        objProductSubType.Name = (System.String)rs["PARTSUBTYPE_NAME"];
                        objProductSubType.ProductLine = new CProductLine();
                        objProductSubType.ProductLine.ID_Ib = System.Convert.ToInt32(rs["PARTSECSUBTYPE_ID"]);    
                        objProductSubType.ProductLine.Name = (System.String)rs["PARTSECSUBTYPE_NAME"];
                        // страна производства
                        objCountry = new CCountry();
                        if (rs["COUNTRY_PROD_ID"] != System.DBNull.Value)
                        {
                            objCountry.Name = (System.String)rs["COUNTRY_NAME"];
                        }
                        // валюта
                        objCurrency = new CCurrency( System.Guid.Empty, "", ( (rs["CURRENCY_CODE"] == System.DBNull.Value) ? "" : (System.String)rs["CURRENCY_CODE"]), ""  );
                        // единица измерения
                        objMeasure = new CMeasure();
                        objMeasure.Name = (System.String)rs["MEASURE_NAME"];

                        // товар
                        objProduct = new CProduct(System.Guid.Empty, System.Convert.ToInt32(rs["PARTS_ID"]),
                            (System.String)rs["PARTS_NAME"], (System.String)rs["PARTS_ORIGNAME"],
                            (System.String)rs["PARTS_NAME"], (System.String)rs["PARTS_ARTICLE"],
                            objProductTradeMark, objProductType, objProductSubType, objCountry, objCurrency,
                            ((rs["PARTS_VENDORPRICE"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PARTS_VENDORPRICE"])),
                            ((rs["PARTS_BOXQTY"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["PARTS_BOXQTY"])),
                            ((rs["PARTS_PACKQTY"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["PARTS_PACKQTY"])),
                            ((rs["PARTS_PACKQTYFORCALC"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["PARTS_PACKQTYFORCALC"])),
                            ((rs["PARTS_WEIGHT"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PARTS_WEIGHT"])),
                            ((rs["PARTS_PAPERCONTAINERWEIGHT"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PARTS_PAPERCONTAINERWEIGHT"])),
                            ((rs["PARTS_PLASTICCONTAINERWEIGHT"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PARTS_PLASTICCONTAINERWEIGHT"])),
                            ((rs["PARTS_ALCOHOLICCONTENTPERCENT"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PARTS_ALCOHOLICCONTENTPERCENT"])),
                            true, // ((rs["Parts_IsActive"] == System.DBNull.Value) ? false : System.Convert.ToBoolean(rs["Parts_IsActive"])),
                            ((rs["PARTS_NOTVALID"] == System.DBNull.Value) ? false : System.Convert.ToBoolean(rs["PARTS_NOTVALID"])),
                            ((rs["PARTS_ACTUALNOTVALID"] == System.DBNull.Value) ? false : System.Convert.ToBoolean(rs["PARTS_ACTUALNOTVALID"])),
                            "", //((rs["Parts_Certificate"] == System.DBNull.Value) ? "" : (System.String)rs["Parts_Certificate"]),
                            ((rs["PARTS_CODETNVD"] == System.DBNull.Value) ? "" : (System.String)rs["PARTS_CODETNVD"]),
                            ((rs["PARTS_REFERENCE"] == System.DBNull.Value) ? "" : (System.String)rs["PARTS_REFERENCE"]),
                            objMeasure, null, 0
                            );
                        if (rs["PARTS_BARCODE"] != System.DBNull.Value)
                        {
                            objProduct.BarcodeList = new List<string>();
                            objProduct.BarcodeList.Add((System.String)rs["PARTS_BARCODE"]);
                        }
                        objCalcOrderItem = new CCalcOrderItem();
                        objCalcOrderItem.objProduct = objProduct;
                        objCalcOrderItem.PartsIsNew = System.Convert.ToBoolean(rs["PARTS_IS_NEW"]);
                        objCalcOrderItem.PLAN_FOR_3MONTH = ((rs["PLAN_FOR_3MONTH"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PLAN_FOR_3MONTH"]));
                        objCalcOrderItem.PLAN_FOR_3MONTH_IN_WEEK_AVG = ((rs["PLAN_FOR_3MONTH_IN_WEEK_AVG"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PLAN_FOR_3MONTH_IN_WEEK_AVG"]));
                        objCalcOrderItem.PREDICTION_FOR_3MONTH = ((rs["PREDICTION_FOR_3MONTH"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PREDICTION_FOR_3MONTH"]));
                        objCalcOrderItem.PREDICTION_FOR_3MONTH_IN_WEEK_AVG = ((rs["PREDICTION_FOR_3MONTH_IN_WEEK_AVG"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["PREDICTION_FOR_3MONTH_IN_WEEK_AVG"]));
                        objCalcOrderItem.SALE_FOR_3MONTH = ((rs["SALE_FOR_3MONTH"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["SALE_FOR_3MONTH"]));
                        objCalcOrderItem.SALE_FOR_3MONTH_IN_WEEK_AVG = ((rs["SALE_FOR_3MONTH_IN_WEEK_AVG"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["SALE_FOR_3MONTH_IN_WEEK_AVG"]));
                        objCalcOrderItem.QUANTITY_IN_ORDER = ((rs["QUANTITY_IN_ORDER"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["QUANTITY_IN_ORDER"]));
                        objCalcOrderItem.QUANTITY_IN_STOCK = ((rs["QUANTITY_IN_STOCK"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["QUANTITY_IN_STOCK"]));
                        objCalcOrderItem.QUANTITY_IN_WAY = ((rs["QUANTITY_IN_WAY"] == System.DBNull.Value) ? 0 : System.Convert.ToInt32(rs["QUANTITY_IN_WAY"]));
                        objCalcOrderItem.QUANTITY_MIN_STOCK_IN_WEEK = ((rs["QUANTITY_MIN_STOCK_IN_WEEK"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["QUANTITY_MIN_STOCK_IN_WEEK"]));
                        objCalcOrderItem.KOEFF_SEASON_AVG = ((rs["KOEFF_SEASON_AVG"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["KOEFF_SEASON_AVG"]));
                        objCalcOrderItem.KOEFF_DIV = ((rs["KOEFF_DIV"] == System.DBNull.Value) ? 0 : System.Convert.ToDecimal(rs["KOEFF_DIV"]));
                        objCalcOrderItem.ABC = ((rs["ABC"] == System.DBNull.Value) ? "" : System.Convert.ToString(rs["ABC"]));
                        objList.Add(objCalcOrderItem);
                    }
                }
                rs.Dispose();

                if (cmdSQL == null)
                {
                    cmd.Dispose();
                    DBConnection.Close();
                }
            }
            catch (System.Exception f)
            {
                DevExpress.XtraEditors.XtraMessageBox.Show(
                "Не удалось получить приложение к расчету.\n\nТекст ошибки : " + f.Message, "Внимание",
                System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
            }
            return objList;
        }
Exemplo n.º 4
0
        private void FilterMeasure()
        {
            List <CMeasure> measure2 = new List <CMeasure>();
            List <CMeasure> measure3 = new List <CMeasure>();

            double Voltage, Current;
            int    c = 260;

            /*****************Начало фильтров*****************/

            measure2.Add(new CMeasure());
            measure2.Add(new CMeasure());
            for (int i = 0; i < measure.MeasureList.Count; i++)
            {
                measure2.Add(measure.MeasureList[i]);
            }
            measure3.Clear();
            measure3.Add(new CMeasure());
            measure3.Add(new CMeasure());
            for (int i = 2; i < measure2.Count; i++)
            {
                /***************************первый фильтр*******************************/
                CMeasure measureHelp = new CMeasure();

                Voltage             = (1 * measure2[i - 2].Voltage - 1.9735364316538304 * measure2[i - 1].Voltage + 1 * measure2[i].Voltage);
                Voltage             = (Voltage - (0.97522899205898828 * measure3[i - 2].Voltage - -1.9599511990359928 * measure3[i - 1].Voltage)) / 1;
                measureHelp.Voltage = Voltage;

                Current             = (1 * measure2[i - 2].Current - 1.9735364316538304 * measure2[i - 1].Current + 1 * measure2[i].Current);
                Current             = (Current - (0.97522899205898828 * measure3[i - 2].Current - -1.9599511990359928 * measure3[i - 1].Current)) / 1;
                measureHelp.Current = Current;

                measure3.Add(measureHelp);
            }

            for (int i = 0; i < c; i++)
            {///////////////////////////////////////////
                measure3[i].Current = 0;
                measure3[i].Voltage = 0;
            }///////////////////////////////////////////

            measure2.Clear();
            measure2.Add(new CMeasure());
            measure2.Add(new CMeasure());
            for (int i = 2; i < measure3.Count; i++)
            {
                /***************************второй фильтр*******************************/
                CMeasure measureHelp = new CMeasure();

                Voltage             = (1 * measure3[i - 2].Voltage - 1.9675309476158529 * measure3[i - 1].Voltage + 1 * measure3[i].Voltage);
                Voltage             = (Voltage - (0.92158600088844911 * measure2[i - 2].Voltage - 1.9049213498646491 * measure2[i - 1].Voltage)) / 1;
                measureHelp.Voltage = Voltage;

                Current             = (1 * measure3[i - 2].Current - 1.9675309476158529 * measure3[i - 1].Current + 1 * measure3[i].Current);
                Current             = (Current - (0.92158600088844911 * measure2[i - 2].Current - 1.9049213498646491 * measure2[i - 1].Current)) / 1;
                measureHelp.Current = Current;

                measure2.Add(measureHelp);
            }

            for (int i = 0; i < c; i++)
            {///////////////////////////////////////////
                measure2[i].Current = 0;
                measure2[i].Voltage = 0;
            }///////////////////////////////////////////


            measure3.Clear();
            measure3.Add(new CMeasure());
            measure3.Add(new CMeasure());
            for (int i = 2; i < measure2.Count; i++)
            {
                /***************************Третий фильтр*******************************/
                CMeasure measureHelp = new CMeasure();

                Voltage             = (1 * measure2[i - 2].Voltage - 1.9486909237199943 * measure2[i - 1].Voltage + 1 * measure2[i].Voltage);
                Voltage             = (Voltage - (0.85345281255781213 * measure3[i - 2].Voltage - 1.833456870457691 * measure3[i - 1].Voltage)) / 1;
                measureHelp.Voltage = Voltage;

                Current             = (1 * measure2[i - 2].Current - 1.9486909237199943 * measure2[i - 1].Current + 1 * measure2[i].Current);
                Current             = (Current - (0.85345281255781213 * measure3[i - 2].Current - 1.833456870457691 * measure3[i - 1].Current)) / 1;
                measureHelp.Current = Current;

                measure3.Add(measureHelp);
            }

            for (int i = 0; i < c; i++)
            {///////////////////////////////////////////
                measure3[i].Current = 0;
                measure3[i].Voltage = 0;
            }///////////////////////////////////////////


            measure2.Clear();
            measure2.Add(new CMeasure());
            measure2.Add(new CMeasure());
            for (int i = 2; i < measure3.Count; i++)
            {
                /*************************** Четвёртый фильтр*******************************/
                CMeasure measureHelp = new CMeasure();

                Voltage             = (1 * measure3[i - 2].Voltage - 1.8777640616901443 * measure3[i - 1].Voltage + 1 * measure3[i].Voltage);
                Voltage             = (Voltage - (0.7671153819972949 * measure2[i - 2].Voltage - 1.7418974595250869 * measure2[i - 1].Voltage)) / 1;
                measureHelp.Voltage = Voltage;

                Current             = (1 * measure3[i - 2].Current - 1.8777640616901443 * measure3[i - 1].Current + 1 * measure3[i].Current);
                Current             = (Current - (0.7671153819972949 * measure2[i - 2].Current - 1.7418974595250869 * measure2[i - 1].Current)) / 1;
                measureHelp.Current = Current;

                measure2.Add(measureHelp);
            }

            for (int i = 0; i < c; i++)
            {///////////////////////////////////////////
                measure2[i].Current = 0;
                measure2[i].Voltage = 0;
            }///////////////////////////////////////////

            measure3.Clear();
            measure3.Add(new CMeasure());
            measure3.Add(new CMeasure());
            for (int i = 2; i < measure2.Count; i++)
            {
                /***************************Пятый фильтр*******************************/
                CMeasure measureHelp = new CMeasure();

                Voltage             = (1 * measure2[i - 2].Voltage - 1.1608340229048444 * measure2[i - 1].Voltage + 1 * measure2[i].Voltage);
                Voltage             = (Voltage - (0.69134326008778102 * measure3[i - 2].Voltage - 1.6611920169645864 * measure3[i - 1].Voltage)) / 1;
                measureHelp.Voltage = Voltage;

                Current             = (1 * measure2[i - 2].Current - 1.1608340229048444 * measure2[i - 1].Current + 1 * measure2[i].Current);
                Current             = (Current - (0.69134326008778102 * measure3[i - 2].Current - 1.6611920169645864 * measure3[i - 1].Current)) / 1;
                measureHelp.Current = Current;

                measure3.Add(measureHelp);
            }

            for (int i = 0; i < c; i++)
            {///////////////////////////////////////////
                measure3[i].Current = 0;
                measure3[i].Voltage = 0;
            }///////////////////////////////////////////


            /*****************Фильры кончились*****************/

            measure.MeasureList.Clear();
            for (int i = 0; i < measure3.Count; i++)
            {
                measure.MeasureList.Add(measure3[i]);
            }

            double MaxVoltage = 1, MaxCurrent = 1;

            foreach (CMeasure _measure in measure.MeasureList)
            {
                if (Math.Abs(_measure.Voltage) > MaxVoltage)
                {
                    MaxVoltage = Math.Abs(_measure.Voltage);
                }
                if (Math.Abs(_measure.Current) > MaxCurrent)
                {
                    MaxCurrent = Math.Abs(_measure.Current);
                }
            }
            foreach (CMeasure _measure in measure.MeasureList)
            {
                _measure.Voltage /= MaxVoltage;
                _measure.Current /= MaxCurrent;
                _measure.Voltage *= 150;
                _measure.Current *= 150;
                _measure.Voltage += 170;
                _measure.Current += 170;
            }
        }