?? 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 + -