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

382 lines
12 KiB
ObjectPascal
Raw Permalink Normal View History

2025-07-22 15:51:47 +08:00
unit U_OrderProgressDay_KC;
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;
type
TfrmOrderProgressDay_KC = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDBMAIN: TRMDBDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
Label1: TLabel;
P_Code: TEdit;
EndDate: TDateTimePicker;
Label4: TLabel;
Label5: TLabel;
Begdate: TDateTimePicker;
ToolButton3: TToolButton;
CDSPRTHZ: TClientDataSet;
CDSPRTMX: TClientDataSet;
RMDBMX: TRMDBDataSet;
ADOQueryMain: TADOQuery;
DataSource1: TDataSource;
CDS_HZ: TClientDataSet;
CDS_PB: TClientDataSet;
RMDB_PB: TRMDBDataSet;
Label7: TLabel;
BuyName: TEdit;
Label2: TLabel;
Conno: TEdit;
cxGrid1: TcxGrid;
TV1: TcxGridDBBandedTableView;
cxGridDBBandedColumn51: TcxGridDBBandedColumn;
cxGridDBBandedColumn52: TcxGridDBBandedColumn;
cxGridDBBandedColumn42: TcxGridDBBandedColumn;
cxGridDBBandedColumn60: TcxGridDBBandedColumn;
cxGridDBBandedColumn61: TcxGridDBBandedColumn;
cxGridDBBandedColumn63: TcxGridDBBandedColumn;
cxGridDBBandedColumn64: TcxGridDBBandedColumn;
cxGridDBBandedColumn77: TcxGridDBBandedColumn;
cxGridDBBandedColumn79: TcxGridDBBandedColumn;
cxGridDBBandedColumn81: TcxGridDBBandedColumn;
cxGridDBBandedColumn87: TcxGridDBBandedColumn;
cxGridDBBandedColumn91: TcxGridDBBandedColumn;
V1Column6: TcxGridDBBandedColumn;
V1Column28: TcxGridDBBandedColumn;
V1Column5: TcxGridDBBandedColumn;
V1Column3: TcxGridDBBandedColumn;
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;
TV1Column13: TcxGridDBBandedColumn;
TV1Column14: TcxGridDBBandedColumn;
TV1Column15: TcxGridDBBandedColumn;
TV1Column16: TcxGridDBBandedColumn;
TV1Column17: TcxGridDBBandedColumn;
TV1Column18: TcxGridDBBandedColumn;
TV1Column19: TcxGridDBBandedColumn;
TV1Column20: TcxGridDBBandedColumn;
TV1Column21: TcxGridDBBandedColumn;
TV1Column22: TcxGridDBBandedColumn;
cxGridLevel2: TcxGridLevel;
TV1Column23: TcxGridDBBandedColumn;
TV1Column24: TcxGridDBBandedColumn;
TV1Column25: TcxGridDBBandedColumn;
TV1Column26: TcxGridDBBandedColumn;
ToolButton4: TToolButton;
ComboBox1: TComboBox;
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 ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
private
{ Private declarations }
canshu1: string;
procedure InitGrid();
public
fkhType: string;
Fmanage: string;
end;
var
frmOrderProgressDay_KC: TfrmOrderProgressDay_KC;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmOrderProgressDay_KC.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add(' exec P_View_OrderProgressAll2 @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime + 1))));
// ShowMessage(SQL.Text);
Open;
//
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmOrderProgressDay_KC.FormDestroy(Sender: TObject);
begin
frmOrderProgressDay_KC := nil;
end;
procedure TfrmOrderProgressDay_KC.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmOrderProgressDay_KC.TBCloseClick(Sender: TObject);
begin
WriteCxBandedGrid(trim(self.caption), Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
Close;
end;
procedure TfrmOrderProgressDay_KC.FormShow(Sender: TObject);
begin
ReadCxBandedGrid(trim(self.caption), Tv1, '<27><><EFBFBD>ȹ<EFBFBD><C8B9><EFBFBD>');
//InitGrid();
end;
procedure TfrmOrderProgressDay_KC.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmOrderProgressDay_KC.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 TfrmOrderProgressDay_KC.MPRTCodeNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmOrderProgressDay_KC.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmOrderProgressDay_KC.FormCreate(Sender: TObject);
begin
canshu1 := Trim(DParameters1);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
end;
procedure TfrmOrderProgressDay_KC.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 TfrmOrderProgressDay_KC.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 TfrmOrderProgressDay_KC.ToolButton4Click(Sender: TObject);
var
fPrintFile: string;
Porderno, LBName, SYRName: string;
i, j: Integer;
OrderKg: Double;
begin
if ComboBox1.Text = '' then
Exit;
ExportFtErpFile(Trim(ComboBox1.Text) + '.rmf', ADOQueryTemp);
if ComboBox1.Text = '<27>ͻ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD><C5B1><EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_View_OrderProgressAll2 @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime + 1))));
Open;
end;
SCreateCDS20(ADOQueryCmd, CDSPRTHZ);
SInitCDSData20(ADOQueryCmd, CDSPRTHZ);
end;
if ComboBox1.Text = '<27>ͻ<EFBFBD>Ʒ<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_View_OrderProgressAll2_KHPZ @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime + 1))));
Open;
end;
SCreateCDS20(ADOQueryCmd, CDSPRTHZ);
SInitCDSData20(ADOQueryCmd, CDSPRTHZ);
end;
if ComboBox1.Text = 'Ʒ<>ֱ<EFBFBD><D6B1><EFBFBD>' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_View_OrderProgressAll2_PZ @Begdate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime))));
sql.Add(' ,@enddate=' + quotedstr(trim(FormatDateTime('yyyy-MM-dd', Begdate.DateTime + 1))));
Open;
end;
SCreateCDS20(ADOQueryCmd, CDSPRTHZ);
SInitCDSData20(ADOQueryCmd, CDSPRTHZ);
end;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ComboBox1.Text) + '.rmf';
if FileExists(fPrintFile) then
begin
RM1.PreviewButtons := [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbSaveToXLS, pbExport, pbNavigator];
RM1.LoadFromFile(fPrintFile);
RMVariables['SYRName'] := Trim(SYRName);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ComboBox1.TEXT) + '.rmf'), '<27><>ʾ', 0);
end;
end;
procedure TfrmOrderProgressDay_KC.ToolButton5Click(Sender: TObject);
var
I: Integer;
Column: TcxGridDBColumn;
FieldNames: TStringList;
begin
end;
end.