D10sxYilanbuyi/F04染色刷卡/U_DyePCList.pas

275 lines
7.4 KiB
ObjectPascal
Raw Normal View History

2025-08-01 16:35:48 +08:00
unit U_DyePCList;
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
TfrmDyePCList = 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;
pcid: TEdit;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
Label5: TLabel;
orderNo: TEdit;
MovePanel2: TMovePanel;
Label10: TLabel;
RMGridReport1: TRMGridReport;
Label16: TLabel;
customerNoName: TEdit;
Label13: TLabel;
ywy: TEdit;
Label17: TLabel;
C_Color: TEdit;
Label4: TLabel;
C_ColorNo: TEdit;
Label6: TLabel;
lbHx: TEdit;
Label7: TLabel;
GlideName: TComboBox;
StaffName: TEdit;
Label9: TLabel;
begtime: TDateTimePicker;
endTime: TDateTimePicker;
ToolButton1: TToolButton;
dbGrid1: TcxGrid;
tv1: TcxGridDBTableView;
tv1CraftIdx: TcxGridDBColumn;
tv1mcName: TcxGridDBColumn;
tv1runStatus: TcxGridDBColumn;
tv1lastMinNum: TcxGridDBColumn;
tv1curDoInfo: TcxGridDBColumn;
tv1curInTime: TcxGridDBColumn;
tv1runTime: TcxGridDBColumn;
tv1Column1: TcxGridDBColumn;
tv1wait1: TcxGridDBColumn;
tv1wait2: TcxGridDBColumn;
tv1wait3: TcxGridDBColumn;
tv1wait4: TcxGridDBColumn;
tv1wait5: TcxGridDBColumn;
tv1wait6: TcxGridDBColumn;
tv1finish1: TcxGridDBColumn;
tv1finish2: TcxGridDBColumn;
tv1finish3: TcxGridDBColumn;
tv1GC_BatchNo: TcxGridDBColumn;
tv1finish4: TcxGridDBColumn;
tv1finish5: TcxGridDBColumn;
tv1finish6: TcxGridDBColumn;
tv1CurGlideName: TcxGridDBColumn;
tv1Note: TcxGridDBColumn;
dbGrid1Level1: TcxGridLevel;
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 TBdelClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
FLeft, FTop: Integer;
procedure InitGrid();
{ Private declarations }
public
fsyrName, canshu1: string;
{ Public declarations }
end;
var
frmDyePCList: TfrmDyePCList;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmDyePCList.FormDestroy(Sender: TObject);
begin
inherited;
frmDyePCList := nil;
end;
procedure TfrmDyePCList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmDyePCList.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 TfrmDyePCList.InitGrid();
var
Msql, mbegdate, menddate: string;
begin
Msql := '';
if SGetFilters(Panel1, 1, 2) <> '' then
Msql := Msql + ' and ' + SGetFilters(Panel1, 1, 2);
mbegdate := FormatDateTime('yyyy-MM-dd', begdate.Date) + ' ' + FormatDateTime('HH:nn', begTime.Time);
menddate := FormatDateTime('yyyy-MM-dd', enddate.Date) + ' ' + FormatDateTime('HH:nn', endTime.Time);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
Filtered := False;
// sql.Add('select GOID,A.GlideName,Qty,rollnum,groupName,B.*,a.filler as filler2,a.filltime as filltime2,gotime,QtyUnit,StaffName from Dye_Plan_Glide_OutPut A ');
sql.Add('select * from V_Dye_Plan_Glide_OutPut A');
sql.Add('inner join Dye_Plan_Card B on A.PCID=B.PCID ');
sql.add('where A.GOTime>=''' + trim(mbegdate) + ''' ');
sql.Add('and A.GOTime<''' + trim(menddate) + ''' ');
sql.Add(Msql);
// showmessage(sql.Text);
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
TBFind.Click;
end;
procedure TfrmDyePCList.TBRafreshClick(Sender: TObject);
begin
MovePanel2.Visible := True;
MovePanel2.Refresh;
InitGrid();
MovePanel2.Visible := False;
end;
procedure TfrmDyePCList.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
end;
procedure TfrmDyePCList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmDyePCList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmDyePCList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
canshu1 := self.fParameters1;
initgrid();
end;
procedure TfrmDyePCList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
// SelExportData(tv1,ADOQueryMain,self.Caption);
TcxGridToExcel(self.Caption, DBGrid1);
end;
procedure TfrmDyePCList.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 TfrmDyePCList.pcidChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmDyePCList.PRTColorChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmDyePCList.TBdelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into Dye_Need_Up(UType,UDataId) values(''<27><>̨ˢ<CCA8><CBA2>'',' + quotedstr(Trim(CDS_Main.fieldbyname('GOID').AsString)) + ') ');
sql.Add('delete Dye_Plan_Glide_OutPut where GOID=''' + Trim(CDS_Main.fieldbyname('GOID').AsString) + '''');
ExecSQL;
end;
////////////////// <20><><EFBFBD>½<EFBFBD><C2BD><EFBFBD> //////////////////
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('exec P_Dye_Card_upCL @PCID=' + QuotedStr(CDS_Main.fieldbyname('pcid').AsString));
execsql;
end;
////////////////// <20><><EFBFBD>½<EFBFBD><C2BD><EFBFBD> //////////////////
CDS_Main.Delete;
except
application.MessageBox(<><C9BE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
end.