📄 unit_cx.pas
字号:
unit Unit_CX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, ExtCtrls, Mask;
type
TForm_CX = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
BitBtn_C: TBitBtn;
BitBtn_E: TBitBtn;
BitBtn_ZT: TBitBtn;
BitBtn_JT: TBitBtn;
BitBtn_SZ: TBitBtn;
BitBtn_BZ: TBitBtn;
BitBtn_SY: TBitBtn;
BitBtn_BY: TBitBtn;
BitBtn_QN: TBitBtn;
BitBtn_BN: TBitBtn;
DateTimePicker_Z: TDateTimePicker;
DateTimePicker_S: TDateTimePicker;
GroupBox3: TGroupBox;
Label1: TLabel;
Label2: TLabel;
ComboBox_type1: TComboBox;
ComboBox_type2: TComboBox;
ComboBox_type3: TComboBox;
Label3: TLabel;
RadioButton_D: TRadioButton;
RadioButton_X: TRadioButton;
Edit_money: TEdit;
ComboBox_spot: TComboBox;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
BitBtn_Q: TBitBtn;
Bevel1: TBevel;
procedure BitBtn_EClick(Sender: TObject);
procedure BitBtn_QClick(Sender: TObject);
procedure BitBtn_JTClick(Sender: TObject);
procedure BitBtn_BYClick(Sender: TObject);
procedure BitBtn_CClick(Sender: TObject);
procedure BitBtn_BNClick(Sender: TObject);
procedure BitBtn_QNClick(Sender: TObject);
procedure BitBtn_SYClick(Sender: TObject);
procedure BitBtn_ZTClick(Sender: TObject);
procedure BitBtn_BZClick(Sender: TObject);
procedure BitBtn_SZClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ComboBox_type2Click(Sender: TObject);
procedure ComboBox_type1Click(Sender: TObject);
procedure DateTimePicker_SChange(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
procedure ChaXun_RiQi;
{ Public declarations }
end;
var
Form_CX: TForm_CX;
implementation
uses jia, Unit_GL;
{$R *.dfm}
procedure TForm_CX.ChaXun_RiQi;
begin
Form1.SDate := DateTimePicker_S.Date;
Form1.EDate := DateTimePicker_Z.Date;
Form1.Table1.IndexName :='DATE';
Form1.Table1.SetRange([Form1.SDate],[Form1.EDate]);
Form1.Table1.ApplyRange;
Form1.Table1.Filtered := False; // 去过滤
end;
procedure TForm_CX.BitBtn_CClick(Sender: TObject);
var //查询
F: String;
C: Char;
begin
F:='';
ChaXun_RiQi;
if ComboBox_type1.Text <> '' then
if F = '' then
F:='(type1='+#39+ComboBox_type1.Text+#39+')'
else
F:=F + 'and(type1='+#39+ComboBox_type1.Text+#39+')';
if ComboBox_type2.Text <> '' then
if F = '' then
F:='(type2='+#39+ComboBox_type2.Text+#39+')'
else
F:=F + 'and(type2='+#39+ComboBox_type2.Text+#39+')';
if ComboBox_type3.Text <> '' then
if F = '' then
F:='(type3='+#39+ComboBox_type3.Text+#39+')'
else
F:=F + 'and(type3='+#39+ComboBox_type3.Text+#39+')';
if ComboBox_spot.Text <> '' then
if F = '' then
F:='(spot='+#39+ComboBox_spot.Text+#39+')'
else
F:=F + 'and(spot='+#39+ComboBox_spot.Text+#39+')';
if RadioButton_D.Checked then
C:='>'
else
C:='<';
if Edit_money.Text <>'' then
begin
try
if (StrToFloat(Edit_money.Text)>99999)or(StrToFloat(Edit_money.Text)<-9999) then
begin
ShowMessage('金额超出限制!');
Exit;
end;
except
ShowMessage('金额格式错误!');
Exit;
end;
if F = '' then
F:='(money'+C+#39+Edit_money.Text+#39+')'
else
F:=F + 'and(money'+C+#39+Edit_money.Text+#39+')';
end;
Form1.Table1.Filter :=F;
Form1.Table1.Filtered := True;
Form1.TableMoneyJS;
end;
procedure TForm_CX.BitBtn_EClick(Sender: TObject);
begin //关闭
Close;
end;
procedure TForm_CX.BitBtn_QClick(Sender: TObject);
begin //清空
ComboBox_type1.ItemIndex := -1;
ComboBox_type2.ItemIndex := -1;
ComboBox_type3.ItemIndex := -1;
Edit_money.Text :='';
ComboBox_spot.ItemIndex := -1;
end;
procedure TForm_CX.BitBtn_JTClick(Sender: TObject);
begin //今天
DateTimePicker_S.Date :=Date;
DateTimePicker_Z.Date :=Date;
end;
procedure TForm_CX.BitBtn_ZTClick(Sender: TObject);
begin //昨天
DateTimePicker_S.Date :=Date-1;
DateTimePicker_Z.Date :=Date-1;
end;
procedure TForm_CX.BitBtn_BYClick(Sender: TObject);
var //本月
n,y,t: String;
MMax : Integer;
begin
T:=FormatDateTime('yyyy-mm-dd',date);
n:= Copy(t,1,4);
y:= Copy(t,6, 2);
if copy(y,2,1)='-' then y:=copy(y,1,1);
MMax :=Form1.SetMMax(StrToInt(n),StrToInt(y));
DateTimePicker_S.Date :=StrToDate(n+'-'+y+'-01');
DateTimePicker_Z.Date :=StrToDate(n+'-'+y+'-'+IntToStr(MMax));
end;
procedure TForm_CX.BitBtn_SYClick(Sender: TObject);
var //上月
n,y,t: String;
MMax : Integer;
begin
T:=FormatDateTime('yyyy-mm-dd',date);
y:= Copy(t,9,2);
T:=FormatDateTime('yyyy-mm-dd',date-StrToInt(y));
n:= Copy(t,1,4);
y:= Copy(t,6, 2);
MMax :=Form1.SetMMax(StrToInt(n),StrToInt(y));
DateTimePicker_S.Date :=StrToDate(n+'-'+y+'-01');
DateTimePicker_Z.Date :=StrToDate(n+'-'+y+'-'+IntToStr(MMax));
end;
procedure TForm_CX.BitBtn_BZClick(Sender: TObject);
var //本周
t,y,m,d: String;
w: Integer;
begin
w :=DayOfWeek(date) -1;
T:=FormatDateTime('yyyy-mm-dd',date-w);
y:= Copy(t,1,4);
m:= Copy(t,6,2);
d:= Copy(t,9,2);
DateTimePicker_S.Date :=StrToDate(y+'-'+m+'-'+d);
DateTimePicker_Z.Date :=DateTimePicker_S.Date +6;
end;
procedure TForm_CX.BitBtn_SZClick(Sender: TObject);
var //上周
t,y,m,d: String;
w: Integer;
begin
w :=DayOfWeek(date) -1;
T:=FormatDateTime('yyyy-mm-dd',date-w-7);
y:= Copy(t,1,4);
m:= Copy(t,6,2);
d:= Copy(t,9,2);
DateTimePicker_S.Date :=StrToDate(y+'-'+m+'-'+d);
DateTimePicker_Z.Date :=DateTimePicker_S.Date +6;
end;
procedure TForm_CX.BitBtn_BNClick(Sender: TObject);
var //本年
n,T : String;
begin
T:=FormatDateTime('yyyy-mm-dd',date);
n:= Copy(t,1,4);
DateTimePicker_S.Date :=StrToDate(n+'-01-01');
DateTimePicker_Z.Date :=StrToDate(n+'-12-31');
end;
procedure TForm_CX.BitBtn_QNClick(Sender: TObject);
var //去年
n,t : String;
begin
T:=FormatDateTime('yyyy-mm-dd',date);
n:= Copy(t,1,4);
DateTimePicker_S.Date :=StrToDate(IntToStr(StrToInt(n)-1)+'-01-01');
DateTimePicker_Z.Date :=StrToDate(IntToStr(StrToInt(n)-1)+'-12-31');
end;
procedure TForm_CX.FormShow(Sender: TObject);
begin
ComboBox_spot.Items := Form_GL.ListBox_spot.Items;
end;
procedure TForm_CX.ComboBox_type2Click(Sender: TObject);
var
mynode: TTreeNode;
i,j: Integer;
begin
ComboBox_type3.Clear;
for i:=0 to Form1.TreeView1.Items.Count -1 do
begin
mynode := Form1.TreeView1.Items[i];
if mynode.Level = 1 then
if (mynode.Text = ComboBox_type2.Text)
and (mynode.Parent.Text = ComboBox_type1.Text) then
begin
for j:=0 to mynode.Count -1 do
ComboBox_type3.Items.Add(mynode.item[j].Text);
Break;
end;
end;
end;
procedure TForm_CX.ComboBox_type1Click(Sender: TObject);
var
mynode: TTreeNode;
i,j: Integer;
begin
ComboBox_type2.Clear;
ComboBox_type3.Clear;
for i:=0 to Form1.TreeView1.Items.Count -1 do
begin
mynode := Form1.TreeView1.Items[i];
if (mynode.Text = ComboBox_type1.Text) and (mynode.Level = 0) then
begin
for j:=0 to mynode.Count -1 do
ComboBox_type2.Items.Add(mynode.item[j].Text);
Break;
end;
end;
end;
procedure TForm_CX.DateTimePicker_SChange(Sender: TObject);
begin
DateTimePicker_Z.DateTime :=DateTimePicker_S.DateTime;
end;
procedure TForm_CX.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Form1.TreeView1.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -