D7myGuhang/进度统计查询(Statistics.dll)/U_KHTopList.pas
DESKTOP-E401PHE\Administrator b27e54cd55 0
2025-08-13 10:59:27 +08:00

193 lines
5.0 KiB
ObjectPascal
Raw Permalink Blame History

unit U_KHTopList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
cxDropDownEdit, MovePanel, Menus, cxCheckBox, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, RM_e_Xls, cxPC;
type
TfrmKHTopList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
Label1: TLabel;
KHName: TEdit;
Label2: TLabel;
BegDate: TDateTimePicker;
cxPageControl1: TcxPageControl;
cxTabSheet1: TcxTabSheet;
cxTabSheet2: TcxTabSheet;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column1: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column9: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
v1Column11: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
MovePanel2: TMovePanel;
cxGridPopupMenu2: TcxGridPopupMenu;
Label3: TLabel;
cxTabControl1: TcxTabControl;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBRafreshClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure KHNameChange(Sender: TObject);
procedure cxPageControl1Change(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
private
FLeft, FTop: Integer;
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
FMainid, FSubId, FConNo, FColor, FCodeName: string;
end;
var
frmKHTopList: TfrmKHTopList;
implementation
uses
U_DataLink, U_Fun;
{$R *.dfm}
procedure TfrmKHTopList.FormDestroy(Sender: TObject);
begin
frmKHTopList := nil;
end;
procedure TfrmKHTopList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmKHTopList.InitGrid();
begin
MovePanel2.Visible := True;
MovePanel2.Refresh;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
SQL.Add('exec P_View_KHTop :FYear,:CXState,:BZType');
Parameters.ParamByName('FYear').Value := Trim(FormatDateTime('yyyy', BegDate.Date));
if cxPageControl1.ActivePageIndex = 0 then
begin
Parameters.ParamByName('CXState').Value := '<27><>';
end
else
begin
Parameters.ParamByName('CXState').Value := '<27><><EFBFBD><EFBFBD>';
end;
if cxTabControl1.TabIndex = 0 then
begin
Parameters.ParamByName('BZType').Value := 'USD';
end
else if cxTabControl1.TabIndex = 1 then
begin
Parameters.ParamByName('BZType').Value := 'RMB';
end
else if cxTabControl1.TabIndex = 2 then
begin
Parameters.ParamByName('BZType').Value := '<27>';
end;
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
MovePanel2.Visible := False;
end;
procedure TfrmKHTopList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmKHTopList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('Tv1', Tv1, '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid('Tv2', Tv2, '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmKHTopList.FormShow(Sender: TObject);
begin
BegDate.Date := SGetServerDate(ADOQueryTemp);
ReadCxGrid('Tv1', Tv1, '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid('Tv2', Tv2, '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmKHTopList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
end;
end;
procedure TfrmKHTopList.KHNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmKHTopList.cxPageControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmKHTopList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.