D7DJzhite/检验管理/U_frmSysZsdLogOrder.pas
DESKTOP-E401PHE\Administrator 24c4e9c3c6 ~
2025-07-22 15:24:38 +08:00

189 lines
4.5 KiB
ObjectPascal
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_frmSysZsdLogOrder;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, strUtils,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, ADODB, StdCtrls, ExtCtrls, ImgList,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
cxGridCustomPopupMenu, cxGridPopupMenu;
type
TfrmSysZsdLogOrder = class(TForm)
ToolBar1: TToolBar;
TQry: TToolButton;
Tclose: TToolButton;
ADOQueryLog: TADOQuery;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
cxGrid1: TcxGrid;
tv1: TcxGridDBTableView;
tv1OperMan: TcxGridDBColumn;
tv1jopertime: TcxGridDBColumn;
tv1Model: TcxGridDBColumn;
tv1acction: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
tv1Opevent: TcxGridDBColumn;
tv1Result: TcxGridDBColumn;
Panel1: TPanel;
Label2: TLabel;
Label1: TLabel;
begDate: TDateTimePicker;
endDate: TDateTimePicker;
Label3: TLabel;
edt_model: TEdit;
CheckBox1: TCheckBox;
Label4: TLabel;
edt_nr: TEdit;
ThreeImgList: TImageList;
cxGridPopupMenu1: TcxGridPopupMenu;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
procedure TcloseClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TQryClick(Sender: TObject);
procedure edt_modelChange(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
procedure DoQuery();
procedure DoFilter();
public
fModel, facction: string;
fOtherWhere: string;
FMainid: string;
end;
var
frmSysZsdLogOrder: TfrmSysZsdLogOrder;
implementation
uses
U_DataLink;
{$R *.dfm}
procedure TfrmSysZsdLogOrder.TcloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmSysZsdLogOrder.FormCreate(Sender: TObject);
begin
cxGrid1.Align := alClient;
begDate.DateTime := date - 31;
endDate.DateTime := date;
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
end;
/////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////
procedure TfrmSysZsdLogOrder.DoQuery();
var
mbegdate, menddate: string;
begin
mbegdate := formatDatetime('yyyy-MM-dd', begDate.Date); //
menddate := formatDatetime('yyyy-MM-dd', endDate.Date + 1);
try
with ADOQueryLog do
begin
close;
sql.clear;
filtered := false;
sql.add('select A.* ');
sql.add('from SY_sysLog A');
if CheckBox1.Checked then
begin
sql.Add('where OperTime>=' + quotedStr(mbegdate));
sql.Add('and OperTime<' + quotedStr(menddate));
end
else
begin
sql.Add('where 1=1');
end;
// sql.Add(' and isnull(Mainid,'''')='''+Trim(FMainid)+''' and isnull(Mainid,'''')<>'''' ');
// if trim(facction)<>'' then
// sql.add('and acction='+quotedStr(facction));
sql.add('and acction like 'ʾ<D6B8><CABE>%'' ');
if trim(fOtherWhere) <> '' then
begin
sql.add(fOtherWhere);
end;
sql.Add('order by operOr,Opertime');
// ShowMessage(SQL.Text);
Open;
end;
finally
end;
end;
///////////////////////////////////////////////////////////
//
///////////////////////////////////////////////////////////
procedure TfrmSysZsdLogOrder.DoFilter();
var
filterStr: string;
begin
filterStr := '';
//
if trim(edt_model.text) <> '' then
begin
filterStr := ' and model =' + quotedStr(trim(edt_model.text));
end;
if trim(edt_nr.text) <> '' then
begin
filterStr := ' and OpEvent like ' + quotedStr('%' + trim(edt_nr.text) + '%');
end;
try
ADOQueryLog.DisableControls;
if trim(filterStr) = '' then
begin
ADOQueryLog.Filtered := false;
exit;
end;
filterStr := trim(RightBStr(filterStr, length(filterStr) - 4));
with ADOQueryLog do
begin
filtered := false;
filter := filterStr;
filtered := true;
end;
finally
ADOQueryLog.EnableControls;
end;
end;
procedure TfrmSysZsdLogOrder.FormShow(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmSysZsdLogOrder.TQryClick(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmSysZsdLogOrder.edt_modelChange(Sender: TObject);
begin
DoFilter();
end;
procedure TfrmSysZsdLogOrder.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := cafree;
end;
end.