D7gmYongjin/BI(BIView.dll)/U_CPAllTopQ30.pas

306 lines
9.1 KiB
ObjectPascal
Raw Permalink Normal View History

2026-03-04 09:51:44 +08:00
unit U_CPAllTopQ30;
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
TfrmCPAllTopQ30 = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
cxGridPopupMenu2: TcxGridPopupMenu;
Panel2: TPanel;
Panel3: TPanel;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v2Column12: TcxGridDBColumn;
v2Column15: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
SH2: TPanel;
SH1: TPanel;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
v1Column1: TcxGridDBColumn;
Panel6: TPanel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
KK2: TPanel;
KK1: TPanel;
DataSource2: TDataSource;
ClientDataSet2: TClientDataSet;
Panel8: TPanel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
DJ2: TPanel;
DJ1: TPanel;
DataSource3: TDataSource;
ClientDataSet3: TClientDataSet;
Panel9: TPanel;
cxGrid4: TcxGrid;
Tv4: TcxGridDBTableView;
cxGridDBColumn9: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridDBColumn11: TcxGridDBColumn;
cxGridDBColumn12: TcxGridDBColumn;
cxGridLevel4: TcxGridLevel;
CH2: TPanel;
CH1: TPanel;
DataSource4: TDataSource;
ClientDataSet4: TClientDataSet;
Panel10: TPanel;
Panel1: TPanel;
Label1: TLabel;
Label5: TLabel;
Label6: TLabel;
C_Code: TEdit;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
ClientDataSet11: TClientDataSet;
ClientDataSet21: TClientDataSet;
ClientDataSet31: TClientDataSet;
ClientDataSet41: TClientDataSet;
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 C_CodeNameChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure Tv4DblClick(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
end;
var
frmCPAllTopQ30: TfrmCPAllTopQ30;
implementation
uses
U_DataLink, U_RTFun,U_PBTopMX,U_CPCHTopMX;
{$R *.dfm}
procedure TfrmCPAllTopQ30.InitGrid();
begin
Panel10.Visible:=True;
Panel10.Refresh;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_CPAll_60M :begdate,:enddate,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1));
Parameters.ParamByName('Type').Value:='<27>ջ<EFBFBD>';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet1);
SInitCDSData20(ADOQueryMain, ClientDataSet1);
{SH1.Caption:='<27>ջ<EFBFBD><D5BB>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>а<EFBFBD>('+Trim(ClientDataSet1.fieldbyname('QSPS').AsString)
+','+Trim(ClientDataSet1.fieldbyname('QSBL').AsString)+'%)'; }
SH2.Caption:='<27>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+'('+Trim(ClientDataSet1.fieldbyname('HZPS').AsString)+')';
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_CPAll_60M :begdate,:enddate,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1));
Parameters.ParamByName('Type').Value:='<27><><EFBFBD><EFBFBD>';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet2);
SInitCDSData20(ADOQueryMain, ClientDataSet2);
{ KK1.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>а<EFBFBD>('+Trim(ClientDataSet2.fieldbyname('QSPS').AsString)
+','+Trim(ClientDataSet2.fieldbyname('QSBL').AsString)+'%)'; }
KK2.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+'('+Trim(ClientDataSet2.fieldbyname('HZPS').AsString)+')';
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_CPAll_60M :begdate,:enddate,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1));
Parameters.ParamByName('Type').Value:='<27><><EFBFBD><EFBFBD>';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet3);
SInitCDSData20(ADOQueryMain, ClientDataSet3);
{DJ1.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>а<EFBFBD>('+Trim(ClientDataSet3.fieldbyname('QSPS').AsString)
+','+Trim(ClientDataSet3.fieldbyname('QSBL').AsString)+'%)'; }
DJ2.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+'('+Trim(ClientDataSet3.fieldbyname('HZPS').AsString)+')';
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add('exec P_BI_CPAll_60M :begdate,:enddate,:Type');
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1));
Parameters.ParamByName('Type').Value:='<27><><EFBFBD><EFBFBD>';
Open;
end;
SCreateCDS20(ADOQueryMain, ClientDataSet4);
SInitCDSData20(ADOQueryMain, ClientDataSet4);
{CH1.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD>а<EFBFBD>('+Trim(ClientDataSet4.fieldbyname('QSPS').AsString)
+','+Trim(ClientDataSet4.fieldbyname('QSBL').AsString)+'%)'; }
CH2.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+'('+Trim(ClientDataSet4.fieldbyname('HZPS').AsString)+')';
finally
ADOQueryMain.EnableControls;
end;
Panel10.Visible:=False;
end;
procedure TfrmCPAllTopQ30.FormDestroy(Sender: TObject);
begin
frmCPAllTopQ30 := nil;
end;
procedure TfrmCPAllTopQ30.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCPAllTopQ30.TBCloseClick(Sender: TObject);
begin
//WriteCxGrid('<27>ջ<EFBFBD>', Tv1, 'ǰʮ<C7B0><CAAE><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>а<EFBFBD>');
Close;
end;
procedure TfrmCPAllTopQ30.FormShow(Sender: TObject);
begin
//ReadCxGrid('<27>ջ<EFBFBD>', Tv1, 'ǰʮ<C7B0><CAAE><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>а<EFBFBD>');
end;
procedure TfrmCPAllTopQ30.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCPAllTopQ30.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, ClientDataSet1);
SInitCDSData20(ADOQueryMain, ClientDataSet1);
end;
end;
procedure TfrmCPAllTopQ30.C_CodeNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmCPAllTopQ30.FormCreate(Sender: TObject);
var
FYear:string;
FMonth:string;
FDate:TDate;
begin
FDate:=SGetServerDate10(ADOQueryTemp);
FYear:=FormatDateTime('yyyy',FDate);
FMonth:=FormatDateTime('MM',FDate);
if StrToInt(FMonth)<2 then
begin
BegDate.Date:=StrToDate(IntToStr(strtoint(FYear)-1)+'-02-01');
EndDate.Date:=StrToDate(FYear+'-01-31');
end else
begin
BegDate.Date:=StrToDate(FYear+'-02-01');
EndDate.Date:=StrToDate(IntToStr(strtoint(FYear)+1)+'-01-31');
end;
end;
procedure TfrmCPAllTopQ30.Tv1DblClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if Trim(ClientDataSet1.fieldbyname('SPName').AsString)='<27><><EFBFBD><EFBFBD>' then Exit;
try
frmPBTopMX:=TfrmPBTopMX.Create(Application);
with frmPBTopMX do
begin
FBegdate:=Self.BegDate.Date;
FEnddate:=Self.EndDate.Date;
FSPName:=Trim(Self.ClientDataSet1.fieldbyname('SPName').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmPBTopMX.Free;
end;
end;
procedure TfrmCPAllTopQ30.Tv4DblClick(Sender: TObject);
begin
if ClientDataSet4.IsEmpty then Exit;
if Trim(ClientDataSet4.fieldbyname('SPName').AsString)='<27><><EFBFBD><EFBFBD>' then Exit;
try
frmCPCHTopMX:=TfrmCPCHTopMX.Create(Application);
with frmCPCHTopMX do
begin
FBegdate:=Self.BegDate.Date;
FEnddate:=Self.EndDate.Date;
FSPName:=Trim(Self.ClientDataSet4.fieldbyname('SPName').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmCPCHTopMX.Free;
end;
end;
end.