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

📄 inv_mnoutsumqry1.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
unit Inv_MnOutSumQry1;
//程序员:
Interface

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

Type
  TFrm_Inv_MnOutSumQry1 = Class(TFrm_Base_Qry)
    Lab_Amount: TLabel;
    edt_Amount: TEdit;
    AdoQry_MainIte_ItemCode: TStringField;
    AdoQry_MainItemName: TStringField;
    AdoQry_MainIte_ItemFlag: TStringField;
    AdoQry_MainItemCode: TStringField;
    AdoQry_MainItemName_1: TStringField;
    AdoQry_MainItemFlag: TStringField;
    AdoQry_MainInvBillQty: TFloatField;
    AdoQry_MainPrice: TFloatField;
    AdoQry_MainInvBillNotTaxAmount: TFloatField;
    AdoQry_MainItemCodeFlag: TStringField;
    procedure AdoQueryAfterOpen(DataSet: TDataSet);
    procedure DBGridEhGetCellParams(
              Sender: TObject; Column: TColumnEh;
              AFont: TFont; var Background: TColor;
              State: TGridDrawState);
    procedure Act_FilterExecute(Sender: TObject);
  private
    ShowExtend:boolean;
    { Private declarations }
  public
    procedure getData;Override;
    procedure InitReport;Override;
    procedure InitForm(AdOConnection:TAdOConnection;
                       ShowExtendColumn:Boolean);Override;
    { Public declarations }

  end;

var
  Frm_Inv_MnOutSumQry1: TFrm_Inv_MnOutSumQry1;

implementation

uses Inv_MnOutSumQry_C1;
{$R *.DFM}
procedure TFrm_Inv_MnOutSumQry1.getData;
begin
  AdoQry_Main.Close;
  AdoQry_Main.sql.clear;
  AdoQry_Main.sql.text:=condition;
  AdoQry_Main.Open;
  AdoQry_Main.Sort:='ItemCode';
end;

procedure TFrm_Inv_MnOutSumQry1.InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);
begin
  inherited;
  AmountFields:='InvBillnotaxAmount,';
  PriceFields:='Price,';

  if(not ShowExtendColumn)then
  begin
    DBGridEh.Columns.Delete(8);
    DBGridEh.Columns.Delete(7);
    showextend:=False;
  end
  else
  begin
    ShowExtend:=True;
    Param1:='Amount';
  end;
  lbl_Order.Caption:='子项代码/父项代码';
  Frm_Sys_Condition:=TFrm_Inv_MnOutSumQry_C1.Create(Self);
  TFrm_Inv_MnOutSumQry_C1(Frm_Sys_Condition).InitForm(UserCode,ModuleCode,LoginDate);
  Act_Filter.Execute;
end;

procedure TFrm_Inv_MnOutSumQry1.InitReport;
begin//定义表头
  inherited;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('InvBillqty')].sum:=True;
  ExtprintReport.Headers.Items[ExtprintReport.Headers.indexof('InvBillnotaxAmount')].sum:=True;
end;

procedure TFrm_Inv_MnOutSumQry1.AdoQueryAfterOpen(DataSet: TDataSet);
var
  sql_txt:string;
  i:integer;
  sumAmount:real;
begin
  inherited;
  if ShowExtend then
  begin
    lab_Amount.Visible:=True;
    edt_Amount.Visible:=True;
    sumAmount:=0;
    //计算汇总金额
    If Not AdoQry_Main.IsEmpty then
    begin
      AdoQry_Main.First;
      for I:=0 to AdoQry_Main.RecordCount-1 do
      begin
        If Pos('合计',AdoQry_Main.fieldbyname('Ite_ItemFlag').AsString)>0 then
           SumAmount:=SumAmount+AdoQry_Main.fieldbyname('InvBillnottaxAmount').asFloat;
        AdoQry_Main.next;
      end;
      AdoQry_Main.First;
    end;
    edt_Amount.text:=FormatFloat('#.##',SumAmount);
  end;
end;


procedure TFrm_Inv_MnOutSumQry1.DBGridEhGetCellParams(
          Sender: TObject; Column: TColumnEh;
          AFont: TFont; var Background: TColor;
          State: TGridDrawState);
begin
  inherited;
With AdoQry_Main do
  begin
  If (Pos('合计',fieldbyname('Ite_ItemFlag').AsString)>0 )
       And (Length(Condition)>1300)then
    begin
     BackGround:=$ffccee;
     AFont.Color:=clblack;
    end;
  end;
end;


procedure TFrm_Inv_MnOutSumQry1.Act_FilterExecute(Sender: TObject);
begin
  inherited;
  IF  Length(Condition)<=1262 Then
     DBGridEh.Columns[2].Visible:=False
  Else
     DBGridEh.Columns[2].Visible:=True;

end;


end.

⌨️ 快捷键说明

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