Beispiel #1
0
 //日期时间
 private void rdoDataTime_CheckedChanged(object sender, EventArgs e)
 {
     if (rdoDataTime.Checked)
     {
         if (timerChartBind.Enabled == true)
         {
             lTotalCount = TagLJValue.GetTotalCount(UnitNO) - 1;
             timerChartBind_Tick(null, null);
         }
         else
         {
             btnQuery_Click(null, null);
         }
     }
 }
Beispiel #2
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridView grid = (DataGridView)sender;

            if (grid.Columns[e.ColumnIndex].Name == "resetData")
            {
                DateTime    ResetTime = DateTime.Now;
                FrmInputPws fip       = new FrmInputPws("请输入(运行人员)密码");
                fip.ShowDialog();
                string strRet = fip.Text;
                fip.Dispose();
                string[] strRetA = strRet.Split(',');
                if (strRet.Length == 0)
                {
                    return;
                }

                if (strRetA[1] == "ok")
                {
                    if (TableSysPara.getData("yx") == strRetA[0])
                    {
                        int  TagID = (int)grid.Rows[e.RowIndex].Cells["TagID"].Value;
                        bool b     = false;
                        if (UnitNO == 5)
                        {
                            b = TagLJValue.ResetAvgFive(TagID, ResetTime);
                        }
                        else
                        {
                            b = TagLJValue.ResetAvgSix(TagID, ResetTime);
                        }
                        if (b == true)
                        {
                            grid.Rows[e.RowIndex].Cells["AvgValue"].Value  = 0;
                            grid.Rows[e.RowIndex].Cells["BeginDate"].Value = ResetTime;
                        }
                        else
                        {
                            MessageBox.Show("数据复位失败!");
                        }
                    }
                    else
                    {
                        MessageBox.Show("密码错误,数据未复位!");
                    }
                }
            }
        }
Beispiel #3
0
 public LJJSFY(int unitNo)
 {
     InitializeComponent();
     this.UnitNO = unitNo;
     if (UnitNO == 5)
     {
         F19    = "F19";
         F3197  = "F3197";
         dF3198 = TagLJValue.GetFixedValue("F3198", UnitNO);//预定标煤煤价(不含税)
     }
     else if (UnitNO == 6)
     {
         F19    = "F119";
         F3197  = "F4197";
         dF3198 = TagLJValue.GetFixedValue("F4198", UnitNO);//预定标煤煤价(不含税)
     }
 }
Beispiel #4
0
 private void LJMLR_Load(object sender, EventArgs e)
 {
     chart1.Series[0].XValueType    = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
     chart1.Series[0].XValueMember  = "HourOfYear";
     chart1.Series[0].YValueType    = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
     chart1.Series[0].YValueMembers = F14;
     chart1.ChartAreas[0].AxisY.LabelStyle.Format = "0.##";
     timerChartBind.Interval = 1000;
     timerChartBind.Enabled  = true;
     dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO);
     if (dtChart.Rows.Count > 0)
     {
         dateTimePickerBegin1.Value = DateTime.Parse(dtChart.Rows[0]["ValueTime"].ToString());
         dateTimePickerBegin2.Value = dateTimePickerBegin1.Value;
     }
     timerChartBind_Tick(null, null);
 }
Beispiel #5
0
        private void LJSZMX_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < sChartNames.Length; i++)
            {
                chartTemp = (Chart)pnlData.Controls.Find(sChartNames[i], true)[0];

                chartTemp.Series[0].XValueType    = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                chartTemp.Series[0].XValueMember  = "HourOfYear";
                chartTemp.Series[0].YValueType    = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                chartTemp.Series[0].YValueMembers = sYValueMembers[i];
                chartTemp.ChartAreas[0].AxisY.LabelStyle.Format = "0.00";
                chartTemp.ChartAreas[0].AxisX.TitleAlignment    = StringAlignment.Far;
            }

            timerChartBind.Interval = 1000;
            timerChartBind.Enabled  = true;
            dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO); //这些注释都要改过来 ZZH
            if (dtChart.Rows.Count > 0)
            {
                dateTimePickerBegin1.Value = DateTime.Parse(dtChart.Rows[0]["ValueTime"].ToString());
                dateTimePickerBegin2.Value = dateTimePickerBegin1.Value;
            }
            timerChartBind_Tick(null, null);
        }
Beispiel #6
0
 private void btnRealTime_Click(object sender, EventArgs e)
 {
     lTotalCount = TagLJValue.GetTotalCount(UnitNO) - 1;
     timerChartBind_Tick(null, null);
     timerChartBind.Enabled = true;
 }
Beispiel #7
0
        private void btnQuery_Click(object sender, EventArgs e)
        {
            try
            {
                lblQueryWait.Visible = true;
                lblQueryWait.Refresh();
                string sTime = PublicFunction.DateTimeToStringWithfff(DateTime.Now);
                string sSql  = "insert into QueryAlarm(QueryDate,StartTime,EndTime,QueryFields,UnitNO,AlarmDesc) values('"
                               + sTime + "','" + dateTimePickerBegin2.Value + "','" + dateTimePickerEnd2.Value + "','" + sFields + "',"
                               + UnitNO + ",'查询数据时,未按提示等待,做其他操作造成程序退出!')";
                try { SQLHelper.ExecuteSql(sSql); }
                catch { }

                dtChart = TagLJValue.QueryDBTotalData(dateTimePickerBegin2.Value, dateTimePickerEnd2.Value, "[ValueTime],[HourOfYear]," + sFields, UnitNO);
                if (dtChart.Rows.Count > 0)
                {
                    if (rdoTotalHours.Checked == true)
                    {
                        dXMin       = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString());
                        dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString());

                        for (int i = 0; i < sChartNames.Length; i++)
                        {
                            chartTemp = (Chart)pnlData.Controls.Find(sChartNames[i], true)[0];
                            chartTemp.Series[0].XValueMember = "HourOfYear";
                            chartTemp.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(dHourOfYear - dXMin) / bHourOfYearGridCount;
                            chartTemp.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                            chartTemp.ChartAreas[0].AxisX.Interval          = (int)(dHourOfYear - dXMin) / bHourOfYearGridCount;
                            chartTemp.ChartAreas[0].AxisX.Title             = "供热期累计小时数(h)";
                            chartTemp.ChartAreas[0].AxisX.LabelStyle.Format = "0";
                            //chartTemp.ChartAreas[0].AxisY.Title = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                            chartTemp.Series[0].LegendText = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                        }
                    }
                    else
                    {
                        DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"];
                        DateTime timeEnd   = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"];

                        for (int i = 0; i < sChartNames.Length; i++)
                        {
                            chartTemp = (Chart)pnlData.Controls.Find(sChartNames[i], true)[0];
                            chartTemp.Series[0].XValueMember = "HourOfYear";
                            chartTemp.Series[0].XValueMember = "ValueTime";
                            chartTemp.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(timeEnd - timeBegin).TotalHours / bDateTimeGridCount;
                            chartTemp.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                            chartTemp.ChartAreas[0].AxisX.Interval          = (int)(timeEnd - timeBegin).TotalHours / bDateTimeGridCount;
                            chartTemp.ChartAreas[0].AxisX.Title             = "日期时间(t)";
                            chartTemp.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm";
                            //chartTemp.ChartAreas[0].AxisY.Title = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                            chartTemp.Series[0].LegendText = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                        }
                    }
                    chartRLLJZC.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Far;
                    chartRLLJZC.ChartAreas[0].AxisY.Title          = "燃料累计支出:" + Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][F10].ToString()), 2) + "(万元)";
                    chartRLLJZC.DataSource = dtChart;
                    chartRLLJZC.DataBind();
                    timerChartBind.Enabled = false;
                }
                else
                {
                    MessageBox.Show("没有查询到数据!");
                }


                sSql = "delete QueryAlarm where QueryDate='" + sTime + "'";
                try { SQLHelper.ExecuteSql(sSql); }
                catch { }
            }
            catch (Exception ex)
            {
                WriteLog.WriteLogs(ex.ToString());
                MessageBox.Show("错误:" + ex.Message);
            }
            finally
            {
                lblQueryWait.Visible = false;
                lblQueryWait.Refresh();
            }
        }
Beispiel #8
0
        private void timerChartBind_Tick(object sender, EventArgs e)
        {
            DataRow row;

            if (lTotalCount < TagLJValue.GetTotalCount(UnitNO))
            {
                lTotalCount = TagLJValue.GetTotalCount(UnitNO);
                dtChart.Dispose();
                dtChart = null;
                dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO);
                if (dtChart.Rows.Count > 0)
                {
                    dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString());
                    if (rdoTotalHours.Checked == true)
                    {
                        dXMin = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString());

                        for (int i = 0; i < sChartNames.Length; i++)
                        {
                            chartTemp = (Chart)pnlData.Controls.Find(sChartNames[i], true)[0];
                            chartTemp.Series[0].XValueMember = "HourOfYear";
                            chartTemp.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(dHourOfYear - dXMin) / bHourOfYearGridCount;
                            chartTemp.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                            chartTemp.ChartAreas[0].AxisX.Interval          = (int)(dHourOfYear - dXMin) / bHourOfYearGridCount;
                            chartTemp.ChartAreas[0].AxisX.Title             = "供热期累计小时数(h)";
                            chartTemp.ChartAreas[0].AxisX.LabelStyle.Format = "0";
                            //chartTemp.ChartAreas[0].AxisY.Title = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                            chartTemp.Series[0].LegendText = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                        }
                    }
                    else
                    {
                        DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"];
                        DateTime timeEnd   = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"];

                        for (int i = 0; i < sChartNames.Length; i++)
                        {
                            chartTemp = (Chart)pnlData.Controls.Find(sChartNames[i], true)[0];
                            chartTemp.Series[0].XValueMember = "ValueTime";
                            chartTemp.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                            chartTemp.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(timeEnd - timeBegin).TotalHours / bDateTimeGridCount;
                            chartTemp.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                            chartTemp.ChartAreas[0].AxisX.Interval          = (int)(timeEnd - timeBegin).TotalHours / bDateTimeGridCount;
                            chartTemp.ChartAreas[0].AxisX.Title             = "日期时间(t)";
                            chartTemp.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm";
                            //chartTemp.ChartAreas[0].AxisY.Title = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                            chartTemp.Series[0].LegendText = string.Format(sYValueLabels[i], Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][sYValueMembers[i]].ToString()), 2));
                        }
                    }
                    row = dtChart.NewRow();
                    row["ValueTime"]  = DateTime.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"].ToString()).AddSeconds(1);
                    row["HourOfYear"] = dHourOfYear + 0.0001;
                    dtChart.Rows.Add(row);
                }
            }
            row = dtChart.NewRow();
            row["ValueTime"]  = DateTime.Now;
            dHourOfYear      += timerChartBind.Interval / 1000 / 3600d;
            row["HourOfYear"] = dHourOfYear;
            MinMaxValue mmv = TagLJValue.GetMinMaxValue(F3225, UnitNO);

            //chartRLLJZC.ChartAreas[0].AxisX.Title = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000")
            //    + "                累计开始时间:" + mmv.BeginDateString + "\n燃料支出最小值:"
            //    + Math.Round(mmv.MinValue / 10000, 4).ToString("0.0000") + "        燃料支出最小值时间:" + mmv.MinDateString
            //    + "\n燃料支出最大值:" + Math.Round(mmv.MaxValue / 10000, 4).ToString("0.0000") + "        燃料支出最大值时间:"
            //    + mmv.MaxDateString + "\n燃料支出平均值:" + TagLJValue.GetTotalDataAvg(F10, UnitNO) + "万元/小时";
            lblMsg.Text = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000") + "        累计开始时间:" + mmv.BeginDateString + "        双击每个图可以放大显示。";
            dtChart.Rows.Add(row);

            foreach (string sChartName in sChartNames)
            {
                chartTemp            = (Chart)pnlData.Controls.Find(sChartName, true)[0];
                chartTemp.DataSource = dtChart;
                chartTemp.DataBind();
            }
        }
