📄 lsxx_pas.~pas
字号:
unit lsxx_pas;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
datamodal, StdCtrls, DBCtrls, ExtCtrls, Grids, DBGrids, ComCtrls,gvas,
Mask, ToolEdit, RXCtrls, Buttons, Db, DBTables, RXSwitch;
type
Tlsxx_form = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
Panel2: TPanel;
DBLookupComboBox3: TDBLookupComboBox;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
DateEdit1: TDateEdit;
DateEdit2: TDateEdit;
GroupBox3: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
DBLookupComboBox1: TDBLookupComboBox;
btn_print: TBitBtn;
Edit1: TEdit;
DBLookupComboBox2: TDBLookupComboBox;
DBLookupComboBox4: TDBLookupComboBox;
DBLookupComboBox5: TDBLookupComboBox;
Label1: TLabel;
Label2: TLabel;
Label4: TLabel;
Label7: TLabel;
Label8: TLabel;
Label5: TLabel;
Label6: TLabel;
Label3: TLabel;
BitBtn12: TBitBtn;
BitBtn11: TBitBtn;
CancelBtn: TBitBtn;
procedure Button5Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure btn_printClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure DateEdit2Exit(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure DateEdit1Exit(Sender: TObject);
private
{ Private declarations }
procedure SetButton;
public
{ Public declarations }
end;
var
lsxx_form: Tlsxx_form;
sql1:string;
implementation
uses reports_DEL,menu,password_unit;
//delrecord, ql_data, czdlg, InfoQuery, reports2;
{$R *.DFM}
var
filtervar:string;
procedure Tlsxx_form.Button5Click(Sender: TObject);
begin
close;
end;
procedure Tlsxx_form.FormCreate(Sender: TObject);
var
ls,ms,rs:string;
begin
getkeyset(ls,ms,rs);
RadioButton1.Caption:=ls;
RadioButton2.Caption :=ms;
RadioButton3.Caption:=rs;
if not assigned(lsreportForm1)then
application.createform(TlsreportForm1,lsreportForm1);
end;
procedure Tlsxx_form.SetButton;
begin
end;
procedure Tlsxx_form.btn_printClick(Sender: TObject);
begin
DataModule1.q_view.DisableControls;
//lsreportform:=tlsreportform.create(self)
lsreportform1.qrlabel15.caption:=password.ComboBox1.text;
lsreportForm1.QuickRep1.preview;
lsreportForm1.QuickRep1.qrprinter:=nil;
DataModule1.q_view.enableControls;
end;
procedure Tlsxx_form.FormActivate(Sender: TObject);
begin
self.Caption:=mainform.label1.caption;
mainform.Label1.Visible:=false;
with DataModule1.q_view do
begin
sql1:=sql.Text;
end;
end;
procedure Tlsxx_form.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure Tlsxx_form.FormShow(Sender: TObject);
var
i1,i2,i3:integer;
f1,f2:real;
begin
if (screen.Height<600) and( screen.Width<800) then
begin
scaled:=true;
height:=374;//round(height*longint(screen.height)*96 / 600/screen.pixelsperinch);
width :=632;//round( width *longint(screen.width)*96 / 800/screen.pixelsperinch);
left:=4;//round((screen.Width-Width)/2);
top:=78;//round((screen.height-self.height)/2);
ScaleControls(screen.width, 800);
ScaleControls(96,screen.pixelsperinch);
f1:=screen.width*96/800/screen.pixelsperinch;
f2:=screen.width/800;
with dbgrid1 do
begin
i1:=columns.Count;
i3:=round(12*f1);if i3<7 then i3:=7;
label1.Font.Size:=i3-1;
label2.Font.Size:=i3-1;
label3.Font.Size:=i3-1;
label4.Font.Size:=i3-1;
label5.Font.Size:=i3-1;
label6.Font.Size:=i3-1;
label7.Font.Size:=i3-1;
label8.Font.Size:=i3-1;
dblookupcombobox1.Font.Size:=i3-1;
dblookupcombobox3.Font.Size:=i3-1;
dblookupcombobox2.Font.Size:=i3-1;
dblookupcombobox4.Font.Size:=i3-1;
dblookupcombobox5.Font.Size:=i3-1;
edit1.font.size:=i3-1;
dateedit1.Font.Size:=i3-1;
dateedit2.Font.Size:=i3-1;
RadioButton1.Font.Size:=i3-1;
RadioButton3.Font.Size:=i3-1;
RadioButton2.Font.Size:=i3-1;
//BitBtn1.Font.Size:=i3-1;
CancelBtn.Font.Size:=i3-1;
btn_print.Font.Size:=i3-1;
BitBtn11.Font.Size:=i3-1;
BitBtn12.Font.Size:=i3-1;
groupbox1.Font.Size:=i3-1;
groupbox2.Font.Size:=i3-1;
groupbox3.Font.Size:=i3-1;
panel1.Font.Size:=20;
for i2:=0 TO i1-1 DO
begin
columns[i2].title.font.size:=i3-1;
columns[i2].width:=round(columns[i2].width*f2);
end;
end;
end
else
begin
self.Width :=780;
self.Height:= 450;
end;
with DataModule1 do
begin
q_node.close;
q_worker.close;
q_line.close;
q_name.close;
q_place.Close;
q_node.Open;
q_worker.open;
q_line.open;
q_name.Open;
q_place.Open;
q_view.close;
q_view.open;
q_view.Filter:='';
q_view.Filtered:=false;
end;
dateedit1.text:=' - - ';
dateedit2.text:=' - - ';
edit1.Text :='';
RadioButton1.Checked:=false;
RadioButton2.Checked:=false;
RadioButton3.Checked:=false;
end;
procedure Tlsxx_form.BitBtn11Click(Sender: TObject);
var ch:string;
s1,s2:string;
begin
if (dateedit2.date<>0) and(dateedit1.date<>0) then
begin
if dateedit2.Date<dateedit1.Date then
begin
Application.MessageBox('起始日不能大於截至日期,請重新輸入','消息',MB_ICONINFORMATION);
exit;
end;
end;
if edit1.Text<>'' then
begin
ch:=uppercase(trim(edit1.Text));
try
if (length(trim(ch)))<>2 then
begin
Application.MessageBox('請輸入2位筆號,範圍在00-FF之間!','消息',MB_ICONINFORMATION);
edit1.SetFocus ;
edit1.Text :='';
exit;
end;
s1:=uppercase(copy(ch,1,1));
s2:=uppercase(copy(ch,2,1));
if (((uppercase(s1)<'0')or(uppercase(s1)>'F'))or((uppercase(s2)<'0')or(uppercase(s2)>'F'))) then
begin
Application.MessageBox('請輸入2位合法的筆號,範圍在00-FF之間!','消息',MB_ICONINFORMATION);
edit1.SetFocus ;
edit1.Text :='';
exit;
end;
except
begin
Application.MessageBox('請輸入2位合法的筆號,範圍在00-FF之間!','消息',MB_ICONINFORMATION);
edit1.SetFocus ;
edit1.Text :='';
exit;
end;
end;
end;
with DataModule1.q_view do
begin //查询
close;
sql.Clear ;
sql.add(SQL1);
sql.add('where pencode<>''''');
if edit1.Text<>'' then
begin
sql.add('and(pencode=:pencode)') ;
parambyname('pencode').asstring:=edit1.Text ;
end;
if dblookupcombobox1.Text<>'' then //线路
begin
sql.add('and (linename=:linename)');
parambyname('linename').asstring:=varastype(dblookupcombobox1.keyvalue,varstring);
end;
if dblookupcombobox3.Text<>'' then //巡更员
begin
sql.add('and(workercode=:workercode)');
parambyname('workercode').asstring:=varastype(dblookupcombobox3.keyvalue,varstring);
end;
if dblookupcombobox2.Text<>'' then// 巡更点(钮号)
begin
sql.add('and (node=:node)');
parambyname('node').asstring:=varastype(dblookupcombobox2.keyvalue,varstring);
end;
if dblookupcombobox4.Text<>'' then//巡更点(设备名称)
begin
sql.add('and(nodename = :name)');
parambyname('name').asstring:=dblookupcombobox4.Text;
end;
if dblookupcombobox5.Text<>'' then
begin
sql.add('and(nodeplace=:nodeplace)');
parambyname('nodeplace').asstring:=dblookupcombobox5.Text ;
end;
if (RadioButton1.Checked) or (RadioButton2.Checked) or (RadioButton3.Checked) then//巡更状态
begin
sql.add('AND (pstatu=:pstatu)');
if (RadioButton1.Checked) then
parambyname('pstatu').asstring:=RadioButton1.Caption
else
if (RadioButton2.Checked) then
parambyname('pstatu').asstring:=RadioButton2.Caption
else
if (RadioButton3.Checked) then
parambyname('pstatu').asstring:=RadioButton3.Caption ;
end;
sql.add('order by dataseq desc') ;
filtered:=false;
if dateedit1.date<>0 then
s1:='pdate>='+''''+datetostr(dateedit1.date)+'''';
if dateedit2.date<>0 then
s2:='pdate<='+''''+datetostr(dateedit2.date)+'''';
if (dateedit1.date<>0) and (dateedit2.date<>0) then
begin
filter:='';
filtered:=true;
filter:=s1+' and '+s2;
//filtered:=true;
end
else
if dateedit1.date<>0 then
begin
filter:='';
filtered:=true;
filter:=s1;
//filtered:=true;
end
else
if dateedit2.date<>0 then
begin
filter:='';
filtered:=true;
filter:=s2;
//filtered:=true;
end;
open;
end;//查询
end;
procedure Tlsxx_form.BitBtn12Click(Sender: TObject);
begin
dblookupcombobox1.KeyValue:=null;
dblookupcombobox2.KeyValue:=null;
dblookupcombobox3.KeyValue:=null;
dblookupcombobox4.KeyValue:=null;
dblookupcombobox5.KeyValue:=null;
edit1.Text :='';
dateedit1.text:=' - - ';
dateedit2.text:=' - - ';
RadioButton1.Checked:=false;
RadioButton2.Checked:=false;
RadioButton3.Checked:=false;
with DataModule1.q_view do
begin
close;
sql.clear;
sql.add(sql1);sql.add('order by dataseq desc') ;
open;
filtered:=false;
//showmessage(inttostr(recordcount));
end;
end;
procedure Tlsxx_form.DateEdit2Exit(Sender: TObject);
var ss:tdate;
begin
if dateedit2.date<>0 then
begin
try
ss:=strtodate(dateedit2.text) ;
except
Application.MessageBox('輸入的日期有誤!','消息',MB_ICONINFORMATION);
dateedit2.Text:=' - - ';
dateedit2.SetFocus ;
exit;
end;
end;
if (dateedit2.date<>0) and(dateedit1.date<>0) then
begin
if dateedit2.Date<dateedit1.Date then
begin
Application.MessageBox('起始日不能大於截至日期,請重新輸入','消息',MB_ICONINFORMATION);
exit;
end;
end;
end;
procedure Tlsxx_form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
lsreportForm1.Free;
lsreportForm1:=nil;
lsxx_form :=nil ;
end;
procedure Tlsxx_form.Button1Click(Sender: TObject);
begin
Application.MessageBox(Pchar('width='+inttostr(self.width)+'--'+'height='+inttostr(self.height)+'--'+'left='+inttostr(self.left)+'--top='+inttostr(self.top)),'消息',MB_ICONINFORMATION);
end;
procedure Tlsxx_form.DateEdit1Exit(Sender: TObject);
var ss:tdate;
begin
if dateedit1.date<>0 then
begin
try
ss:=strtodate(dateedit1.text) ;
except
Application.MessageBox('輸入的日期有誤!','消息',MB_ICONINFORMATION);
dateedit1.Text:=' - - ';
dateedit1.SetFocus ;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -