📄 goodtype.pas
字号:
unit GoodType;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, edit, StdCtrls, Mask, DBCtrls, Buttons,db;
type
TGoodTypeForm = class(TedtForm)
Label1: TLabel;
DEname: TDBEdit;
procedure BtnPriorClick(Sender: TObject);
procedure BtnNextClick(Sender: TObject);
procedure BtnSaveClick(Sender: TObject);
procedure BtnexitClick(Sender: TObject);
procedure BtnaddClick(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
oldType,oldCode:string;
public
{ Public declarations }
dsTmp:TDataSource;
TypeId:integer;
end;
var
GoodTypeForm: TGoodTypeForm;
implementation
uses datamodule1;
{$R *.dfm}
procedure TGoodTypeForm.BtnPriorClick(Sender: TObject);
begin
with dataE2 do
case Typeid of
0: SetButtonPrior(dsType);
1: SetButtonPrior(dsType1);
2: SetButtonPrior(dsType2);
end;
end;
procedure TGoodTypeForm.BtnNextClick(Sender: TObject);
begin
//inherited;
with dataE2 do
case Typeid of
0: SetButtonNext(dsType);
1: SetButtonNext(dsType1);
2: SetButtonNext(dsType2);
end;
end;
procedure TGoodTypeForm.BtnSaveClick(Sender: TObject);
begin
inherited;
//SetButtonSave(dsTmp);
with dataE2 do
case Typeid of
0: if tblType.State in [dsedit,dsinsert] then
begin
tblType.Post;
if tblType.FieldByName('Type').asstring<>oldType then
begin
//更新二类编码
QueryTmp.Close;
QueryTmp.SQL.Clear;
QueryTmp.SQL.Add('Update GoodsType1 set Type=:Type where Type=:Type1');
QueryTmp.Parameters[0].Value:=tblType.FieldByName('Type').asstring;
QueryTmp.Parameters[1].Value:=oldType;
QueryTmp.ExecSQL;
tblType1.Close;
tblType1.Open;
//更新三类编码
QueryTmp.Close;
QueryTmp.SQL.Clear;
QueryTmp.SQL.Add('Update GoodsType2 set Type=:Type where Type=:Type1');
QueryTmp.Parameters[0].Value:=tblType.FieldByName('Type').asstring;
QueryTmp.Parameters[1].Value:=oldType;
QueryTmp.ExecSQL;
tblType2.Close;
tblType2.Open;
end;
end;
1: if tblType1.State in [dsedit,dsinsert] then
begin
tblType1.Post;
if tblType1.FieldByName('Code1').asstring<>oldCode then
begin
//更新三类编码
QueryTmp.Close;
QueryTmp.SQL.Clear;
QueryTmp.SQL.Add('Update GoodsType2 set code1=:code where Type=:Type and code1=:code1');
QueryTmp.Parameters[0].Value:=tblType1.FieldByName('Code1').asstring;
QueryTmp.Parameters[1].Value:=tblType.FieldByName('Type').asstring;
QueryTmp.Parameters[2].Value:=oldCode;
QueryTmp.ExecSQL;
tblType2.Close;
tblType2.Open;
end;
end;
2: if tblType2.State in [dsedit,dsinsert] then
tblType2.Post;
end;
close;
end;
procedure TGoodTypeForm.BtnexitClick(Sender: TObject);
begin
inherited;
with dataE2 do
case Typeid of
0: SetButtonCancel(dsType);
1: SetButtonCancel(dsType1);
2: SetButtonCancel(dsType2);
end;
end;
procedure TGoodTypeForm.BtnaddClick(Sender: TObject);
begin
inherited;
with dataE2 do
case Typeid of
0: SetButtonAdd(dsType);
1: SetButtonAdd(dsType1);
2: SetButtonAdd(dsType2);
end;
end;
procedure TGoodTypeForm.FormShow(Sender: TObject);
begin
inherited;
with dataE2 do
case Typeid of
0: begin DeNo.datasource:=nil;deno.dataField:='type';DeNo.datasource:=dstype;
DeName.datasource:=dstype;
ATableName:='goodsType';
AFieldValue:='type';
if tblType.State in [dsedit] then
oldType:=tblType.FieldByName('Type').asstring; end;
1: begin DeNo.datasource:=nil;deno.dataField:='code1';DeNo.datasource:=dstype1;
DeName.datasource:=dsType1;
ATableName:='goodsType1';
AFieldValue:='code1';
if tblType1.State in [dsedit] then
oldCode:=tblType1.FieldByName('Code1').asstring; end;
2: begin DeNo.datasource:=nil;deno.dataField:='code2';DeNo.datasource:=dstype2;
DeName.datasource:=dsType2;
ATableName:='goodsType2';
AFieldValue:='code2'; end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -