Ejemplo n.º 1
0
 public bool SetFilter(string iStationId, DateTime timeStart, DateTime timeEnd, bool TimeSelect)
 {
     m_annotation.Visible = false;
     ClearAllDatas();
     m_proxyWaterFlow.SetFilter(iStationId, timeStart, timeEnd, TimeSelect);
     if (-1 == m_proxyWaterFlow.GetPageCount())
     {
         // 查询失败
         // MessageBox.Show("数据库忙,查询失败,请稍后再试!");
         return(false);
     }
     else
     {
         // 并查询数据,显示第一页
         m_dMaxWaterFlow  = null;
         m_dMaxWaterStage = null;
         m_dMinWaterFlow  = null;
         m_dMinWaterStage = null;
         int iTotalPage = m_proxyWaterFlow.GetPageCount();
         int rowcount   = m_proxyWaterFlow.GetRowCount();
         if (rowcount > CI_Chart_Max_Count)
         {
             // 数据量太大,退出绘图
             MessageBox.Show("查询结果集太大,自动退出绘图");
             return(false);
         }
         for (int i = 0; i < iTotalPage; ++i)
         {
             // 查询所有的数据
             this.AddWaters(m_proxyWaterFlow.GetPageData(i + 1));
         }
         return(true);
     }
 }
 // 保存数据
 public override bool DoSave()
 {
     if (this.IsCurrentCellInEditMode)
     {
         //MessageBox.Show("请完成当前的编辑");
         this.EndEdit();
         //return false;
     }
     //base.DoSave();
     // 更新
     GetUpdatedData();
     if (m_listAddedWater.Count > 0 || m_listUpdated.Count > 0 || m_listDeleteWaters_StationId.Count > 0)
     {
         bool result = true;
         // 增加
         if (m_listAddedWater.Count > 0)
         {
             //直接添加,不需要等待1分钟
             m_proxyWater.AddNewRows_1(m_listAddedWater);
             m_listAddedWater.Clear();
         }
         // 修改
         if (m_listUpdated.Count > 0)
         {
             result = result && m_proxyWater.UpdateRows(m_listUpdated);
             m_listUpdated.Clear();
         }
         // 删除
         if (m_listDeleteWaters_StationId.Count > 0)
         {
             result = result && m_proxyWater.DeleteRows(m_listDeleteWaters_StationId, m_listDeleteWaters_StationDate);
             m_listDeleteWaters.Clear();
         }
         if (result)
         {
             //MessageBox.Show("保存成功,新增记录稍有延迟");
         }
         else
         {
             // 保存失败
             //MessageBox.Show("保存失败");
             return(false);
         }
         SetWaters(m_proxyWater.GetPageData(base.m_iCurrentPage));
     }
     else
     {
         //MessageBox.Show("没有任何修改,无需保存");
     }
     return(true);
 }
Ejemplo n.º 3
0
 // 设置查询条件
 public bool SetFilter(string strStationId, DateTime timeStart, DateTime timeEnd, bool TimeSelect)
 {
     ClearAllState();
     m_strStaionId   = strStationId;
     m_dateTimeStart = timeStart;
     m_dateTimeEnd   = timeEnd;
     m_proxyWater.SetFilter(strStationId, timeStart, timeEnd, TimeSelect);
     if (-1 == m_proxyWater.GetPageCount())
     {
         // 查询失败
         MessageBox.Show("数据库忙,查询失败,请稍后再试!");
         return(false);
     }
     else
     {
         // 并查询数据,显示第一页
         this.OnMenuFirstPage(this, null);
         base.TotalPageCount = m_proxyWater.GetPageCount();
         base.TotalRowCount  = m_proxyWater.GetRowCount();
         SetWaters(m_proxyWater.GetPageData(1));
         return(true);
     }
 }
Ejemplo n.º 4
0
        private void EH_MI_ExportToExcel_Click(object sender, EventArgs e)
        {
            // 弹出对话框,并导出到Excel文件
            SaveFileDialog dlg = new SaveFileDialog();

            dlg.Filter = "Excel文件(*.xls)|*.xls|所有文件(*.*)|*.*";
            if (DialogResult.OK == dlg.ShowDialog())
            {
                // 保存到Excel表格中
                DataTable dataTable = new DataTable();
                // dataTable.Columns.Add(CS_WaterID, typeof(Int64));
                dataTable.Columns.Add(CS_StationID);
                dataTable.Columns.Add(CS_StationName, typeof(string));
                dataTable.Columns.Add(CS_WaterStage, typeof(string));
                dataTable.Columns.Add(CS_WaterFlow, typeof(string)); //可空吗??
                dataTable.Columns.Add(CS_TimeCollected, typeof(DateTime));
                dataTable.Columns.Add(CS_TimeReceived, typeof(DateTime));
                dataTable.Columns.Add(CS_MsgType, typeof(string));
                dataTable.Columns.Add(CS_ChannelType, typeof(string));
                // 逐页读取数据
                for (int i = 0; i < m_iTotalPage; ++i)
                {
                    List <CEntityWater> tmpWaters = m_proxyWater.GetPageData(i + 1);
                    foreach (CEntityWater water in tmpWaters)
                    {
                        // 赋值到dataTable中去
                        DataRow row = dataTable.NewRow();
                        // row[CS_WaterID] = water.WaterID;
                        row[CS_StationID]   = water.StationID;
                        row[CS_StationName] = CDBDataMgr.Instance.GetStationById(water.StationID).StationName;
                        if (water.WaterStage != -9999)
                        {
                            row[CS_WaterStage] = water.WaterStage;
                        }
                        else
                        {
                            row[CS_WaterStage] = "";
                        }
                        if (water.WaterFlow != -9999)
                        {
                            row[CS_WaterFlow] = water.WaterFlow;
                        }
                        else
                        {
                            row[CS_WaterFlow] = "";
                        }
                        row[CS_TimeCollected] = water.TimeCollect;
                        row[CS_TimeReceived]  = water.TimeRecieved;
                        row[CS_MsgType]       = CEnumHelper.MessageTypeToUIStr(water.MessageType);
                        row[CS_ChannelType]   = CEnumHelper.ChannelTypeToUIStr(water.ChannelType);
                        dataTable.Rows.Add(row);
                    }
                }
                // 显示提示框
                CMessageBox box = new CMessageBox()
                {
                    MessageInfo = "正在导出表格,请稍候"
                };
                box.ShowDialog(this);
                if (CExcelExport.ExportToExcelWrapper(dataTable, dlg.FileName, "水位流量表"))
                {
                    //box.Invoke((Action)delegate { box.Close(); });
                    box.CloseDialog();
                    MessageBox.Show(string.Format("导出成功,保存在文件\"{0}\"中", dlg.FileName));
                }
                else
                {
                    //box.Invoke((Action)delegate { box.Close(); });
                    box.CloseDialog();
                    MessageBox.Show("导出失败");
                }
            }//end of if dialog okay
        }