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

📄 gysjhqk.~pas

📁 仓库管理信息系统
💻 ~PAS
字号:
unit gysjhqk;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGridEh, ComCtrls, StdActns, ActnList, ActnMan, Menus,
  PrnDbgeh, ExtCtrls, DBCtrls, StdCtrls, Spin,DBGridEhImpExp, Mask;

type
  Tgysjhqkfrm = class(TForm)
    GroupBox2: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    speyf: TSpinEdit;
    spenf: TSpinEdit;
    Button4: TButton;
    bmlk: TDBLookupComboBox;
    Panel1: TPanel;
    Button1: TButton;
    SaveDialog1: TSaveDialog;
    MYPDBGEh: TPrintDBGridEh;
    PopupMenu1: TPopupMenu;
    N2: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    PrintSetup1: TMenuItem;
    N1: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    ActionManager1: TActionManager;
    EditCut1: TEditCut;
    EditCopy1: TEditCopy;
    EditPaste1: TEditPaste;
    EditDelete1: TEditDelete;
    FilePrintSetup1: TFilePrintSetup;
    FontEdit1: TFontEdit;
    ColorSelect1: TColorSelect;
    PrintDlg1: TPrintDlg;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    DBGridEh1: TDBGridEh;
    TabSheet2: TTabSheet;
    DBGridEh2: TDBGridEh;
    DBEdit1: TDBEdit;
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button4Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FontEdit1Accept(Sender: TObject);
    procedure PrintSetup1Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure N9Click(Sender: TObject);
  private
    { Private declarations }
  public
    date1,date2:tdate;
    year,month,day:Word;
    { Public declarations }
  end;

var
  gysjhqkfrm: Tgysjhqkfrm;

implementation
uses data, main;
{$R *.dfm}

procedure Tgysjhqkfrm.Button1Click(Sender: TObject);
begin
close;
end;

procedure Tgysjhqkfrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action := cafree;
gysjhqkfrm:=nil;
end;

procedure Tgysjhqkfrm.Button4Click(Sender: TObject);
begin
year:=strtoint(spenf.Text);
month:=strtoint(speyf.Text);
if month=1 then
begin
  Date1:=EncodeDate(Year-1,12,26);
  Date2:=EncodeDate(Year,1,25);
end
else
begin
  Date1:=EncodeDate(Year,Month-1,26);
  Date2:=EncodeDate(Year,Month,25);
end;
IF (BMLK.KeyValue='') or (bmlk.KeyValue=null) THEN
begin
  BMLK.KeyValue:=dm.whgysdmads.fieldbyname('供应商ID').Value;
  DM.whgysdmads.First;
end;
dm.gysghhzads.Close;
dm.gysghhzads.CommandText:='SELECT 材料编码, SUM(数量) AS 数量,'+
    ' SUM(金额) AS 金额 from jcmxcx '+
     ' where 进仓日期>='+
    FormatDateTime('yy-mm-dd',Date1)+
    ' and 进仓日期<='+
    FormatDateTime('yy-mm-dd',Date2)+
    ' and 供应商ID='+''''+bmlk.KeyValue+''''+
    ' and 仓库ID='+''''+mainfrm.CKid+''''+
    ' GROUP BY 材料编码 ';
DM.gysghhzads.Open;
dm.gysghmxads.Close;
dm.gysghmxads.CommandText:='select 进仓日期, 材料编码,'+
  ' 数量, 单价, 金额, 送货单号,验收人ID from jcmxcx '+
     ' where 进仓日期>='+
    FormatDateTime('yy-mm-dd',Date1)+
    ' and 进仓日期<='+
    FormatDateTime('yy-mm-dd',Date2)+
    ' and 供应商ID='+''''+bmlk.KeyValue+''''+
    ' and 仓库ID='+''''+mainfrm.CKid+'''';
dm.gysghmxads.Open;
end;

procedure Tgysjhqkfrm.FormCreate(Sender: TObject);
begin
   dm.whgysdmads.Open;
   dm.whclbmads.Open;
   dm.whysrads.Open;
decodedate(now,year,month,day);
if month=1 then
begin
  Date1:=EncodeDate(Year-1,12,26);
  Date2:=EncodeDate(Year,1,25);
end
else
begin
  Date1:=EncodeDate(Year,Month-1,26);
  Date2:=EncodeDate(Year,Month,25);
end;
spenf.Text:=inttostr(year);
speyf.Text:=inttostr(month);
end;

procedure Tgysjhqkfrm.FontEdit1Accept(Sender: TObject);
begin
TDBGridEh(ActiveControl).Font:=FontEdit1.Dialog.Font;
TDBGridEh(ActiveControl).FooterFont:=FontEdit1.Dialog.Font;
TDBGridEh(ActiveControl).TitleFont:=FontEdit1.Dialog.Font
end;

procedure Tgysjhqkfrm.PrintSetup1Click(Sender: TObject);
var bt,tj:string;
begin
  if TDBGridEh(ActiveControl).Name='DBGridEh2' then
  begin
  tj:='供应商名称:'+dm.whgysdmads.fieldbyname('供应商名称').Value;
  bt:=spenf.Text+'年'+speyf.text+'月供应商供货明细表';
  end;
  if TDBGridEh(ActiveControl).Name='DBGridEh1' then
  begin
  tj:='供应商名称:'+dm.whgysdmads.fieldbyname('供应商名称').Value;
  bt:=spenf.Text+'年'+speyf.text+'月供应商供货汇总表';
  end;
  if (ActiveControl is TDBGridEh) then
  begin
    MYPDBGEh.DBGridEh := TDBGridEh(ActiveControl);
    MYPDBGEh.SetSubstitutes(['%[Today]',DateToStr(Now),'%[bt]',bt,'%[tj]',tj]);
    MYPDBGEh.print;
  end;
end;

procedure Tgysjhqkfrm.N1Click(Sender: TObject);
var bt,tj:string;
begin
  if TDBGridEh(ActiveControl).Name='DBGridEh2' then
  begin
  tj:='供应商名称:'+dm.whgysdmads.fieldbyname('供应商名称').Value;
  bt:=spenf.Text+'年'+speyf.text+'月供应商供货明细表';
  end;
  if TDBGridEh(ActiveControl).Name='DBGridEh1' then
  begin
  tj:='供应商名称:'+dm.whgysdmads.fieldbyname('供应商名称').Value;
  bt:=spenf.Text+'年'+speyf.text+'月供应商供货汇总表';
  end;
  if (ActiveControl is TDBGridEh) then
  begin
    MYPDBGEh.DBGridEh := TDBGridEh(ActiveControl);
    MYPDBGEh.SetSubstitutes(['%[Today]',DateToStr(Now),'%[bt]',bt,'%[tj]',tj]);
    MYPDBGEh.Preview;
  end;
end;

procedure Tgysjhqkfrm.N4Click(Sender: TObject);
var ExpClass:TDBGridEhExportClass;
    Ext:String;
begin
  SaveDialog1.FileName := 'file1';
  if (ActiveControl is TDBGridEh) then
    if SaveDialog1.Execute then
    begin
      case SaveDialog1.FilterIndex of
        1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
        2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
        3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
        4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
        5: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
      else
        ExpClass := nil; Ext := '';
      end;
      if ExpClass <> nil then
      begin
        if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <>
           UpperCase(Ext) then
          SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext;
        SaveDBGridEhToExportFile(ExpClass,TDBGridEh(ActiveControl),
             SaveDialog1.FileName,true);
      end;
    end;
end;

procedure Tgysjhqkfrm.N8Click(Sender: TObject);
begin
TDBGridEh(ActiveControl).Columns
  [TDBGridEh(ActiveControl).SelectedIndex].Visible:=false;
if TDBGridEh(ActiveControl).SelectedIndex<
  TDBGridEh(ActiveControl).Columns.Count-1 then
TDBGridEh(ActiveControl).SelectedIndex:=
  TDBGridEh(ActiveControl).SelectedIndex+1;
end;

procedure Tgysjhqkfrm.N9Click(Sender: TObject);
var i:integer;
begin
  for i:=1 to TDBGridEh(ActiveControl).Columns.Count-1 do 
  begin
  if TDBGridEh(ActiveControl).Name='DBGridEh2' then
    case i of
      1..11:
      begin
        TDBGridEh(ActiveControl).Columns[i].Visible:=true;
      end;
    end;
  if TDBGridEh(ActiveControl).Name='DBGridEh1' then
    case i of 
      1..8:
      begin
        TDBGridEh(ActiveControl).Columns[i].Visible:=true;
      end;
    end;
  end;
end;

end.

⌨️ 快捷键说明

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