using SuperMap.Data; using System; using System.Collections.Generic; using System.Data; using WeifenLuo.WinFormsUI.Docking; using WWPipeLine.MapBasic.Conditions; using WWPipeLine.MapBasic; namespace WWPipeLine.MapTools.Conditions.Statistics { public partial class GXMSRQStatistics : ConditionPanel { public GXMSRQStatistics() : base() { this.ConditionPanelName = "按管线的埋设日期统计"; this.SetSize(200, 400); InitializeComponent(); } protected override void OnLoad(EventArgs e) { if (!ComsStatic.HasField(ComsStatic.dvJSLK, "msrq")) { Sunny.UI.UIMessageTip.ShowError("当前矢量数据集没有管径信息"); return; } this.dpRQStart.Value = new System.DateTime(DateTime.Now.Year - 5, DateTime.Now.Month, DateTime.Now.Day); this.dpRQEnd.Value = new System.DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); } public override object Do(DockPanel dockPanel = null) { string sql = string.Format(" MSRQ BETWEEN '{0}' AND '{1}' ", dpRQStart.Value.ToString("yyyy/MM/dd"), dpRQEnd.Value.ToString("yyyy/MM/dd")); DataTable dtFinal = new DataTable(); dtFinal.Columns.Add("埋设日期"); dtFinal.Columns.Add("查询结果"); DataRow drcd = dtFinal.NewRow(); drcd["埋设日期"] = "长度"; DataRow drsl = dtFinal.NewRow(); drsl["埋设日期"] = "数量"; Recordset rd = ComsStatic.QueryRecordset(ComsStatic.dvJSLK, sql); drcd["查询结果"] = rd.Statistic("cd", StatisticMode.Sum); drsl["查询结果"] = rd.RecordCount; dtFinal.Rows.Add(drcd); dtFinal.Rows.Add(drsl); return dtFinal; } } }