D7szChenfeng/进度统计查询(Statistics.dll)/U_OrderProgressMonth.pas

361 lines
12 KiB
ObjectPascal
Raw Normal View History

2025-07-22 15:51:47 +08:00
unit U_OrderProgressMonth;
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,
cxMemo, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore,
dxSkinsDefaultPainters, dxSkinscxPCPainter;
type
TfrmOrderProgressMonth = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDBHZ: TRMDBDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
Label1: TLabel;
P_Code: TEdit;
EndDate: TDateTimePicker;
Label4: TLabel;
Label5: TLabel;
Begdate: TDateTimePicker;
cxGrid1: TcxGrid;
TV1: TcxGridDBBandedTableView;
cxGridDBBandedColumn42: TcxGridDBBandedColumn;
cxGridDBBandedColumn51: TcxGridDBBandedColumn;
cxGridDBBandedColumn52: TcxGridDBBandedColumn;
cxGridDBBandedColumn60: TcxGridDBBandedColumn;
cxGridDBBandedColumn61: TcxGridDBBandedColumn;
cxGridDBBandedColumn63: TcxGridDBBandedColumn;
cxGridDBBandedColumn64: TcxGridDBBandedColumn;
cxGridDBBandedColumn77: TcxGridDBBandedColumn;
cxGridDBBandedColumn79: TcxGridDBBandedColumn;
cxGridDBBandedColumn81: TcxGridDBBandedColumn;
cxGridDBBandedColumn87: TcxGridDBBandedColumn;
cxGridDBBandedColumn91: TcxGridDBBandedColumn;
V1Column6: TcxGridDBBandedColumn;
cxGridLevel2: TcxGridLevel;
V1Column28: TcxGridDBBandedColumn;
V1Column5: TcxGridDBBandedColumn;
ToolButton3: TToolButton;
CDSPRTHZ: TClientDataSet;
CDSPRTMX: TClientDataSet;
RMDBMX: TRMDBDataSet;
ADOQueryMain: TADOQuery;
DataSource1: TDataSource;
CDS_HZ: TClientDataSet;
V1Column3: TcxGridDBBandedColumn;
CDS_PB: TClientDataSet;
RMDB_PB: TRMDBDataSet;
V1Column2: TcxGridDBBandedColumn;
V1Column10: TcxGridDBBandedColumn;
V1Column11: TcxGridDBBandedColumn;
V1Column12: TcxGridDBBandedColumn;
V1Column13: TcxGridDBBandedColumn;
V1Column14: TcxGridDBBandedColumn;
V1Column1: TcxGridDBBandedColumn;
V1Column4: TcxGridDBBandedColumn;
V1Column7: TcxGridDBBandedColumn;
V1Column8: TcxGridDBBandedColumn;
V1Column9: TcxGridDBBandedColumn;
V1Column15: TcxGridDBBandedColumn;
V1Column16: TcxGridDBBandedColumn;
V1Column17: TcxGridDBBandedColumn;
V1Column18: TcxGridDBBandedColumn;
V1Column19: TcxGridDBBandedColumn;
V1Column20: TcxGridDBBandedColumn;
V1Column21: TcxGridDBBandedColumn;
V1Column22: TcxGridDBBandedColumn;
V1Column23: TcxGridDBBandedColumn;
TV1Column1: TcxGridDBBandedColumn;
TV1Column2: TcxGridDBBandedColumn;
TV1Column3: TcxGridDBBandedColumn;
TV1Column5: TcxGridDBBandedColumn;
TV1Column6: TcxGridDBBandedColumn;
TV1Column7: TcxGridDBBandedColumn;
TV1Column8: TcxGridDBBandedColumn;
TV1Column4: TcxGridDBBandedColumn;
TV1Column9: TcxGridDBBandedColumn;
TV1Column10: TcxGridDBBandedColumn;
TV1Column11: TcxGridDBBandedColumn;
TV1Column12: TcxGridDBBandedColumn;
cxGrid2: TcxGrid;
TV2: TcxGridDBBandedTableView;
cxGridDBBandedColumn1: TcxGridDBBandedColumn;
cxGridDBBandedColumn2: TcxGridDBBandedColumn;
cxGridDBBandedColumn3: TcxGridDBBandedColumn;
cxGridDBBandedColumn4: TcxGridDBBandedColumn;
cxGridDBBandedColumn5: TcxGridDBBandedColumn;
cxGridDBBandedColumn6: TcxGridDBBandedColumn;
cxGridDBBandedColumn7: TcxGridDBBandedColumn;
cxGridDBBandedColumn8: TcxGridDBBandedColumn;
cxGridDBBandedColumn9: TcxGridDBBandedColumn;
cxGridDBBandedColumn10: TcxGridDBBandedColumn;
cxGridDBBandedColumn11: TcxGridDBBandedColumn;
cxGridDBBandedColumn12: TcxGridDBBandedColumn;
cxGridDBBandedColumn13: TcxGridDBBandedColumn;
cxGridDBBandedColumn14: TcxGridDBBandedColumn;
cxGridDBBandedColumn15: TcxGridDBBandedColumn;
cxGridDBBandedColumn16: TcxGridDBBandedColumn;
cxGridDBBandedColumn17: TcxGridDBBandedColumn;
cxGridDBBandedColumn18: TcxGridDBBandedColumn;
cxGridDBBandedColumn19: TcxGridDBBandedColumn;
cxGridDBBandedColumn20: TcxGridDBBandedColumn;
cxGridDBBandedColumn21: TcxGridDBBandedColumn;
cxGridDBBandedColumn22: TcxGridDBBandedColumn;
cxGridDBBandedColumn23: TcxGridDBBandedColumn;
cxGridDBBandedColumn24: TcxGridDBBandedColumn;
cxGridDBBandedColumn25: TcxGridDBBandedColumn;
cxGridDBBandedColumn26: TcxGridDBBandedColumn;
cxGridDBBandedColumn27: TcxGridDBBandedColumn;
cxGridDBBandedColumn28: TcxGridDBBandedColumn;
cxGridDBBandedColumn29: TcxGridDBBandedColumn;
cxGridDBBandedColumn30: TcxGridDBBandedColumn;
cxGridDBBandedColumn31: TcxGridDBBandedColumn;
cxGridDBBandedColumn32: TcxGridDBBandedColumn;
cxGridDBBandedColumn33: TcxGridDBBandedColumn;
cxGridDBBandedColumn34: TcxGridDBBandedColumn;
cxGridDBBandedColumn35: TcxGridDBBandedColumn;
cxGridDBBandedColumn36: TcxGridDBBandedColumn;
cxGridDBBandedColumn37: TcxGridDBBandedColumn;
cxGridDBBandedColumn38: TcxGridDBBandedColumn;
cxGridDBBandedColumn39: TcxGridDBBandedColumn;
cxGridDBBandedColumn40: TcxGridDBBandedColumn;
cxGridDBBandedColumn41: TcxGridDBBandedColumn;
cxGridDBBandedColumn43: TcxGridDBBandedColumn;
cxGridDBBandedColumn44: TcxGridDBBandedColumn;
cxGridDBBandedColumn45: TcxGridDBBandedColumn;
cxGridDBBandedColumn46: TcxGridDBBandedColumn;
KHNAME: TcxGridDBBandedColumn;
cxGridDBBandedColumn48: TcxGridDBBandedColumn;
cxGridDBBandedColumn49: TcxGridDBBandedColumn;
cxGridLevel1: TcxGridLevel;
DataSource2: TDataSource;
TV2Column1: 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 ToolButton3Click(Sender: TObject);
procedure SFKGyiDanChange(Sender: TObject);
procedure TV1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
private
{ Private declarations }
canshu1: string;
procedure InitGrid();
public
fkhType: string;
Fmanage: string;
end;
var
frmOrderProgressMonth: TfrmOrderProgressMonth;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmOrderProgressMonth.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add(' exec P_View_OrderProgressmonth @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', ENDdate.DateTime + 1))));
Open;
// ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmOrderProgressMonth.FormDestroy(Sender: TObject);
begin
frmOrderProgressMonth := nil;
end;
procedure TfrmOrderProgressMonth.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmOrderProgressMonth.TBCloseClick(Sender: TObject);
begin
WriteCxBandedGrid(trim(self.caption) + 'TV1', Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
WriteCxBandedGrid(trim(self.caption) + 'TV2', Tv2, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
Close;
end;
procedure TfrmOrderProgressMonth.FormShow(Sender: TObject);
begin
ReadCxBandedGrid(trim(self.caption) + 'TV1', Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
ReadCxBandedGrid(trim(self.caption) + 'TV2', Tv2, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
//InitGrid();
end;
procedure TfrmOrderProgressMonth.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmOrderProgressMonth.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmOrderProgressMonth.MPRTCodeNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmOrderProgressMonth.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmOrderProgressMonth.FormCreate(Sender: TObject);
begin
canshu1 := Trim(DParameters1);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
end;
procedure TfrmOrderProgressMonth.ToolButton3Click(Sender: TObject);
var
fPrintFile, fPrintFile10, FMainID, FKHName, FFPNo, mfieldName: string;
i, j, msize: Integer;
PBRS: Double;
begin
if CDS_HZ.fieldbyname('DHPS').AsFloat > 0 then
PBRS := CDS_HZ.fieldbyname('DHQty').AsFloat / CDS_HZ.fieldbyname('DHPS').AsFloat / (CDS_HZ.fieldbyname('KKSL').AsFloat / CDS_HZ.fieldbyname('KKPS').AsFloat)
else
PBRS := 0;
ExportFtErpFile('<27>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>.rmf', ADOQueryTemp);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add(' exec P_Print_CRJD_HZ ');
sql.add('@MainId=' + quotedstr(Trim(CDS_HZ.fieldbyname('MainId').AsString)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDSPRTHZ);
SInitCDSData20(ADOQueryTemp, CDSPRTHZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CRJD_CD ');
sql.add('@MainId=' + quotedstr(Trim(CDS_HZ.fieldbyname('MainId').AsString)));
Open;
end;
RMVariables['HZCD'] := ADOQueryTemp.fieldbyname('HZCD').Value;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CRJD ');
sql.add('@MainId=' + quotedstr(Trim(CDS_HZ.fieldbyname('MainId').AsString)));
sql.add(',@Falg=''<27><>ϸ''');
Open;
end;
SCreateCDS20(ADOQueryTemp, CDSPRTMX);
SInitCDSData20(ADOQueryTemp, CDSPRTMX);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CRJD_PB' + quotedstr(Trim(CDS_HZ.fieldbyname('Conno').AsString)));
// showmessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PB);
SInitCDSData20(ADOQueryTemp, CDS_PB);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C>ܸ<EFBFBD><DCB8><EFBFBD><EFBFBD><EFBFBD>.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['PBRS'] := PBRS;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD>ҵ<EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
procedure TfrmOrderProgressMonth.SFKGyiDanChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
procedure TfrmOrderProgressMonth.TV1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
try
ADOQueryCmd.DisableControls;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' exec P_View_OrderProgressmonth_MX @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', ENDdate.DateTime + 1))));
SQL.Add(',@P_CODE=' + QuotedStr(CDS_HZ.FIELDBYNAME('P_CODE').AsString));
SQL.Add(',@filltime=' + QuotedStr(CDS_HZ.FIELDBYNAME('filltime').AsString));
Open;
// ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryCmd, CDSPRTMX);
SInitCDSData20(ADOQueryCmd, CDSPRTMX);
finally
ADOQueryCmd.EnableControls;
end;
end;
end.