371 lines
10 KiB
ObjectPascal
371 lines
10 KiB
ObjectPascal
|
|
unit U_DyePCMachineList;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
|
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
|
|||
|
|
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
|
|||
|
|
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
|
|||
|
|
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
|
|||
|
|
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
|
|||
|
|
cxDropDownEdit, MovePanel, cxButtonEdit, cxCalendar, RM_System, RM_Common,
|
|||
|
|
RM_Class, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
|
|||
|
|
dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu,
|
|||
|
|
U_BaseList, dxScrollbarAnnotations;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TfrmDyePCMachineList = class(TfrmBaseList)
|
|||
|
|
ToolBar1: TToolBar;
|
|||
|
|
TBRafresh: TToolButton;
|
|||
|
|
TBFind: TToolButton;
|
|||
|
|
TBExport: TToolButton;
|
|||
|
|
TBPrint: TToolButton;
|
|||
|
|
TBClose: TToolButton;
|
|||
|
|
Panel1: TPanel;
|
|||
|
|
ADOQueryCmd: TADOQuery;
|
|||
|
|
ADOQueryMain: TADOQuery;
|
|||
|
|
ADOQueryTemp: TADOQuery;
|
|||
|
|
DataSource1: TDataSource;
|
|||
|
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
|
Label3: TLabel;
|
|||
|
|
CDS_Main: TClientDataSet;
|
|||
|
|
MovePanel2: TMovePanel;
|
|||
|
|
RMGridReport1: TRMGridReport;
|
|||
|
|
customerNoName: TEdit;
|
|||
|
|
Label13: TLabel;
|
|||
|
|
ywy: TEdit;
|
|||
|
|
Label17: TLabel;
|
|||
|
|
lbHx: TEdit;
|
|||
|
|
Label7: TLabel;
|
|||
|
|
ToolButton1: TToolButton;
|
|||
|
|
dbGrid1: TcxGrid;
|
|||
|
|
tv1: TcxGridDBTableView;
|
|||
|
|
tv1CraftIdx: TcxGridDBColumn;
|
|||
|
|
tv1mcName: TcxGridDBColumn;
|
|||
|
|
tv1CCQX1: TcxGridDBColumn;
|
|||
|
|
tv1DX1: TcxGridDBColumn;
|
|||
|
|
tv1DX2: TcxGridDBColumn;
|
|||
|
|
tv1DX3: TcxGridDBColumn;
|
|||
|
|
tv1DX4: TcxGridDBColumn;
|
|||
|
|
tv1DX5: TcxGridDBColumn;
|
|||
|
|
tv1DX6: TcxGridDBColumn;
|
|||
|
|
tv1JG1: TcxGridDBColumn;
|
|||
|
|
tv1JRG1: TcxGridDBColumn;
|
|||
|
|
tv1GC_BatchNo: TcxGridDBColumn;
|
|||
|
|
tv1CurGlideName: TcxGridDBColumn;
|
|||
|
|
tv1Note: TcxGridDBColumn;
|
|||
|
|
dbGrid1Level1: TcxGridLevel;
|
|||
|
|
ToolButton2: TToolButton;
|
|||
|
|
BegDate: TDateTimePicker;
|
|||
|
|
EndDate: TDateTimePicker;
|
|||
|
|
Label1: TLabel;
|
|||
|
|
Label2: TLabel;
|
|||
|
|
tv1PCKey: TcxGridDBColumn;
|
|||
|
|
BegTime: TDateTimePicker;
|
|||
|
|
EndTime: TDateTimePicker;
|
|||
|
|
cxStyleRepository1: TcxStyleRepository;
|
|||
|
|
cxStyle1: TcxStyle;
|
|||
|
|
MCNO: TComboBox;
|
|||
|
|
TbAdd: TToolButton;
|
|||
|
|
MCName: TEdit;
|
|||
|
|
TbDel: TToolButton;
|
|||
|
|
procedure FormDestroy(Sender: TObject);
|
|||
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
procedure FormCreate(Sender: TObject);
|
|||
|
|
procedure TBRafreshClick(Sender: TObject);
|
|||
|
|
procedure ConNoMChange(Sender: TObject);
|
|||
|
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
|
procedure FormShow(Sender: TObject);
|
|||
|
|
procedure TBExportClick(Sender: TObject);
|
|||
|
|
procedure TBFindClick(Sender: TObject);
|
|||
|
|
procedure pcidChange(Sender: TObject);
|
|||
|
|
procedure PRTColorChange(Sender: TObject);
|
|||
|
|
|
|||
|
|
procedure ToolButton1Click(Sender: TObject);
|
|||
|
|
procedure ToolButton2Click(Sender: TObject);
|
|||
|
|
|
|||
|
|
procedure tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
|||
|
|
procedure tv1mcNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
|
procedure MCNOChange(Sender: TObject);
|
|||
|
|
procedure TbAddClick(Sender: TObject);
|
|||
|
|
procedure TbDelClick(Sender: TObject);
|
|||
|
|
|
|||
|
|
|
|||
|
|
// procedure tv1CustomDrawCell(Sender: TcxCustomGridTableView;
|
|||
|
|
// ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
|
|||
|
|
// var ADone: Boolean);
|
|||
|
|
|
|||
|
|
private
|
|||
|
|
FLeft, FTop: Integer;
|
|||
|
|
procedure InitGrid();
|
|||
|
|
{ Private declarations }
|
|||
|
|
public
|
|||
|
|
fsyrName, canshu1: string;
|
|||
|
|
|
|||
|
|
{ Public declarations }
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
frmDyePCMachineList: TfrmDyePCMachineList;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
U_DataLink, U_RTFun, U_ZDYHelp, U_MachTaskList;
|
|||
|
|
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.FormDestroy(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmDyePCMachineList := nil;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
Action := caFree;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.FormCreate(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
|
|||
|
|
// EndDate.DateTime := SGetServerDateTime(ADOQueryTemp);
|
|||
|
|
// BegDate.DateTime := EndDate.DateTime;
|
|||
|
|
fsyrName := trim(DdataBase);
|
|||
|
|
canshu1 := trim(DParameters1);
|
|||
|
|
// SInitComBoxBySql(ADOQueryTemp, GlideName, false, 'select PSName as Name from Dye_Process');
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.InitGrid();
|
|||
|
|
var
|
|||
|
|
mBegDate, mendDate: string;
|
|||
|
|
mAction: string;
|
|||
|
|
rs: _Recordset;
|
|||
|
|
r: integer;
|
|||
|
|
begin
|
|||
|
|
// <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
|
|
|||
|
|
try
|
|||
|
|
tv1.BeginUpdate;
|
|||
|
|
ADOQueryMain.DisableControls;
|
|||
|
|
|
|||
|
|
with ADOQueryMain do
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
filtered := false;
|
|||
|
|
sql.Clear;
|
|||
|
|
SQL.Add('select * from V_Dye_Cloth_PaiGang where (BegTime between :StartTime and :EndTime) and MCNO = :MCNO order By BegTime');
|
|||
|
|
Parameters.ParamByName('StartTime').Value := Trunc(BegDate.Date) + Frac(BegTime.Time);
|
|||
|
|
Parameters.ParamByName('EndTime').Value := Trunc(EndDate.Date) + Frac(EndTime.Time);
|
|||
|
|
Parameters.ParamByName('MCNO').Value := MCNO.Text;
|
|||
|
|
Open;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
SCreateCDS(ADOQueryMain, CDS_main);
|
|||
|
|
SInitCDSData(ADOQueryMain, CDS_main);
|
|||
|
|
finally
|
|||
|
|
ADOQueryMain.EnableControls;
|
|||
|
|
tv1.EndUpdate;
|
|||
|
|
// tv1.ApplyBestFit();
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.MCNOChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitGrid();
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add(' select * from Bs_Machine where MCNO = ' + quotedStr(Trim(MCNO.Text)));
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
MCName.Text := ADOQueryCmd.FieldByName('MCName').AsString;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TBRafreshClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
MovePanel2.Visible := True;
|
|||
|
|
MovePanel2.Refresh;
|
|||
|
|
InitGrid();
|
|||
|
|
MovePanel2.Visible := False;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.ToolButton1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
WriteCxGrid(self.Caption + tv1.Name, Tv1, '<27>Ų<EFBFBD><C5B2><EFBFBD>Ϣ');
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.ToolButton2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
// if ADOQuerymain.IsEmpty then
|
|||
|
|
// exit;
|
|||
|
|
|
|||
|
|
frmMachTaskList := TfrmMachTaskList.create(self);
|
|||
|
|
with frmMachTaskList do
|
|||
|
|
begin
|
|||
|
|
// fcurMachId := trim(self.adoquerymain.FieldByName('mcid').AsString);
|
|||
|
|
// machName.text := trim(self.adoquerymain.FieldByName('mcName').AsString);
|
|||
|
|
showModal;
|
|||
|
|
free;
|
|||
|
|
end;
|
|||
|
|
initgrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
|||
|
|
begin
|
|||
|
|
// if ADOQuerymain.IsEmpty then
|
|||
|
|
// exit;
|
|||
|
|
|
|||
|
|
// frmMachTaskList := TfrmMachTaskList.create(self);
|
|||
|
|
// with frmMachTaskList do
|
|||
|
|
// begin
|
|||
|
|
// fBegTime := Self.CDS_Main.FieldByName('time').AsString;
|
|||
|
|
// fMCName := Self.Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
|||
|
|
// fText := self.CDS_Main.FieldByName(fMCName).AsString;
|
|||
|
|
// showModal;
|
|||
|
|
// free;
|
|||
|
|
// end;
|
|||
|
|
// initgrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.tv1mcNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
|
begin
|
|||
|
|
// if ADOQuerymain.IsEmpty then
|
|||
|
|
// exit;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.add('select * from PCAboutTime where time = ' + QuotedStr(Trim(CDS_Main.FieldByName('begtime').AsString)));
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
frmMachTaskList := TfrmMachTaskList.create(self);
|
|||
|
|
with frmMachTaskList do
|
|||
|
|
begin
|
|||
|
|
fBegTime := Self.CDS_Main.FieldByName('Begtime').AsString;
|
|||
|
|
fMCName := Self.MCName.Text;
|
|||
|
|
fText := self.ADOQueryCmd.FieldByName(fMCName).AsString;
|
|||
|
|
showModal;
|
|||
|
|
free;
|
|||
|
|
end;
|
|||
|
|
initgrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
//procedure TfrmDyePCMachineList.tv1CustomDrawCell(Sender: TcxCustomGridTableView;
|
|||
|
|
// ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
|
|||
|
|
// var ADone: Boolean);
|
|||
|
|
//begin
|
|||
|
|
// inherited;
|
|||
|
|
// ACanvas.Font.Size := 7;
|
|||
|
|
//end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.ConNoMChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.Active then
|
|||
|
|
begin
|
|||
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TbAddClick(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
mTime: TDateTime;
|
|||
|
|
begin
|
|||
|
|
if CDS_Main.IsEmpty then
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
mTime := Trunc(SGetServerDateTime(ADOQueryTemp) * 144 + 1) / 144;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
// <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ȡBegTime
|
|||
|
|
// CDS_Main.Prior;
|
|||
|
|
CDS_Main.Last;
|
|||
|
|
mTime := CDS_Main.FieldByName('EndTime').AsDateTime;
|
|||
|
|
// CDS_Main.Next; // <20>ƻص<C6BB>ǰλ<C7B0><CEBB>
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
with CDS_Main do
|
|||
|
|
begin
|
|||
|
|
Append;
|
|||
|
|
FieldByName('BegTime').Value := mTime;
|
|||
|
|
Post; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TBCloseClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
Close;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TbDelClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if (CDS_Main.FieldByName('PCID').Value = null) or (CDS_Main.FieldByName('PCID').Value = '') then
|
|||
|
|
begin
|
|||
|
|
CDS_Main.Delete;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_OK);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.FormShow(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
ReadCxGrid(self.Caption + tv1.Name, Tv1, '<27>Ų<EFBFBD><C5B2><EFBFBD>Ϣ');
|
|||
|
|
canshu1 := self.fParameters1;
|
|||
|
|
// BegDate.DateTime := strToDateTime(FormatDateTime('yyyy-MM-dd 00:00:00', SGetServerDate(ADOQueryTemp))) - 1;
|
|||
|
|
// EndDate.DateTime := strToDateTime(FormatDateTime('yyyy-MM-dd 00:00:00', SGetServerDate(ADOQueryTemp))) + 1;
|
|||
|
|
var ServerDate: TDateTime := SGetServerDate(ADOQueryTemp);
|
|||
|
|
|
|||
|
|
BegDate.Date := Trunc(ServerDate) - 1; // ǰһ<C7B0><D2BB>
|
|||
|
|
EndDate.Date := Trunc(ServerDate) + 1; // <20><>һ<EFBFBD><D2BB>
|
|||
|
|
BegTime.Time := EncodeTime(0, 0, 0, 0); // <20><><EFBFBD><EFBFBD>8<EFBFBD><38>
|
|||
|
|
endTime.Time := EncodeTime(0, 0, 0, 0); // <20><><EFBFBD><EFBFBD>6<EFBFBD><36>
|
|||
|
|
|
|||
|
|
MCNO.Text := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4>';
|
|||
|
|
MCName.Text := 'CCQX1';
|
|||
|
|
initgrid();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TBExportClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.IsEmpty then
|
|||
|
|
exit;
|
|||
|
|
// SelExportData(tv1,ADOQueryMain,self.Caption);
|
|||
|
|
TcxGridToExcel(self.Caption, DBGrid1);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.TBFindClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if ADOQueryMain.Active then
|
|||
|
|
begin
|
|||
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|||
|
|
SCreateCDS(ADOQueryMain, CDS_Main);
|
|||
|
|
SInitCDSData(ADOQueryMain, CDS_Main);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.pcidChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
TBFind.Click;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmDyePCMachineList.PRTColorChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
TBFind.Click;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|
|||
|
|
|