⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tjjieguo.pas

📁 过负荷记录仪器分为单片机数据采集器和微机数据分析记录数据库软件两部分。 仪器具有监视变压器负荷电流(通过改变传感器也可记录最低电压)并自动记录过负荷电流出现的开始时间
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    Query1.RequestLive :=true;
    Query1.SQL.Text :='select * from axiang '+tongjifrm.cxsql;
    Query1.Open ;
    query1.First ;
    starday:=query1.FieldValues ['开始时间'];
    decodedate(starday,ksnian,ksyue,ksri);
    query1.last;
    endday:=query1.FieldValues ['开始时间'];
    decodedate(endday,jsnian,jsyue,jsri);
    days:=trunc(endday)-trunc(starday);
    chart3.Title.Text.Delete(0);
    if days>1 then
    chart3.Title.Text.Add('A相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日-------'+inttostr(jsnian)+'年'
                    +inttostr(jsyue)+'月'+inttostr(jsri)+'日过负荷累计时间曲线')
    else
    chart3.Title.Text.Add('A相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日过负荷累计时间曲线');
    query1.First ;
    if days>1 then
    begin
    oldstartime:=0;
    k:=0;
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      if oldstartime<trunc(startime) then
         begin
         if k>0 then chart3.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clyellow);
          inc(k);
          oldstartime:=trunc(startime);
         end;

      endtime:=query1.FieldValues ['结束时间'];
      if endtime<startime then temp:=0
      else temp:=(endtime - startime)*86400;
      decodedate(startime,ksnian,ksyue,ksri);
      cishu[ksri]:=cishu[ksri]+round(temp);
      query1.Next ;
     end;
     chart3.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clyellow);
    end
    else begin
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      endtime:=query1.FieldValues ['结束时间'];
      if endtime<startime then temp:=0
      else temp:=(endtime - startime)*86400;
      decodetime(startime,hour,min,sec,msec);
      cishu[hour]:=cishu[hour]+round(temp);
      query1.Next ;
     end;
    for i:=0 to 23 do
     begin
      chart3.Series[0].AddXY(i,cishu[i],inttostr(i),clyellow);
     end;
    end;
  end;
if notebook.PageIndex =4 then
  begin
  for i:=0 to 23 do cishu[i]:=0;
    chart4.Series [0].Clear ;
    Query1.Close ;
    query1.DatabaseName :='bx';
    Query1.RequestLive :=true;
    Query1.SQL.Text :='select * from bxiang '+tongjifrm.cxsql;
    Query1.Open ;
    query1.First ;
    starday:=query1.FieldValues ['开始时间'];
    decodedate(starday,ksnian,ksyue,ksri);
    query1.last;
    endday:=query1.FieldValues ['开始时间'];
    decodedate(endday,jsnian,jsyue,jsri);
    days:=trunc(endday)-trunc(starday);
    chart4.Title.Text.Delete(0);
    if days>1 then
    chart4.Title.Text.Add('B相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日-------'+inttostr(jsnian)+'年'
                    +inttostr(jsyue)+'月'+inttostr(jsri)+'日过负荷累计时间曲线')
    else
    chart4.Title.Text.Add('B相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日过负荷累计时间曲线');
    query1.First ;
    if days>1 then
    begin
    oldstartime:=0;
    k:=0;
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      if oldstartime<trunc(startime) then
         begin
         if k>0 then chart4.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clgreen);
          inc(k);
          oldstartime:=trunc(startime);
         end;
      endtime:=query1.FieldValues ['结束时间'];
      if endtime<startime then temp:=0
      else temp:=(endtime - startime)*86400;
      decodedate(startime,ksnian,ksyue,ksri);
      cishu[ksri]:=cishu[ksri]+round(temp);
      query1.Next ;
     end;
     chart4.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clgreen);
    end
    else begin
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      endtime:=query1.FieldValues ['结束时间'];
      if endtime<startime then temp:=0
      else temp:=(endtime - startime)*86400;
      decodetime(startime,hour,min,sec,msec);
      cishu[hour]:=cishu[hour]+round(temp);
      query1.Next ;
     end;
    for i:=0 to 23 do
     begin
      chart4.Series[0].AddXY(i,cishu[i],inttostr(i),clgreen);
     end;
   end;
  end;
  if notebook.PageIndex =5 then
  begin
    for i:=0 to 23 do cishu[i]:=0;
    chart5.Series [0].Clear ;
    Query1.Close ;
    query1.DatabaseName :='ax';
    Query1.RequestLive :=true;
    Query1.SQL.Text :='select * from axiang '+tongjifrm.cxsql;
    Query1.Open ;
    query1.First ;
    starday:=query1.FieldValues ['开始时间'];
    decodedate(starday,ksnian,ksyue,ksri);
    query1.last;
    endday:=query1.FieldValues ['开始时间'];
    decodedate(endday,jsnian,jsyue,jsri);
    days:=trunc(endday)-trunc(starday);
    chart5.Title.Text.Delete(0);
    if days>1 then
    chart5.Title.Text.Add('A相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日-------'+inttostr(jsnian)+'年'
                    +inttostr(jsyue)+'月'+inttostr(jsri)+'日过负荷次数曲线')
    else
    chart5.Title.Text.Add('A相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日过负荷次数曲线');
    query1.First ;
    if days>1 then
    begin
    oldstartime:=0;
    k:=0;
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      if oldstartime<trunc(startime) then
         begin
         if k>0 then chart5.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clyellow);
          inc(k);
          oldstartime:=trunc(startime);
         end;
      decodedate(startime,ksnian,ksyue,ksri);
      cishu[ksri]:=cishu[ksri]+1;
      query1.Next ;
     end;
     chart5.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clyellow);
    end
    else begin
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      decodetime(startime,hour,min,sec,msec);
      cishu[hour]:=cishu[hour]+1;
      query1.Next ;
     end;
    for i:=0 to 23 do
      begin
       chart5.Series[0].AddXY(i,cishu[i],inttostr(i),clyellow);
      end;
    end;
  end;
  if notebook.PageIndex =6 then
  begin
    for i:=0 to 23 do cishu[i]:=0;
    chart6.Series [0].Clear ;
    Query1.Close ;
    query1.DatabaseName :='bx';
    Query1.RequestLive :=true;
    Query1.SQL.Text :='select * from bxiang '+tongjifrm.cxsql;
    Query1.Open ;
    query1.First ;
    starday:=query1.FieldValues ['开始时间'];
    decodedate(starday,ksnian,ksyue,ksri);
    query1.last;
    endday:=query1.FieldValues ['开始时间'];
    decodedate(endday,jsnian,jsyue,jsri);
    days:=trunc(endday)-trunc(starday);
    chart6.Title.Text.Delete(0);
    if days>1 then
    chart6.Title.Text.Add('B相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日-------'+inttostr(jsnian)+'年'
                    +inttostr(jsyue)+'月'+inttostr(jsri)+'日过负荷次数曲线')
    else
    chart6.Title.Text.Add('B相'+inttostr(ksnian)+'年'+inttostr(ksyue)+'月'
                    +inttostr(ksri)+'日过负荷次数曲线');
    query1.First ;
    if days>1 then
    begin
    oldstartime:=0;
    k:=0;
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      if oldstartime<trunc(startime) then
         begin
         if k>0 then chart6.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clgreen);
          inc(k);
          oldstartime:=trunc(startime);
         end;
      decodedate(startime,ksnian,ksyue,ksri);
      cishu[ksri]:=cishu[ksri]+1;
      query1.Next ;
     end;
     chart6.Series[0].AddXY(k,
                cishu[ksri],inttostr(ksyue)+'/'+inttostr(ksri),clgreen);
    end
    else begin
    while not query1.Eof do
     begin
      startime:=query1.FieldValues ['开始时间'];
      decodetime(startime,hour,min,sec,msec);
      cishu[hour]:=cishu[hour]+1;
      query1.Next ;
     end;
    for i:=0 to 23 do
      begin
       chart6.Series[0].AddXY(i,cishu[i],inttostr(i),clgreen);
      end;
    end;
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -