ufrm_shippinghead.pas

来自「完整的进销存系统。 设计文件及完整的源代码。 Delphi6.0」· PAS 代码 · 共 164 行

PAS
164
字号
unit Ufrm_shippinghead;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ufrm_level4_2, dxExEdtr, DB, DBTables, Menus, ImgList, dxCntner,
  dxTL, dxDBCtrl, dxDBGrid, StdCtrls, ExtCtrls, ComCtrls, ToolWin, dxEdLib,
  dxDBELib, dxEditor, Mask, DBCtrls, dxDBTLCl, dxGrClms;

type
  Tfrm_shippinghead = class(Tfrm_level4_2)
    qy_masterSHIPNO: TStringField;
    qy_masterSHIPDATE: TDateTimeField;
    qy_masterSALESMAN: TStringField;
    qy_masterCUSTNO: TStringField;
    qy_masterACTI: TStringField;
    qy_masterOWUS: TStringField;
    qy_masterGRUP: TStringField;
    qy_masterCRET: TDateTimeField;
    qy_masterMODU: TStringField;
    qy_masterMODT: TDateTimeField;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    shipno: TDBEdit;
    shipdate: TdxDBDateEdit;
    dxDBButtonEdit1: TdxDBButtonEdit;
    DBEdit2: TDBEdit;
    Label5: TLabel;
    DBText1: TDBText;
    qy_detailSHIPNO: TStringField;
    qy_detailSHIPITEM: TIntegerField;
    qy_detailGOODSNO: TStringField;
    qy_detailSHIPQTY: TFloatField;
    qy_detailUNIT: TStringField;
    qy_detailPRICE: TFloatField;
    qy_detailCURRENCY: TStringField;
    qy_detailACTI: TStringField;
    qy_detailOWUS: TStringField;
    qy_detailGRUP: TStringField;
    qy_detailCRET: TDateTimeField;
    qy_detailMODU: TStringField;
    qy_detailMODT: TDateTimeField;
    qy_detailD_SN: TFloatField;
    dbGridSHIPNO: TdxDBGridMaskColumn;
    dbGridSHIPITEM: TdxDBGridMaskColumn;
    dbGridGOODSNO: TdxDBGridMaskColumn;
    dbGridSHIPQTY: TdxDBGridMaskColumn;
    dbGridUNIT: TdxDBGridMaskColumn;
    dbGridPRICE: TdxDBGridMaskColumn;
    dbGridCURRENCY: TdxDBGridMaskColumn;
    dbGridACTI: TdxDBGridMaskColumn;
    dbGridOWUS: TdxDBGridMaskColumn;
    dbGridGRUP: TdxDBGridMaskColumn;
    dbGridCRET: TdxDBGridDateColumn;
    dbGridMODU: TdxDBGridMaskColumn;
    dbGridMODT: TdxDBGridDateColumn;
    dbGridD_SN: TdxDBGridMaskColumn;
    procedure dxDBButtonEdit1ButtonClick(Sender: TObject;
      AbsoluteIndex: Integer);
    procedure qy_masterNewRecord(DataSet: TDataSet);
  private
    { Private declarations }
    procedure set_Focus;        override;  //設置焦點
    procedure chg_canwrite;     override;  //設置關鍵字為可寫
    procedure chg_Readonly;     override;  //設置關鍵字為唯讀
    function  chk_save:boolean; override;  //保存前的檢查
    function  chk_conf:boolean; override;  //確認前的檢查
    procedure call_detail;      override;  //調用單身維護
  public
    { Public declarations }
  end;

var
  frm_shippinghead: Tfrm_shippinghead;

implementation

uses Ufrm_shippinglist, uSelect_Form, DateUtils;

{$R *.dfm}


procedure Tfrm_shippinghead.set_Focus ;
begin
  if shipno.Enabled then
     shipno.SetFocus
  else if shipdate.Enabled then
        shipdate.SetFocus    ;
end;

procedure Tfrm_shippinghead.call_detail ;
begin
  Application.CreateForm(Tfrm_shippinglist, frm_shippinglist);
   frm_shippinglist.ShowModal;
   try
     frm_shippinglist.Free;
   except
     ;
   end;

end;

procedure Tfrm_shippinghead.chg_Readonly ;
begin
  shipno.Enabled := false ;
  shipno.Tag := 2;
end;
procedure Tfrm_shippinghead.chg_canwrite ;
begin
  shipno.Enabled:=true;
  shipno.Tag:=1;
end;


function Tfrm_shippinghead.chk_save ;
begin
  result := true ;
  if qy_master.FieldByName('SHIPNO').AsString = '' then
  begin
     u_error := ' 销售单号码不能为空! ' ;
     result := false  ; exit ;
  end;
end;

function Tfrm_shippinghead.chk_conf ;
begin
  result := true; 
end;

procedure Tfrm_shippinghead.dxDBButtonEdit1ButtonClick(Sender: TObject;
  AbsoluteIndex: Integer);
begin
  inherited;
  application.CreateForm(TSelect_Form, Select_Form);
  Select_form.ComboBox1.Items.Add('CUSTNO') ;
  Select_form.Query1.SQL.Add('SELECT CUSTNO FROM T_CUSTOMER WHERE 1=1 ')  ;
  try
     select_form.Query1.Open;
  except
  end;
  Select_form.ShowModal ;
  if Select_form.ModalResult = mrok then
  begin
    qy_master.FieldByName('CUSTNO').AsString := Select_form.Query1.fieldbyname('CUSTNO').AsString ;
  end;
  try
     select_form.release;
   except
     ;
   end;

end;

procedure Tfrm_shippinghead.qy_masterNewRecord(DataSet: TDataSet);
begin
  inherited;
  qy_master.FieldByName('SHIPDATE').AsDateTime := today() ;
end;

end.

⌨️ 快捷键说明

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