bbckkchz.pas
来自「IT业进销存管理系统源代码Delphi」· PAS 代码 · 共 110 行
PAS
110 行
unit BbCkkcHz;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComTjfx, ActnList, Menus, TeeProcs, TeEngine, Chart, DBChart, ComCtrls,
DBCtrls, ToolWin, ExtCtrls, StdCtrls, Grids, DBGrids, Series;
type
TfrmBbCkkcHz = class(TfrmComTjfx)
Series1: TPieSeries;
labCk: TLabel;
procedure FormShow(Sender: TObject);override;
procedure OpendataSet;override;
procedure aMxExecute(Sender: TObject);override;
procedure aFxtExecute(Sender: TObject);override;
private
{ Private declarations }
public
{ Public declarations }
intCKID: integer;
dteRQA, dteRQB: TDate;
end;
var
frmBbCkkcHz: TfrmBbCkkcHz;
implementation
uses Dm, DmBb, CkRqd, BbCkkcMx, MyLib, Common;
{$R *.DFM}
procedure TfrmBbCkkcHz.FormShow(Sender: TObject);
begin
labCK.Caption := '仓库: ' + frmCkRqd.ComboBox1.Text;
intCKID := GetFieldValue('select ID from CK where MC = ''' + frmCkRqd.ComboBox1.Text + '''');
dteRQA := frmCkRqd.dtpRqa.Date;
dteRQB := frmCkRqd.dtpRqb.Date;
labTj.Caption := '统计日期: ' +
FormatDateTime(LongDateFormat, dteRQA) + ' 至 ' +
FormatDateTime(LongDateFormat, dteRQB);
inherited;
end;
procedure TfrmBbCkkcHz.OpendataSet;
var
strSqlHP, strSqlJC, strSqlTJ: string;
strSumQC, strSumBQ: string;
D1: string;
begin
//货品期初 ID, BH, PM, DW, QCS1, QCJE1
strSqlHP := GetSqlHpqc(intCKID, 0);
//进出数
D1 := FormatDateTime('yyyy-mm-dd', dteRQA);
strSumQc := 'iif(RQ < #%s#, %s, 0)';
strSumBq := 'iif(M.JCLX = %d and RQ >= #%s#, %s, 0)';
strSqlJC :=
'select HPID, ' +
'sum(' + Format(strSumQC, [D1, 'SL1']) + ') as QCJCSL, ' +
'sum(' + Format(strSumQC, [D1, 'SL1 * DJ1']) + ') as QCJCJE, ' +
'sum(' + Format(strSumBQ, [1, D1, 'SL1']) + ') as BQSRSL, ' +
'sum(' + Format(strSumBQ, [1, D1, 'SL1 * DJ1']) + ') as BQSRJE, ' +
'sum(' + Format(strSumBQ, [2, D1, 'SL1']) + ') as BQFCSL, ' +
'sum(' + Format(strSumBQ, [2, D1, 'SL1 * DJ1']) + ') as BQFCJE ' +
'from (' + GetSqlJcmx(0, dteRQB, intCKID, 0) + ') M ' +
'group by HPID';
strSqlTJ :=
'select H.ID, H.BH, H.PM, H.DW, ' +
'H.QCS1 + iif(isnull(J.QCJCSL), 0, J.QCJCSL) as SLA, ' +
'H.QCJE1 + iif(isnull(J.QCJCJE), 0, J.QCJCJE) as JEA, ' +
'iif(isnull(J.BQSRSL), 0, J.BQSRSL) as SLB, ' +
'iif(isnull(J.BQSRJE), 0, J.BQSRJE) as JEB, ' +
'iif(isnull(J.BQFCSL), 0, -J.BQFCSL) as SLC, ' +
'iif(isnull(J.BQFCJE), 0, -J.BQFCJE) as JEC, ' +
'SLA + SLB - SLC AS SLD, ' +
'JEA + JEB - JEC AS JED ' +
'from (' + strSqlHP + ') as H, (' + strSqlJC + ') J, H left join J on H.ID = J.HPID';
dsJbzl.Close;
dsJbzl.CommandText :=
'select * ' +
'from (' + strSqlTJ + ') H ' +
'where SLA <> 0 or SLB <> 0 or SLC <> 0 or SLD <> 0 ' +
'order by BH';
inherited;
end;
procedure TfrmBbCkkcHz.aMxExecute(Sender: TObject);
begin
frmBbCkkcMx := TfrmBbCkkcMx.Create(Application);
with frmBbCkkcMx do
begin
intCKID := self.intCKID;
intHPID := dsJbzl.FieldByName('ID').AsInteger;
dteRQA := self.dteRQA;
dteRQB := self.dteRQB;
ShowModal;
Free;
end;
end;
procedure TfrmBbCkkcHz.aFxtExecute(Sender: TObject);
begin
{ TODO : pdddy }
ShowMessage('todo 盘点表打印');
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?