public void ReLoad() { if (InputExpect > 0) { this.txt_NewestExpect.Text = (this.InputExpect - 1).ToString(); this.btn_AddExpectNo_Click(null, null); } else { ViewDataList = er.ReadNewestData(DateTime.Today.AddDays(-1)); } }
void RefreshPK10Data() { ExpectList ViewDataList = exread.ReadNewestData(DateTime.Now.AddDays(-1)); if (ViewDataList == null) { return; } DataTable dt = ViewDataList.Table; dg_baseData.Invoke(new SetSpecDataGridCallback(Setdg_baseData), new object[] { dt }); //SetDataGridDataTable(dg_baseData, dt); }
private void ReceivePK10CData() { Log("接收数据", "准备接收数据"); PK10_HtmlDataClass hdc = new PK10_HtmlDataClass(); ExpectList el = hdc.getExpectList(); ////if(el != null && el.Count>0) ////{ //// Log("接收到的最新数据",el.LastData.ToString()); ////} if (el == null || el.Count == 0) { Log("接收数据", "未接收到数据"); return; } DateTime CurrTime = DateTime.Now; try { PK10ExpectReader rd = new PK10ExpectReader(); ExpectList currEl = rd.ReadNewestData(DateTime.Today.AddDays(-1)); if ((currEl == null || currEl.Count == 0) || (el.Count > 0 && currEl.Count > 0 && el.LastData.ExpectIndex > currEl.LastData.ExpectIndex))//获取到新数据 { Log("接收到数据", string.Format("接收到数据!{0}", el.LastData.ToString())); int CurrMin = DateTime.Now.Minute % 5; int CurrSec = DateTime.Now.Second; this.Tm_ForPK10.Interval = (CurrMin % 5 < 2 ? 2 : 7 - CurrMin) * 60000 - (CurrSec + 5) * 1000;//5分钟以后见,减掉5秒不断收敛时间,防止延迟接收 if (rd.SaveNewestData(rd.getNewestData(el, currEl)) > 0) { CurrDataList = rd.ReadNewestData(DateTime.Now.AddDays(-10));//前十天的数据 尽量的大于reviewcnt,免得需要再取一次数据 CurrExpectNo = el.LastData.Expect; Program.AllServiceConfig.LastDataSector = CurrDataList; AfterReceiveProcess(); } else { Log("保存数据错误", "保存数据数量为0!"); } } else { Log("接收到非最新数据", string.Format("id:{0}", el.LastData.Expect)); if (CurrTime.Hour < 9)//如果在9点前 { //下一个时间点是9:07 DateTime TargetTime = DateTime.Today.AddHours(9).AddMinutes(8); this.Tm_ForPK10.Interval = TargetTime.Subtract(CurrTime).TotalMilliseconds; } else { Log("接收数据", "未接收到数据!"); if (CurrTime.Subtract(PK10_LastSignTime).Minutes > 7)//如果离上期时间超过7分钟,说明数据未接收到,那不要再频繁以10秒访问服务器 { this.Tm_ForPK10.Interval = 60 * 1000; } else //一般未接收到,10秒以后再试 { this.Tm_ForPK10.Interval = 10 * 1000; } } } } catch (Exception e) { Log(e.Message, e.StackTrace); } Log("接收数据", string.Format("当前访问时间为:{0},{1}秒后继续访问!", CurrTime.ToString(), this.Tm_ForPK10.Interval / 1000)); //FillOrgData(listView_TXFFCData, currEl); }