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

📄 dfm_xscx.pas

📁 仓库管理系统 仓库管理系统
💻 PAS
字号:
unit dfm_xscx;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, ComCtrls, DBCtrls, StdCtrls, Buttons, ExtCtrls, DBTables,
  Db, ppModule, daDatMod, ppCtrls, ppVar, ppBands, ppClass, ppPrnabl, ppDB,
  ppProd, ppReport, ppComm, ppRelatv, ppCache, ppDBPipe, ppDBBDE, Mask;

type
  Tdfmxsfx = class(TForm)
    StatusBar1: TStatusBar;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    BitBtn1: TBitBtn;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    Panel2: TPanel;
    Panel3: TPanel;
    DBGrid1: TDBGrid;
    dstposloca: TDataSource;
    tbltposloca: TTable;
    dstposplu: TDataSource;
    qrytpossale: TQuery;
    dsqrysale: TDataSource;
    RadioGroup1: TRadioGroup;
    BitBtn2: TBitBtn;
    ppBDEPipeline1: TppBDEPipeline;
    ppReport1: TppReport;
    ppHeaderBand1: TppHeaderBand;
    ppDetailBand1: TppDetailBand;
    ppLabel1: TppLabel;
    ppGroup1: TppGroup;
    ppGroupHeaderBand1: TppGroupHeaderBand;
    ppGroupFooterBand1: TppGroupFooterBand;
    ppGroup2: TppGroup;
    ppGroupHeaderBand2: TppGroupHeaderBand;
    ppGroupFooterBand2: TppGroupFooterBand;
    ppDBText1: TppDBText;
    ppDBText2: TppDBText;
    ppDBText3: TppDBText;
    ppDBCalc1: TppDBCalc;
    ppDBCalc2: TppDBCalc;
    ppDBCalc3: TppDBCalc;
    ppDBCalc4: TppDBCalc;
    ppLabel2: TppLabel;
    ppLabel3: TppLabel;
    ppLabel4: TppLabel;
    ppDBText4: TppDBText;
    ppLabel5: TppLabel;
    ppLabel6: TppLabel;
    ppDBText5: TppDBText;
    ppLabel7: TppLabel;
    ppLabel8: TppLabel;
    ppLabel9: TppLabel;
    ppLabel10: TppLabel;
    ppLabel11: TppLabel;
    ppLabel12: TppLabel;
    ppLabel13: TppLabel;
    ppSummaryBand1: TppSummaryBand;
    ppLabel14: TppLabel;
    ppLabel15: TppLabel;
    ppDBCalc5: TppDBCalc;
    ppDBCalc6: TppDBCalc;
    ppLine1: TppLine;
    ppLabel17: TppLabel;
    ppDBText6: TppDBText;
    ppLine2: TppLine;
    ppSystemVariable2: TppSystemVariable;
    ppSystemVariable3: TppSystemVariable;
    ppLabel18: TppLabel;
    ppLabel19: TppLabel;
    ppLabel20: TppLabel;
    ppLabel21: TppLabel;
    ppLine3: TppLine;
    ppLabel22: TppLabel;
    ppVariable1: TppVariable;
    ppVariable2: TppVariable;
    ppLabel23: TppLabel;
    ppVariable3: TppVariable;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    tbltposplu: TTable;
    dssumsale: TDataSource;
    sumsale: TQuery;
    DBEdit1: TDBEdit;
    Label5: TLabel;
    Label6: TLabel;
    DBEdit2: TDBEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure totalnum;
    procedure iaskufind;
    procedure iaqtyfind;
    procedure isasal;
    procedure inormal;
    procedure iadatefind;
    procedure BitBtn1Click(Sender: TObject);
    procedure RadioGroup1Click(Sender: TObject);
    procedure ppVariable1Calc(Sender: TObject; var Value: Variant);
    procedure ppVariable2Calc(Sender: TObject; var Value: Variant);
    procedure ppVariable3Calc(Sender: TObject; var Value: Variant);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
//    procedure qrytpossaleCalcFields(DataSet: TDataSet);
//    procedure qrytpossaleAfterOpen(DataSet: TDataSet);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  dfmxsfx: Tdfmxsfx;

implementation

uses dfm_xsqxfx;

{$R *.DFM}

procedure Tdfmxsfx.totalnum;
begin
  with sumsale do
  begin
    close;
    SQL.clear;
    SQL.add('SELECT SUM( SASAL ) tsasal, SUM( SAQTY ) tsaqty FROM dbo.t_possale Dbo_t_possale');
    SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
//    SQL.Add('group by all');
    ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
    ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
    ParamByName ('vsdate').asdate :=DateTimePicker1.date;
    ParamByName ('vedate').asdate :=DateTimePicker2.date;
    open;
  end;
end;

procedure Tdfmxsfx.inormal;
begin
  qrytpossale.close;
  qrytpossale.SQL.clear;
  qrytpossale.SQL.add('SELECT SASTOR, SADATE, SASKU, SASAL, SASTYL, SACOLR,SASIZE, SAQTY, SALPRC FROM dbo.t_possale Dbo_t_possale');
  qrytpossale.SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
  qrytpossale.ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
  qrytpossale.ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
  qrytpossale.ParamByName ('vsdate').asdate :=DateTimePicker1.date;
  qrytpossale.ParamByName ('vedate').asdate :=DateTimePicker2.date;
  qrytpossale.open;
end;

procedure Tdfmxsfx.iadatefind;
begin
  qrytpossale.close;
  qrytpossale.SQL.clear;
  qrytpossale.SQL.add('SELECT SASTOR, SADATE, SASKU, SASAL, SASTYL, SACOLR,SASIZE, SAQTY, SALPRC FROM dbo.t_possale Dbo_t_possale');
  qrytpossale.SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
  qrytpossale.SQL.Add('order by sadate');
  qrytpossale.ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
  qrytpossale.ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
  qrytpossale.ParamByName ('vsdate').asdate :=DateTimePicker1.date;
  qrytpossale.ParamByName ('vedate').asdate :=DateTimePicker2.date;
  qrytpossale.open;
end;

procedure Tdfmxsfx.iaskufind;
begin
  qrytpossale.close;
  qrytpossale.SQL.clear;
  qrytpossale.SQL.add('SELECT SASTOR, SADATE, SASKU, SASAL, SASTYL, SACOLR,SASIZE, SAQTY, SALPRC FROM dbo.t_possale Dbo_t_possale');
  qrytpossale.SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
  qrytpossale.SQL.Add('order by sasku');
  qrytpossale.ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
  qrytpossale.ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
  qrytpossale.ParamByName ('vsdate').asdate :=DateTimePicker1.date;
  qrytpossale.ParamByName ('vedate').asdate :=DateTimePicker2.date;
  qrytpossale.open;
end;

procedure Tdfmxsfx.iaqtyfind;
begin
  qrytpossale.close;
  qrytpossale.SQL.clear;
  qrytpossale.SQL.add('SELECT SASTOR, SADATE, SASKU, SASAL, SASTYL, SACOLR,SASIZE, SAQTY, SALPRC FROM dbo.t_possale Dbo_t_possale');
  qrytpossale.SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
  qrytpossale.SQL.Add('order by -saqty');
  qrytpossale.ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
  qrytpossale.ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
  qrytpossale.ParamByName ('vsdate').asdate :=DateTimePicker1.date;
  qrytpossale.ParamByName ('vedate').asdate :=DateTimePicker2.date;
  qrytpossale.open;
end;

procedure Tdfmxsfx.isasal;
begin
  qrytpossale.close;
  qrytpossale.SQL.clear;
  qrytpossale.SQL.add('SELECT SASTOR, SADATE, SASKU, SASAL, SASTYL, SACOLR,SASIZE, SAQTY, SALPRC FROM dbo.t_possale Dbo_t_possale');
  qrytpossale.SQL.Add('where SASTOR like :vsastor and sasku like :viasku and sadate>=:vsdate and sadate<=:vedate');
  qrytpossale.SQL.Add('order by -SASAL');
  qrytpossale.ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
  qrytpossale.ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
  qrytpossale.ParamByName ('vsdate').asdate :=DateTimePicker1.date;
  qrytpossale.ParamByName ('vedate').asdate :=DateTimePicker2.date;
  qrytpossale.open;
end;

procedure Tdfmxsfx.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  tbltposloca.active:=false;
  tbltposplu.active:=false;
  action:=cafree;
end;

procedure Tdfmxsfx.BitBtn1Click(Sender: TObject);
begin
  with radiogroup1 do
  begin
    case itemindex of
      0:begin
          iadatefind;
          totalnum;
        end;
      1:begin
          iaskufind;
          totalnum;
        end;
      2:begin
          iaqtyfind;
          totalnum;
        end;
      3:begin
          isasal;
          totalnum;
        end;
    else
      inormal;
      totalnum;
    end;
  end;
end;

procedure Tdfmxsfx.RadioGroup1Click(Sender: TObject);
begin
  with radiogroup1 do
  begin
    case itemindex of
      0:begin
          iadatefind;
          totalnum;
        end;
      1:begin
          iaskufind;
          totalnum;
        end;
      2:begin
          iaqtyfind;
          totalnum;
        end;
      3:begin
          isasal;
          totalnum;
        end;
    else
      inormal;
      totalnum;
    end;
  end;
end;

procedure Tdfmxsfx.ppVariable1Calc(Sender: TObject; var Value: Variant);
begin
  value:=combobox1.text;
end;

procedure Tdfmxsfx.ppVariable2Calc(Sender: TObject; var Value: Variant);
begin
  value:=datetostr(DateTimePicker1.date);
end;

procedure Tdfmxsfx.ppVariable3Calc(Sender: TObject; var Value: Variant);
begin
  value:=datetostr(DateTimePicker2.date);
end;

procedure Tdfmxsfx.BitBtn2Click(Sender: TObject);
begin
  ppReport1.Print;  
end;

procedure Tdfmxsfx.BitBtn3Click(Sender: TObject);
begin
  If  Application.FindComponent('dfmxsqxfx')=Nil Then
    dfmxsqxfx:=Tdfmxsqxfx.Create(Application);
  dfmxsqxfx.Show;
end;

procedure Tdfmxsfx.FormCreate(Sender: TObject);
begin
  tbltposloca.active:=true;
  tbltposplu.active:=true;
  while not tbltposloca.Eof do begin
    ComboBox1.Items.Add(tbltposloca.FieldByName('lcstor').AsString);
    tbltposloca.Next;
  end;
  while not tbltposplu.Eof do begin
    ComboBox2.Items.Add(tbltposplu.FieldByName('lusku').AsString);
    tbltposplu.Next;
  end;
end;

{procedure Tdfmxsfx.qrytpossaleCalcFields(DataSet: TDataSet);
var
  Goodsgold:Integer;
  i:integer;
begin
  Goodsgold:=qrytpossale.fieldbyname('saqty').asinteger;
  i:=i+Goodsgold;
  edit1.Text:=inttostr(i);
  //formatfloat('0.00',i);
end;}

{procedure Tdfmxsfx.qrytpossaleAfterOpen(DataSet: TDataSet);
var
  Goodsgold:Integer;
  i:integer;
begin
  Goodsgold:=qrytpossale.fieldbyname('saqty').asinteger;
  i:=i+Goodsgold;
  edit1.Text:=inttostr(i);
  //formatfloat('0.00',i);
end;}
procedure Tdfmxsfx.FormShow(Sender: TObject);
begin
  DateTimePicker1.DateTime:=date();
  DateTimePicker2.DateTime:=date();
end;

end.

⌨️ 快捷键说明

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