D7gmYongjin/BI(BIView.dll)/U_DCWorkerMX.pas
DESKTOP-E401PHE\Administrator 8452f471f5 新建3-04
2026-03-04 09:51:44 +08:00

220 lines
6.6 KiB
ObjectPascal

unit U_DCWorkerMX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls,
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit,
cxTextEdit, cxDBLookupComboBox, cxContainer, cxDropDownEdit, cxPC, Menus,
TeEngine, Series, TeeProcs, Chart, DbChart, GanttCh, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
type
TfrmDCWorkerMX = class(TForm)
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
cxGridPopupMenu1: TcxGridPopupMenu;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
Panel2: TPanel;
Panel4: TPanel;
Panel5: TPanel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn15: TcxGridDBColumn;
cxGridDBColumn16: TcxGridDBColumn;
cxGridDBColumn17: TcxGridDBColumn;
cxGridDBColumn18: TcxGridDBColumn;
cxGridDBColumn19: TcxGridDBColumn;
cxGridDBColumn20: TcxGridDBColumn;
cxGridDBColumn21: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
Panel6: TPanel;
Panel7: TPanel;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn9: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Panel8: TPanel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn11: TcxGridDBColumn;
cxGridDBColumn12: TcxGridDBColumn;
cxGridDBColumn13: TcxGridDBColumn;
cxGridDBColumn14: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DataSource2: TDataSource;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu3: TcxGridPopupMenu;
DataSource3: TDataSource;
ClientDataSet3: TClientDataSet;
Tv1Column1: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure cxGridDBColumn10CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
private
{ Private declarations }
procedure InitGrid();
public
FBegdate,FEnddate:TDate;
FWorker:String;
end;
var
frmDCWorkerMX: TfrmDCWorkerMX;
implementation
uses
U_DataLink, U_RTFun,U_DCCarMX_Worker;
{$R *.dfm}
procedure TfrmDCWorkerMX.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_DC_Worker_MX :begdate,:enddate,:Worker,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FBegdate));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FEnddate));;
Parameters.ParamByName('Worker').Value:=FWorker;
Parameters.ParamByName('Type').Value:='CarNo';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet1);
SInitCDSData20(ADOQueryMain, ClientDataSet1);
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_DC_Worker_MX :begdate,:enddate,:Worker,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FBegdate));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FEnddate));;
Parameters.ParamByName('Worker').Value:=FWorker;
Parameters.ParamByName('Type').Value:='C_CodeName';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet2);
SInitCDSData20(ADOQueryMain, ClientDataSet2);
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_DC_Worker_MX :begdate,:enddate,:Worker,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FBegdate));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',FEnddate));;
Parameters.ParamByName('Worker').Value:=FWorker;
Parameters.ParamByName('Type').Value:='JSDate';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet3);
SInitCDSData20(ADOQueryMain, ClientDataSet3);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmDCWorkerMX.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caHide;;
end;
procedure TfrmDCWorkerMX.FormShow(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmDCWorkerMX.FormDestroy(Sender: TObject);
begin
frmDCWorkerMX:=nil;
end;
procedure TfrmDCWorkerMX.Tv1DblClick(Sender: TObject);
begin
{try
frmDCCarMX_Worker := TfrmDCCarMX_Worker.Create(Application);
with frmDCCarMX_Worker do
begin
FBegdate := Self.FBegdate;
FEnddate := Self.FEnddate;
FCarNo := Trim(Self.FCarNo);
FWorker := Trim(Self.ClientDataSet1.fieldbyname('Worker').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmDCCarMX_Worker.Free;
end; }
end;
procedure TfrmDCWorkerMX.cxGridDBColumn10CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
Id0,Id1,Id11,Id21:Integer;
begin
Id0:=TV1.GetColumnByFieldName('Qty0').Index;
if AViewInfo.GridRecord.Values[Id0]>15000 then
begin
ACanvas.Brush.Color:=clRed;
end;
Id1:=TV1.GetColumnByFieldName('Qty1').Index;
if AViewInfo.GridRecord.Values[Id0]>22500 then
begin
ACanvas.Brush.Color:=clRed;
end;
Id11:=TV1.GetColumnByFieldName('Qty11').Index;
if AViewInfo.GridRecord.Values[Id11]>22500 then
begin
ACanvas.Brush.Color:=clRed;
end;
Id21:=TV1.GetColumnByFieldName('Qty21').Index;
if AViewInfo.GridRecord.Values[Id21]>22500 then
begin
ACanvas.Brush.Color:=clRed;
end;
end;
end.