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

📄 wj_taiz.pas

📁 完整的公司合同管理系统,基于ACSESS数据库开发,无须安装任何其他插件.附带源码.免费提供.
💻 PAS
📖 第 1 页 / 共 2 页
字号:
end;

procedure TfrmWJ_TaiZ.SpeedButton11Click(Sender: TObject);
begin
  if (ADOQuery1.Active) and (ADOQuery1.RecordCount>0) then
  if HeTongCaoZuo(1,ADOQuery1.FieldByName('ID').AsString,ADOQuery1.FieldByName('Name').AsString) then
     ADOQueryRefresh;
end;

procedure TfrmWJ_TaiZ.SpeedButton12Click(Sender: TObject);
begin
  if (ADOQuery1.Active) and (ADOQuery1.RecordCount>0) then
  if HeTongCaoZuo(2,ADOQuery1.FieldByName('ID').AsString,ADOQuery1.FieldByName('Name').AsString) then
     ADOQueryRefresh;
end;

procedure TfrmWJ_TaiZ.SpeedButton13Click(Sender: TObject);
begin
  if (ADOQuery1.Active) and (ADOQuery1.RecordCount>0) then
  if HeTongCaoZuo(3,ADOQuery1.FieldByName('ID').AsString,ADOQuery1.FieldByName('Name').AsString) then
     ADOQueryRefresh;
end;

procedure TfrmWJ_TaiZ.SpeedButton10Click(Sender: TObject);
begin
   if (ADOQuery1.Active) and (ADOQuery1.RecordCount>0) then
      FuKuanMX(ADOQuery1.FieldByName('ID').AsString,ADOQuery1.FieldByName('NAME').AsString);
end;

procedure TfrmWJ_TaiZ.ADOQuery1CalcFields(DataSet: TDataSet);
begin
  ADOQuery1.FieldByName('No').AsInteger := ABS(ADOQuery1.RecNo);
end;

procedure TfrmWJ_TaiZ.FormCreate(Sender: TObject);
begin
  N1.Click;
  HtTongJi('合同台帐统计表','');
  HtFuKuanTongJi;

  DBGrid1.Columns[3].Visible := false;
  DBGrid1.Columns[4].Visible := false;
  DBGrid1.Columns[9].Visible := false;
  DBGrid1.Columns[10].Visible := false;
  DBGrid1.Columns[11].Visible := false;
  DBGrid1.Columns[12].Visible := false;

end;

procedure TfrmWJ_TaiZ.SpeedButton7Click(Sender: TObject);
begin
  if ADOQuery1.SQL.Text<>'' then
     ADOQueryRefresh;
end;

procedure TfrmWJ_TaiZ.ComboBox1DropDown(Sender: TObject);
   procedure AddDataInToComBobox4;
     begin
       with ADOQuery2 do
            begin
                 Close;
                 SQL.Clear;
                 SQL.Add('  select distinct SORT from TAIZ ')  ;
                 Prepared;
                 Open;
                 First;
                 while not eof do
                       begin
                            ComBobox1.Items.Add(ADOQuery2.FieldByName('SORT').AsString);
                            Next;
                       end;
            end;
     end;
begin
  if ComBobox1.Items.Count=1 then
     begin
        AddDataInToComBobox4;
     end;
end;

procedure TfrmWJ_TaiZ.ComboBox1Change(Sender: TObject);
var Text : string ;
begin
   if ComBobox1.Text<>'<total>' then begin
      text := 'select * from Taiz where SORT='+#39+ComBobox1.Text+#39+' order by QDRQ ';
   end else text := 'select * from Taiz  order by QDRQ,SORT ';
   HeTong_GetQueryData(text,ADOQuery1);
end;

procedure TfrmWJ_TaiZ.ADOQueryRefresh;
begin
     ADOQuery1.close;
     ADOQuery1.open;
end;

procedure TfrmWJ_TaiZ.ShowTabSheet1;
begin
   SpeedButton8.Visible := false;
   PageControl1.ActivePageIndex := 0;
end;

procedure TfrmWJ_TaiZ.ShowTabSheet2;
begin
   SpeedButton8.Visible := true;
   PageControl1.ActivePageIndex := 1;
end;

procedure TfrmWJ_TaiZ.TabSet1Click(Sender: TObject);
begin
  case TabSet1.TabIndex of
       0 : ShowTabSheet1;
       1 : ShowTabSheet2;
  end;

end;

procedure TfrmWJ_TaiZ.WriteData(const tName,tData : string);
begin
  ValueListEditor1.InsertRow(tName,tData,true);
end;

procedure TfrmWJ_TaiZ.HtTongJi(const Title,SqlText : string);
//******************************************
    procedure HtSum(const SqlText : string);
      var tData, sql : string;
      begin
          sql := ' select * from TAIZ '+sqltext;
          tData := IntToStr(HeTong_TaiZTongJ(Sql,AdoQuery3));
          WriteData('合同总数',tData);
      end;
//******************************************
    procedure HtFlSum(const SqlText : string);
      var sql : string;
      begin
         sql := ' select count(id) as HtCount ,sort from Taiz '+sqltext+' group by Sort';
         if HeTong_GetQueryData(Sql,AdoQuery3) then
            begin
                 with AdoQuery3 do begin
                 First;
                 while not eof do begin
                       WriteData(FieldByName('Sort').Asstring,FieldByName('HtCount').Asstring);
                       Next;
                 end;

                 end;
            end;

      end;
//*********************************************
    procedure HtSumJinE(const SqlText : string);
      var sql : string;
      begin
          sql := ' select sum(HtJE) as tHtJE from TAIZ '+sqltext;
          if HeTong_GetQueryData(Sql,AdoQuery3) then
             WriteData('合同金额','¥'+AdoQuery3.FieldByName('tHtJE').Asstring);

      end;
//*********************************************
    procedure HtSumJinEHasPay(const SqlText : string);
      var sql : string;
      begin
          sql := ' select sum(JINE之SUM) as tHtJE from V_TAIZ '+sqltext;
          if HeTong_GetQueryData(Sql,AdoQuery3) then
             WriteData('已付金额','¥'+AdoQuery3.FieldByName('tHtJE').Asstring);

      end;
//**********************************************
    procedure HtSumHasWanG(const SqlText : string);
      var tData, sql : string;
      begin
          if SqlText<>'' then begin
             sql := ' select * from TAIZ '+sqltext+' and SFWG='+#39+'是'+#39;
          end else  sql := ' select * from TAIZ where SFWG='+#39+'是'+#39;
          tData := IntToStr(HeTong_TaiZTongJ(Sql,AdoQuery3));
          WriteData('已完工项目',tData);
      end;
//***********************************************
    procedure HtSumHasYanS(const SqlText : string);
      var tData, sql : string;
      begin
          if SqlText<>'' then begin
             sql := ' select * from TAIZ '+sqltext+' and SFYS='+#39+'是'+#39;
          end else  sql := ' select * from TAIZ where SFYS='+#39+'是'+#39;
          tData := IntToStr(HeTong_TaiZTongJ(Sql,AdoQuery3));
          WriteData('已验收项目',tData);
      end;
//**********************************************
    procedure HtSumHasJieS(const SqlText : string);
      var tData, sql : string;
      begin
          if SqlText<>'' then begin
             sql := ' select * from TAIZ '+sqltext+' and SFJS='+#39+'是'+#39;
          end else  sql := ' select * from TAIZ where SFJS='+#39+'是'+#39;
          tData := IntToStr(HeTong_TaiZTongJ(Sql,AdoQuery3));
          WriteData('已结算项目',tData);
      end;
//*************************************************
var i : integer;
begin
  if ValueListEditor1.RowCount>1 then begin
     for i:=0 to ValueListEditor1.RowCount-1 do
       ValueListEditor1.DeleteRow(0);
  end;
  Panel1.Caption := Title ;
  HtSum(SqlText); //合同总数
  HtFlSum(SqlText);//合同分类总数
  WriteData('------------','------------');
  HtSumJinE(SqlText);//合同总金额
  HtSumJinEHasPay(SqlText);//合同已付总金额
  WriteData('------------','------------');
  HtSumHasWanG(SqlText);//已经完工项目数
  HtSumHasYanS(SqlText);//...验收
  HtSumHasJieS(SqlText);//..结算
end;

procedure TfrmWJ_TaiZ.WriteStringGrid(const Row : integer;const HtName,HtJinE,YFJinE : string);
begin
  StringGrid1.Cells[0,Row]:=HtName;
  StringGrid1.Cells[1,Row]:=HtJinE;
  StringGrid1.Cells[2,Row]:=YFJinE;

end;

procedure TfrmWJ_TaiZ.HtFuKuanTongJi;
  procedure Tongji;
        function FindData(const HtID : string ;const tAdoQuery : TAdoQuery) : boolean;
          begin
            with tAdoQuery do
                 begin
                      Close;
                      SQL.Clear;
                      SQL.Add(' select * from V_TAIZ where ID= '+#39+HtID+#39);
                      Prepared;
                      Open;
                      if RecordCount>0 then begin
                         result := true;
                      end else result := false;
                 end;
           end;

         procedure InitStringGrid;
           begin
                with StringGrid1 do begin
                    ColCount := 3;
                    RowCount := ADOQuery3.RecordCount+1;
                    Cols[0].Add('项目名称');
                    ColWidths[0] :=200;
                    Cols[1].Add('合同金额');
                    ColWidths[1] :=80;
                    Cols[2].Add('已付金额');
                    ColWidths[2] :=80;

                end;

           end;
  var i : integer;
  begin
    InitStringGrid;
    with ADOQuery3 do
         begin
              First;
              i:=1;
              while not eof do
                    begin
                         if FindData(FieldByName('ID').AsString,ADOQuery4) then begin
                            WriteStringGrid(i,ADOQuery4.FieldByName('Name').AsString,'¥'+ADOQuery4.FieldByName('HtJE').AsString,'¥'+ADOQuery4.FieldByName('JINE之SUM').AsString);
                         end else
                            WriteStringGrid(i,ADOQuery3.FieldByName('Name').AsString,'¥'+ADOQuery3.FieldByName('HtJE').AsString,'¥0');
                         i:=i+1;
                         Next;
                    end;
         end;
  end;

var sql : string;
begin
    sql := ' select * from TAIZ ';
    if HeTong_GetQueryData(Sql,AdoQuery3) then
       TongJi;
end;

procedure TfrmWJ_TaiZ.TabSheet2Show(Sender: TObject);
begin
  {if ValueListEditor1.RowCount=1 then begin
     HtTongJi('合同台帐统计表','');
     HtFuKuanTongJi;
  end;}
end;

procedure TfrmWJ_TaiZ.SpeedButton8Click(Sender: TObject);
var Title,SqlText : string;
begin
   if TongJCondition(Title,SqlText ) then
      HtTongJi(Title,SqlText);
      HtFuKuanTongJi;
end;

end.

⌨️ 快捷键说明

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