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

📄 ser110_02.pas.svn-base

📁 开源的网站整站程序,功能强大带采集系统.
💻 SVN-BASE
字号:
unit Ser110_02;

interface

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

type
  TSer110_02Form = class(TBas100_01Form)
    PopupMenu1: TPopupMenu;
    MenuItem1: TMenuItem;
    MenuItem2: TMenuItem;
    MenuItem3: TMenuItem;
    Bevel1: TBevel;
    lblCode: TLabel;
    lblName: TLabel;
    lblRemark: TLabel;
    lblColor: TLabel;
    edtCode: TEdit;
    edtName: TEdit;
    edtRemark: TEdit;
    cbColor: TColorBox;
    bbtnOk: TBitBtn;
    bbtnExit: TBitBtn;
    qrySer110: TADOQuery;
    qrySer110S110_001: TAutoIncField;
    qrySer110S110_002: TWideStringField;
    qrySer110S110_003: TWideStringField;
    qrySer110S110_004: TWideStringField;
    qrySer110S110_005: TIntegerField;
    procedure bbtnExitClick(Sender: TObject);
    procedure bbtnOkClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure qrySer110AfterScroll(DataSet: TDataSet);
  private
   AMode,AOldCode:string;
   procedure SetInterface;
    { Private declarations }
  public
    procedure OpenData(ACode:string);
    { Public declarations }
  end;

var
  Ser110_02Form: TSer110_02Form;

implementation

uses SYSDATA, CommFun;

{$R *.dfm}

procedure TSer110_02Form.OpenData(ACode:string);
begin
  if not qryser110.Active then qryser110.Open;
  if ACode='' then AMode:='ADD' else AMode:='UPD';
  if ACode<>'' then
  begin
    qryser110.Locate('S110_002',ACode,[]);
    qryser110AfterScroll(qryser110);
  end else
  begin
    edtCode.Text:='';
    edtName.Text:='';
    edtRemark.Text:='';
    cbColor.Selected:=clBlack;
  end;
end;

procedure TSer110_02Form.bbtnExitClick(Sender: TObject);
begin
  inherited;
  Close;
end;

procedure TSer110_02Form.bbtnOkClick(Sender: TObject);
begin
  inherited;
  if trim(edtCode.Text)='' then
  begin
    ShowMsg('UMS10000332');  //状态编号不能为空
    edtCode.SetFocus;
    Abort;
  end;
  if trim(edtName.Text)='' then
  begin
    ShowMsg('UMS10000333');  //状态名称不能为空
    edtName.SetFocus;
    Abort;
  end;
  if AOldCode<>edtCode.Text then
  begin
    if IsExists('select 1 from ser110 where S110_002='+''''+edtCode.Text+'''') then
    begin
      ShowMsg('UMS10000334');  //状态编号已存在,请重新输入
      edtCode.SetFocus;
      Abort;
    end;
  end;
//确定
  try
    if AMode='ADD' then qrySer110.Append else qrySer110.Edit;
    qryser110.FieldByName('S110_002').AsString:=edtCode.Text;
    qryser110.FieldByName('S110_003').AsString:=edtName.Text;
    qryser110.FieldByName('S110_004').AsString:=edtRemark.Text;
    qryser110.FieldByName('S110_005').AsInteger:=cbColor.Selected;
    qryser110.Post;

    if AMode='ADD' then
    begin
      if ShowDialog('UMS10000309')=IDYES then  //记录保存成功,是否继续增加新记录?
      begin
        edtCode.Text:='';
        edtName.Text:='';
        edtRemark.Text:='';
        cbColor.Selected:=clBlack;
        edtCode.SetFocus;
      end;
    end else
      ModalResult:=1;
  except
    ShowMsg(SYSDM.ADOC.Errors[0].Description,1);
    Abort;
  end;
end;

procedure TSer110_02Form.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
  qrySer110.close;
end;

procedure Tser110_02Form.SetInterface;
begin
  Caption:=GetDBString('TAS12002001');  //任务状态维护
  lblCode.Caption:=GetDBString('TAS12002002');  //状态编号
  lblName.Caption:=GetDBString('TAS12002003');  //状态名称
  lblColor.Caption:=GetDBString('TAS12002004');  //状态颜色
  lblRemark.Caption:=GetDBString('TAS12002005');  //备注说明
  bbtnOk.Caption:=GetDBString('TAS12002006');  //确定(&O)
  bbtnExit.Caption:=GetDBString('TAS12002007');  //退出(&X)
end;

procedure TSer110_02Form.FormCreate(Sender: TObject);
begin
  inherited;
  qrySer110.open;
  SetInterface;
end;

procedure TSer110_02Form.qrySer110AfterScroll(DataSet: TDataSet);
begin
  inherited;
  if AMode='ADD' then Exit;
  edtCode.Text:=qryser110.FieldByName('S110_002').AsString;
  edtName.Text:=qryser110.FieldByName('S110_003').AsString;
  edtRemark.Text:=qryser110.FieldByName('S110_004').AsString;
  cbColor.Selected:=qryser110.FieldByName('S110_005').AsInteger;
  AOldCode:=edtCode.Text;
end;

end.

⌨️ 快捷键说明

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