📄 areas.pas
字号:
unit Areas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzButton, Grids, DBGrids, RzDBGrid, ExtCtrls, StdCtrls, Mask,
RzEdit, RzCmboBx, Menus, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxControls,
cxGridCustomView, cxClasses, cxGridLevel, cxGrid, cxFilterControl;
type
TVisitForm = class(TForm)
Panel1: TPanel;
Label1: TLabel;
KeyList: TRzComboBox;
Label2: TLabel;
List: TRzComboBox;
Key: TRzEdit;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
cxGrid1: TcxGrid;
cxGrid1Level1: TcxGridLevel;
cxGrid1DBTableView1: TcxGridDBTableView;
cxGrid1DBTableView1DBColumn: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn1: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn2: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn3: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn4: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn5: TcxGridDBColumn;
cxGrid1DBTableView1DBColumn6: TcxGridDBColumn;
RzBitBtn3: TRzBitBtn;
N6: TMenuItem;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RzBitBtn1Click(Sender: TObject);
procedure KeyKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure RzBitBtn2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure ListChange(Sender: TObject);
procedure KeyListChange(Sender: TObject);
procedure N6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
VisitForm : TVisitForm;
Dates : TDateTime;
implementation
uses DM, MAIN, CallatForm1, Search;
{$R *.dfm}
procedure TVisitForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TVisitForm.RzBitBtn1Click(Sender: TObject);
var
S, S1 : String;
begin
//搜索指定范围的客户拜访记录
if (KeyList.ItemIndex<0)or(List.ItemIndex<0)or(((List.ItemIndex=0)or(List.ItemIndex=1))and(Key.Text=''))then begin
Messagebox(handle,'请输入完整的搜索信息后再试!','提示',MB_OK+MB_ICONWARNING);
Exit;
end;
S1:=SearchForm.TransformData('ClientVisit',KeyList.Text);
case List.ItemIndex of
0 : S:=S1+'='+ Key.Text;
1 : S:=S1+' Like '+''''+'%'+Key.Text+'%'+'''';
2 : S:=S1+' is Null or '+S1+'='+''''+'''';
3 : S:=S1+' <> Null or '+S1+'<>'+''''+'''';
end;
if KeyList.Text='日期'then begin
S := 'Dates =:KD';
try
Dates:=StrToDate(Key.Text);
except
Messagebox(handle,'您输入的日期格式不正确,请按照“2008-01-01”的格式重新输入!','错误',MB_OK+MB_ICONERROR);
Exit;
end;
end;
with DM1.ADODataSet10 do try
Close;
CommandText:='select * from ClientVisit where '+S;
if KeyList.Text='日期'then
Parameters.ParamByName('KD').Value:=FormatDateTime(ShortDateFormat,Dates);
Open;
if RecordCount=0 then begin
Messagebox(handle,PChar('没有找到任何关于“'+Key.Text+'”的客户拜访记录,请点击确定返回!'),'信息',MB_OK+MB_ICONINFORMATION);
Close;
CommandText:='Select * from ClientVisit';
Open;
end;
except
CommandText:='Select * from ClientVisit';
Open;
Messagebox(handle,'搜索客户拜访记录失败,请检查所输入的关键词是否正确!','错误',MB_OK+MB_ICONERROR);
end;
end;
procedure TVisitForm.KeyKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_RETURN then
RzBitBtn1Click(sender);
end;
procedure TVisitForm.RzBitBtn2Click(Sender: TObject);
begin
//复位搜索后的数据库内容
with DM1.ADODataSet10 do try
Close;
CommandText:='Select * from ClientVisit';
Open;
except
end;
end;
procedure TVisitForm.N1Click(Sender: TObject);
begin
//显示详细记录
if DM1.ADODataSet10.RecordCount>0 then begin
with DM1 do GoToDataSet(ADODataSet10,ADODataSet4);
CallatForm.RzDBNavigator1.Visible:=false;
CallatForm.ShowModal;
CallatForm.RzDBNavigator1.Visible:=true;
end;
end;
procedure TVisitForm.N3Click(Sender: TObject);
begin
//刷新数据
DM1.ADODataSet10.Requery();
end;
procedure TVisitForm.RzBitBtn3Click(Sender: TObject);
begin
MainForm.PrintReport(3);
end;
procedure TVisitForm.ListChange(Sender: TObject);
begin
case List.ItemIndex of
0,1 : Key.Enabled:=true;
2,3 : Key.Enabled:=false;
end;
end;
procedure TVisitForm.KeyListChange(Sender: TObject);
begin
if KeyList.Text='日期'then begin
List.ItemIndex:=0;
List.Enabled:=false;
end
else
List.Enabled:=true;
end;
procedure TVisitForm.N6Click(Sender: TObject);
begin
cxGrid1DBTableView1.Filtering.RunCustomizeDialog();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -