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

📄 inv_monthreport.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
unit Inv_MonthReport;

Interface   

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Qry, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
  StdCtrls, ExtCtrls, ComCtrls, ToolWin;

Type
  TFrm_Inv_MonthReport = Class(TFrm_Base_Qry)
    AdODataSet1: TAdODataSet;
    AdoQry_MainClassCode: TStringField;
    AdoQry_Mainlm: TFloatField;
    AdoQry_Mainr1: TFloatField;
    AdoQry_Mainr2: TFloatField;
    AdoQry_Mainr3: TFloatField;
    AdoQry_Mainr4: TFloatField;
    AdoQry_Mainr5: TFloatField;
    AdoQry_Mainr6: TFloatField;
    AdoQry_Mainr7: TFloatField;
    AdoQry_Mainrj: TFloatField;
    AdoQry_Mainc1: TFloatField;
    AdoQry_Mainc2: TFloatField;
    AdoQry_Mainc3: TFloatField;
    AdoQry_Mainc4: TFloatField;
    AdoQry_Mainc5: TFloatField;
    AdoQry_Mainc6: TFloatField;
    AdoQry_Maincj: TFloatField;
    AdoQry_Mainbl: TFloatField;
    AdODataSet1ClassCode: TStringField;
    AdODataSet1lm: TFloatField;
    AdODataSet1r1: TFloatField;
    AdODataSet1r2: TFloatField;
    AdODataSet1r3: TFloatField;
    AdODataSet1r4: TFloatField;
    AdODataSet1r5: TFloatField;
    AdODataSet1rj: TFloatField;
    AdODataSet1c1: TFloatField;
    AdODataSet1c2: TFloatField;
    AdODataSet1c3: TFloatField;
    AdODataSet1c4: TFloatField;
    AdODataSet1c5: TFloatField;
    AdODataSet1cj: TFloatField;
    AdODataSet1bl: TFloatField;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    Label5: TLabel;
    Edit5: TEdit;
    Label6: TLabel;
    Edit6: TEdit;
    Label7: TLabel;
    Edit7: TEdit;
    Label8: TLabel;
    Edit8: TEdit;
    Edit9: TEdit;
    Label9: TLabel;
    Label10: TLabel;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    Edit13: TEdit;
    Edit14: TEdit;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    procedure Act_FilterExecute(Sender: TObject);
    procedure AdODataSet1AfterOpen(DataSet: TDataSet);
  private
    { Private declarations }
  public
    procedure getData;Override;
    procedure InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);Override;
    procedure initReport;Override;
    { Public declarations }
  end;

var
  Frm_Inv_MonthReport: TFrm_Inv_MonthReport;

implementation

uses Inv_MonthReport_C,Sys_Global;
{$R *.DFM}
procedure TFrm_Inv_MonthReport.getData;
begin
  try
    Adodataset1.Close;
    Adodataset1.CommandTimeout :=0;
    Adodataset1.CommandText:=Condition ;
    Adodataset1.Open ;
  except
   DispInfo('tmd',1);
     DispInfo('数据连接失败!请重试!',3);
  {
    begin
      with AdoQry_tmp do
      begin
        Close;
        sql.clear;
        sql.Add('drop table #tmp1 drop table #tmp3');
        execsql;
      end;
      DispInfo('数据连接失败!请重试!',3);
    end
  }
  end;
end;

procedure TFrm_Inv_MonthReport.InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);
var
  M:integer;
  titlecuttop,titlecutdown:string;
begin
  inherited;
  AmountFields:='lm,r1,r2,r3,r4,r5,rj,c1,c2,c3,c4,c5,cj,bl,';
  Adodataset1.Connection :=AdOConnection ;
{
  lbl_Order.Caption:='物料类别';
  with dbgrideh do
  begin
    Columns.Add;
    Columns[0].FieldName:='ClassCodeName';
    Columns[0].Width:=110;
    Columns[0].Title.Caption:='类别标识';

    Columns.Add;
    Columns[1].FieldName:='lm';
    Columns[1].Width:=70;
    Columns[1].Title.Caption:='期初结存';
  end;
  }
  Frm_Sys_Condition:=TFrm_Inv_MonthReport_C.Create(Self);
  TFrm_Inv_MonthReport_C(Frm_Sys_Condition).InitForm(UserCode,ModuleCode,LoginDate);
  Act_Filter.Execute;
end;

procedure TFrm_Inv_MonthReport.Act_FilterExecute(Sender: TObject);
begin
  Adodataset1.DisableControls ;
  inherited;
  Adodataset1.EnableControls ;
end;

procedure TFrm_Inv_MonthReport.initReport;
var
   i:integer;
   userName:string;
begin
  inherited;
  with AdoQry_tmp do
  begin
    Close;
    sql.Text:='select * from Employee where EmployeeCode='''+userCode+'''';
    open;
    userName:=fieldbyname('EmployeeName').asstring;
  end;
  ExtprintReport.Foot1:='制表:'+userName+'                 审核';
//  ExtprintReport.subtitle1:=Lbl_Condition.Caption;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('lm')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('r1')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('r2')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('r3')].sum:=True;

  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('r4')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('r5')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('rj')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('c1')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('c2')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('c3')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('c4')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('c5')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('cj')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('bl')].sum:=True;
//  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('C9999')].sum:=True;
end;

procedure TFrm_Inv_MonthReport.AdODataSet1AfterOpen(DataSet: TDataSet);
var
  sql_txt:string;
  i:integer;
  sumAmountlm,sumAmountr1,sumAmountr2,sumAmountr3,sumAmountr4,sumAmountr5,
  sumAmountrj,sumAmountc1,sumAmountc2,sumAmountc3,sumAmountc4,sumAmountc5,
  sumAmountcj,sumAmountbl:real;
begin
  inherited;
  sumAmountlm:=0;
  sumAmountr1:=0;
  sumAmountr2:=0;
  sumAmountr3:=0;
  sumAmountr4:=0;
  sumAmountr5:=0;
  sumAmountrj:=0;
  sumAmountc1:=0;
  sumAmountc2:=0;
  sumAmountc3:=0;
  sumAmountc4:=0;
  sumAmountc5:=0;
  sumAmountcj:=0;
  sumAmountbl:=0;
  //汇总金额
  If Not AdODataSet1.IsEmpty then
  begin
    AdODataSet1.DisableControls;
    AdODataSet1.First;
    for I:=0 to AdODataSet1.RecordCount-1 do
    begin
      sumAmountlm:=sumAmountlm+AdODataSet1.fieldbyname('lm').asFloat;
      sumAmountr1:=sumAmountr1+AdODataSet1.fieldbyname('r1').asFloat;
      sumAmountr2:=sumAmountr2+AdODataSet1.fieldbyname('r2').asFloat;
      sumAmountr3:=sumAmountr3+AdODataSet1.fieldbyname('r3').asFloat;
      sumAmountr4:=sumAmountr4+AdODataSet1.fieldbyname('r4').asFloat;
      sumAmountr5:=sumAmountr5+AdODataSet1.fieldbyname('r5').asFloat;
      sumAmountrj:=sumAmountrj+AdODataSet1.fieldbyname('rj').asFloat;
      sumAmountc1:=sumAmountc1+AdODataSet1.fieldbyname('c1').asFloat;
      sumAmountc2:=sumAmountc2+AdODataSet1.fieldbyname('c2').asFloat;
      sumAmountc3:=sumAmountc3+AdODataSet1.fieldbyname('c3').asFloat;
      sumAmountc4:=sumAmountc4+AdODataSet1.fieldbyname('c4').asFloat;
      sumAmountc5:=sumAmountc5+AdODataSet1.fieldbyname('c5').asFloat;
      sumAmountcj:=sumAmountcj+AdODataSet1.fieldbyname('cj').asFloat;
      sumAmountbl:=sumAmountbl+AdODataSet1.fieldbyname('bl').asFloat;
      AdODataSet1.next;
    end;
    AdODataSet1.First;
    AdODataSet1.enableControls;
  end;
  edit1.text:=FormatFloat('#.##',SumAmountlm);
  edit2.text:=FormatFloat('#.##',SumAmountr1);
  edit3.text:=FormatFloat('#.##',SumAmountr2);
  edit4.text:=FormatFloat('#.##',SumAmountr3);
  edit5.text:=FormatFloat('#.##',SumAmountr4);
  edit6.text:=FormatFloat('#.##',SumAmountr5);
  edit7.text:=FormatFloat('#.##',SumAmountrj);
  edit8.text:=FormatFloat('#.##',SumAmountc1);
  edit9.text:=FormatFloat('#.##',SumAmountc2);
  edit10.text:=FormatFloat('#.##',SumAmountc3);
  edit11.text:=FormatFloat('#.##',SumAmountc4);
  edit12.text:=FormatFloat('#.##',SumAmountc5);
  edit13.text:=FormatFloat('#.##',SumAmountcj);
  edit14.text:=FormatFloat('#.##',SumAmountbl);
end;

end.

⌨️ 快捷键说明

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