?? edlgn.~pas
字號:
unit edLgn;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ImgList, Menus, DB, JvGradientCaption, DBNumEdit, JvExControls,
JvComponent, JvDBLookup, JvStaticText, Mask, DBCtrls, ExtCtrls, StdCtrls,
Buttons, Grids, DBGrids, JvExDBGrids, JvDBGrid, JvDBUltimGrid,
JvExStdCtrls, JvCombobox, JvExExtCtrls, JvDBRadioPanel, JvExtComponent,
JvButton, JvCtrls, JvFooter, DynamicSkinForm;
type
TedLgnForm = class(TForm)
GroupBox1: TGroupBox;
Panel3: TPanel;
btnChange: TButton;
dbedCode: TDBEdit;
JvStaticText3: TJvStaticText;
dbedName: TDBEdit;
GroupBox2: TGroupBox;
Image1: TImage;
btnAddress: TBitBtn;
Memo1: TMemo;
GroupBox3: TGroupBox;
Image2: TImage;
TlpGrid: TJvDBUltimGrid;
btnTlp: TBitBtn;
GroupBox4: TGroupBox;
Image3: TImage;
CtcGrid: TJvDBUltimGrid;
btnCtc: TBitBtn;
JvDBLookupCombo2: TJvDBLookupCombo;
dsEdLgn: TDataSource;
dsCtc: TDataSource;
dsPhone: TDataSource;
dsTitleName: TDataSource;
JvFooter1: TJvFooter;
btnCancel: TJvFooterBtn;
btnSave: TJvFooterBtn;
ImageList1: TImageList;
spDynamicSkinForm1: TspDynamicSkinForm;
procedure btnAddressClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnCancelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure btnTlpClick(Sender: TObject);
procedure btnCtcClick(Sender: TObject);
procedure btnSaveClick(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure TlpGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure CtcGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
procedure ViewAddress;
procedure ViewPhone;
public
procedure Edit;
procedure Enter(LGNCODE:String);
end;
var
edLgnForm: TedLgnForm;
nLGNCODE: String;
implementation
{$R *.dfm}
uses DataMod1, edLgnAddr, edLgnPhone, edLgnCtc, main;
procedure TedLgnForm.btnAddressClick(Sender: TObject);
begin
LgnAddrForm:=TLgnAddrForm.Create(nil);
if LgnAddrForm.ShowModalAddress = mrOk then ViewAddress;
end;
procedure TedLgnForm.Edit;
begin
mainform.CreateMDIChild(TEdLgnForm);
end;
procedure TedLgnForm.Enter(LGNCODE:String);
begin
DM1.qEdLgn.Append;
DM1.qEdLgn.FieldByName('LGNCODE').Value := LGNCODE;
nLGNCODE:=LGNCODE;
mainform.CreateMDIChild(TEdLgnForm);
end;
procedure TedLgnForm.FormCreate(Sender: TObject);
begin
DateSeparator := '-'; ShortDateFormat := 'dd/mm/yyyy';
Top := 1; Left := 1;
end;
procedure TedLgnForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TedLgnForm.btnCancelClick(Sender: TObject);
begin
DM1.qLgnPhone.CancelUpdates;
DM1.qLgnCtc.CancelUpdates;
DM1.qEdLgn.CancelUpdates;
Close;
end;
procedure TedLgnForm.FormShow(Sender: TObject);
begin
ViewAddress;
ViewPhone;
end;
procedure TedLgnForm.ViewAddress;
begin
Memo1.Lines.Clear;
Memo1.Lines.Add(DM1.qEdLgnADDRESS.Value);
Memo1.Lines.Add(DM1.qEdLgnCITY.Value+', '+DM1.qEdLgnPOSCODE.Value);
Memo1.Lines.Add(DM1.qEdLgnCOUNTRY.Value);
end;
procedure TedLgnForm.btnTlpClick(Sender: TObject);
begin
//DM1.qLgnPhone.Close;
//DM1.qLgnPhone.Open;
DM1.qLgnPhone.Append;
edLgnPhoneForm:=TedLgnPhoneForm.Create(nil);
edLgnPhoneForm.ShowModal;
end;
procedure TedLgnForm.ViewPhone;
begin
with DM1.qLgnPhone do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM LGN_TLP WHERE LGNCODE=:LGNCODE ORDER BY LINENO ASC ');
Open;
end;
with DM1.qLgnCtc do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM LGN_CTC WHERE LGNCODE=:LGNCODE ORDER BY LINENO ASC ');
Open;
end;
end;
procedure TedLgnForm.btnCtcClick(Sender: TObject);
begin
DM1.qLgnCtc.Append;
edLgnCtcForm:=TedLgnCtcForm.Create(nil);
edLgnCtcForm.ShowModal;
end;
procedure TedLgnForm.btnSaveClick(Sender: TObject);
begin
{with DM1.CHKCODE do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM LGN_ADDRESS WHERE LGNCODE=:nCode ');
ParamByName('nCode').Value:=nLGNCODE;
Open;
end;
if DM1.CHKCODE.RecordCount=0 then
begin
DM1.qLgnAddr.Append;
DM1.qLgnAddr.Edit;
DM1.qLgnAddrLGNCODE.Value:=nLGNCODE;
DM1.qLgnAddrLINENO.Value:=1;
DM1.qLgnAddrADDRESS.Value:='Jl.';
DM1.qLgnAddrGRUP.Value:='BISNIS';
end;}
try
DM1.dtaCon.StartTransaction;
//DM1.qLgnAddr.ApplyUpdates; DM1.qLgnAddr.CommitUpdates;
DM1.qLgnPhone.ApplyUpdates; DM1.qLgnPhone.CommitUpdates;
DM1.qLgnCtc.ApplyUpdates; DM1.qLgnCtc.CommitUpdates;
DM1.qEdLgn.ApplyUpdates; DM1.qEdLgn.CommitUpdates;
DM1.dtaCon.Commit;
except
DM1.dtaCon.Rollback;
end;
//DM1.qLgn.Refresh;
//Close;
end;
procedure TedLgnForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
if not (ActiveControl is TDBGrid) then
begin
key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end
end;
procedure TedLgnForm.TlpGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Shift = [ssCtrl]) and (Key = VK_DELETE) then Key := 0;
if (key in [vk_next, vk_insert]) then key:=0;
If (key in [vk_delete]) and (DM1.qLgnPhone.State in [dsBrowse, dsInsert]) then
begin
DM1.qLgnPhone.Delete;
DM1.qLgnPhone.ApplyUpdates; DM1.qLgnPhone.CommitUpdates;
end;
end;
procedure TedLgnForm.CtcGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Shift = [ssCtrl]) and (Key = VK_DELETE) then Key := 0;
if (key in [vk_next, vk_insert]) then key:=0;
If (key in [vk_delete]) and (DM1.qLgnPhone.State in [dsBrowse, dsInsert]) then
begin
DM1.qLgnPhone.Delete;
DM1.qLgnPhone.ApplyUpdates; DM1.qLgnPhone.CommitUpdates;
end;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -