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

📄 inv200_01.pas.svn-base

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 SVN-BASE
字号:
unit Inv200_01;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BAS200_03, dxExEdtr, Buttons, StdCtrls, ActnList, DB, ADODB,
  Menus, dxCntner, dxTL, dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, ToolWin;

type
  TInv200_01Form = class(TBas200_03Form)
    cbWhs: TComboBox;
    lblWhs: TLabel;
    sbSearch: TSpeedButton;
    ADOQuery1I100_002: TWideStringField;
    ADOQuery1I100_003: TWideStringField;
    ADOQuery1I150_002: TWideStringField;
    ADOQuery1I150_003: TWideStringField;
    ADOQuery1I150_004: TWideStringField;
    ADOQuery1I140_003: TWideStringField;
    ADOQuery1I501_005: TFloatField;
    ADOQuery1FDemand: TFloatField;
    dxDBGrid1I100_002: TdxDBGridColumn;
    dxDBGrid1I100_003: TdxDBGridColumn;
    dxDBGrid1I150_002: TdxDBGridColumn;
    dxDBGrid1I150_003: TdxDBGridColumn;
    dxDBGrid1I150_004: TdxDBGridColumn;
    dxDBGrid1I140_003: TdxDBGridColumn;
    dxDBGrid1I501_005: TdxDBGridMaskColumn;
    dxDBGrid1FSafe: TdxDBGridMaskColumn;
    dxDBGrid1FDemand: TdxDBGridMaskColumn;
    ADOQuery1FSafe: TFloatField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure sbSearchClick(Sender: TObject);
  private
    { Private declarations }
  public
    procedure SetInterface; override;
    procedure BrowseEvent; override;
    procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
    { Public declarations }
  end;

var
  Inv200_01Form: TInv200_01Form;

implementation

uses SYSDATA, CommFun, InvComm;

{$R *.dfm}

procedure TInv200_01Form.SetInterface;
begin
  inherited;
  Caption:=GetDBString('INV20001001');  //库存缺料报告
  lblWhs.Caption:=GetDBString('INV20001002');  //仓库
  sbSearch.Caption:=GetDBString('INV20001003');  //查询

  ADOQuery1.FieldByName('I100_002').DisplayLabel:=GetDBString('INV20001004');  //仓库编号
  ADOQuery1.FieldByName('I100_003').DisplayLabel:=GetDBString('INV20001005');  //仓库名称
  ADOQuery1.FieldByName('I150_002').DisplayLabel:=GetDBString('INV20001006');  //料品编号
  ADOQuery1.FieldByName('I150_003').DisplayLabel:=GetDBString('INV20001007');  //料品名称
  ADOQuery1.FieldByName('I150_004').DisplayLabel:=GetDBString('INV20001008');  //规格型号
  ADOQuery1.FieldByName('I140_003').DisplayLabel:=GetDBString('INV20001009');  //计量单位
  ADOQuery1.FieldByName('I501_005').DisplayLabel:=GetDBString('INV20001010');  //库存数量
  ADOQuery1.FieldByName('FSafe').DisplayLabel:=GetDBString('INV20001011');  //安全库存
  ADOQuery1.FieldByName('FDemand').DisplayLabel:=GetDBString('INV20001012');  //缺料数量

  GetAllWhs(cbWhs);
end;

procedure TInv200_01Form.FormCreate(Sender: TObject);
begin
  inherited;
  sbSearch.Click;
end;

procedure TInv200_01Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
//
end;

procedure TInv200_01Form.sbSearchClick(Sender: TObject);
var
  AWhsNo:Integer;
begin
  inherited;
  SYSDM.qryQuery.Close;
  SYSDM.qryQuery.SQL.Clear;
  SYSDM.qryQuery.SQL.Add('select I100_001 from INV100 where ''[''+I100_002+'']''+I100_003='+''''+cbWhs.Text+'''');
  SYSDM.qryQuery.Open;
  AWhsNo:=SYSDM.qryQuery.Fields[0].AsInteger;

  Screen.Cursor:=crHourGlass;
  ADOQuery1.DisableControls;

  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  case ADatabase of  //0=Access, 1=SQL Server
    0:ADOQuery1.SQL.Add('select I100_002,I100_003,I150_002,I150_003,I150_004,I140_003,I501_005,iif(I150_032,I150_032,0) as FSafe,FSafe-I501_005 as FDemand');
    1:ADOQuery1.SQL.Add('select I100_002,I100_003,I150_002,I150_003,I150_004,I140_003,I501_005,isnull(I150_032,0) as FSafe,isnull(I150_032,0)-I501_005 as FDemand');
  end;
  ADOQuery1.SQL.Add('from (((INV501 A left join INV100 B on A.I501_001=B.I100_001)');
  ADOQuery1.SQL.Add('               left join INV110 C on A.I501_002=C.I110_001)');
  ADOQuery1.SQL.Add('               left join INV150 D on A.I501_003=D.I150_001)');
  ADOQuery1.SQL.Add('               left join INV140 E on A.I501_004=E.I140_001');
  if AWhsNo<>0 then ADOQuery1.SQL.Add('where I501_001='+IntToStr(AWhsNo));
  ADOQuery1.SQL.Add('order by I100_002,I110_003,I150_002');
  ADOQuery1.Open;

  ADOQuery1.EnableControls;
  Screen.Cursor:=crDefault;
end;

procedure TInv200_01Form.ReportGetValue(const ParName: String;
  var ParValue: Variant);
begin
  inherited;
  if ParName='AWhs' then ParValue:=lblWhs.Caption  //仓库
end;

procedure TInv200_01Form.BrowseEvent;
begin
  inherited;

end;

initialization
  RegisterClass(TInv200_01Form);

finalization
  UnRegisterClass(TInv200_01Form);

end.

⌨️ 快捷键说明

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