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

📄 inv_importsumqry_c.pas

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

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Condition, Db, AdODB, StdCtrls, Mask, ExtEdit;

Type
  TFrm_Inv_ImportSumQry_C = Class(TFrm_Base_Condition)
    Label2: TLabel;
    MEdt_Month: TMaskEdit;
    Label1: TLabel;
    MEdt_Month1: TMaskEdit;
    procedure btn_okClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure MEdt_Month1Exit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_Inv_ImportSumQry_C: TFrm_Inv_ImportSumQry_C;

implementation

uses Sys_Global;

{$R *.DFM}

procedure TFrm_Inv_ImportSumQry_C.btn_okClick(Sender: TObject);
begin
  inherited; // 按月份、物料代码汇总 数量、金额,再计算出单价(当数量<>0时,否则单价=0)
  Condition:='Select InvInBillLine.ItemCode'
    +',Item.ItemName'
    +',InvInBillLine.ItemCode+'' ''+Item.ItemName As ItemCodeName'
    +',Uom.UomName'
    +',InvInBill.CurrencyCode'
    +',Currency.CurrencyName'
    +',InvInBill.CurrencyCode+'' ''+Currency.CurrencyName As CurrencyCodeName' 
    +',Sum(InvInBillLine.InvBillQty) As AInvBillQty'
    +',(Case Sum(InvInBillLine.InvBillQty) When 0 Then 0'
    +' Else Sum(InvInBillLine.InvBillNoTaxAmountC)/Sum(InvInBillLine.InvBillQty) end)'
    +' As AInvBillNoTaxPriceC'
    +',Sum(InvInBillLine.InvBillNoTaxAmountC) As AInvBillNoTaxAmountC'
    +',(Case Sum(InvInBillLine.InvBillQty) When 0 Then 0'
    +' Else Sum(InvInBillLine.InvBillNoTaxAmount)/Sum(InvInBillLine.InvBillQty) end)'
    +' As AInvBillNoTaxPrice'
    +',Sum(InvInBillLine.InvBillNoTaxAmount) As AInvBillNoTaxAmount'
    +' From InvInBillLine Join InvInBill On InvInBillLine.InvBillId=InvInBill.InvBillId'
    +' Join Currency On InvInBill.CurrencyCode=Currency.CurrencyCode'
    +' Join Item On InvInBillLine.ItemCode=Item.ItemCode'
    +' Join Uom On Item.UomCode=Uom.UomCode'
    +' Where InvInBill.BillTypeCode=''0102'''
    +' And InvInBill.InvBillMonth Between '''+MEdt_Month.Text+''' And '''+MEdt_Month1.Text+''''
    +' And InvInBill.InvBillStkChck=1'
    +' Group By InvInBillLine.ItemCode,Item.ItemName,Uom.UomName,InvInBill.CurrencyCode,Currency.CurrencyName';
  ModalResult:=mrOk;
end;

procedure TFrm_Inv_ImportSumQry_C.FormCreate(Sender: TObject);
begin
  inherited;
  MEdt_Month.Text:=FormatDateTime('yyyy.mm',IncMonth(Now,-1));
  MEdt_Month1.Text:=FormatDateTime('yyyy.mm',Now);
end;

procedure TFrm_Inv_ImportSumQry_C.MEdt_Month1Exit(Sender: TObject);
begin
  inherited;
  MonthCheck(Sender);
  if StrToDateTime(MEdt_Month.Text+'.01')>StrToDateTime(MEdt_Month1.Text+'.01')then
  begin
    DispInfo('查询终止月份不能小于起始月份!',3);
    TWinControl(Sender).SetFocus;
    Abort;
  end;
end;

end.

⌨️ 快捷键说明

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