D7myYunxiang/云翔财务(Money.dll)/U_ZZYSSKList.pas

284 lines
7.9 KiB
ObjectPascal
Raw Permalink Normal View History

2025-01-20 13:04:03 +08:00
unit U_ZZYSSKList;
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, cxPC,dxCore,ActiveX, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
type
TfrmZZYSSKList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
FactoryName10: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
Label2: TLabel;
Label6: TLabel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
ADOQueryMain: TADOQuery;
CDS_HZ: TClientDataSet;
v2Column7: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
CheckBox1: TCheckBox;
v2Column10: TcxGridDBColumn;
v2Column11: TcxGridDBColumn;
ToolButton3: TToolButton;
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 FactoryName10Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure cxTabControl1Change(Sender: TObject);
procedure v2Column6HeaderClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
fDParameters1:string;
{ Public declarations }
RKFlag,FCYID:String;
end;
var
frmZZYSSKList: TfrmZZYSSKList;
implementation
uses
U_DataLink,U_RTFun,U_Fun,U_ZDYHelp,U_ZZYSMXlist, U_ZZYSMXTaiToulist;
{$R *.dfm}
procedure TfrmZZYSSKList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
Filtered:=False;
sql.Add(' exec P_YSSK_List :begdate,:Enddate') ;
if CheckBox1.Checked=True then
begin
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime));
Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1));
end else
begin
Parameters.ParamByName('begdate').Value:='2000-01-01';
Parameters.ParamByName('Enddate').Value:='2500-01-01';
end;
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
//ToolButton2.Click;
end;
procedure TfrmZZYSSKList.FormDestroy(Sender: TObject);
begin
frmZZYSSKList:=nil;
end;
procedure TfrmZZYSSKList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmZZYSSKList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmZZYSSKList.FormShow(Sender: TObject);
begin
ReadCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=SGetServerDateMBeg(ADOQueryTemp);
{with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select distinct(ComTaiTou) from YF_Money_CR where CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and ISNULL(ComTaiTou,'''')<>'''' ');
Open;
end;
cxTabControl1.Tabs.Clear;
with ADOQueryTemp do
begin
First;
while not Eof do
begin
cxTabControl1.Tabs.Add(ADOQueryTemp.fieldbyname('ComTaiTou').AsString);
Next;
end;
end; }
InitGrid();
end;
procedure TfrmZZYSSKList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmZZYSSKList.ToolButton2Click(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 TfrmZZYSSKList.FactoryName10Change(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmZZYSSKList.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,<>տ<EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD>б<EFBFBD>');
end;
procedure TfrmZZYSSKList.Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
try
frmZZYSMXTaiToulist:=TfrmZZYSMXTaiToulist.Create(Application);
with frmZZYSMXTaiToulist do
begin
FMX:='99';
frmZZYSMXTaiToulist.begdate.DateTime:=Self.begdate.DateTime;
frmZZYSMXTaiToulist.Enddate.DateTime:=Self.Enddate.DateTime;
frmZZYSMXTaiToulist.factoryName.Text:=Self.CDS_HZ.fieldbyname('factoryName').AsString;
if Self.CheckBox1.Checked then
begin
frmZZYSMXTaiToulist.CheckBox1.Checked:=True;
end else
begin
frmZZYSMXTaiToulist.CheckBox1.Checked:=False;
end;
frmZZYSMXTaiToulist.Align:=alClient;
if ShowModal=1 then
begin
end;
end;
finally
frmZZYSMXTaiToulist.Free;
end;
end;
procedure TfrmZZYSSKList.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmZZYSSKList.v2Column6HeaderClick(Sender: TObject);
var
FName,FNameSX,FNameJX:String;
begin
FName:=TcxGridDBColumn(Sender).DataBinding.FilterFieldName;
FNameSX:=Trim(FName)+'-1';
FNameJX:=Trim(FName)+'-2';
CDS_HZ.AddIndex(FNameSX, FName, []); { <20><><EFBFBD><EFBFBD> }
CDS_HZ.AddIndex(FNameJX, FName, [ixDescending]); { <20><><EFBFBD><EFBFBD> }
if TcxGridDBColumn(Sender).SortOrder=soDescending then
begin
CDS_HZ.IndexName:=FNameSX;
end else
if TcxGridDBColumn(Sender).SortOrder=soAscending then
begin
CDS_HZ.IndexName:=FNameJX;
end;
end;
procedure TfrmZZYSSKList.ToolButton3Click(Sender: TObject);
var
filepath:string;
mBegdate,mEnddate:string;
FName,FNameSX,FNameJX:String;
i:Integer;
begin
for i:=0 to Tv2.ColumnCount-1 do
begin
FName:=Tv2.Columns[i].DataBinding.FilterFieldName;
FNameSX:=Trim(FName)+'-1';
FNameJX:=Trim(FName)+'-2';
CDS_HZ.AddIndex(FNameSX, FName, []); { <20><><EFBFBD><EFBFBD> }
CDS_HZ.AddIndex(FNameJX, FName, [ixDescending]); { <20><><EFBFBD><EFBFBD> }
if Tv2.Columns[i].SortOrder=soDescending then
begin
CDS_HZ.IndexName:=FNameJX;
end else
if Tv2.Columns[i].SortOrder=soAscending then
begin
CDS_HZ.IndexName:=FNameSX;
end;
end;
mbegdate:=FormatDateTime('yyyy-MM-dd',begdate.Date);
menddate:=FormatDateTime('yyyy-MM-dd',enddate.Date);
if CDS_HZ.IsEmpty then exit;
try
filepath:=ExtractFilePath(Application.ExeName) + 'report\Ӧ<>տ<EFBFBD>ͳ<EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD>.rmf';
if not FileExists(Pchar(filepath)) then
begin
application.MessageBox(pchar('<27>ļ<EFBFBD>['+filepath+']<5D><><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>'),'<27><>ʾ<EFBFBD><CABE>Ϣ',MB_IConError);
exit;
end;
RmVariables['begDate'] :=FormatDateTime('yymmdd',begDate.Date)+'-'+FormatDateTime('yymmdd',enddate.Date);
RM1.LoadFromFile(filepath);
RM1.ShowReport;
finally
end;
end;
end.