📄 inv550_01.pas.svn-base
字号:
unit Inv550_01;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Bas200_10, dxExEdtr, ActnList, DB, ADODB, Menus, dxCntner, dxTL,
dxDBCtrl, dxDBGrid, ExtCtrls, ComCtrls, ToolWin, dxDBTLCl, dxGrClms,
Buttons, StdCtrls, wwdbdatetimepicker;
type
TInv550_01Form = class(TBas200_10Form)
dxDBGrid1I550_002: TdxDBGridColumn;
dxDBGrid1I550_003: TdxDBGridColumn;
ADOQuery1I550_001: TAutoIncField;
ADOQuery1I550_002: TWideStringField;
ADOQuery1I550_003: TWideStringField;
ADOQuery1I550_004: TSmallintField;
ADOQuery1I550_005: TSmallintField;
ADOQuery1I550_006: TBooleanField;
ADOQuery1I550_007: TSmallintField;
ADOQuery1I550_008: TWideStringField;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
procedure SetInterface; override;
procedure InsertEvent; override;
procedure UpdateEvent; override;
procedure DeleteEvent; override;
procedure BrowseEvent; override;
procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
{ Public declarations }
end;
var
Inv550_01Form: TInv550_01Form;
implementation
uses SYSDATA, CommFun, Inv550_02, InvComm;
{$R *.dfm}
procedure TInv550_01Form.SetInterface;
begin
inherited;
Caption:=GetDBString('INV55001001'); //操作类型维护
ADOQuery1I550_002.DisplayLabel:=GetDBString('INV55001002'); //类型编号
ADOQuery1I550_003.DisplayLabel:=GetDBString('INV55001003'); //类型名称
end;
procedure TInv550_01Form.FormCreate(Sender: TObject);
begin
inherited;
//
end;
procedure TInv550_01Form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
//
end;
procedure TInv550_01Form.ReportGetValue(const ParName: String; var ParValue: Variant);
begin
inherited;
if ParName='I550_002' then ParValue:=ADOQuery1I550_002.DisplayLabel //类型编号
else if ParName='I550_003' then ParValue:=ADOQuery1I550_003.DisplayLabel //类型名称
end;
procedure TInv550_01Form.BrowseEvent;
begin
inherited;
ActUpdate.Execute;
end;
procedure TInv550_01Form.DeleteEvent;
var
ACode:String;
begin
inherited;
//删除
if IsExists('select 1 from INV500 where I500_003='+ADOQuery1.FieldByName('I550_001').AsString) then
begin
ShowMsg('UMS10000429'); //该类型编号被库存流水表引用,不能删除
Abort;
end;
ACode:=ADOQuery1.FieldByName('I550_001').AsString;
//删除相关的权限记录
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('delete from SYS500C where S500C_003=''WHT'' and S500C_002='+ACode);
SYSDM.qryQuery.ExecSQL;
DeleteTableRecord(ADOQuery1,'INV550','I550_001='+''''+ACode+'''');
end;
procedure TInv550_01Form.InsertEvent;
begin
inherited;
//新增
Inv550_02Form:=TInv550_02Form.Create(Application);
Inv550_02Form.OpenData('');
Inv550_02Form.ShowModal;
//插入权限表
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('insert into SYS500C(S500C_001,S500C_002,S500C_003,S500C_004)');
SYSDM.qryQuery.SQL.Add('select S500A_001,I550_001,''WHT'',0 from INV550,SYS500A');
SYSDM.qryQuery.SQL.Add('where not exists(select 1 from SYS500C where S500C_001=S500A_001 and S500C_003=''WHT'' and S500C_002=I550_001)');
SYSDM.qryQuery.ExecSQL;
end;
procedure TInv550_01Form.UpdateEvent;
begin
inherited;
//修改
Inv550_02Form:=TInv550_02Form.Create(Application);
Inv550_02Form.OpenData(ADOQuery1I550_002.AsString);
Inv550_02Form.ShowModal;
end;
initialization
RegisterClass(TInv550_01Form);
finalization
UnRegisterClass(TInv550_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -