D10gmBitao/进度统计查询(Statistics.dll)/U_CHDDLISTMX.pas

287 lines
9.9 KiB
ObjectPascal
Raw Permalink Normal View History

2025-04-11 10:54:54 +08:00
unit U_CHDDLISTMX;
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, cxGridBandedTableView, cxGridDBBandedTableView,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseHelp, dxSkinsCore,
dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, System.ImageList,
Vcl.ImgList, U_BaseList, RM_e_Xls;
type
TfrmDDCHLISTMX = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDBHZ: TRMDBDataSet;
Label3: TLabel;
MPRTCodeName: TEdit;
cxGridPopupMenu2: TcxGridPopupMenu;
Label1: TLabel;
MPRTCode: TEdit;
EndDate: TDateTimePicker;
Label4: TLabel;
Label5: TLabel;
Begdate: TDateTimePicker;
cxGrid1: TcxGrid;
TV1: TcxGridDBBandedTableView;
cxGridDBBandedColumn35: TcxGridDBBandedColumn;
cxGridDBBandedColumn42: TcxGridDBBandedColumn;
cxGridDBBandedColumn62: TcxGridDBBandedColumn;
cxGridDBBandedColumn64: TcxGridDBBandedColumn;
cxGridLevel2: TcxGridLevel;
V1Column26: TcxGridDBBandedColumn;
V1Column27: TcxGridDBBandedColumn;
Label2: TLabel;
OrderNo: TEdit;
V1Column7: TcxGridDBBandedColumn;
Label6: TLabel;
ConNo: TEdit;
CDSPRTHZ: TClientDataSet;
CDSPRTMX: TClientDataSet;
RMDBMX: TRMDBDataSet;
ADOQueryMain: TADOQuery;
DataSource1: TDataSource;
CDS_HZ: TClientDataSet;
TV1Column4: TcxGridDBBandedColumn;
TV1Column5: TcxGridDBBandedColumn;
TV1Column6: TcxGridDBBandedColumn;
TV1Column9: TcxGridDBBandedColumn;
TV1Column14: TcxGridDBBandedColumn;
Label7: TLabel;
PRTKUANNO: TEdit;
TV1Column15: TcxGridDBBandedColumn;
TV1Column1: TcxGridDBBandedColumn;
TV1Column2: TcxGridDBBandedColumn;
TV1Column3: TcxGridDBBandedColumn;
ToolButton3: TToolButton;
ADOQueryPrint: TADOQuery;
RMXLSExport1: TRMXLSExport;
TV1Column7: TcxGridDBBandedColumn;
TV1Column8: TcxGridDBBandedColumn;
TV1Column10: TcxGridDBBandedColumn;
TV1Column11: TcxGridDBBandedColumn;
TV1Column12: TcxGridDBBandedColumn;
TV1Column13: TcxGridDBBandedColumn;
TV1Column16: TcxGridDBBandedColumn;
TV1Column17: TcxGridDBBandedColumn;
TV1Column18: TcxGridDBBandedColumn;
TV1Column19: TcxGridDBBandedColumn;
TV1Column20: TcxGridDBBandedColumn;
TV1Column21: TcxGridDBBandedColumn;
TV1Column22: TcxGridDBBandedColumn;
TV1Column23: TcxGridDBBandedColumn;
TV1Column24: TcxGridDBBandedColumn;
TV1Column25: TcxGridDBBandedColumn;
TV1Column26: TcxGridDBBandedColumn;
TV1Column27: TcxGridDBBandedColumn;
TV1Column28: TcxGridDBBandedColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure MPRTCodeNameChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure V1Column9CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
procedure TV1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure cxGridDBBandedColumn64CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
procedure TV1Column6CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
procedure ToolButton3Click(Sender: TObject);
private
{ Private declarations }
canshu1: string;
procedure InitGrid();
public
fkhType: string;
Fmanage: string;
FMAINID: string;
end;
var
frmDDCHLISTMX: TfrmDDCHLISTMX;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmDDCHLISTMX.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add(' exec P_DD_CKLIST_MX @MAINID=' + QUOTEDSTR(TRIM(FMAINID)));
Open;
end;
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
// CDS_HZ.Last;
finally
ADOQueryMain.EnableControls;
end;
// cxGridDBBandedColumn79.Caption := CDS_HZ.fieldbyname('FHDAte').asstring;
end;
procedure TfrmDDCHLISTMX.FormDestroy(Sender: TObject);
begin
inherited;
frmDDCHLISTmx := nil;
end;
procedure TfrmDDCHLISTMX.cxGridDBBandedColumn64CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
inherited;
if (ARow1.Values[TV1Column2.Index] = ARow2.Values[TV1Column2.Index]) then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmDDCHLISTMX.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmDDCHLISTMX.TBCloseClick(Sender: TObject);
begin
WriteCxBandedGrid(trim(self.caption), Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>77');
Close;
end;
procedure TfrmDDCHLISTMX.FormShow(Sender: TObject);
begin
inherited;
ReadCxBandedGrid(trim(self.caption), Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>77');
// InitGrid();
end;
procedure TfrmDDCHLISTMX.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmDDCHLISTMX.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmDDCHLISTMX.ToolButton3Click(Sender: TObject);
var
fPrintFile: string;
Porderno, LBName, SYRName: string;
i, j: Integer;
OrderKg: Double;
begin
if CDS_HZ.IsEmpty then
Exit;
LBName := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
ExportFtErpFile('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.rmf', ADOQueryTemp);
with ADOQueryPrint do
begin
Close;
sql.Clear;
SQL.add('exec P_PRINT_DD_CKLIST @mainid=' + quotedstr(Trim(cds_hz.fieldbyname('MainId').AsString)));
ShowMessage(sql.Text);
Open;
end;
SCreateCDS(ADOQueryPrint, CDSPRTHZ);
SInitCDSData(ADOQueryPrint, CDSPRTHZ);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf';
if FileExists(fPrintFile) then
begin
RMXLSExport1 := TRMXLSExport.Create(RMXLSExport1);
rm1.PreviewButtons := [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbSaveToXLS, rmpbExport, rmpbNavigator];
RM1.LoadFromFile(fPrintFile);
// RMVariables['SYRName'] := Trim(SYRName);
// RMVariables['ZJGFACTORYNAME'] := Trim(ORDER_SUB.fieldbyname('ZJGFACTORYNAME').AsString);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'), '<27><>ʾ', 0);
end;
end;
procedure TfrmDDCHLISTMX.TV1Column6CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
inherited;
if (ARow1.Values[TV1Column1.Index] = ARow2.Values[TV1Column1.Index]) then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmDDCHLISTMX.TV1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
inherited;
// if (ARow1.Values[cxGridDBBandedColumn62.Index] = ARow2.Values[cxGridDBBandedColumn62.Index]) and (ARow1.Values[TV1Column6.Index] = ARow2.Values[TV1Column6.Index]) and (ARow1.Values[TV1Column5.Index] = ARow2.Values[TV1Column5.Index]) and (ARow1.Values[TV1Column15.Index] = ARow2.Values[TV1Column15.Index]) then
// AAreEqual := True
// else
// AAreEqual := False;
end;
procedure TfrmDDCHLISTMX.V1Column9CompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
inherited;
if (ARow1.Values[TV1Column1.Index] = ARow2.Values[TV1Column1.Index]) then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmDDCHLISTMX.MPRTCodeNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmDDCHLISTMX.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmDDCHLISTMX.FormCreate(Sender: TObject);
begin
inherited;
canshu1 := Trim(DParameters1);
EndDate.DateTime := SGetServerDate(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 90;
end;
end.