?? findspl.pas
字號:
unit FindSpl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, StdCtrls, ExtCtrls, Grids, DBGrids, JvExDBGrids, JvDBGrid,
JvDBUltimGrid, Buttons, SkinCtrls, ImgList, JvExStdCtrls, JvButton,
JvCtrls, JvFooter, JvExExtCtrls, JvExtComponent, DynamicSkinForm;
type
TFindSplForm = class(TForm)
Panel1: TPanel;
edFind: TEdit;
AddBtn: TSpeedButton;
GroupBox1: TGroupBox;
FindItemGrid: TJvDBUltimGrid;
dsFindSpl: TDataSource;
RadioGroup1: TspSkinRadioGroup;
JvFooter1: TJvFooter;
btnCancel: TJvFooterBtn;
btnOke: TJvFooterBtn;
ImageList1: TImageList;
spDynamicSkinForm1: TspDynamicSkinForm;
procedure FindItemGridDblClick(Sender: TObject);
procedure edFindChange(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FindItemGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edFindKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure btnOkeClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject);
procedure AddBtnClick(Sender: TObject);
private
function GetCODE: string;
procedure SetCODE(NewCODE: string);
public
property CODE: string read GetCODE write SetCODE;
function ShowModalCODE: integer;
end;
var
FindSplForm: TFindSplForm;
implementation
{$R *.dfm}
uses DataMod1, edItem;
function TFindSplForm.GetCODE: string;
begin
if DM1.qFindSpl.FieldByName('SPLCODE').Value <> Null Then
Result := DM1.qFindSpl.FieldByName('SPLCODE').Value
end;
function TFindSplForm.ShowModalCODE: integer;
begin
Result:=ShowModal;
end;
procedure TFindSplForm.SetCODE(NewCODE: string);
begin
NewCODE := DM1.qFindSpl.FieldByName('SPLCODE').Value;
end;
procedure TFindSplForm.FindItemGridDblClick(Sender: TObject);
begin
ModalResult := mrOK;
end;
procedure TFindSplForm.edFindChange(Sender: TObject);
begin
if edFind.Text='' then Exit;
with DM1.qFindSpl do
begin
DisableControls;
Close;
SQL.Clear;
if RadioGroup1.ItemIndex = 0 then
begin
SQL.Add(
'SELECT SPL.SPLCODE, SPL.NAMASPL, SPL.NPWP, SPL.CREDLIMIT, SPL.CURBAL, '+
'SPL_ADDRESS.ADDRESS, SPL_ADDRESS.CITY '+
'FROM SPL, SPL_ADDRESS '+
'WHERE SPL.SPLCODE=SPL_ADDRESS.SPLCODE AND SPL_ADDRESS.GRUP="BISNIS" '+
'AND SPL.SPLCODE LIKE:NCari ORDER BY SPL.SPLCODE ASC ');
ParamByName('Ncari').AsString:=edFind.Text+'%';
Open;
if Recordcount = 0 then AddBtn.Enabled := True else AddBtn.Enabled := False;
end else
begin
SQL.Add(
'SELECT SPL.SPLCODE, SPL.NAMASPL, SPL.NPWP, SPL.CREDLIMIT, SPL.CURBAL, '+
'SPL_ADDRESS.ADDRESS, SPL_ADDRESS.CITY '+
'FROM SPL, SPL_ADDRESS '+
'WHERE SPL.SPLCODE=SPL_ADDRESS.SPLCODE AND SPL_ADDRESS.GRUP="BISNIS" '+
'AND SPL.NAMASPL LIKE:NCari ORDER BY SPL.NAMASPL ASC ');
ParamByName('Ncari').AsString:=edFind.Text+'%';
Open;
end;
EnableControls;
end;
end;
procedure TFindSplForm.RadioGroup1Click(Sender: TObject);
begin
edFind.SetFocus;
end;
procedure TFindSplForm.FormActivate(Sender: TObject);
begin
edFind.SetFocus;
end;
procedure TFindSplForm.FindItemGridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_return then ModalResult:=mrOk;
end;
procedure TFindSplForm.edFindKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_DOWN then FindItemGrid.SetFocus;
end;
procedure TFindSplForm.btnOkeClick(Sender: TObject);
begin
ModalResult := mrOK;
end;
procedure TFindSplForm.btnCancelClick(Sender: TObject);
begin
ModalResult := mrCancel;
end;
procedure TFindSplForm.AddBtnClick(Sender: TObject);
begin
with DM1.qItemEdit do
begin
Close;
ParamByName('SPLCODE').Value:=edFind.Text;
Open;
end;
edItemForm.Enter(edFind.Text);
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -