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

📄 datadisp.pas

📁 这是一个正式的项目工程
💻 PAS
字号:
unit DataDisp;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, Grids, mxgrid, mxpivsrc, mxDB, Db, DBTables, mxtables, mxstore,
  ComCtrls,MainDB,wsCores,wsTypes, StdCtrls;

type
  TfrmDataDisp = class(TForm)
    Panel1: TPanel;
    Splitter1: TSplitter;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    DecisionCube1: TDecisionCube;
    DecisionQuery1: TDecisionQuery;
    DecisionSource1: TDecisionSource;
    DecisionPivot1: TDecisionPivot;
    DecisionGrid1: TDecisionGrid;
    Panel5: TPanel;
    TreeViewSelect: TTreeView;
    dsViewProjectID: TDataSource;
    ViewProjectID: TTable;
    ViewProjectIDClass: TStringField;
    ViewProjectIDACode: TStringField;
    ViewProjectIDCodeMeaning: TStringField;
    ViewPH: TTable;
    ViewPHProjectID: TStringField;
    ViewPHHourseID: TStringField;
    dsViewPH: TDataSource;
    ViewPHHourseIDLookup: TStringField;
    DateTimePicker1: TDateTimePicker;
    Label1: TLabel;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure TreeViewSelectChanging(Sender: TObject; Node: TTreeNode;
      var AllowChange: Boolean);
    procedure TreeViewSelectChange(Sender: TObject; Node: TTreeNode);
    procedure DateTimePicker1CloseUp(Sender: TObject);
  private
    { Private declarations }
    strHourseID:String;
    DDate      :TDateTime;
    Procedure OpenDescisionQuery();
  public
    { Public declarations }
  end;

var
  frmDataDisp: TfrmDataDisp;

implementation

{$R *.DFM}
Procedure TfrmDataDisp.OpenDescisionQuery();
begin
  DecisionQuery1.Close ;
  DecisionQuery1.SQL.Clear;
  DecisionQuery1.SQL.Add('SELECT ExtensionID, DDate, StandardG, Gravity, Height, HorizonDiff, State, SUM( StandardG ), SUM( AverageG ), COUNT( AverageG )');
  DecisionQuery1.SQL.Add('FROM Extension Where (HourseID=:HourseID) and (DDate>=:DDate1) and (DDate<:DDate2)');
  DecisionQuery1.SQL.Add('GROUP BY ExtensionID, DDate, StandardG, Gravity, Height, HorizonDiff, State');
  DecisionQuery1.ParamByName('HourseID').AsString:=strHourseID;
  DecisionQuery1.ParamByName('DDate1').AsDateTime:=DDate;
  DecisionQuery1.ParamByName('DDate2').AsDateTime:=DDate+1;
  try
    DecisionQuery1.Open;
  except
//    ShowMessage('本楼栋缺少数据');
  end;
end;

procedure TfrmDataDisp.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  Action:=caFree;
end;

procedure TfrmDataDisp.FormCreate(Sender: TObject);
var
  RootNode,CurrentNode :TTreeNode;
begin
  Top:=2;
  Left:=2;
  Width:=720;
  Height:=440;
  strHourseID:='';
  DDate:=Date();
  DateTimePicker1.DateTime:=DDate;
  ViewProjectID.Open;
  ViewPH.Open;
  if dmMainDB.ViewHourseID.State<>dsInactive then
    dmMainDB.ViewHourseID.Open
  else
    dmMainDB.ViewHourseID.First;
  try
    TreeViewSelect.Items.BeginUpdate;
    ViewPH.First;
    While Not ViewProjectID.Eof do
    begin
      RootNode:=TreeViewSelect.Items.Add(nil,ViewProjectID['CodeMeaning']+' ['+ViewProjectID['ACode']+']');
      while not ViewPH.Eof do
      begin
        CurrentNode:=TreeViewSelect.Items.AddChild(RootNode,ViewPH['HourseIDLookup']+' ['+ViewPH['HourseID']+']');
        CurrentNode.ImageIndex:=0;
        CurrentNode.SelectedIndex:=3;
        ViewPH.Next;
      end;
      ViewProjectID.Next;
    end;
  finally
    TreeViewSelect.FullExpand;
    TreeViewSelect.Items.EndUpdate;
  end;
  if (TreeViewSelect.TopItem<>nil) and  (TreeViewSelect.TopItem.getFirstChild<>nil) then
  begin
    strHourseID:=GetID(TreeViewSelect.TopItem.getFirstChild.Text);
    TreeViewSelect.TopItem.getFirstChild.Selected:=True;
  end;
  ViewProjectID.Close;
  ViewPH.Close;
  OpenDescisionQuery();
end;

procedure TfrmDataDisp.FormDestroy(Sender: TObject);
begin
  DecisionQuery1.Close;
end;

procedure TfrmDataDisp.TreeViewSelectChanging(Sender: TObject;
  Node: TTreeNode; var AllowChange: Boolean);
begin
  if Node.Level=1 then
  begin
    AllowChange:=True;
  end
  else
  begin
    AllowChange:=False;
  end;

end;

procedure TfrmDataDisp.TreeViewSelectChange(Sender: TObject;
  Node: TTreeNode);
begin
  strHourseID:=GetID(Node.Text);
  OpenDescisionQuery();
end;

procedure TfrmDataDisp.DateTimePicker1CloseUp(Sender: TObject);
begin
  DDate:=DateTimePicker1.Date;
  OpenDescisionQuery();

end;

end.

⌨️ 快捷键说明

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