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

📄 conbrowse.~pas

📁 书籍类别(种类编号
💻 ~PAS
📖 第 1 页 / 共 5 页
字号:
         end;
         //////////////////////////////////////////////////////////////////////////////////////////
            if Edit12.Text ='' then begin
            ShowMessage('    请填写审计前金额!!!');
            Exit;
            end;
         ///////////////////////////////////////////////////////////////////////////////////////////

         DM.ADOQuery7.Close;
         DM.ADOQuery7.SQL.Clear;
         DM.ADOQuery7.SQL.Add('select * from detail where conNumber='''+Edit18.Text+''' and marking=1') ;
         DM.ADOQuery7.Open;
         //字段 marking = 2 表示审计*后*价款
         //字段 marking = 1 表示审计审计*前*金额
         if DM.ADOQuery7.RecordCount>0  then
         begin
         if MessageDlg('已经添加过审计*前*金额,还要继续添加吗?',mtConfirmation, [mbYes, mbNo], 0)= mrNo then   exit;
         aa:=10;
         DM.ADOQuery7.Close;
         DM.ADOQuery7.SQL.Clear;
         DM.ADOQuery7.SQL.Add('select sum(daifang) as dai from detail where conNumber='''+Edit18.Text+''' and marking=1') ;
         DM.ADOQuery7.Open;
         //把审计前金额求和
         dai_bf:=DM.ADOQuery7.FieldValues['dai'];
         //把审计*前*金额求和
         end;
         end ;
 ////////////////////////////////////////////////////////////////////////////////////////////////////


  if radiobutton2.Checked=true then begin   //如果添加过审计后价款
                    if Edit13.Text ='' then begin
                    ShowMessage('    请填写审计*后*价款!!!');
                    Exit;
                    end;
         DM.ADOQuery7.Close;
         DM.ADOQuery7.SQL.Clear;
         DM.ADOQuery7.SQL.Add('select * from detail where conNumber='''+Edit18.Text+''' and marking=2') ;
         DM.ADOQuery7.Open;
         //字段 marking = 2 表示审计*后*价款
         //字段 marking = 1 表示审计审计*前*金额
         ///////////////////////////////////////////////////
           if DM.ADOQuery7.RecordCount>0  then
             begin
             if MessageDlg('已经添加过审计*后*金额,还要继续添加吗?',mtConfirmation, [mbYes, mbNo], 0)= mrNo then   exit;
             DM.ADOQuery7.Close;
             DM.ADOQuery7.SQL.Clear;
             DM.ADOQuery7.SQL.Add('select sum(daifang) as sjh from detail where conNumber='''+Edit18.Text+''' and marking=2') ;
             DM.ADOQuery7.Open;
             //把审计*后*价款求和
             shenjihou:=DM.ADOQuery7.FieldValues['sjh'];
             end;
         ////////////////////////////////////////////////////
         DM.ADOQuery7.Close;
         DM.ADOQuery7.SQL.Clear;
         DM.ADOQuery7.SQL.Add('select * from detail where conNumber='''+Edit18.Text+''' and marking=1') ;
         DM.ADOQuery7.Open;

         if DM.ADOQuery7.RecordCount=0  then exit;//如果没有添加审计*前*金额不能添加审计*后*价款

         end;

  DM.ADOQuery7.Close;
  DM.ADOQuery7.SQL.Clear;
  DM.ADOQuery7.SQL.Add('select * from detail') ;
  DM.ADOQuery7.Open;

  
         DM.ADOQuery7.Append;
         DM.ADOQuery7.Edit;
  if radiobutton1.Checked=true then
             begin //选择审计前金额
                  if aa=0 then begin
                  DM.ADOQuery7.FieldValues['daifang']:=Edit12.Text;
                  DM.ADOQuery7.FieldValues['marking']:='1';
                  DM.ADOQuery7.FieldValues['remain']:=Edit12.Text;
                  end else begin
         DM.ADOQuery7.FieldValues['daifang']:=Edit12.Text;
         DM.ADOQuery7.FieldValues['marking']:='1';
         DM.ADOQuery7.FieldValues['MarkingContent']:='审计前金额';
         DM.StructADOQuery.Close;
         DM.StructADOQuery.SQL.Clear;
         DM.StructADOQuery.SQL.Add('select * from detail where conNumber='''+Edit18.Text+''' and marking=0 ') ;
         DM.StructADOQuery.Open;
         
             if DM.StructADOQuery.RecordCount = 0 then
             //如果没有还款就添加审计后金额,余额等于审计后价款
             DM.ADOQuery7.FieldValues['remain']:=floattostr(strtofloat(Edit12.Text)+strtofloat(dai_bf))
             else  begin
            DM.StructADOQuery.Close;
            DM.StructADOQuery.SQL.Clear;
            DM.StructADOQuery.SQL.Add('select sum(jiefang) as jie from detail where conNumber='''+Edit18.Text+''' and marking=0 ') ;
            DM.StructADOQuery.Open;
            fu:=DM.StructADOQuery.FieldValues['jie'];
            //DM.ADOQuery7.FieldValues['remain']:=floattostr(strtofloat(Edit12.Text)+strtofloat(dai_bf)-strtofloat(fu));
              DM.ADOQuery7.FieldValues['remain']:=Format('%8.2f',[strtofloat(Edit12.Text)+strtofloat(dai_bf)-strtofloat(fu)]);
                   end;
                   end;
         end else begin
         //选择审计价款
         DM.StructADOQuery.Close;
         DM.StructADOQuery.SQL.Clear;
         DM.StructADOQuery.SQL.Add('select * from detail where conNumber='''+Edit18.Text+''' and marking=0 ') ;
         DM.StructADOQuery.Open;
         if DM.StructADOQuery.RecordCount=0 then
         //如果没有还款就添加审计金额,余额等于审计后价款
         DM.ADOQuery7.FieldValues['remain']:=floattostr(strtofloat(Edit13.Text)+strtofloat(shenjihou))
          else  begin
         DM.StructADOQuery.Close;
         DM.StructADOQuery.SQL.Clear;
         DM.StructADOQuery.SQL.Add('select sum(jiefang) as jie from detail where conNumber='''+Edit18.Text+''' and marking=0 ') ;
         DM.StructADOQuery.Open;
         fu:=DM.StructADOQuery.FieldValues['jie'];
        //DM.ADOQuery7.FieldValues['remain']:=floattostr(strtofloat(Edit13.Text)+strtofloat(shenjihou)-strtofloat(fu));
         DM.ADOQuery7.FieldValues['remain']:=Format('%8.2f',[strtofloat(Edit13.Text)+strtofloat(shenjihou)-strtofloat(fu)]);
         end;
         
         DM.ADOQuery7.FieldValues['daifang']:=Edit13.Text;
         DM.ADOQuery7.FieldValues['marking']:='2';
         DM.ADOQuery7.FieldValues['MarkingContent']:='审计后价款';
         end;
         DM.ADOQuery7.FieldValues['ConNumber']:=Edit18.Text;
         DM.ADOQuery7.FieldValues['JorD']:='贷';
         DM.ADOQuery7.FieldValues['remark']:=Edit15.Text;
         DM.ADOQuery7.FieldValues['adddate']:=DateToStr(DateTimePicker3.Date);
         DM.ADOQuery7.Post;
         ShowMessage('资料添加成功!!!');
         Edit12.Text:='';
         Edit13.Text:='';
  DM.detail.Close;
  DM.detail.Open;
  
end;





procedure TConForm.RzBitBtn3Click(Sender: TObject);
var
BIDD :integer;
begin
 if edit2.Text='' then exit;
 if (DM.detail.RecNo = 1) and (DM.detail.RecordCount>1) then
  begin  // 如果有其它记录不能把审记前金额都删除
  ShowMessage('目前还不能删除此审记*前*金额记录!');
  exit;
  end;
 if DBgrid2.SelectedField.DataSet.FieldValues['ID']<>null  then begin
    BIDD:=DBgrid2.SelectedField.DataSet.FieldValues['ID'];
    with DM do
    begin
      ADOQuery7.Close;
      ADOQuery7.SQL.Clear;
      ADOQuery7.SQL.Add('delete detail where ID='+IntToStr(BIDD));
      if MessageDlg('确定要删除吗?',mtConfirmation, [mbYes, mbNo], 0)= mrYes then begin
        ADOQuery7.ExecSQL;
        ShowMessage('数据删除成功!!!');
        detail.Close;
        detail.Open;
        label13.Caption:='共计 '+inttostr(detail.RecordCount)+' 条记录  ';
      end
      else
        Exit;
    end;
end;
RefreshFinance;//更新财务记录
end;

procedure TConForm.RzBitBtn2Click(Sender: TObject);
var
dd:integer;
begin
   if MessageDlg('确定要修改吗?',mtConfirmation, [mbYes, mbNo], 0)= mrNo then Exit;

   DD:=dbgrid2.SelectedField.DataSet.FieldValues['ID'];
 if Edit14.Text ='' then begin
    ShowMessage('    请选择列表!!!');
    Exit;
  end;
    if Edit19.Text ='' then begin
    ShowMessage('    请选择列表!!!');
    Exit;
  end;
  DM.ADOQuery7.Close;
  DM.ADOQuery7.SQL.Clear;
  if radiobutton3.Checked=true then begin
    if Edit16.Text ='' then begin
    ShowMessage('    请选择列表!!!');
    Exit;
    end;
  DM.ADOQuery7.SQL.Add('update detail set daifang='''+Edit16.Text+
  ''',remark='''+Edit19.Text+''',adddate='''+DateToStr(DateTimePicker4.Date)+''' where id='+inttostr(DD)) ;
  end else begin
   if Edit17.Text ='' then begin
    ShowMessage('    请选择列表!!!');
    Exit;
  end;
  DM.ADOQuery7.SQL.Add('update detail set daifang='''+Edit17.Text+
  ''',remark='''+Edit19.Text+''',adddate='''+DateToStr(DateTimePicker4.Date)+''' where id='+inttostr(DD)) ;

  end;
  DM.ADOQuery7.ExecSQL;
  ShowMessage('修改成功!!!');
  DM.detail.Close;
  DM.detail.Open;
  RefreshFinance;//更新财务记录
end;

procedure TConForm.Button5Click(Sender: TObject);//财务表
var
 i,j,m,n,h,g,d1,d2,s1,s2:integer;
 s,bh1,bh2,bh3,bh4,bh5:string;
 Excelid,xl: Variant;
begin
if edit2.Text='' then exit;
 try
    Excelid:=CreateOleObject( 'Excel.Application' );
  except
    on Exception do raise exception.Create('无法创建Xls文件,请确认是否安装EXCEL')
  end;
   Excelid.Visible := True;
   Excelid.WorkBooks.Add;
   Excelid.Caption :='工程款支付明细帐';
  Excelid.worksheets[1].range['A1:H1'].Merge(True);
  Excelid.worksheets[1].range['A3:H3'].Merge(True);
  //DBGrid1.SelectedField.DataSet.FieldValues['RID'];
  Excelid.WorkSheets[1].Cells[1,1].Value :=FormatDateTime('yyyy',DBGrid1.SelectedField.DataSet.FieldValues['signtime'])+'年工程款支付明细帐' ;
  Excelid.WorkSheets[1].Cells[3,1].Value :=stitle+'   (合同编号:'+Edit2.Text+')' ;
  Excelid.worksheets[1].range['A1:H1'].HorizontalAlignment := $FFFFEFF4;
  Excelid.worksheets[1].range['A4:H20'].HorizontalAlignment := $FFFFEFF4;
  Excelid.worksheets[1].range['A1:H1'].VerticalAlignment := $FFFFEFF4;
  Excelid.worksheets[1].range['A4:H20'].VerticalAlignment := $FFFFEFF4;
  Excelid.worksheets[1].Columns[1].ColumnWidth := 10;
  Excelid.worksheets[1].Columns[2].ColumnWidth := 15;
  Excelid.worksheets[1].Columns[3].ColumnWidth := 10;
  Excelid.worksheets[1].Columns[4].ColumnWidth := 20;
  Excelid.worksheets[1].Columns[5].ColumnWidth := 15;
  Excelid.worksheets[1].Columns[6].ColumnWidth := 15;
  Excelid.worksheets[1].Columns[7].ColumnWidth := 10;
  Excelid.worksheets[1].Columns[8].ColumnWidth := 15;

  //**************************************************************************************************
  i:=4;


  Excelid.WorkSheets[1].Cells[i,1].Value := '序     号';
  Excelid.WorkSheets[1].Cells[i,2].Value := '日     期';
  Excelid.WorkSheets[1].Cells[i,3].Value := '记帐凭'+char(10)+'证号数';
  Excelid.WorkSheets[1].Cells[i,4].Value := '摘     要';
  Excelid.WorkSheets[1].Cells[i,5].Value := '借     方';
  Excelid.WorkSheets[1].Cells[i,6].Value := '贷     方';
  Excelid.WorkSheets[1].Cells[i,7].Value := '借或贷';
  Excelid.WorkSheets[1].Cells[i,8].Value := '余     额';

  Excelid.worksheets[1].Range['A1:H7'].Font.Name := '宋体';
  Excelid.worksheets[1].Range['A1:H1'].Font.Size := 14;
  Excelid.worksheets[1].range['A1:H4'].font.bold:=true;
  Excelid.worksheets[1].Range['A2:H4'].Font.Size := 10;


//  Excelid.worksheets[1].Range['A2:M3'].EntireColumn.Autofit;
//  Excelid.worksheets[1].Range['A2:M3'].EntireColumn.OutLine;
//  Excelid.worksheets[1].StyleColumnWidth := cwEnhAutoFit;
  //*****************************************************************************************
  Excelid.ActiveSheet.Rows[1].RowHeight := 1/0.035;
//*****************************************************************************************
  i:=5;
  DM.detail.First;
  while not DM.detail.Eof do
    begin
      Excelid.WorkSheets[1].Cells[i,2].Value := char(10);     //项目名称
      Excelid.WorkSheets[1].Cells[i,2].Value := DM.detail.FieldByName('AddDate').AsString;
      Excelid.WorkSheets[1].Cells[i,3].Value := char(10);     //单位名称
      Excelid.WorkSheets[1].Cells[i,3].Value := DM.detail.FieldByName('jzpz').AsString;
      Excelid.WorkSheets[1].Cells[i,4].Value := DM.detail.FieldByName('remark').AsString;
      Excelid.WorkSheets[1].Cells[i,5].Value := DM.detail.FieldByName('jiefang').AsString;
      Excelid.WorkSheets[1].Cells[i,6].Value := DM.detail.FieldByName('daifang').AsString;
      Excelid.WorkSheets[1].Cells[i,7].Value := DM.detail.FieldByName('jord').AsString;
      Excelid.WorkSheets[1].Cells[i,8].Value := DM.detail.FieldByName('remain').AsString;


      Excelid.WorkSheets[1].Cells[i,1].Value := i-4;
      i:=i+1;
      DM.detail.Next;

      s := 'A4:H'+ IntToStr(i-1);
      Excelid.worksheets[1].Range[s].Borders.LineStyle := 1; //添加边框
    end;
       //Excelid.ActiveSheet.PageSetup.FitToPagesWide;
       Excelid.ActiveSheet.PageSetup.Orientation:=2;  //页面方向:横向
       Excelid.ActiveSheet.PageSetup.PrintTitleRows:='$1:$4'; //表头为1-3行
      // Excelid.worksheets[1].Range['A2:M3'].HasArray ;
      // Excelid.ActiveSheet.PageSetup.PaperSize:=5;    //纸张大小
end;

procedure TConForm.RadioButton2Click(Sender: TObject);
begin
if radiobutton2.Checked=true then  begin
  Edit12.Enabled:=false;
  Edit13.Enabled:=true;
 end else begin
  Edit13.Enabled:=false;
  Edit12.Enabled:=true;
  end;
end;

procedure TConForm.RadioButton1Click(Sender: TObject);
begin
if radiobutton2.Checked=true then  begin
  Edit12.Enabled:=false;
  Edit13.Enabled:=true;
 end else begin
  Edit13.Enabled:=false;
  Edit12.Enabled:=true;
  end;
end;


procedure TConForm.DBGrid1TitleClick(Column: TColumn);
begin
if NOT arrange then begin
   DM.AdoQuery2.Sort:=Column.FieldName+' ASC';//递增排列    ' DESC'; //递减排列
   arrange:=TRUE;
end else begin
   DM.AdoQuery2.Sort:=Column.FieldName+' DESC';
   Arrange:=FALSE;
end;
   m_Sort:= DM.AdoQuery2.Sort;
end;
procedure TConForm.ToolButton5Click(Sender: TObject);
begin
ConForm.FormShow(Sender);
end;

procedure TConForm.Label9Click(Sender: TObject);
begin
  with DM do
    begin
      ADOQuery3.Close;
      ADOQuery3.SQL.Clear;
      ADOQuery3.SQL.Add('select * from detail' );
      ADOQuery3.Open;
      while not ADOQuery3.Eof do
      begin
      ADOQuery3.Prepared:=true;
      ADOQuery3.Edit;
      if ADOQuery3.FieldValues['Marking']='0' then
      ADOQuery3.FieldValues['MarkingContent']:='还款';

      if ADOQuery3.FieldValues['Marking']='1' then
      ADOQuery3.FieldValues['MarkingContent']:='审计前金额';

      if ADOQuery3.FieldValues['Marking']='2' then
      ADOQuery3.FieldValues['MarkingContent']:='审计后价款';
      ADOQuery3.Post;
      ADOQuery3.Next;
      end;
      end;
     ShowMessage('成功');
end;

end.

⌨️ 快捷键说明

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