Beispiel #9
0
        private void timerChartBind_Tick(object sender, EventArgs e)
        {
            DataRow row;

            if (lTotalCount < TagLJValue.GetTotalCount(UnitNO))
            {
                lTotalCount = TagLJValue.GetTotalCount(UnitNO);
                dtChart.Dispose();
                dtChart = null;
                dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO);
                if (dtChart.Rows.Count > 0)
                {
                    dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString());
                    if (rdoTotalHours.Checked == true)
                    {
                        chart1.Series[0].XValueMember = "HourOfYear";
                        chart1.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                        dXMin = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString());
                        chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                        chart1.ChartAreas[0].AxisX.MajorGrid.Interval     = (dHourOfYear - dXMin) / 10;
                        chart1.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                        chart1.ChartAreas[0].AxisX.Interval          = (dHourOfYear - dXMin) / 10;
                        chart1.ChartAreas[0].AxisX.Title             = "供热期累计小时数";
                        chart1.ChartAreas[0].AxisX.LabelStyle.Format = "0";
                    }
                    else
                    {
                        DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"];
                        DateTime timeEnd   = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"];
                        chart1.Series[0].XValueMember = "ValueTime";
                        chart1.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime;
                        chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                        chart1.ChartAreas[0].AxisX.MajorGrid.Interval     = (timeEnd - timeBegin).TotalHours / 6;
                        chart1.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                        chart1.ChartAreas[0].AxisX.Interval          = (timeEnd - timeBegin).TotalHours / 6;
                        chart1.ChartAreas[0].AxisX.Title             = "时间";
                        chart1.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm";
                    }
                    chart1.ChartAreas[0].AxisY.Title = "累计节标煤量:" + Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][F18].ToString()), 2) + "吨";
                    row = dtChart.NewRow();
                    row["ValueTime"]  = DateTime.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"].ToString()).AddSeconds(1);
                    row["HourOfYear"] = dHourOfYear + 0.0001;
                    dtChart.Rows.Add(row);
                }
            }
            row = dtChart.NewRow();
            row["ValueTime"]  = DateTime.Now;
            dHourOfYear      += timerChartBind.Interval / 1000 / 3600d;
            row["HourOfYear"] = dHourOfYear;
            MinMaxValue mmv = TagLJValue.GetMinMaxValue(F3197, UnitNO);

            if (UnitNO == 5)
            {
                chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000")
                                                   + "                累计开始时间:" + mmv.BeginDateString + "\n节标煤量最小值:"
                                                   + mmv.MinValue.ToString("0.0000") + "        节标煤量最小值时间:" + mmv.MinDateString
                                                   + "\n节标煤量最大值:" + mmv.MaxValue.ToString("0.0000") + "        节标煤量最大值时间:"
                                                   + mmv.MaxDateString + "\n节标煤量平均值:" + TagLJValue.GetTotalDataAvg(F18, UnitNO) + "吨/小时        累计节省费用:"
                                                   + Math.Round(double.Parse(GlobalVariables.dtChartTotalDatasFive.Rows[GlobalVariables.dtChartTotalDatasFive.Rows.Count - 1][F19].ToString()), 2) + "万元";
            }
            else if (UnitNO == 6)
            {
                chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000")
                                                   + "                累计开始时间:" + mmv.BeginDateString + "\n节标煤量最小值:"
                                                   + mmv.MinValue.ToString("0.0000") + "        节标煤量最小值时间:" + mmv.MinDateString
                                                   + "\n节标煤量最大值:" + mmv.MaxValue.ToString("0.0000") + "        节标煤量最大值时间:"
                                                   + mmv.MaxDateString + "\n节标煤量平均值:" + TagLJValue.GetTotalDataAvg(F18, UnitNO) + "吨/小时        累计节省费用:"
                                                   + Math.Round(double.Parse(GlobalVariables.dtChartTotalDatasSix.Rows[GlobalVariables.dtChartTotalDatasSix.Rows.Count - 1][F19].ToString()), 2) + "万元";
            }
            chart1.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Near;
            dtChart.Rows.Add(row);
            chart1.DataSource = dtChart;
            chart1.DataBind();
        }
Beispiel #10
0
 private void timerChartBind_Tick(object sender, EventArgs e)
 {
     try
     {
         DataRow row;
         if (lTotalCount < TagLJValue.GetTotalCount(UnitNO))
         {
             lTotalCount = TagLJValue.GetTotalCount(UnitNO);
             dtChart.Dispose();
             dtChart = null;
             dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO);
             if (dtChart.Rows.Count > 0)
             {
                 dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString());
                 if (rdoTotalHours.Checked == true)
                 {
                     chart1.Series[0].XValueMember = "HourOfYear";
                     chart1.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double;
                     dXMin = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString());
                     chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                     chart1.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(dHourOfYear - dXMin) / 10;
                     chart1.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;
                     chart1.ChartAreas[0].AxisX.Interval          = (int)(dHourOfYear - dXMin) / 10;
                     chart1.ChartAreas[0].AxisX.Title             = "供热期累计小时数";
                     chart1.ChartAreas[0].AxisX.LabelStyle.Format = "0";
                 }
                 else
                 {
                     DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"];
                     DateTime timeEnd   = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"];
                     chart1.Series[0].XValueMember = "ValueTime";
                     chart1.Series[0].XValueType   = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime;
                     chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                     chart1.ChartAreas[0].AxisX.MajorGrid.Interval     = (int)(timeEnd - timeBegin).TotalHours / 6;
                     chart1.ChartAreas[0].AxisX.IntervalType           = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours;
                     chart1.ChartAreas[0].AxisX.Interval          = (int)(timeEnd - timeBegin).TotalHours / 6;
                     chart1.ChartAreas[0].AxisX.Title             = "时间";
                     chart1.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm";
                 }
                 chart1.ChartAreas[0].AxisY.Title = "供电累计收入:" + Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][F6].ToString()), 2) + "(万元)";
                 row = dtChart.NewRow();
                 row["ValueTime"]  = DateTime.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"].ToString()).AddSeconds(1);
                 row["HourOfYear"] = dHourOfYear + 0.0001;
                 dtChart.Rows.Add(row);
             }
         }
         row = dtChart.NewRow();
         row["ValueTime"]  = DateTime.Now;
         dHourOfYear      += timerChartBind.Interval / 1000 / 3600d;
         row["HourOfYear"] = dHourOfYear;
         MinMaxValue mmv = TagLJValue.GetMinMaxValue(F3226, UnitNO);
         chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000")
                                            + "                累计开始时间:" + mmv.BeginDateString + "\n供电收入最小值:"
                                            + Math.Round(mmv.MinValue / 10000, 4).ToString("0.0000") + "        供电收入最小值时间:" + mmv.MinDateString
                                            + "\n供电收入最大值:" + Math.Round(mmv.MaxValue / 10000, 4).ToString("0.0000") + "        供电收入最大值时间:"
                                            + mmv.MaxDateString + "\n供电收入平均值:" + TagLJValue.GetTotalDataAvg(F6, UnitNO) + "万元/小时";
         chart1.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Near;
         dtChart.Rows.Add(row);
         chart1.DataSource = dtChart;
         chart1.DataBind();
         WriteLog.WriteLogs("timerChartBind:" + timerChartBind.Enabled);
     }
     catch (Exception ex)
     { WriteLog.WriteLogs(ex.ToString()); }
 }