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

📄 ser520_05.pas.svn-base

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

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Bas100_01, Menus, StdCtrls, Buttons, ExtCtrls,
  wwdbdatetimepicker, DB, ADODB;

type
  TSer520_05Form = class(TBas100_01Form)
    lblCode: TLabel;
    edtCode: TEdit;
    sbCode: TSpeedButton;
    edtName: TEdit;
    lblAmount: TLabel;
    edtAmount: TEdit;
    lblDate: TLabel;
    edtDate: TwwDBDateTimePicker;
    Bevel1: TBevel;
    bbtnOk: TBitBtn;
    bbtnExit: TBitBtn;
    qryOrd150: TADOQuery;
    qryOrd150O150_002: TStringField;
    qryOrd150O150_003: TStringField;
    qryOrd150O150_001: TAutoIncField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure bbtnOkClick(Sender: TObject);
    procedure bbtnExitClick(Sender: TObject);
    procedure sbCodeClick(Sender: TObject);
    procedure edtCodeExit(Sender: TObject);
  private
    AMode:string;
    FDataSet:TADOQuery;
    procedure SetInterface;
    { Private declarations }
  public
    procedure OpenData(ANo:Integer;ADataSet:TADOQuery);
    { Public declarations }
  end;

var
  Ser520_05Form: TSer520_05Form;

implementation

uses SYSDATA, CommFun, HwSelData;

{$R *.dfm}

procedure TSer520_05Form.OpenData(ANo:Integer;ADataSet:TADOQuery);
begin
  FDataSet:=ADataSet;
  AMode:='ADD';
  if ANo<>0 then
  begin
    AMode:='UPD';
    if not qryOrd150.Active then qryOrd150.Open;
    qryOrd150.Locate('O150_001',ADataSet.FieldByName('S523_003').Value,[]);
    edtCode.Text:=qryOrd150.FieldByName('O150_002').Value;
    edtName.Text:=qryOrd150.FieldByName('O150_003').Value;
    edtDate.Date:=ADataSet.FieldByName('S523_004').Value;
    edtAmount.Text:=ADataSet.FieldByName('S523_005').Value;
  end;
end;

procedure TSer520_05Form.SetInterface;
begin
  Caption:=GetDBString('SER52005001');  //赔偿记录
  lblCode.Caption:=GetDBString('SER52005002');  //客户编号
  lblDate.Caption:=GetDBString('SER52005003');  //预计日期
  lblAmount.Caption:=GetDBString('SER52005004');  //赔偿金额
  bbtnOk.Caption:=GetDBString('SER52003009');  //确定(&O)
  bbtnExit.Caption:=GetDBString('SER52003010');  //退出(&X)
end;

procedure TSer520_05Form.FormCreate(Sender: TObject);
begin
  inherited;
  SetInterface;
  qryOrd150.Open;
end;

procedure TSer520_05Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  qryOrd150.Close;
end;

procedure TSer520_05Form.bbtnOkClick(Sender: TObject);
var
  ANo:Integer;
begin
  inherited;
//确定(&O)
  if trim(edtCode.Text)='' then
  begin
    ShowMsg('UMS10000180');  //客戶编号不能为空
    edtCode.SetFocus;
    Abort;
  end;
  if trim(edtDate.Text)='' then
  begin
    ShowMsg('UMS10000385');  //预计日期不能为空
    edtDate.SetFocus;
    Abort;
  end;
  if (trim(edtAmount.Text)='') or (trim(edtAmount.Text)='0') then
  begin
    ShowMsg('UMS10000387');  //赔偿金额不能为空或零
    edtAmount.SetFocus;
    Abort;
  end;

  if AMode='ADD' then
  begin
    ANo:=GetLastNo(FDataSet,'S523_002');
    FDataSet.Append;
  end else
  begin
    ANo:=FDataSet.FieldByName('S523_002').Value;
    FDataSet.Edit;
  end;
  FDataSet.FieldByName('S523_001').Value:='-1';
  FDataSet.FieldByName('S523_002').Value:=ANo;
  FDataSet.FieldByName('S523_003').Value:=edtDate.Date;
  FDataSet.FieldByName('S523_004').Value:=qryOrd150.FieldByName('O150_001').Value;
  FDataSet.FieldByName('S523_005').AsString:=edtAmount.Text;
  FDataSet.Post;
  ModalResult:=1;
end;

procedure TSer520_05Form.bbtnExitClick(Sender: TObject);
begin
  inherited;
//退出(&X)
  Close;
end;

procedure TSer520_05Form.sbCodeClick(Sender: TObject);
begin
  inherited;
//客戶编号查询
  if not edtCode.Focused then edtCode.SetFocus;
  qryOrd150.Close;
  qryOrd150.Open;
  HwSelDataForm:=THwSelDataForm.Create(Application);
  HwSelDataForm.OpenSelData(qryOrd150,nil);
  if HwSelDataForm.ShowModal=1 then
  begin
    if qryOrd150.IsEmpty then Exit;
    edtCode.Text:=qryOrd150.FieldByName('O150_002').AsString;
    edtName.Text:=qryOrd150.FieldByName('O150_003').AsString;
  end;
end;

procedure TSer520_05Form.edtCodeExit(Sender: TObject);
begin
  inherited;
//客戶编号
  if trim(edtCode.Text)='' then Exit;
  if qryOrd150.Locate('O150_002',edtCode.Text,[]) then
  begin
    edtCode.Text:=qryOrd150.FieldByName('O150_002').AsString;
    edtName.Text:=qryOrd150.FieldByName('O150_003').AsString;
  end else
  begin
    ShowMsg('UMS10000264');  //输入的客戶编号无效
    edtCode.SetFocus;
    Abort;
  end;
end;

end.

⌨️ 快捷键说明

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